Optional ReadonlychildDirect child count for group-like nodes.
Used as a cheap heuristic before compactForInstancing (skip compaction for tiny templates). Leaf entities may omit this; callers treat a missing value as unknown and favor compacting.
The name of the layer referenced by this entity
Object id of the associated entity in drawing database. When adding this entity into scene, do remember setting the value of this property.
The object Id of the owner of the object. When adding this entity into scene, do remember setting the value of this property.
An object that can be used to store custom data about the entity.
Object's visibility
Adds one child entity for the current entity
The child entity to add
Apply the matrix transform to the object and updates the object's position, rotation and scale.
Input the matrix to apply
OptionalcompactOptionally merges same-material drawable leaves so later fastDeepClone copies far fewer geometries.
Used by block-reference template caching. Must be called before the INSERT transform is applied while the entity is still at identity. Implementations that do not support compaction may omit this method.
Nothing.
OptionaldisposeOptionally releases GPU/CPU resources owned by this entity.
Used when clearing the block rendering cache. Implementations that do not own disposable resources may omit this method. Shared materials from a style cache should not be disposed here unless the implementation owns them.
Nothing.
Return a clone of this object and its direct children (not all descendants). So it means that you need to gurantee the object is flatten by call method 'flatten' before calling this function.
Implementations may deep-clone geometry, or (for immutable block-template caches) alias leaf buffers and mark them so instance dispose skips them. Materials are reused and not deeply cloned.
OptionalshareGeometry: booleanWhen true, leaf drawables may alias source geometry buffers instead of deep-cloning them.
Return a clone of this object and optionally all descendants.
OptionalprepareOptionally prepares this entity as an immutable block-template cache entry.
Typical implementations finalize deferred drawables and drop detached source-entity shells without merging leaves. Used by rendering cache miss paths before fastDeepClone for scene use.
Nothing.
Interface that all of display objects need to implement.