载入中...
搜索中...
未找到
SceneNodes.cpp
浏览该文件的文档.
bool ok() const noexcept
Whether this result represents a non-failure outcome.
Definition Result.h:255
A playable audio source (static buffer or streaming decoder). Not thread-safe for playback control ex...
Definition Source.h:30
Default renderable entity for declarative 2D sprites / solid quads.
Definition RenderSystem.h:71
3D rigid body (Box3D) in meter-space coordinates (+Y up by convention). Owned by a World3D; create pr...
Definition Body3D.h:24
2D rigid body (Box2D) in pixel-space coordinates. Owned by a World; create shapes with newRectangleFi...
Definition Body.h:21
ECS mount point for one scene graph (full scene or nested subtree root). Isomorphic to eve::ui::UIHos...
Definition SceneHost.h:89
bool isAncestorOfById(const std::string &ancestorId, const std::string &nodeId)
Definition SceneHost.cpp:446
bool isDescendantOfById(const std::string &nodeId, const std::string &ancestorId)
Definition SceneHost.cpp:454
int getChildCountById(const std::string &id)
Definition SceneHost.cpp:374
std::vector< std::string > collectIdsVisible(bool visible=true)
Definition SceneHost.cpp:620
std::vector< std::string > getChildIds(const std::string &parentId)
Definition SceneHost.cpp:414
std::vector< std::string > collectIdsFrom(int nodeIndex)
Definition SceneHost.cpp:602
std::vector< std::string > collectIdsByName(const std::string &name)
Definition SceneHost.cpp:616
std::string getPathById(const std::string &id)
Definition SceneHost.cpp:437
std::vector< std::string > collectIds()
Definition SceneHost.cpp:600
void walkBreadthFirst(NodeVisitFn fn)
BFS from root (or from nodeIndex), inclusive.
Definition SceneHost.cpp:516
bool linkPhysics3DAt(const std::string &hostName, const std::string &nodeId, physics::Body3D *b, const std::string &mode)
Link physics 3 d at.
Definition SceneNodes.cpp:125
SceneHost * resolveHost(const std::string &hostName) const
Host-qualified resolution: empty hostName → currently selected host.
Definition Scene.cpp:948
std::vector< std::string > collectIdsFrom(const std::string &id)
Collect ids from.
Definition SceneNodes.cpp:584
bool setNodeParentAt(const std::string &hostName, const std::string &childId, const std::string &parentId)
Reparent by id; empty parentId detaches. Cycle-safe.
Definition SceneNodes.cpp:256
bool linkCamera3DAt(const std::string &hostName, const std::string &nodeId, graphics::Camera3D *c)
Link camera 3 d at.
Definition SceneNodes.cpp:134
std::vector< std::string > collectIdsByTagAt(const std::string &hostName, const std::string &tag) const
Collect ids by tag at.
Definition SceneNodes.cpp:367
std::vector< float > getNodeRotationAt(const std::string &hostName, const std::string &nodeId) const
Returns the node rotation at.
Definition SceneNodes.cpp:185
bool setNodeQuaternionAt(const std::string &hostName, const std::string &nodeId, float qx, float qy, float qz, float qw)
Sets the node quaternion at.
Definition SceneNodes.cpp:291
bool getNodeVisibleAt(const std::string &hostName, const std::string &nodeId) const
Returns the node visible at.
Definition SceneNodes.cpp:201
std::vector< float > worldToLocalAt(const std::string &hostName, const std::string &nodeId, float x, float y, float z) const
World to local at.
Definition SceneNodes.cpp:246
std::vector< float > getNodePositionAt(const std::string &hostName, const std::string &nodeId) const
Returns the node position at.
Definition SceneNodes.cpp:177
std::vector< float > getNodeWorldPositionAt(const std::string &hostName, const std::string &nodeId) const
Returns the node world position at.
Definition SceneNodes.cpp:208
int getNodeLayerAt(const std::string &hostName, const std::string &nodeId) const
Returns the node layer at.
Definition SceneNodes.cpp:387
bool linkPhysics2DAt(const std::string &hostName, const std::string &nodeId, physics::Body *b, const std::string &mode)
Link physics 2 d at.
Definition SceneNodes.cpp:116
bool removeNodeAt(const std::string &hostName, const std::string &nodeId)
Detach node from its parent (arena node stays; rebuild to delete).
Definition SceneNodes.cpp:265
std::vector< std::string > collectChildIds(const std::string &parentId)
Collect child ids.
Definition SceneNodes.cpp:600
bool unlinkNodeAt(const std::string &hostName, const std::string &nodeId)
Remove every link on the node.
Definition SceneNodes.cpp:152
bool setNodePosition(const std::string &id, float x, float y, float z)
Script-friendly TRS setters on the current host; each marks the transform dirty.
Definition SceneNodes.cpp:36
std::vector< std::string > collectIdsVisible(bool visible)
Collect ids visible.
Definition SceneNodes.cpp:595
bool linkAudio3DAt(const std::string &hostName, const std::string &nodeId, audio::Source *s)
Link audio 3 d at.
Definition SceneNodes.cpp:143
bool setNodeLookAtAt(const std::string &hostName, const std::string &nodeId, float tx, float ty, float tz)
Orient node so its local +Z axis points at (tx,ty,tz).
Definition SceneNodes.cpp:314
std::vector< float > getNodeWorldRotationAt(const std::string &hostName, const std::string &nodeId) const
Returns the node world rotation at.
Definition SceneNodes.cpp:216
bool removeNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag)
Removes node tag at.
Definition SceneNodes.cpp:345
bool linkRenderable3DAt(const std::string &hostName, const std::string &nodeId, graphics::Renderable3D *r)
Link renderable 3 d at.
Definition SceneNodes.cpp:107
bool isAncestor(const std::string &ancestorId, const std::string &nodeId)
True when ancestor.
Definition SceneNodes.cpp:569
bool setNodeScale(const std::string &id, float sx, float sy, float sz)
Sets the local scale of a node.
Definition SceneNodes.cpp:60
std::vector< std::string > collectIdsByName(const std::string &name)
Collect ids by name.
Definition SceneNodes.cpp:590
bool unlinkNodeKindAt(const std::string &hostName, const std::string &nodeId, const std::string &kind)
Remove links of one kind ("renderable2d"|"renderable3d"|"physics2d"|...).
Definition SceneNodes.cpp:157
std::vector< float > getNodeScaleAt(const std::string &hostName, const std::string &nodeId) const
Returns the node scale at.
Definition SceneNodes.cpp:193
std::string nodeIdFromSpatialIdAt(const std::string &hostName, int index) const
Map a spatial-index id (arena index) back to a node id.
Definition SceneNodes.cpp:508
std::vector< std::string > getNodeTagsAt(const std::string &hostName, const std::string &nodeId) const
Returns the node tags at.
Definition SceneNodes.cpp:359
int linkCountAt(const std::string &hostName, const std::string &nodeId)
Link count at.
Definition SceneNodes.cpp:168
bool hasNodeBoundsAt(const std::string &hostName, const std::string &nodeId) const
True when node bounds at.
Definition SceneNodes.cpp:457
std::vector< std::string > walkBreadthFirstIds()
Walk breadth first ids.
Definition SceneNodes.cpp:607
bool linkRenderable3D(const std::string &nodeId, graphics::Renderable3D *r)
Links a 3D renderable to a node in the current host.
Definition SceneNodes.cpp:86
bool setNodeLayerAt(const std::string &hostName, const std::string &nodeId, int layer)
Sets the node layer at.
Definition SceneNodes.cpp:378
bool setNodeRotation(const std::string &id, float yaw, float pitch, float roll)
Sets the local rotation (yaw/pitch/roll in degrees) of a node.
Definition SceneNodes.cpp:48
bool unlinkNode(const std::string &nodeId)
Removes every link on a node in the current host.
Definition SceneNodes.cpp:90
bool syncSpatialIndexAt(const std::string &hostName, spatial::Octree *ot) const
Insert every bounded node's world AABB into an octree (id = arena index).
Definition SceneNodes.cpp:495
bool setNodeEventHandlerAt(const std::string &hostName, ssq::Object cb)
Register a script callback for node lifecycle events on a host: The callback receives action,...
Definition SceneNodes.cpp:393
std::vector< float > getNodeQuaternionAt(const std::string &hostName, const std::string &nodeId) const
Returns the node quaternion at.
Definition SceneNodes.cpp:305
bool removeChildAt(const std::string &hostName, const std::string &parentId, const std::string &childId)
Removes child at.
Definition SceneNodes.cpp:282
bool setNodeBoundsAt(const std::string &hostName, const std::string &nodeId, float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
Sets the node bounds at.
Definition SceneNodes.cpp:441
bool setNodeVisible(const std::string &id, bool visible)
Shows/hides a node.
Definition SceneNodes.cpp:72
bool addChildAt(const std::string &hostName, const std::string &parentId, const std::string &childId)
Adds child at.
Definition SceneNodes.cpp:273
std::string getChildIdAt(const std::string &parentId, int childOrdinal)
Returns the child id at.
Definition SceneNodes.cpp:543
bool linkRenderable2DAt(const std::string &hostName, const std::string &nodeId, graphics::Renderable2D *r)
Link renderable 2 d at.
Definition SceneNodes.cpp:98
std::vector< float > localToWorldAt(const std::string &hostName, const std::string &nodeId, float x, float y, float z) const
Local to world at.
Definition SceneNodes.cpp:236
std::vector< float > getNodeWorldScaleAt(const std::string &hostName, const std::string &nodeId) const
Returns the node world scale at.
Definition SceneNodes.cpp:226
bool isDescendant(const std::string &nodeId, const std::string &ancestorId)
True when descendant.
Definition SceneNodes.cpp:574
bool hasNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag) const
True when node tag at.
Definition SceneNodes.cpp:352
std::vector< std::string > walkDepthFirstIds()
DFS order of ids under root (same as collectIds). Kept for script naming clarity.
Definition SceneNodes.cpp:605
std::vector< float > getNodeBoundsAt(const std::string &hostName, const std::string &nodeId) const
Returns the node bounds at.
Definition SceneNodes.cpp:463
std::string pickRayAt(const std::string &hostName, float ox, float oy, float oz, float dx, float dy, float dz) const
Nearest node id hit by a world ray (nodes with bounds), or "".
Definition SceneNodes.cpp:472
bool addNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag)
Adds node tag at.
Definition SceneNodes.cpp:338
bool linkRenderable2D(const std::string &nodeId, graphics::Renderable2D *r)
Links a 2D renderable to a node in the current host.
Definition SceneNodes.cpp:82
Region octree for 3D AABB broad-phase / scene culling. Same storage rules as QuadTree (smallest fully...
Definition Octree.h:18
bool insert(int id, float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
Inserts an item AABB; false if out of bounds or id already present.
Definition Octree.cpp:37
Definition AvatarInstance.h:33
bool rayAABB(const glm::vec3 &o, const glm::vec3 &d, const AABB3f &b, float &t0, float &t1)
Slab ray-AABB intersection; fills entry/exit t (t0 <= t1).
Definition SceneBounds.h:49
AABB3f worldBoundsOf(const SceneNode &n)
World-space AABB of a node's local bounds (8 corners through world matrix).
Definition SceneBounds.h:26
Retained scene node (arena). Conceptual GameObject; isomorphic to eve::ui::UINode.
Definition SceneHost.h:46