Game object functions

API for manipulating game objects

Namespace: dmGameObject
Include: #include <dmsdk/gameobject/gameobject.h>
ENUMS
Result result enumeration
PropertyType property types
PropertyResult property result
Playback Playback type enum
Result Create result enum
Result Update result enum
InputResult Input result enum
SceneNodePropertyType scene node property types
STRUCTS
struct ComponentTypeCreateCtx Context used when registering a new component type
struct PropertyVar property variant
struct PropertyDesc Description of a property
struct UpdateContext Update context
struct InputAction Container of input related information.
struct SceneNode scene graph traversal node
struct SceneNodeIterator scene graph traversal iterator
struct SceneNodeProperty scene traversal node property
struct SceneNodePropertyIterator scene traversal node property
FUNCTIONS
void GetComponentFromLua(lua_State* L, lua_State* index, const char* component_type, void** world, void** component, dmMessage::URL* url) Get component user data from a url
void () Callback when iterating over the properties for a ...
void ComponentTypeSetNewWorldFn(ComponentType* type,  ) set the new world callback
void ComponentTypeSetDeleteWorldFn(ComponentType* type,  ) set the world destroy callback
void ComponentTypeSetCreateFn(ComponentType* type,  ) set the component create callback
void ComponentTypeSetDestroyFn(ComponentType* type,  ) set the component destroy callback
void ComponentTypeSetInitFn(ComponentType* type,  ) set the component init callback
void ComponentTypeSetFinalFn(ComponentType* type,  ) set the component finalize callback
void ComponentTypeSetAddToUpdateFn(ComponentType* type,  ) set the component add-to-update callback
void ComponentTypeSetGetFn(ComponentType* type,  ) set the component get callback
void ComponentTypeSetRenderFn(ComponentType* type,  ) set the component render callback
void ComponentTypeSetUpdateFn(ComponentType* type,  ) set the component update callback
void ComponentTypeSetPostUpdateFn(ComponentType* type,  ) set the component post update callback
void ComponentTypeSetOnMessageFn(ComponentType* type,  ) set the component on-message callback
void ComponentTypeSetOnInputFn(ComponentType* type,  ) set the component on-input callback
void ComponentTypeSetOnReloadFn(ComponentType* type,  ) set the component on-reload callback
void ComponentTypeSetSetPropertiesFn(ComponentType* type,  ) set the component set properties callback
void ComponentTypeSetGetPropertyFn(ComponentType* type,  ) set the component get property callback
void ComponentTypeSetSetPropertyFn(ComponentType* type,  ) set the component set property callback
void ComponentTypeSetContext(ComponentType* type,  ) set the component type global context
void ComponentTypeSetReadsTransforms(ComponentType* type,  ) set the component type transform dependency flag
void ComponentTypeSetPrio(ComponentType* type,  ) set the component type prio order
void ComponentTypeSetHasUserData(ComponentType* type,  ) set the component type need for a per component instance user data
void ComponentTypeSetChilldIteratorFn(ComponentType* type,  ) set the component property iterator function
void ComponentTypeSetPropertyIteratorFn(ComponentType* type,  ) set the component property iterator function
void INVALID_INSTANCE_POOL_INDEX() Value for an invalid instance index, this must be ...
dmMessage::HSocket GetMessageSocket(dmGameObject::HCollection collection) Retrieve the message socket for the specified coll...
dmGameObject::HInstance GetCollection(dmGameObject::HInstance instance) Retrieve a collection from the specified instance
dmGameObject::HInstance New(dmGameObject::HCollection collection,  prototype_name) Create a new gameobject instance
void Delete(dmGameObject::HCollection collection, dmGameObject::HInstance instance, bool recursive) Delete gameobject instance
dmhash_t ConstructInstanceId(uint32_t index) Construct a hash of an instance id based on the in...
uint32_t AcquireInstanceIndex(dmGameObject::HColleciton collection) Retrieve an instance index from the index pool for...
void AssignInstanceIndex(uint32_t index, dmGameObject::HInstance instance) Assign an index to the instance, only if the insta...
dmhash_t GetIdentifier(dmGameObject::HInstance instance) Get instance identifier
dmGameObject::Result SetIdentifier(dmGameObject::HCollection collection, dmGameObject::HInstance instance, dmhash_t identifier) Set instance identifier. Must be unique within the...
dmGameObject::Result GetComponentId(dmGameObject::HInstance instance, uint16_t component_index,  component_id) Get component id from component index.
void SetPosition(dmGameObject::HInstance instance, dmGameObject::Point3 position) set position
dmGameObject::Point3 GetPosition(dmGameObject::HInstance instance) get position
void SetRotation(dmGameObject::HInstance instance,  position) set rotation
dmGameObject::Quat GetRotation(dmGameObject::HInstance instance) get rotation
void SetScale(dmGameObject::HInstance instance,  scale) set uniform scale
void SetScale(dmGameObject::HInstance instance,  scale) set scale
float GetUniformScale(dmGameObject::HInstance instance) get uniform scale
dmGameObject::Vector3 GetScale(dmGameObject::HInstance instance) get scale
dmGameObject::Point3 GetWorldPosition(dmGameObject::HInstance instance) get world position
dmGameObject::Quat GetWorldRotation(dmGameObject::HInstance instance) get world rotation
dmGameObject::Vector3 GetWorldScale(dmGameObject::HInstance instance) get world scale
float GetWorldUniformScale(dmGameObject::HInstance instance) get world uniform scale
dmGameObject::MAtrix4 GetWorldMatrix(dmGameObject::HInstance instance) get world matrix
dmTransform::Transform GetWorldTransform(dmGameObject::HInstance instance) get world transform
void SetBone(HImstance instance, bool bone) Set whether the instance should be flagged as a bo...
bool IsBone(HImstance instance) Check whether the instance is flagged as a bone.
 SetBoneTransforms(HImstance instance, dmTransform::Transform component_transform,  transforms,  transform_count) Set the local transforms recursively of all instan...
