![]() |
Lysa
0.0
Lysa 3D Engine
|
Intermediate description of a node parsed from a JSON scene file.
This structure preserves declaration order of properties and children to allow deterministic instantiation and to stay close to the source file layout.
Public Attributes | |
| std::string | id {} |
| bool | isResource {false} |
| bool | isCustom {false} |
| bool | isIncluded {false} |
| std::string | clazz {} |
| std::shared_ptr< SceneNode > | child {nullptr} |
| std::vector< SceneNode > | children {} |
| std::vector< std::pair< std::string, std::string > > | properties {} |
| std::string | resource {} |
| std::string | resourcePath {} |
| std::string | resourceType {} |
| bool | needDuplicate {false} |
| std::shared_ptr<SceneNode> child {nullptr} |
Single child (for linear chains) when applicable.
| std::vector<SceneNode> children {} |
Ordered list of children nodes.
| std::string clazz {} |
Fully qualified class/type name used to instantiate the node.
| std::string id {} |
Optional unique identifier for referencing between nodes.
| bool isCustom {false} |
True if the node class is provided by user code (custom).
| bool isIncluded {false} |
True if this node was included from another file.
| bool isResource {false} |
True if this node represents a reusable resource entry.
| bool needDuplicate {false} |
When true, indicates the instance must be duplicated at use.
| std::vector<std::pair<std::string, std::string> > properties {} |
Ordered list of key/value properties. Using a vector of pairs preserves JSON declaration order.
| std::string resource {} |
Resource identifier (name or URI) associated with this node.
| std::string resourcePath {} |
Resolved path to the resource on disk or inside a package.
| std::string resourceType {} |
Resource type hint (e.g., mesh, texture).