/// <summary> /// Initializes a new instance of the <see cref="VertexInputLayout" /> with a single slot from a structure that is using <see cref="VertexElementAttribute"/>. /// </summary> /// <typeparam name="T">Type of a structure that is using <see cref="VertexElementAttribute" />.</typeparam> /// <param name="slot">The slot index in the input-assembler stage.</param> /// <returns>A new instance of <see cref="VertexInputLayout"/>.</returns> public static VertexInputLayout FromBuffer <T>(int slot, Buffer <T> buffer) where T : struct { return(New(VertexBufferLayout.New(slot, typeof(T)))); }
/// <summary> /// Initializes a new instance of the <see cref="VertexInputLayout" /> with a single slot. /// </summary> /// <param name="slot">The slot index in the input-assembler stage.</param> /// <param name="vertexElements">Description of vertex elements.</param> /// <returns>A new instance of <see cref="VertexInputLayout"/>.</returns> public static VertexInputLayout New(int slot, params VertexElement[] vertexElements) { return(New(VertexBufferLayout.New(slot, vertexElements))); }
/// <summary> /// Initializes a new instance of the <see cref="VertexInputLayout" /> with a single slot from a structure that is using <see cref="VertexElementAttribute"/>. /// </summary> /// <param name="slot">The slot index in the input-assembler stage.</param> /// <param name="structType">Type of a structure that is using <see cref="VertexElementAttribute" />.</param> /// <returns>A new instance of <see cref="VertexInputLayout"/>.</returns> public static VertexInputLayout New(int slot, Type structType) { return(New(VertexBufferLayout.New(slot, structType))); }