Create a new BatchManager instance.
The graphics device used by the batch manager.
The entity under which batched models are added.
The scene that the batch manager affects.
Adds new global batch group.
Custom name.
Is this batch group dynamic? Will these objects move/rotate/scale after being batched?
Maximum size of any dimension of a bounding box around batched objects. BatchManager#prepare will split objects into local groups based on this size.
Optional
id: numberOptional custom unique id for the group (will be generated automatically otherwise).
Optional
layers: number[]Optional layer ID array. Default is [LAYERID_WORLD]. The whole batch group will belong to these layers. Layers of source models will be ignored.
Group object.
Clones a batch. This method doesn't rebuild batch geometry, but only creates a new model and batch objects, linked to different source mesh instances.
A batch object.
New mesh instances.
New batch object.
Takes a mesh instance list that has been prepared by BatchManager#prepare, and returns a Batch object. This method assumes that all mesh instances provided can be rendered in a single draw call.
Input list of mesh instances.
Is it a static or dynamic batch? Will objects be transformed after batching?
Optional
batchGroupId: numberLink this batch to a specific batch group. This is done automatically with default batches.
The resulting batch object.
Destroys all batches and creates new based on scene models. Hides original models. Called by engine automatically on app start, and if batchGroupIds on models are changed.
Optional
groupIds: number[]Optional array of batch group IDs to update. Otherwise all groups are updated.
Retrieves a BatchGroup object with a corresponding name, if it exists, or null otherwise.
Name.
The batch group matching the name or null if not found.
Takes a list of mesh instances to be batched and sorts them into lists one for each draw call. The input list will be split, if:
Input list of mesh instances
Are we preparing for a dynamic batch? Instance count will matter then (otherwise not).
Maximum size of any dimension of a bounding box around batched objects.
Are we batching UI elements or sprites This is useful to keep a balance between the number of draw calls and the number of drawn triangles, because smaller batches can be hidden when not visible in camera.
An array of arrays of mesh instances, each valid to pass to BatchManager#create.
Glues many mesh instances into a single one for better performance.