void DeleteBones(HInstance parent) Recursively delete all instances flagged as bones ...
bool TraverseGetRoot(dmGameObject::HRegister regist, dmGameObject::HRegister node) Gets the top node of the whole game (the main coll...
dmGameObject::SceneNodeIterator TraverseIterateChildren(dmGameObject::SceneNode* node) Get a scene node iterator for the nodes' children
bool TraverseIterateNext(dmGameObject::SceneNodeIterator* it) Step a scene node iterator to the next sibling
dmGameObject::SceneNodePropertyIterator TraverseIterateProperties(dmGameObject::SceneNode* node) Create a scene node traversal property iterator
bool TraverseIteratePropertiesNext(dmGameObject::SceneNodePropertyIterator* it) Steps the scene node traversal property iterator t...

Functions

GetComponentFromLua

void GetComponentFromLua(lua_State* L, lua_State* index, const char* component_type, void** world, void** component, dmMessage::URL* url)

Get component user data from a url. The object referenced by the url must be in the same collection as the caller.

PARAMETERS

lua_State* L Lua state
lua_State* index index to argument (a url)
const char* component_type the call will fail if the found component does not have the specified extension
void** world The world associated owning the component. May be 0
void** component The component data associated with the url. May be 0
dmMessage::URL* url The resolved url. May be 0

void ()

Callback when iterating over the properties for a component.

PARAMETERS


ComponentTypeSetNewWorldFn

void ComponentTypeSetNewWorldFn(ComponentType* type,  )

Set the new world callback. Called when a collection (i.e. a "world") is created.

PARAMETERS

ComponentType* type the type

ComponentTypeSetDeleteWorldFn

void ComponentTypeSetDeleteWorldFn(ComponentType* type,  )

Set the world destroy callback. Called when a collection (i.e. a "world") is destroyed.

PARAMETERS

ComponentType* type the type

ComponentTypeSetCreateFn

void ComponentTypeSetCreateFn(ComponentType* type,  )

Set the component create callback. Called when a component instance is created.

PARAMETERS

ComponentType* type the type

ComponentTypeSetDestroyFn

void ComponentTypeSetDestroyFn(ComponentType* type,  )

Set the component destroy callback. Called when a component instance is destroyed.

PARAMETERS

ComponentType* type the type

ComponentTypeSetInitFn

void ComponentTypeSetInitFn(ComponentType* type,  )

Set the component init callback. Called on each gameobject's components, during a gameobject's initialization.

PARAMETERS

ComponentType* type the type

ComponentTypeSetFinalFn

void ComponentTypeSetFinalFn(ComponentType* type,  )

Set the component finalize callback. Called on each gameobject's components, during a gameobject's finalization.

PARAMETERS

ComponentType* type the type

ComponentTypeSetAddToUpdateFn

void ComponentTypeSetAddToUpdateFn(ComponentType* type,  )

Set the component add-to-update callback. Called for each component instal, when the game object is spawned.

PARAMETERS

ComponentType* type the type

ComponentTypeSetGetFn

void ComponentTypeSetGetFn(ComponentType* type,  )

Set the component get callback. Called when the scripts want to retrieve the individual component user data given an url.

PARAMETERS

ComponentType* type the type

ComponentTypeSetRenderFn

void ComponentTypeSetRenderFn(ComponentType* type,  )

Set the component render callback. Called when it's time to render all component instances.

PARAMETERS

ComponentType* type the type

ComponentTypeSetUpdateFn

void ComponentTypeSetUpdateFn(ComponentType* type,  )

Set the component update callback. Called when it's time to update all component instances.

PARAMETERS

ComponentType* type the type

ComponentTypeSetPostUpdateFn

void ComponentTypeSetPostUpdateFn(ComponentType* type,  )

Set the component post update callback. Called for each collection after the update, before the render.

PARAMETERS

ComponentType* type the type

ComponentTypeSetOnMessageFn

void ComponentTypeSetOnMessageFn(ComponentType* type,  )

Set the component on-message callback. Called multiple times per frame, to flush messages.

PARAMETERS

ComponentType* type the type

ComponentTypeSetOnInputFn

void ComponentTypeSetOnInputFn(ComponentType* type,  )

Set the component on-input callback. Called once per frame, before the Update function.

PARAMETERS

ComponentType* type the type

ComponentTypeSetOnReloadFn

void ComponentTypeSetOnReloadFn(ComponentType* type,  )

Set the component on-reload callback. Called when the resource of a component instance is reloaded.

PARAMETERS

ComponentType* type the type

ComponentTypeSetSetPropertiesFn

void ComponentTypeSetSetPropertiesFn(ComponentType* type,  )

Set the component set properties callback. Called when the component instance is being spwned.

PARAMETERS

ComponentType* type the type

ComponentTypeSetGetPropertyFn

void ComponentTypeSetGetPropertyFn(ComponentType* type,  )

Set the component get property callback. Called when accessing a property via go.get()

PARAMETERS

ComponentType* type the type

ComponentTypeSetSetPropertyFn

void ComponentTypeSetSetPropertyFn(ComponentType* type,  )

Set the component set property callback. Called when accessing a property via go.set()

PARAMETERS

ComponentType* type the type

ComponentTypeSetContext

void ComponentTypeSetContext(ComponentType* type,  )

Set the component type global context. Usually set when registering the component type.

PARAMETERS

ComponentType* type the type

ComponentTypeSetReadsTransforms

void ComponentTypeSetReadsTransforms(ComponentType* type,  )

Set the component type transform dependency flag. If this flag is set, it might trigger an dmGameObject::UpdateTransforms() (if there are dirty transforms)

PARAMETERS

ComponentType* type the type

ComponentTypeSetPrio

void ComponentTypeSetPrio(ComponentType* type,  )

Set the component type prio order. Defines the update order of the component types.

PARAMETERS

ComponentType* type the type

ComponentTypeSetHasUserData

void ComponentTypeSetHasUserData(ComponentType* type,  )

Set the component type need for a per component instance user data. Defaults to true.

PARAMETERS

ComponentType* type the type

ComponentTypeSetChilldIteratorFn

void ComponentTypeSetChilldIteratorFn(ComponentType* type,  )

set the component property iterator function. Called during inspection

PARAMETERS

ComponentType* type the type

ComponentTypeSetPropertyIteratorFn

void ComponentTypeSetPropertyIteratorFn(ComponentType* type,  )

set the component property iterator function. Called during inspection

PARAMETERS

ComponentType* type the type

INVALID_INSTANCE_POOL_INDEX

void INVALID_INSTANCE_POOL_INDEX()

Value for an invalid instance index, this must be the same as defined in gamesys_ddf.proto for Create#index.

PARAMETERS


GetMessageSocket

dmMessage::HSocket GetMessageSocket(dmGameObject::HCollection collection)

Retrieve the message socket for the specified collection.

PARAMETERS

dmGameObject::HCollection collection Collection handle

RETURNS

dmMessage::HSocket The message socket of the specified collection

GetCollection

dmGameObject::HInstance GetCollection(dmGameObject::HInstance instance)

Retrieve a collection from the specified instance

PARAMETERS

dmGameObject::HInstance instance Game object instance

RETURNS

dmGameObject::HInstance The collection the specified instance belongs to

New

dmGameObject::HInstance New(dmGameObject::HCollection collection,  prototype_name)

Create a new gameobject instance

PARAMETERS

dmGameObject::HCollection collection Gameobject collection
prototype_name |type: const char*] Prototype file name. May be 0.

