Function


mhcSceneInit

Initializes Scene

Syntax

#include <mhc/Scene.h>
void mhcSceneInit( MhcScene *scene_ptr,
                   const u32 max_modules,
                   const u32 max_instances,
                   const u32 transform_buffer_size )

Description

Initializes Scene

See Also

MhcScene

mhcSceneDestroy

Destroys Scene

Syntax

#include <mhc/Scene.h>
void mhcSceneDestroy( MhcScene *scene_ptr )

Description

Destroys Scene

See Also

MhcScene

mhcSceneGetNode

Returns pointer to Node

Syntax

#include <mhc/Scene.h>
MhcNode *mhcSceneGetNode( MhcScene *scene_ptr,
                          const u32 module_id,
                          const char *node_name )

Description

Returns pointer to Node

See Also

MhcScene

mhcSceneEvaluate

Evaluates Scene and generates rendering object.

Syntax

#include <mhc/Scene.h>
int mhcSceneEvaluate( MhcScene *scene_ptr,
                      MrnScene *mrn_scene_ptr )

Description

Evaluates Scene and generates rendering object.
The only difference from mhcSceneEvaluateFlat( ) is that this consideres Module[0] the root.

See Also

MhcScene MrnScene

mhcSceneEvaluateFlat

Evaluates Scene and generates rendering object.

Syntax

#include <mhc/Scene.h>
int mhcSceneEvaluateFlat( MhcScene *scene_ptr,
                          MrnScene *mrn_scene_ptr )

Description

Evaluates Scene and generates rendering object.
The only difference from mhcSceneEvaluate( ) is that this considers all of the Module the root.

See Also

MhcScene MrnScene

mhcSceneCreateInstance

Generates an instance

Syntax

#include <mhc/Scene.h>
MhcInstance *mhcSceneCreateInstance( MhcScene *scene_ptr )

Description

Generates an instance

See Also

MhcScene

mhcScenePutInstance

Evaluates an instance and adds it to the list.

Syntax

#include <mhc/Scene.h>
void mhcScenePutInstance( MhcScene *scene_ptr,
                          MhcInstance *instance_ptr )

Description

Evaluates an instance and adds it to the list.

See Also

MhcScene MhcInstance

mhcSceneBind

Binds all Scene with module.

Syntax

#include <mhc/Scene.h>
void mhcSceneBind( MhcScene *scene_ptr )

Description

Binds all Scene with module.

See Also

MhcScene

mhcSceneAllocTransformBuffer

Allocates dynamic buffer needed for coordinate conversion.

Syntax

#include <mhc/Scene.h>
float *mhcSceneAllocTransformBuffer( MhcScene *scene_ptr, const u32 size )

Description

Allocates dynamic buffer needed for coordinate conversion.

See Also

MhcScene

Macro



_mhcSceneGetModule

Returns pointer to Module.

Syntax

#include <mhc/Scene.h>
_mhcSceneGetModule(scene_ptr,id)

Description

Returns pointer to Module.

_mhcSceneAllocVector3f

Allocates MvmVector3f to the buffer for coordinate conversion.

Syntax

#include <mhc/Scene.h>
_mhcSceneAllocVector3f(scene_ptr)

Description

Allocates MvmVector3f to the buffer for coordinate conversion.

_mhcSceneAllocMatrix33f

Allocates MvbMatrix33f to the buffer for coordinate conversion.

Syntax

#include <mhc/Scene.h>
_mhcSceneAllocMatrix33f(scene_ptr)

Description

Allocates MvbMatrix33f to the buffer for coordinate conversion.

Structure



MhcScene

#include <mhc/Scene.h>
typedef struct _MhcScene
{
    u32                         max_modules;
    MhcModule                   *module_array;
    u32                         max_instances;
    struct _MhcInstance         *instance_array;
    float                       *transform_buffer;
    float                       *transform_ptr;
    MhcModuleNode               *root_node_array;
    MhcNode                     *camera_node_ptr_array[ MHC_SCENE_MAX_GROUPS ];
    MhcNodeList                 wait_node_list;
    MhcInstanceList             free_instance_list;
    MhcInstanceList             ready_instance_list;
    struct _MrnScene            *mrn_scene_ptr;
    u32                         icon_visibility;
} MhcScene;

See Also

MhcModule MhcModuleNode MhcNode MrnScene