/// <summary> /// Binds a named buffer to an AttributeIndex on a named vertexarray and specifies its vertex declaration. /// </summary> /// <param name="vaobj">VertexArrayObject to bind to.</param> /// <param name="BufferID">ID of buffer to bind to vao.</param> /// <param name="index">Attribute Index on Vao to bind to.</param> /// <param name="size">Number of components in vertex declaration.</param> /// <param name="iType">Integer Type of component in vertex declaration.</param> /// <param name="stride">Stride between two vertices.</param> /// <param name="Offset">Offset in bytes from start of buffer to start of vertices.</param> public static void VertexArrayVertexAttribIOffsetEXT(uint vaobj, uint BufferID, uint index, int size, VertexAttribIFormat iType, int stride, long Offset) { Delegates.glVertexArrayVertexAttribIOffsetEXT(vaobj, BufferID, index, size, iType, stride, (IntPtr)Offset); }
public static void VertexArrayVertexAttribIFormatEXT(uint vaobj, uint AttribIndex, int Size, VertexAttribIFormat type, uint relativeOffset) { Delegates.glVertexArrayVertexAttribIFormatEXT(vaobj, AttribIndex, Size, type, relativeOffset); }
/// <summary> /// Sets up the Vertex Declaration for a AttributeIndex without specifind source buffer. /// Source buffer are specified by bind to bindingindex and map bindingindex and attribute index afterwards. /// </summary> /// <param name="attribIndex">Attribute Index to specify vertex declaration for.</param> /// <param name="Size">Number of components in vertices. aka vec2i = 2, vec3i = 3 osv.</param> /// <param name="itype">Integer type.</param> /// <param name="relativeOffset">offset in bytes from start of eventually bound buffer?</param> public static void VertexAttribIFormat(uint attribIndex, int Size, VertexAttribIFormat itype, uint relativeOffset) { Delegates.glVertexAttribIFormat(attribIndex, Size, itype, relativeOffset); }
/// <summary> /// Integer Vertex declaration for attribute index in current bound vertex array object. /// </summary> /// <param name="index">Attribute index to declare vertex source.</param> /// <param name="size">number of components in iType.</param> /// <param name="iType">Integer type of vertex declaration.</param> /// <param name="stride">Stride between individually vertices.</param> /// <param name="offset">Offset into currenly bound arraybuffer to source from.</param> public static void VertexAttribIPointer(uint index, int size, VertexAttribIFormat iType, int stride, long offset) { Delegates.glVertexAttribIPointer(index, size, iType, stride, (IntPtr)offset); }