GeometryBufferArena class Geometry
Packs immutable mesh uploads into shared GPU buffers.
Pass one arena to many MeshGeometry objects to avoid one GPU allocation
per mesh. The arena uses fixed-size bump-allocated blocks, while uploads
larger than blockSizeInBytes receive a dedicated block. Geometry buffer
views retain their blocks, so the arena itself need not outlive the meshes.
This is intended for geometry loaded or generated in batches. Updatable geometry owns its ring buffers and cannot use an arena.
Constructors
- GeometryBufferArena({int blockSizeInBytes = 16 * 1024 * 1024})
- Creates an arena with the given minimum block size.
Properties
- blockSizeInBytes → int
-
Minimum size of each GPU buffer block.
final
- bufferCount → int
-
Number of GPU buffers allocated by this arena.
no setter
- capacityInBytes → int
-
Total bytes reserved across all GPU buffers.
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- usedInBytes → int
-
Bytes consumed by geometry data and alignment padding.
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited