载入中...
搜索中...
未找到
SceneNodes.cpp
浏览该文件的文档.
A playable audio source (static buffer or streaming decoder). Not thread-safe for playback control ex...
Definition Source.h:30
Definition RenderSystem3D.h:18
Default renderable entity for declarative 2D sprites / solid quads.
Definition RenderSystem.h:65
3D rigid body (Box3D) in meter-space coordinates (+Y up by convention). Owned by a World3D; create sh...
Definition Body3D.h:16
2D rigid body (Box2D) in pixel-space coordinates. Owned by a World; create shapes with newRectangleFi...
Definition Body.h:16
ECS mount point for one scene graph (full scene or nested subtree root). Isomorphic to eve::ui::UIHos...
Definition SceneHost.h:80
bool isAncestorOfById(const std::string &ancestorId, const std::string &nodeId)
Definition SceneHost.cpp:344
bool isDescendantOfById(const std::string &nodeId, const std::string &ancestorId)
Definition SceneHost.cpp:352
int getChildCountById(const std::string &id)
Definition SceneHost.cpp:272
std::vector< std::string > collectIdsVisible(bool visible=true)
Definition SceneHost.cpp:518
std::vector< std::string > getChildIds(const std::string &parentId)
Definition SceneHost.cpp:312
std::vector< std::string > collectIdsFrom(int nodeIndex)
Definition SceneHost.cpp:500
std::vector< std::string > collectIdsByName(const std::string &name)
Definition SceneHost.cpp:514
std::string getPathById(const std::string &id)
Definition SceneHost.cpp:335
std::vector< std::string > collectIds()
Definition SceneHost.cpp:498
void walkBreadthFirst(NodeVisitFn fn)
BFS from root (or from nodeIndex), inclusive.
Definition SceneHost.cpp:414
bool linkPhysics3DAt(const std::string &hostName, const std::string &nodeId, physics::Body3D *b, const std::string &mode)
Definition SceneNodes.cpp:114
SceneHost * resolveHost(const std::string &hostName) const
Host-qualified resolution: empty hostName → currently selected host.
Definition Scene.cpp:807
std::vector< std::string > collectIdsFrom(const std::string &id)
Definition SceneNodes.cpp:573
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:245
bool linkCamera3DAt(const std::string &hostName, const std::string &nodeId, graphics::Camera3D *c)
Definition SceneNodes.cpp:123
std::vector< std::string > collectIdsByTagAt(const std::string &hostName, const std::string &tag) const
Definition SceneNodes.cpp:356
std::vector< float > getNodeRotationAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:174
std::string findIdByPath(const std::string &path)
Definition SceneNodes.cpp:546
bool setNodeQuaternionAt(const std::string &hostName, const std::string &nodeId, float qx, float qy, float qz, float qw)
Definition SceneNodes.cpp:280
bool getNodeVisibleAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:190
std::vector< float > worldToLocalAt(const std::string &hostName, const std::string &nodeId, float x, float y, float z) const
Definition SceneNodes.cpp:235
std::vector< float > getNodePositionAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:166
std::vector< float > getNodeWorldPositionAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:197
int getNodeLayerAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:376
bool linkPhysics2DAt(const std::string &hostName, const std::string &nodeId, physics::Body *b, const std::string &mode)
Definition SceneNodes.cpp:105
bool removeNodeAt(const std::string &hostName, const std::string &nodeId)
Detach node from its parent (arena node stays; rebuild to delete).
Definition SceneNodes.cpp:254
std::vector< std::string > collectChildIds(const std::string &parentId)
Definition SceneNodes.cpp:589
bool unlinkNodeAt(const std::string &hostName, const std::string &nodeId)
Remove every link on the node.
Definition SceneNodes.cpp:141
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:25
std::vector< std::string > collectIdsVisible(bool visible)
Definition SceneNodes.cpp:584
bool linkAudio3DAt(const std::string &hostName, const std::string &nodeId, audio::Source *s)
Definition SceneNodes.cpp:132
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:303
std::vector< float > getNodeWorldRotationAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:205
std::string getNodePath(const std::string &id)
Definition SceneNodes.cpp:553
std::string findIdByName(const std::string &name)
Definition SceneNodes.cpp:539
int getChildCount(const std::string &id)
Definition SceneNodes.cpp:527
bool removeNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag)
Definition SceneNodes.cpp:334
bool linkRenderable3DAt(const std::string &hostName, const std::string &nodeId, graphics::Renderable3D *r)
Definition SceneNodes.cpp:96
bool isAncestor(const std::string &ancestorId, const std::string &nodeId)
Definition SceneNodes.cpp:558
bool setNodeScale(const std::string &id, float sx, float sy, float sz)
Sets the local scale of a node.
Definition SceneNodes.cpp:49
std::string getParentId(const std::string &id)
Definition SceneNodes.cpp:520
std::vector< std::string > collectIdsByName(const std::string &name)
Definition SceneNodes.cpp:579
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:146
std::vector< float > getNodeScaleAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:182
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:497
std::vector< std::string > getNodeTagsAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:348
int linkCountAt(const std::string &hostName, const std::string &nodeId)
Definition SceneNodes.cpp:157
bool hasNodeBoundsAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:446
std::vector< std::string > walkBreadthFirstIds()
Definition SceneNodes.cpp:596
bool linkRenderable3D(const std::string &nodeId, graphics::Renderable3D *r)
Links a 3D renderable to a node in the current host.
Definition SceneNodes.cpp:75
bool setNodeLayerAt(const std::string &hostName, const std::string &nodeId, int layer)
Definition SceneNodes.cpp:367
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:37
bool unlinkNode(const std::string &nodeId)
Removes every link on a node in the current host.
Definition SceneNodes.cpp:79
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:484
bool setNodeEventHandlerAt(const std::string &hostName, ssq::Object cb)
Register a script callback for node lifecycle events on a host: cb(action, nodeId,...
Definition SceneNodes.cpp:382
std::vector< float > getNodeQuaternionAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:294
bool removeChildAt(const std::string &hostName, const std::string &parentId, const std::string &childId)
Definition SceneNodes.cpp:271
bool setNodeBoundsAt(const std::string &hostName, const std::string &nodeId, float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
Definition SceneNodes.cpp:430
bool setNodeVisible(const std::string &id, bool visible)
Shows/hides a node.
Definition SceneNodes.cpp:61
bool addChildAt(const std::string &hostName, const std::string &parentId, const std::string &childId)
Definition SceneNodes.cpp:262
std::string getChildIdAt(const std::string &parentId, int childOrdinal)
Definition SceneNodes.cpp:532
bool linkRenderable2DAt(const std::string &hostName, const std::string &nodeId, graphics::Renderable2D *r)
Definition SceneNodes.cpp:87
std::vector< float > localToWorldAt(const std::string &hostName, const std::string &nodeId, float x, float y, float z) const
Definition SceneNodes.cpp:225
std::vector< float > getNodeWorldScaleAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:215
bool isDescendant(const std::string &nodeId, const std::string &ancestorId)
Definition SceneNodes.cpp:563
bool hasNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag) const
Definition SceneNodes.cpp:341
std::vector< std::string > walkDepthFirstIds()
DFS order of ids under root (same as collectIds). Kept for script naming clarity.
Definition SceneNodes.cpp:594
std::vector< float > getNodeBoundsAt(const std::string &hostName, const std::string &nodeId) const
Definition SceneNodes.cpp:452
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:461
bool addNodeTagAt(const std::string &hostName, const std::string &nodeId, const std::string &tag)
Definition SceneNodes.cpp:327
bool linkRenderable2D(const std::string &nodeId, graphics::Renderable2D *r)
Links a 2D renderable to a node in the current host.
Definition SceneNodes.cpp:71
static void updateHost(SceneHost *host)
Definition TransformSystem.cpp:115
Region octree for 3D AABB broad-phase / scene culling. Same storage rules as QuadTree (smallest fully...
Definition Octree.h:16
bool insert(int id, float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
插入一个 AABB 对象;false 表示越界或已存在。
Definition Octree.cpp:37
Definition ScenePicking.cpp:22
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:44
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:39
std::vector< std::string > tags
Gameplay groups (Godot-style): multiple string tags per node.
Definition SceneHost.h:46