PipelineVertexInputStateCreateInfo IInternalRenderObject.GetVertexInputState() { //Gather the attribute descriptions var vertexAttributeDescriptions = new ResizeArray <VertexInputAttributeDescription>(); Vertex.AddAttributeDescriptions(binding: 0, vertexAttributeDescriptions); InstanceData.AddAttributeDescriptions(binding: 1, vertexAttributeDescriptions); return(new PipelineVertexInputStateCreateInfo( vertexBindingDescriptions: new [] { new VertexInputBindingDescription( binding: 0, stride: Vertex.SIZE, inputRate: VertexInputRate.Vertex), new VertexInputBindingDescription( binding: 1, stride: InstanceData.SIZE, inputRate: VertexInputRate.Instance) }, vertexAttributeDescriptions: vertexAttributeDescriptions.ToArray())); }