VertexArray#

class moderngl.VertexArray#

Note

Compared to OpenGL, VertexArray objects have some additional responsibilities:

Create#

Context.simple_vertex_array(program: Program, buffer: Buffer, *attributes: Union[List[str], Tuple[str, ...]], index_buffer: Optional[Buffer] = None, index_element_size: int = 4, mode: Optional[int] = None) VertexArray
Context.vertex_array(*args, **kwargs) VertexArray

Methods#

VertexArray.render(mode: Optional[int] = None, vertices: int = -1, *, first: int = 0, instances: int = -1) None#
VertexArray.render_indirect(buffer: Buffer, mode: Optional[int] = None, count: int = -1, *, first: int = 0) None#
VertexArray.transform(buffer: Union[Buffer, List[Buffer]], mode: Optional[int] = None, vertices: int = -1, *, first: int = 0, instances: int = -1, buffer_offset: int = 0) None#
VertexArray.bind(attribute: int, cls: str, buffer: Buffer, fmt: str, *, offset: int = 0, stride: int = 0, divisor: int = 0, normalize: bool = False) None#
VertexArray.release() None#

Attributes#

VertexArray.mode#
VertexArray.program#
VertexArray.index_buffer#
VertexArray.index_element_size#
VertexArray.scope#
VertexArray.vertices#
VertexArray.instances#
VertexArray.subroutines#
VertexArray.glo#
VertexArray.mglo#
VertexArray.extra#
VertexArray.ctx#