|
Nebula
|
A model resource consists of nodes, each of which inhibit some information read from an .n3 file.
Contains two contexts, one for observers and one for observables.
The transform node contains just a hierarchical transform.
The shader state node wraps the shader associated with a certain primitive node, or group of primitive nodes.
A primitive node contains a mesh resource and a primitive group id.
Classes | |
| class | CharacterNode |
| class | CharacterSkinNode |
| struct | JointMask |
| class | ModelContext |
| struct | ModelCreateInfo |
| struct | ModelId |
| class | ModelLoader |
| class | ModelNode |
| struct | ModelStreamingData |
| struct | NodeInstanceRange |
| class | ParticleSystemNode |
| class | PrimitiveNode |
| class | ShaderStateNode |
| struct | Take |
| class | TransformNode |
Typedefs | |
| typedef Ids::IdAllocator< Util::Array< Models::ModelNode * >, Util::FixedArray< JointMask >, Util::FixedArray< Take > > | ModelAllocator |
Enumerations | |
| enum | NodeType { CharacterNodeType , TransformNodeType , ShaderStateNodeType , PrimitiveNodeType , ParticleSystemNodeType , CharacterSkinNodeType , NumNodeTypes } |
| enum | NodeBits { NoBits = N_BIT(0) , HasTransformBit = N_BIT(1) , HasStateBit = N_BIT(2) } |
| enum class | LoadBits { NoBits = N_BIT(0) , MeshBit = N_BIT(1) , AnimBit = N_BIT(2) , MaterialBit = N_BIT(3) } |
| enum | { Model_Nodes , Model_JointMasks , Model_Takes } |
| enum class | NodeInstanceFlags { NodeInstance_Active = N_BIT(1) , NodeInstance_LodActive = N_BIT(2) , NodeInstance_AlwaysVisible = N_BIT(3) , NodeInstance_Visible = N_BIT(4) , NodeInstance_Moved = N_BIT(5) } |
Functions | |
| const ModelId | CreateModel (const ModelCreateInfo &info) |
| create model (resource) | |
| void | DestroyModel (const ModelId id) |
| discard model (resource) | |
| const Util::Array< Models::ModelNode * > & | ModelGetNodes (const ModelId id) |
| Get model nodes. | |
| void | ModelSetNodes (const ModelId id, Util::Array< Models::ModelNode * > &nodes) |
| Set model nodes. | |
| void | ModelSetJointMasks (const ModelId id, const Util::FixedArray< JointMask > &masks) |
| Set model joint masks. | |
| void | ModelSetTakes (const ModelId id, const Util::FixedArray< Take > &takes) |
| Set model takes. | |
| __ImplementEnumBitOperators (NodeBits) | |
| __ImplementEnumBitOperators (LoadBits) | |
| const Math::bbox & | ModelGetBoundingBox (const ModelId id) |
| Get model bounding box. | |
| __ImplementContext (ModelContext, ModelContext::modelContextAllocator) | |
| __ImplementEnumBitOperators (NodeInstanceFlags) | |
| __ImplementClass (Models::ModelLoader, 'SMPO', Resources::ResourceLoader) | |
Variables | |
| ModelAllocator | modelAllocator |
| Threading::LockFreeQueue< std::function< void()> > | setupCompleteQueue |
| typedef Ids::IdAllocator< Util::Array<Models::ModelNode*>, Util::FixedArray<JointMask>, Util::FixedArray<Take>> Models::ModelAllocator |
|
strong |
| enum Models::NodeBits |
|
strong |
| enum Models::NodeType |
| Models::__ImplementClass | ( | Models::ModelLoader | , |
| 'SMPO' | , | ||
| Resources::ResourceLoader | ) |
| Models::__ImplementContext | ( | ModelContext | , |
| ModelContext::modelContextAllocator | ) |
| const ModelId Models::CreateModel | ( | const ModelCreateInfo & | info | ) |
create model (resource)
| void Models::DestroyModel | ( | const ModelId | id | ) |
discard model (resource)
| const Math::bbox & Models::ModelGetBoundingBox | ( | const ModelId | id | ) |
Get model bounding box.
| const Util::Array< Models::ModelNode * > & Models::ModelGetNodes | ( | const ModelId | id | ) |
Get model nodes.
Get nodes.
| void Models::ModelSetJointMasks | ( | const ModelId | id, |
| const Util::FixedArray< JointMask > & | masks ) |
Set model joint masks.
| void Models::ModelSetNodes | ( | const ModelId | id, |
| Util::Array< Models::ModelNode * > & | nodes ) |
Set model nodes.
| void Models::ModelSetTakes | ( | const ModelId | id, |
| const Util::FixedArray< Take > & | takes ) |
Set model takes.
| ModelAllocator Models::modelAllocator |
| Threading::LockFreeQueue<std::function<void()> > Models::setupCompleteQueue |