RETURNS

dmGameObject::HInstance New gameobject instance. NULL if any error occured

Delete

void Delete(dmGameObject::HCollection collection, dmGameObject::HInstance instance, bool recursive)

Delete gameobject instance

PARAMETERS

dmGameObject::HCollection collection Gameobject collection
dmGameObject::HInstance instance Gameobject instance
bool recursive If true, delete child hierarchy recursively in child to parent order (leaf first)

ConstructInstanceId

dmhash_t ConstructInstanceId(uint32_t index)

Construct a hash of an instance id based on the index provided.

PARAMETERS

uint32_t index The index to base the id off of.

RETURNS

dmhash_t hash of the instance id constructed.

AcquireInstanceIndex

uint32_t AcquireInstanceIndex(dmGameObject::HColleciton collection)

Retrieve an instance index from the index pool for the collection.

PARAMETERS

dmGameObject::HColleciton collection Collection from which to retrieve the instance index.

RETURNS

uint32_t index from the index pool of collection.

AssignInstanceIndex

void AssignInstanceIndex(uint32_t index, dmGameObject::HInstance instance)

Assign an index to the instance, only if the instance is not null.

PARAMETERS

uint32_t index The index to assign.
dmGameObject::HInstance instance The instance that should be assigned the index.

GetIdentifier

