Number of references to this object. If at least a single reference was counted, this object can neither be initialized (and thus created) nor uninitialized (and thus deleted). The reference count is controlled via ref() and unref() functions.
Asserts the objects initialization status to be true. Note that the implementation is cached and forwarded to either an empty function when initialized and to an acutal assert(false) otherwise.
Asserts the objects initialization status to be false. Note that the implementation is cached and forwarded to either an empty function when uninitialized and to an acutal assert(false) otherwise.
Default buffer, e.g., used for unbind.
Returns the number of bytes this object approximately allocates on the GPU.
Read-only access to the objects context, used to get context information and WebGL API access.
Every GPU asset that allocates memory should provide a human readable identifier for GPU allocation tracking and debugging purposes. Please note that the identifier might changed on initialization due to the generation and assignment of a unique identifier.
Property getter for readonly access to the initialization status of an initializable instance.
Read-only access to the WebGL object handle.
Target to which the buffer object is bound (either GL_ARRAY_BUFFER or GL_ELEMENT_ARRAY_BUFFER). Readonly access to the target (as specified on initialization) the buffer will be bound to.
Cached object status used to derive validity when initialized.
Disables a buffer binding point.
Index of the vertex attribute that is to be disabled.
Allows to skip binding the object (e.g., when binding is handled outside).
Allows to skip unbinding the object (e.g., when binding is handled outside).
Specifies the memory layout of the buffer for a binding point. Integer data will be cast to float according to "normalized".
Index of the vertex attribute that is to be setup and enabled.
Number of components per vertex attribute.
Data type of each component in the array.
Whether integer data values should be normalized when being casted to a float.
Offset in bytes between the beginning of consecutive vertex attributes.
Offset in bytes of the first component in the vertex attribute array.
Allows to skip binding the object (e.g., when binding is handled outside).
Allows to skip unbinding the object (e.g., when binding is handled outside).
Specifies the memory layout of the buffer for a binding point. Only to be used for integers.
Index of the vertex attribute that is to be setup and enabled.
Number of components per vertex attribute.
Data type of each component in the array.
Offset in bytes between the beginning of consecutive vertex attributes.
Offset in bytes of the first component in the vertex attribute array.
Allows to skip binding the object (e.g., when binding is handled outside).
Allows to skip unbinding the object (e.g., when binding is handled outside).
Binds the buffer object as buffer to predefined target.
Create a buffer object on the GPU.
Creates the buffer object's data store and updates the objects status.
Data that will be copied into the objects data store.
Usage pattern of the data store.
Allows to skip binding the object (e.g., when binding is handled outside).
Allows to skip unbinding the object (e.g., when binding is handled outside).
Delete the buffer object on the GPU. This should have the reverse effect of create
.
Increment the reference count of this object.
Updates a subset of a buffer object's data store.
Offset in bytes where the data replacement will start.
Data that will be copied into the data store.
Element index offset where to start reading the buffer.
Length of the data to copy into the data store.
Allows to skip binding the object (e.g., when binding is handled outside).
Allows to skip unbinding the object (e.g., when binding is handled outside).
Binds null as current buffer to predefined target;
Decrement the reference count of this object.
Method decorator for asserting the initialization status of an initializable to be true.
Method decorator for asserting the initialization status of an initializable to be false.
Method decorator for discarding of Initializable inheritors. This decorator asserts the initialization
status of the instance that is to be discarded, invokes its uninitialization, and falsifies the
initialization status. In order to encourage the use of assertInitialized
and assertUninitialized
they are
dynamically bound to a static, always-failing assert and an empty/undefined function respectively.
Method decorator for initialization of Initializable inheritors. This decorator asserts the initialization status
of the instance that is to be initialized, invokes its initialization with arbitrary number of parameters,
and sets the initialization status to the initialization success (either false or true).
In order to encourage the use of assertInitialized
and assertUninitialized
they are dynamically
bound to either a static, always-failing assert or an empty/undefined function.
Method decorator for uninitialization of Initializable inheritors. This decorator asserts the initialization
status of the instance that is to be uninitialized, invokes its uninitialization, and falsifies the
initialization status. In order to encourage the use of assertInitialized
and assertUninitialized
they are
dynamically bound to a static, always-failing assert and an empty/undefined function respectively.
Wrapper around an OpenGL array or element array buffer. This buffer may be used to be attached to multiple VAOs.