Object constructor, requires a context and a valid identifier.
Valid context to create the object for.
Meaningful name for identification of this instance.
Cached internal format of the renderbuffer for efficient resize.
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.
Cached sample count for multisampling.
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 renderbuffer, 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.
Convenience accessor: returns the height of the texture object.
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.
Readonly access to the internal format of the renderbuffer object. This can only be changed by re-initialization.
Convenience accessor: if multisampling is enabled.
Read-only access to the WebGL object handle.
Convenience accessor: sample count for multisampling.
Convenience getter for the 2-tuple containing the render buffer's width and height.
Cached object status used to derive validity when initialized.
Convenience accessor: returns the width of the texture object.
Bind the renderbuffer object.
Create a renderbuffer object on the GPU.
Initial width of the renderbuffer.
Initial height of the renderbuffer.
Internal format of the renderbuffer data.
Delete the renderbuffer object on the GPU. This should have the reverse effect of create
.
Increment the reference count of this object.
This should be used to implement efficient resize for all attachments.
Targeted/new width of the renderbuffer in px.
Targeted/new height of the renderbuffer in px.
Allows to skip binding the renderbuffer (e.g., when binding is handled outside).
Allows to skip unbinding the renderbuffer (e.g., when binding is handled outside).
Unbind the renderbuffer object.
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.
WebGL Renderbuffer implementation providing size accessors and requiring for bind, unbind, resize, validity, and initialization implementations.