![]() |
Murl Engine Lua Addon API
Version 1.0 beta
|
The ISurface graph node interface.
Surface nodes (not to be confused with Murl::IVideoSurface objects, which are used to represent graphical (bitmap) data) are used to define a physical property for nodes implementing the Graph::ICollidable interface.
A surface does not store any physical properties itself, because the actual physical behavior of a collision (such as bounciness or friction) greatly depends on the surface combination of the collision partners. For this reason, every possible (or at least every desired) combination of colliding surfaces must be explicitly defined via individual Graph::IContact nodes, which store the actual collision properties for a given surface pair.
Use the Graph::IStateSlot base interface to set or get the surface slot index this surface is temporarily attached to if any children are present.
See sceneGraphStatesSlotsUnits for an overview of state handling during scene graph traversal.
See Graph::ISurfaceState for activating a surface for handling collisions.
Get the constant Graph::INode interface. This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.
Murl.Graph.INode GetNodeInterface()