dmhash_t GetIdentifier(dmGameObject::HInstance instance)

Get instance identifier

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmhash_t Identifier. dmGameObject::UNNAMED_IDENTIFIER if not set.

SetIdentifier

dmGameObject::Result SetIdentifier(dmGameObject::HCollection collection, dmGameObject::HInstance instance, dmhash_t identifier)

Set instance identifier. Must be unique within the collection.

PARAMETERS

dmGameObject::HCollection collection Collection
dmGameObject::HInstance instance Instance
dmhash_t identifier Identifier

RETURNS

dmGameObject::Result RESULT_OK on success

GetComponentId

dmGameObject::Result GetComponentId(dmGameObject::HInstance instance, uint16_t component_index,  component_id)

Get component id from component index.

PARAMETERS

dmGameObject::HInstance instance Instance
uint16_t component_index Component index
component_id [type: dmhash_t* Component id as out-argument

RETURNS

dmGameObject::Result RESULT_OK if the comopnent was found

SetPosition

void SetPosition(dmGameObject::HInstance instance, dmGameObject::Point3 position)

Set gameobject instance position

PARAMETERS

dmGameObject::HInstance instance Gameobject instance
dmGameObject::Point3 position New Position

GetPosition

dmGameObject::Point3 GetPosition(dmGameObject::HInstance instance)

Get gameobject instance position

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Point3 Position

SetRotation

void SetRotation(dmGameObject::HInstance instance,  position)

Set gameobject instance rotation

PARAMETERS

dmGameObject::HInstance instance Gameobject instance
position New Position

GetRotation

dmGameObject::Quat GetRotation(dmGameObject::HInstance instance)

Get gameobject instance rotation

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Quat rotation

SetScale

void SetScale(dmGameObject::HInstance instance,  scale)

Set gameobject instance uniform scale

PARAMETERS

dmGameObject::HInstance instance Gameobject instance
scale New uniform scale

SetScale

void SetScale(dmGameObject::HInstance instance,  scale)

Set gameobject instance non-uniform scale

PARAMETERS

dmGameObject::HInstance instance Gameobject instance
scale New uniform scale

GetUniformScale

float GetUniformScale(dmGameObject::HInstance instance)

Get gameobject instance uniform scale

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

float Uniform scale

GetScale

dmGameObject::Vector3 GetScale(dmGameObject::HInstance instance)

Get gameobject instance scale

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Vector3 Non-uniform scale

GetWorldPosition

dmGameObject::Point3 GetWorldPosition(dmGameObject::HInstance instance)

Get gameobject instance world position

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Point3 World position

GetWorldRotation

dmGameObject::Quat GetWorldRotation(dmGameObject::HInstance instance)

Get gameobject instance world rotation

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Quat World rotation

GetWorldScale

dmGameObject::Vector3 GetWorldScale(dmGameObject::HInstance instance)

Get game object instance world transform

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::Vector3 World scale

GetWorldUniformScale

float GetWorldUniformScale(dmGameObject::HInstance instance)

Get game object instance uniform scale

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

float World uniform scale

GetWorldMatrix

dmGameObject::MAtrix4 GetWorldMatrix(dmGameObject::HInstance instance)

Get game object instance world transform as Matrix4.

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmGameObject::MAtrix4 World transform matrix.

GetWorldTransform

dmTransform::Transform GetWorldTransform(dmGameObject::HInstance instance)

Get game object instance world transform

PARAMETERS

dmGameObject::HInstance instance Gameobject instance

RETURNS

dmTransform::Transform World transform

SetBone

void SetBone(HImstance instance, bool bone)

Set whether the instance should be flagged as a bone. Instances flagged as bones can have their transforms updated in a batch through SetBoneTransforms. Used for animated skeletons.

PARAMETERS

HImstance instance Instance
bool bone true if the instance is a bone

IsBone

bool IsBone(HImstance instance)

Check whether the instance is flagged as a bone.

PARAMETERS

HImstance instance Instance

RETURNS

bool True if flagged as a bone

SetBoneTransforms

 SetBoneTransforms(HImstance instance, dmTransform::Transform component_transform,  transforms,  transform_count)

Set the local transforms recursively of all instances flagged as bones, starting with component with id. The order of the transforms is depth-first.

PARAMETERS

HImstance instance First Instance of the hierarchy to set
dmTransform::Transform component_transform the transform for component root
transforms Array of transforms to set depth-first for the bone instances
transform_count Size of the transforms array

RETURNS

of instances found

DeleteBones

void DeleteBones(HInstance parent)

Recursively delete all instances flagged as bones under the given parent instance. The order of deletion is depth-first, so that the children are deleted before the parents.

PARAMETERS

HInstance parent Parent instance of the hierarchy

TraverseGetRoot

bool TraverseGetRoot(dmGameObject::HRegister regist, dmGameObject::HRegister node)

Gets the top node of the whole game (the main collection)

PARAMETERS

dmGameObject::HRegister regist the full gameobject register
dmGameObject::HRegister node the node to inspect

RETURNS

bool True if successful

EXAMPLES

The following examples show how to iterate over currently loaded scene graph
void OutputNode(dmGameObject::SceneNode* node) {
    dmGameObject::SceneNodeIterator it = dmGameObject::TraverseIterateChildren(node);
    while(dmGameObject::TraverseIterateNext(&it))
    {
        OutputProperties(&it.m_Node); // see dmGameObject::TraverseIterateProperties()
        OutputNode(&it.m_Node);
    }
}

bool OutputScene(HRegister regist) {
    dmGameObject::SceneNode root;
    if (!dmGameObject::TraverseGetRoot(regist, &root))
        return false;
    OutputNode(&node);
}

TraverseIterateChildren

dmGameObject::SceneNodeIterator TraverseIterateChildren(dmGameObject::SceneNode* node)

Get a scene node iterator for the nodes' children

PARAMETERS

dmGameObject::SceneNode* node the parent node

RETURNS

dmGameObject::SceneNodeIterator the iterator

TraverseIterateNext

bool TraverseIterateNext(dmGameObject::SceneNodeIterator* it)

Step a scene node iterator to the next sibling

PARAMETERS

dmGameObject::SceneNodeIterator* it the iterator

RETURNS

bool true if successful. false if the iterator is finished

TraverseIterateProperties

dmGameObject::SceneNodePropertyIterator TraverseIterateProperties(dmGameObject::SceneNode* node)

Create a scene node traversal property iterator

PARAMETERS

dmGameObject::SceneNode* node the node to inspect

RETURNS

dmGameObject::SceneNodePropertyIterator the property iterator

EXAMPLES

The following examples show how to iterate over the properties of a node
dmGameObject::SceneNodePropertyIterator pit = TraverseIterateProperties(node);
while(dmGameObject::TraverseIteratePropertiesNext(&pit))
{
    const char* name = dmHashReverseSafe64(pit.m_Property.m_NameHash);
    switch(pit.m_Property.m_Type)
    {
    case dmGameObject::SCENE_NODE_PROPERTY_TYPE_NUMBER: ...
    ...
    }
}

TraverseIteratePropertiesNext

bool TraverseIteratePropertiesNext(dmGameObject::SceneNodePropertyIterator* it)

Steps the scene node traversal property iterator to the next property

PARAMETERS

dmGameObject::SceneNodePropertyIterator* it the iterator

RETURNS

bool True if the iterator it valid, false if the iterator is finished.

Structs

ComponentTypeCreateCtx

TYPE

struct ComponentTypeCreateCtx

Context used when registering a new component type

MEMBERS

dmConfigFile::HConfig m_Config The config file
dmResource::HFactory m_Factory The resource factory
dmGameObject::HRegister m_Register The game object registry
dmScript::HContext m_Script The shared script context
dmHashTable64 m_Contextx Mappings between names and contextx


PropertyVar

TYPE

struct PropertyVar

Property variant that holds the data for a variable

MEMBERS

dmGameObject::PropertyType m_Type property type
double m_Number A floating point value (union)
dmhash_t m_Hash A hash value (union)
const uin8_t* m_Url An URL value (union)
float m_V4 A vector4 value (union)
bool m_Bool A boolean value (union)


PropertyDesc

TYPE

struct PropertyDesc

Description of a property. If the property is externally mutable, m_ValuePtr points to the value and its length is m_ElementCount. m_Variant always reflects the value.

MEMBERS

dmhash_t m_ElementIds For composite properties (float arrays), these ids name each element
PropertyVar m_Variant Variant holding the value
float* m_ValuePtr Pointer to the value, only set for mutable values. The actual data type is described by the variant.
bool m_ReadOnly Determines whether we are permitted to write to this property.


UpdateContext

TYPE

struct UpdateContext

Update context

MEMBERS

float m_DT the delta time elapsed since last frame (seconds)


InputAction

TYPE

struct InputAction

Container of input related information.


SceneNode

TYPE

struct SceneNode

Opaque struct that holds info about the current node


SceneNodeIterator

TYPE

struct SceneNodeIterator

Opaque struct that holds info about the current position when traversing the scene


SceneNodeProperty

TYPE

struct SceneNodeProperty

Struct that holds info about the current position when traversing the scene

MEMBERS

dmhash_t m_NameHash name
dmGameObject::SceneNodePropertyType m_Type type
union m_Value value
m_Number
double floating point number
m_Hash
dmhash_t The hashed value.
m_URL
char[1024] The text representation of the url (if reverse hashes are enabled)
m_V4
float[4] Used for Vector3, Vector4 and Quat
m_Bool
bool A boolean value
m_Text
const char* Text from a text property


SceneNodePropertyIterator

TYPE

struct SceneNodePropertyIterator

Holds the property

MEMBERS

dmGameObject::SceneNodeProperty m_Property property


Enums

Result

Result enumeration.

dmGameObject::RESULT_OK
dmGameObject::RESULT_OUT_OF_RESOURCES
dmGameObject::RESULT_ALREADY_REGISTERED
dmGameObject::RESULT_IDENTIFIER_IN_USE
dmGameObject::RESULT_IDENTIFIER_ALREADY_SET
dmGameObject::RESULT_COMPONENT_NOT_FOUND
dmGameObject::RESULT_MAXIMUM_HIEARCHICAL_DEPTH
dmGameObject::RESULT_INVALID_OPERATION
dmGameObject::RESULT_RESOURCE_TYPE_NOT_FOUND
dmGameObject::RESULT_BUFFER_OVERFLOW
dmGameObject::RESULT_UNKNOWN_ERROR

PropertyType

Property types.

dmGameObject::PROPERTY_TYPE_NUMBER
dmGameObject::PROPERTY_TYPE_HASH
dmGameObject::PROPERTY_TYPE_URL
dmGameObject::PROPERTY_TYPE_VECTOR3
dmGameObject::PROPERTY_TYPE_VECTOR4
dmGameObject::PROPERTY_TYPE_QUAT
dmGameObject::PROPERTY_TYPE_BOOLEAN
dmGameObject::PROPERTY_TYPE_COUNT

PropertyResult

Property result.

dmGameObject::PROPERTY_RESULT_OK
dmGameObject::PROPERTY_RESULT_NOT_FOUND
dmGameObject::PROPERTY_RESULT_INVALID_FORMAT
dmGameObject::PROPERTY_RESULT_UNSUPPORTED_TYPE
dmGameObject::PROPERTY_RESULT_TYPE_MISMATCH
dmGameObject::PROPERTY_RESULT_COMP_NOT_FOUND
dmGameObject::PROPERTY_RESULT_INVALID_INSTANCE
dmGameObject::PROPERTY_RESULT_BUFFER_OVERFLOW
dmGameObject::PROPERTY_RESULT_UNSUPPORTED_VALUE
dmGameObject::PROPERTY_RESULT_UNSUPPORTED_OPERATION
dmGameObject::PROPERTY_RESULT_RESOURCE_NOT_FOUND

Playback

Playback type enum


Result

Create result enum.

dmGameObject::CREATE_RESULT_OK
dmGameObject::CREATE_RESULT_UNKNOWN_ERROR

Result

Update result enum.

dmGameObject::UPDATE_RESULT_OK
dmGameObject::UPDATE_RESULT_UNKNOWN_ERROR

InputResult

Input result enum

INPUT_RESULT_IGNORED = 0
INPUT_RESULT_CONSUMED = 1
INPUT_RESULT_UNKNOWN_ERROR = -1000

SceneNodePropertyType

scene node property types

dmGameObject::SCENE_NODE_PROPERTY_TYPE_NUMBER
dmGameObject::SCENE_NODE_PROPERTY_TYPE_HASH
dmGameObject::SCENE_NODE_PROPERTY_TYPE_URL
dmGameObject::SCENE_NODE_PROPERTY_TYPE_VECTOR3
dmGameObject::SCENE_NODE_PROPERTY_TYPE_VECTOR4
dmGameObject::SCENE_NODE_PROPERTY_TYPE_QUAT
dmGameObject::SCENE_NODE_PROPERTY_TYPE_BOOLEAN
dmGameObject::SCENE_NODE_PROPERTY_TYPE_TEXT
dmGameObject::SCENE_NODE_PROPERTY_TYPE_COUNT