InternalAdds a SceneMesh to a specific GPU memory batch. Returns a handle for dynamically updating attributes of the mesh.
The index of the batch to which the mesh should be added.
The mesh to add.
Handle to the added mesh.
Called when the camera's view matrix is updated. Internally updates all tile RTC view matrices.
Creates a new GPU memory batch, up to the maximum number of sortedBatches allowed.
The new batch is added to the GPUMemoryEditor.dataTextures.sortedBatches array.
The index of the newly created batch, or an error if the maximum number of batches has been reached.
Retrieves a SceneMesh from a specific batch at the given index. This supports picking, where we need to map from each mesh's fragments, containing the RGBA-encoded batch and mesh indices, back to the SceneMesh instance.
Checks if there is enough memory in a specific GPU memory batch for a SceneMesh.
Releases a GPUTile back to the tile manager. The tile is destroyed once it is released as many times as it was retrieved.
The tile to release.
Removes a SceneMesh.
Handle to the mesh to remove.
Sets attributes for a mesh to apply across all views. The attributes are stored in DataTexturesLayer.meshAttribs.
The attributes to set, including optional tile index.
Sets the modeling transform matrix for a mesh. The transform is relative to the center of the mesh's tile. The matrix is stored in BatchDataTextures.meshMatrices.
The handle of the mesh.
The modeling transform matrix.
Sets attributes for a mesh within a specific view. The attributes are stored in DataTexturesLayer.meshViewAttribs.
The index of the view.
The attributes to set, including flags and color.
Sets whether a mesh is visible in a specific view.
Uploads all pending changes to GPU memory. This is typically called once per frame.
Interface for creating and updating GPU memory resources.