I3DShScene Struct Reference
[Shell Interfaces]

Inheritance diagram for I3DShScene:

IMCUnknown List of all members.

Public Member Functions

virtual MCCOMErr MCCOMAPI SetScene (I3DShScene *topScene)=0
virtual uint32 MCCOMAPI Get3DObjectsCount ()=0
virtual MCCOMErr MCCOMAPI Get3DObjectByIndex (I3DShObject **object, uint32 index)=0
virtual MCCOMErr MCCOMAPI Get3DObjectByName (I3DShObject **object, const TMCString &name)=0
virtual MCCOMErr MCCOMAPI Insert3DObject (I3DShObject *object)=0
virtual MCCOMErr MCCOMAPI Rename3DObject (I3DShObject *object, TMCString &newName)=0
virtual MCCOMErr MCCOMAPI Remove3DObject (I3DShObject *object)=0
virtual MCCOMErr MCCOMAPI Changed3DObject (I3DShObject *object)=0
virtual MCCOMErr MCCOMAPI Replace3DObject (I3DShObject *oldObject, I3DShObject *newObject)=0
virtual uint32 MCCOMAPI Find3DObject (I3DShObject *object)=0
virtual uint32 MCCOMAPI GetMasterShadersCount ()=0
virtual MCCOMErr MCCOMAPI GetMasterShaderByIndex (I3DShMasterShader **masterShader, uint32 index)=0
virtual MCCOMErr MCCOMAPI GetMasterShaderByName (I3DShMasterShader **masterShader, const TMCString &name)=0
virtual MCCOMErr MCCOMAPI InsertMasterShader (I3DShMasterShader *masterShader)=0
virtual MCCOMErr MCCOMAPI RenameMasterShader (I3DShMasterShader *masterShader, TMCString &newName)=0
virtual MCCOMErr MCCOMAPI RemoveMasterShader (I3DShMasterShader *masterShader)=0
virtual MCCOMErr MCCOMAPI RemoveDuplicatedAndUnusedMasterShaders (boolean justRemoveDuplicatedLink=false, boolean lookForReferenceShaders=true)=0
virtual uint32 MCCOMAPI FindMasterShader (I3DShMasterShader *masterShader)=0
virtual MCCOMErr MCCOMAPI ChangedMasterShader (I3DShMasterShader *masterShader)=0
virtual boolean MCCOMAPI IsEqualMasterShader (TMCCountedPtr< I3DShMasterShader > &inOutMasterShader)=0
virtual void MCCOMAPI GetDefaultMasterShader (I3DShMasterShader **masterShader)=0
virtual uint32 MCCOMAPI GetMasterSoundCount ()=0
virtual MCCOMErr MCCOMAPI GetMasterSoundByIndex (IShMasterSound **masterSound, uint32 index)=0
virtual MCCOMErr MCCOMAPI GetMasterSoundByName (IShMasterSound **masterSound, const TMCString &name)=0
virtual MCCOMErr MCCOMAPI InsertMasterSound (IShMasterSound *masterSound)=0
virtual MCCOMErr MCCOMAPI RemoveMasterSound (IShMasterSound *masterSound)=0
virtual I3DShSoundtrack * GetSoundtrack ()=0
virtual MCCOMErr MCCOMAPI GetTreeRoot (I3DShGroup **group)=0
virtual MCCOMErr MCCOMAPI SetTreeRoot (I3DShGroup *universe)=0
virtual MCCOMErr MCCOMAPI CreateTreeRootIfNone ()=0
virtual MCCOMErr MCCOMAPI GetTreeElementByName (I3DShTreeElement **treeElement, const TMCString &name)=0
virtual uint32 MCCOMAPI GetInstanceListCount ()=0
virtual MCCOMErr MCCOMAPI GetInstanceByIndex (I3DShInstance **instance, uint32 index)=0
virtual uint32 MCCOMAPI GetLightsourcesCount ()=0
virtual MCCOMErr MCCOMAPI GetLightsourceByIndex (I3DShLightsource **light, uint32 index)=0
virtual uint32 MCCOMAPI GetCamerasCount ()=0
virtual MCCOMErr MCCOMAPI GetCameraByIndex (I3DShCamera **camera, uint32 index)=0
virtual MCCOMErr MCCOMAPI CreateRenderingCameraIfNone (uint32 cameraType, boolean createDistantLight)=0
virtual MCCOMErr MCCOMAPI AnimationDataChanged ()=0
virtual MCCOMErr MCCOMAPI SetTime (MicroTick inTime, boolean inUpdateViews, boolean isContinuePlaying=false, boolean dontRecompute=false, boolean forceSetTime=false)=0
virtual MicroTick MCCOMAPI GetTime (real *ioSeconds)=0
virtual MCCOMErr MCCOMAPI SetAllocatedTime (MicroTick inAllocatedTime, boolean inUpdateViews)=0
virtual MicroTick MCCOMAPI GetAllocatedTime (real *ioSeconds)=0
virtual MCCOMErr MCCOMAPI GetTimeManager (I3DShTimeManager **timeManager)=0
virtual MCCOMErr MCCOMAPI GetFullPathName (TMCString &pathName)=0
virtual MCCOMErr MCCOMAPI GetTreeElementFromFullName (I3DShTreeElement **treeElement, TMCString &fullName)=0
virtual boolean MCCOMAPI DetectCollisionWithObject (I3DShTreeElement *object1, I3DShTreeElement *object2, CollisionInfo &ci, int16 SurfaceFidelity, boolean UseVelocity, TVector3 Velocity1, TVector3 Velocity2)=0
virtual boolean MCCOMAPI DetectCollisionWithScene (I3DShTreeElement *object1, CollisionInfo &ci, int16 SurfaceFidelity, boolean UseVelocity, TVector3 Velocity1, TVector3 Velocity2)=0
virtual MCCOMErr MCCOMAPI GetComment (TMCString &comment)=0
virtual MCCOMErr MCCOMAPI SetComment (const TMCString &comment)=0
virtual uint32 MCCOMAPI GetDataComponentsCount ()=0
virtual MCCOMErr MCCOMAPI GetDataComponentByIndex (I3DShDataComponent **dataComp, uint32 index)=0
virtual MCCOMErr MCCOMAPI SetDataComponentByID (I3DShDataComponent *dataComp, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI GetDataComponentByID (I3DShDataComponent **dataComp, IDType kindID)=0
virtual MCCOMErr MCCOMAPI GetEnvironment (I3DShEnvironment **environment)=0
virtual TMCColorRGB MCCOMAPI GetAmbientLightColor ()=0
virtual MCCOMErr MCCOMAPI GetBackgroundBitMap (TMCPixelBucket &bitmap, I3DShCamera *camera, TBBox2D &uvBox)=0
virtual MCCOMErr MCCOMAPI GetBackground (I3DShBackground **background)=0
virtual MCCOMErr MCCOMAPI SetBackground (I3DShBackground *background, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI SetBackgroundByID (int32 kindID)=0
virtual MCCOMErr MCCOMAPI GetBackdrop (I3DShBackdrop **backdrop)=0
virtual MCCOMErr MCCOMAPI SetBackdrop (I3DShBackdrop *backdrop, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI SetBackdropByID (int32 kindID)=0
virtual MCCOMErr MCCOMAPI GetAtmosphere (I3DShAtmosphericShader **atmosphere)=0
virtual MCCOMErr MCCOMAPI SetAtmosphere (I3DShAtmosphericShader *atmosphere, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI SetAtmosphereByID (int32 kindID)=0
virtual MCCOMErr MCCOMAPI GetAmbientLight (I3DShAmbientLight **ambient)=0
virtual MCCOMErr MCCOMAPI SetAmbientLight (I3DShAmbientLight *ambient, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI SetAmbientLightByID (int32 kindID)=0
virtual uint32 MCCOMAPI GetRenderFiltersCount ()=0
virtual MCCOMErr MCCOMAPI GetRenderFilter (I3DShPostRenderer **filter, uint32 index)=0
virtual MCCOMErr MCCOMAPI InsertRenderFilter (I3DShPostRenderer *filter, uint32 index, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI InsertRenderFilterByID (int32 kindID, int32 index)=0
virtual MCCOMErr MCCOMAPI RemoveRenderFilter (uint32 index)=0
virtual MCCOMErr MCCOMAPI SetPostRenderers (TMCCountedPtrArray< I3DShPostRenderer > &list, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI InsertDataComponent (I3DShDataComponent *dataComp, int32 index, ECloneMode cloneMode)=0
virtual MCCOMErr MCCOMAPI InsertDataComponentByID (int32 kindID, int32 index)=0
virtual MCCOMErr MCCOMAPI RemoveDataComponent (uint32 index)=0
virtual MCCOMErr MCCOMAPI GetTimeChangeChannel (IChangeChannel **channel)=0
virtual MCCOMErr MCCOMAPI GetTreePropertyChangeChannel (IChangeChannel **channel)=0
virtual MCCOMErr MCCOMAPI GetScenePropertyChangeChannel (IChangeChannel **channel)=0
virtual MCCOMErr MCCOMAPI GetSceneDocument (ISceneDocument **sceneDoc)=0
virtual MCCOMErr MCCOMAPI GetSceneRenderingModule (I3DRenderingModule **renderingModule)=0
virtual boolean MCCOMAPI GetAnimate ()=0
virtual void MCCOMAPI SetAnimate (boolean animate)=0
virtual MCCOMErr MCCOMAPI ApplyTreeModifiers (boolean inNotify)=0
virtual MCCOMErr MCCOMAPI GetRenderEffectsTimeBased (ITimeBased **outTimeBased)=0
virtual MCCOMErr MCCOMAPI GetRenderingCamera (I3DShCamera **camera)=0
virtual MCCOMErr MCCOMAPI SetRenderingCamera (I3DShCamera *camera)=0
virtual void MCCOMAPI SetIsDoingIK (boolean isDoingIK)=0
virtual boolean MCCOMAPI IsDoingIK ()=0
virtual void MCCOMAPI SetConstraintsAndIKEnabled (boolean inEnable)=0
virtual boolean MCCOMAPI GetConstraintsAndIKEnabled ()=0
virtual uint32 MCCOMAPI GetInstanceIndex (const I3DShInstance *instance)=0
virtual uint32 MCCOMAPI GetTreesCount ()=0
virtual I3DShTreeElement
*MCCOMAPI 
GetTreeByIndex (uint32 index)=0
virtual uint32 MCCOMAPI GetTreeIndex (const I3DShTreeElement *tree)=0
virtual MCCOMErr MCCOMAPI GetTreeByPermanentID (I3DShTreeElement **tree, const uint32 permanentID)=0
virtual uint32 MCCOMAPI GetTreePermanentID (const I3DShTreeElement *tree)=0
virtual boolean MCCOMAPI PermanentIDIsValid (uint32 ID)=0
virtual void MCCOMAPI StoreCurrentState (EFrameType frameType)=0

Detailed Description

I3DShScene represents a scene. The scene is usually associated with a scene document (see GetSceneDocument()) although a scene could exist on its own.

The scene contains the list of the Master Objects, Shaders, Sounds as well as the tree (hierarchy) of the scene that contains all the instances of those objects

A scene is also a Master Group and thus implements I3DShMasterGroup as well as I3DShObject.


Member Function Documentation

virtual MCCOMErr MCCOMAPI I3DShScene::AnimationDataChanged (   )  [pure virtual]
 

Called when animation data have changed.

virtual MCCOMErr MCCOMAPI I3DShScene::ApplyTreeModifiers (  boolean  inNotify  )  [pure virtual]
 

Reapplies the tree behaviors (on each tree that has some)

Parameters:
inNotify True if each affected tree calls PostChange(kChange_TreeModifier);

virtual MCCOMErr MCCOMAPI I3DShScene::Changed3DObject (  I3DShObject *  object  )  [pure virtual]
 

Called to notify that a Master Object as been changed.

Parameters:
object The object that has changed.

virtual MCCOMErr MCCOMAPI I3DShScene::ChangedMasterShader (  I3DShMasterShader *  masterShader  )  [pure virtual]
 

Called to indicate the a master shader was modified.

Parameters:
masterShader A pointer to the master shader that was modified.

virtual MCCOMErr MCCOMAPI I3DShScene::CreateRenderingCameraIfNone (  uint32  cameraType,
boolean  createDistantLight
)  [pure virtual]
 

Creates a rendering camera if there was none.

Parameters:
cameraType The classID of the camera that should be created.
createDistantLight True if a distance light should also be created.

virtual MCCOMErr MCCOMAPI I3DShScene::CreateTreeRootIfNone (   )  [pure virtual]
 

Creates a group at the root of the scene hierarchy if there is not one already.

virtual boolean MCCOMAPI I3DShScene::DetectCollisionWithObject (  I3DShTreeElement *  object1,
I3DShTreeElement *  object2,
CollisionInfo &  ci,
int16  SurfaceFidelity,
boolean  UseVelocity,
TVector3  Velocity1,
TVector3  Velocity2
)  [pure virtual]
 

Returns true if the two objects intersect each other.

Parameters:
object1 The first object.
object2 The second object.
ci Information about the collision that is returned.
SurfaceFidelity 
UseVelocity True if the velocity should be taken into account.
Velocity1 The velocity of object1
Velocity2 The velocity of object2

virtual boolean MCCOMAPI I3DShScene::DetectCollisionWithScene (  I3DShTreeElement *  object1,
CollisionInfo &  ci,
int16  SurfaceFidelity,
boolean  UseVelocity,
TVector3  Velocity1,
TVector3  Velocity2
)  [pure virtual]
 

Returns if the objects collides with the scene

Parameters:
object1 The object
ci Information about the collision that is returned.
SurfaceFidelity 
UseVelocity True if the velocity should be taken into account.
Velocity1 The velocity of object1
Velocity2 The velocity of object2

virtual uint32 MCCOMAPI I3DShScene::Find3DObject (  I3DShObject *  object  )  [pure virtual]
 

Returns the index of a master object in the scene. Returns kUnusedIndex if not found

Parameters:
object A pointer to the master object that we look for.

virtual uint32 MCCOMAPI I3DShScene::FindMasterShader (  I3DShMasterShader *  masterShader  )  [pure virtual]
 

Returns the index of a Master Shader in the scene. Returns kUnusedIndex if not found

Parameters:
masterShader A pointer to the master shader that we look for.

virtual MCCOMErr MCCOMAPI I3DShScene::Get3DObjectByIndex (  I3DShObject **  object,
uint32  index
)  [pure virtual]
 

Returns a pointer to a Master Object.

Parameters:
object A pointer to the Master Object.
index The index (0-based) of the object in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::Get3DObjectByName (  I3DShObject **  object,
const TMCString &  name
)  [pure virtual]
 

Returns a pointer to a Master Object.

Parameters:
object A pointer to the Master Object.
name The name of the Master Object (Note that the names of Master Objects are unique in a scene).

virtual uint32 MCCOMAPI I3DShScene::Get3DObjectsCount (   )  [pure virtual]
 

Returns the number of Master Objects (see I3DShObject) in the scene.

virtual MicroTick MCCOMAPI I3DShScene::GetAllocatedTime (  real *  ioSeconds  )  [pure virtual]
 

Returns the allocated time.

Parameters:
ioSeconds A pointer to a real where the time is stored in seconds.

virtual MCCOMErr MCCOMAPI I3DShScene::GetAmbientLight (  I3DShAmbientLight **  ambient  )  [pure virtual]
 

Returns the ambient light of the scene.

Parameters:
ambient The ambient light.

virtual TMCColorRGB MCCOMAPI I3DShScene::GetAmbientLightColor (   )  [pure virtual]
 

Returns the color of the ambient light.

virtual boolean MCCOMAPI I3DShScene::GetAnimate (   )  [pure virtual]
 

Returns true if the scene is animated.

virtual MCCOMErr MCCOMAPI I3DShScene::GetAtmosphere (  I3DShAtmosphericShader **  atmosphere  )  [pure virtual]
 

Returns a pointer to the atmosphere of the scene.

Parameters:
atmosphere A pointer to the atmosphere of the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetBackdrop (  I3DShBackdrop **  backdrop  )  [pure virtual]
 

Returns the backdrop of the scene.

Parameters:
backdrop A pointer to the backdrop.

virtual MCCOMErr MCCOMAPI I3DShScene::GetBackground (  I3DShBackground **  background  )  [pure virtual]
 

Returns a pointer to the background of the scene.

Parameters:
background A pointer to the background of the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetBackgroundBitMap (  TMCPixelBucket &  bitmap,
I3DShCamera *  camera,
TBBox2D &  uvBox
)  [pure virtual]
 

Creates a texture of the backdrop.backdrop

Parameters:
bitmap A pixelbucket where the image is stored.
camera The rendering camera.
uvBox The screen coordinates of the texture.

virtual MCCOMErr MCCOMAPI I3DShScene::GetCameraByIndex (  I3DShCamera **  camera,
uint32  index
)  [pure virtual]
 

Returns a pointer to a camera of the scene.

Parameters:
camera The camera that is returned.
index The index of the camera in the scene (see GetCamerasCount()).

virtual uint32 MCCOMAPI I3DShScene::GetCamerasCount (   )  [pure virtual]
 

Returns the number of cameras in the scene (excluding the cameras that are contained in a Master Group).

virtual MCCOMErr MCCOMAPI I3DShScene::GetComment (  TMCString &  comment  )  [pure virtual]
 

Returns the comment string that is stored in the scene file.

Parameters:
comment 

virtual boolean MCCOMAPI I3DShScene::GetConstraintsAndIKEnabled (   )  [pure virtual]
 

Returns true if the Constraints (and therefore the IK) are enabled

virtual MCCOMErr MCCOMAPI I3DShScene::GetDataComponentByID (  I3DShDataComponent **  dataComp,
IDType  kindID
)  [pure virtual]
 

Returns a pointer to a data component for a given class ID.

Parameters:
dataComp A pointer to the data component that is returned.
kindID The class ID of the data component we are looking for.

virtual MCCOMErr MCCOMAPI I3DShScene::GetDataComponentByIndex (  I3DShDataComponent **  dataComp,
uint32  index
)  [pure virtual]
 

Returns a datacomponent of the scene.

Parameters:
dataComp A pointer to the data component that is returned.
index The index of the data component in the scene.

virtual uint32 MCCOMAPI I3DShScene::GetDataComponentsCount (   )  [pure virtual]
 

Returns the number of datacomponents associated with the scene.

virtual void MCCOMAPI I3DShScene::GetDefaultMasterShader (  I3DShMasterShader **  masterShader  )  [pure virtual]
 

Returns the default master shader or create it if we don't have master shaders in the scene

Parameters:
masterShader A pointer to the default master shader.

virtual MCCOMErr MCCOMAPI I3DShScene::GetEnvironment (  I3DShEnvironment **  environment  )  [pure virtual]
 

Creates a new environment (background, backdrop, atmosphere...) for the current time. Note that need to call this function for every frame of the rendering to get a valid environment

Parameters:
environment A pointer on the new environment

virtual MCCOMErr MCCOMAPI I3DShScene::GetFullPathName (  TMCString &  pathName  )  [pure virtual]
 

Returns the full path name of file where the scene is saved.

Parameters:
pathName The full path name of the scene file.

virtual MCCOMErr MCCOMAPI I3DShScene::GetInstanceByIndex (  I3DShInstance **  instance,
uint32  index
)  [pure virtual]
 

Returns a pointer to an instance.

Parameters:
instance The instance that is returned.
index The index of the instance in the scene (see GetInstanceListCount())

virtual uint32 MCCOMAPI I3DShScene::GetInstanceIndex (  const I3DShInstance *  instance  )  [pure virtual]
 

Returns the index of an instance in the scene. Note that if the instance is inside a Master Group this method will not work.

Parameters:
instance The instance of the scene for which you need the index
Returns:
the instance's index, or kUnusedIndex if the instance does not belong to the scene

virtual uint32 MCCOMAPI I3DShScene::GetInstanceListCount (   )  [pure virtual]
 

Returns the number of instances that are contained in the scene (excluding instances contained in master groups).

virtual MCCOMErr MCCOMAPI I3DShScene::GetLightsourceByIndex (  I3DShLightsource **  light,
uint32  index
)  [pure virtual]
 

Returns a pointer to a light source.

Parameters:
light The light source that is returned.
index The index of the light source in the scene (see GetLightsourcesCount()).

virtual uint32 MCCOMAPI I3DShScene::GetLightsourcesCount (   )  [pure virtual]
 

Returns the number of light sources in the scene (excluding the light sources that are contained in Master Groups).

virtual MCCOMErr MCCOMAPI I3DShScene::GetMasterShaderByIndex (  I3DShMasterShader **  masterShader,
uint32  index
)  [pure virtual]
 

Returns a pointer to a master shader.

Parameters:
masterShader The pointer to the shader that is returned.
index The index (0-based) of the shader in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetMasterShaderByName (  I3DShMasterShader **  masterShader,
const TMCString &  name
)  [pure virtual]
 

Returns a pointer to a Master Shader.

Parameters:
masterShader A pointer to the master shader.
name The name of the Master shader (Note that the names of Master shader are unique in a scene).

virtual uint32 MCCOMAPI I3DShScene::GetMasterShadersCount (   )  [pure virtual]
 

Returns the number of master shaders in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetMasterSoundByIndex (  IShMasterSound **  masterSound,
uint32  index
)  [pure virtual]
 

Returns a pointer to a master sounds.

Parameters:
masterSound The pointer to the master sound.
index The index of the master sound in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetMasterSoundByName (  IShMasterSound **  masterSound,
const TMCString &  name
)  [pure virtual]
 

Returns the name of a Master Sound.

Parameters:
masterSound A pointer to a master sound.
name The name of the master sound.

virtual uint32 MCCOMAPI I3DShScene::GetMasterSoundCount (   )  [pure virtual]
 

Returns the number of master sounds in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetRenderEffectsTimeBased (  ITimeBased **  outTimeBased  )  [pure virtual]
 

Returns a pointer associated with the scene rendering effects.

Parameters:
outTimeBased The timebased that is returned.

virtual MCCOMErr MCCOMAPI I3DShScene::GetRenderFilter (  I3DShPostRenderer **  filter,
uint32  index
)  [pure virtual]
 

Returns a pointer of a postrenderer.

Parameters:
filter The postrenderer.
index The index of the post renderer in the scene (see GetRenderFiltersCount()).

virtual uint32 MCCOMAPI I3DShScene::GetRenderFiltersCount (   )  [pure virtual]
 

Returns the number of post renderers applied to the scene. Note that it does not take into account the post renderers that are instantianted by a data component

virtual MCCOMErr MCCOMAPI I3DShScene::GetRenderingCamera (  I3DShCamera **  camera  )  [pure virtual]
 

Returns a pointer to the rendering camera. Note that this call is only valid during the rendering of the scene. To access the rendering camera at other time you should use the scene rendering module.

Parameters:
camera A pointer to the rendering camera.

virtual MCCOMErr MCCOMAPI I3DShScene::GetSceneDocument (  ISceneDocument **  sceneDoc  )  [pure virtual]
 

Returns a pointer to the scene document associated with this scene. Note that it can be NULL if the scene was created without a document.

Parameters:
sceneDoc A pointer to the scene document.

virtual MCCOMErr MCCOMAPI I3DShScene::GetScenePropertyChangeChannel (  IChangeChannel **  channel  )  [pure virtual]
 

Returns a pointer to the scene property change channel.

Parameters:
channel A pointer to the change channel that is returned.

virtual MCCOMErr MCCOMAPI I3DShScene::GetSceneRenderingModule (  I3DRenderingModule **  renderingModule  )  [pure virtual]
 

Returns a pointer to the scene rendering module.

Parameters:
renderingModule A pointer to the scene rendering module.

virtual I3DShSoundtrack* I3DShScene::GetSoundtrack (   )  [pure virtual]
 

Returns a pointer to the sound tracks.

virtual MicroTick MCCOMAPI I3DShScene::GetTime (  real *  ioSeconds  )  [pure virtual]
 

Returns the current time of the scene.

Parameters:
ioSeconds A pointer to a real where the time is stored in seconds.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTimeChangeChannel (  IChangeChannel **  channel  )  [pure virtual]
 

Returns a pointer to the time change channel.

Parameters:
channel A pointer to the change channel that is returned.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTimeManager (  I3DShTimeManager **  timeManager  )  [pure virtual]
 

Returns the time manager associated with this scene.

Parameters:
timeManager The time manager that is returned.

virtual I3DShTreeElement* MCCOMAPI I3DShScene::GetTreeByIndex (  uint32  index  )  [pure virtual]
 

Returns a pointer to a tree element of the scene.

Parameters:
index Must be between 0 and GetTreesCount() - 1

virtual MCCOMErr MCCOMAPI I3DShScene::GetTreeByPermanentID (  I3DShTreeElement **  tree,
const uint32  permanentID
)  [pure virtual]
 

Returns the tree identified by the Permanent ID

Parameters:
tree The tree to be found, the Permanent ID that is looked for
permanentID The permanentID of the tree in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTreeElementByName (  I3DShTreeElement **  treeElement,
const TMCString &  name
)  [pure virtual]
 

Returns a tree element from the scene by name. Note that tree elements that are contained in a master group will not be returned.

Parameters:
treeElement A pointer to the tree element that can be returned.
name The name of the tree that we look for.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTreeElementFromFullName (  I3DShTreeElement **  treeElement,
TMCString &  fullName
)  [pure virtual]
 

Returns instance with given full "path name" or NULL if no such instance is in the hierarchy

Parameters:
treeElement A pointer to the tree element that is returned.
fullName 

virtual uint32 MCCOMAPI I3DShScene::GetTreeIndex (  const I3DShTreeElement *  tree  )  [pure virtual]
 

Returns the tree's index in the scene

Parameters:
tree The tree of the scene for which you need the index
Returns:
The tree's index, or kUnusedIndex if the tree does not belong to the scene.

virtual uint32 MCCOMAPI I3DShScene::GetTreePermanentID (  const I3DShTreeElement *  tree  )  [pure virtual]
 

Returns the tree PermanentID if find it, or else return 0;

Parameters:
tree The tree.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTreePropertyChangeChannel (  IChangeChannel **  channel  )  [pure virtual]
 

Returns a pointer to the tree property change channel.

Parameters:
channel A pointer to the change channel that is returned.

virtual MCCOMErr MCCOMAPI I3DShScene::GetTreeRoot (  I3DShGroup **  group  )  [pure virtual]
 

Returns the group that is the root of the tree of instances. If NULL is returned there is no root (see CreateTreeRootIfNone()).

Parameters:
group The group that is returned.

virtual uint32 MCCOMAPI I3DShScene::GetTreesCount (   )  [pure virtual]
 

Returns the number of trees elements in the scene

virtual MCCOMErr MCCOMAPI I3DShScene::Insert3DObject (  I3DShObject *  object  )  [pure virtual]
 

Inserts a Master Object in the scene. If there is already another object with the same name, the name of this object will be changed so that it is unique.

Parameters:
object The Master Object to insert.

virtual MCCOMErr MCCOMAPI I3DShScene::InsertDataComponent (  I3DShDataComponent *  dataComp,
int32  index,
ECloneMode  cloneMode
)  [pure virtual]
 

Inserts a data component in the scene.

Parameters:
dataComp The data component to insert.
index The index in the list.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::InsertDataComponentByID (  int32  kindID,
int32  index
)  [pure virtual]
 

Inserts the data component in the list just before the given index if index is between 0 and the number of data components, or inserts the data component at the end of the list

Parameters:
kindID The class ID of the data component to insert.
index The index in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::InsertMasterShader (  I3DShMasterShader *  masterShader  )  [pure virtual]
 

Inserts a master shader in the scene.

Parameters:
masterShader A pointer to the master shader that is inserted in the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::InsertMasterSound (  IShMasterSound *  masterSound  )  [pure virtual]
 

Inserts a Master Sound in the scene.

Parameters:
masterSound A pointer to the master sound to insert.

virtual MCCOMErr MCCOMAPI I3DShScene::InsertRenderFilter (  I3DShPostRenderer *  filter,
uint32  index,
ECloneMode  cloneMode
)  [pure virtual]
 

Inserts a post renderer in the scene.

Parameters:
filter The post renderer.
index The index in the scene.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::InsertRenderFilterByID (  int32  kindID,
int32  index
)  [pure virtual]
 

Inserts a post renderer in the scene.

Parameters:
kindID The classID of the postrenderer.
index The index in the scene.

virtual boolean MCCOMAPI I3DShScene::IsDoingIK (   )  [pure virtual]
 

Returns true if the IK solver is computing the solution

virtual boolean MCCOMAPI I3DShScene::IsEqualMasterShader (  TMCCountedPtr< I3DShMasterShader > &  inOutMasterShader  )  [pure virtual]
 

Looks for an identical master shader in the scene. If one is found then a pointer is returned.

Parameters:
inOutMasterShader The master shader that is compared to the scene. On exit, the shader that was found in the scene.
Returns:
True if a shader is found.

virtual boolean MCCOMAPI I3DShScene::PermanentIDIsValid (  uint32  ID  )  [pure virtual]
 

Checks if the passed ID is not already used by a registered instance. Checks at the same time if the counter that deliver the new IDs is at least as big as this value.

Parameters:
ID The ID value to be checked
Return true if the ID is valid, false if it's already used by some instance.

virtual MCCOMErr MCCOMAPI I3DShScene::Remove3DObject (  I3DShObject *  object  )  [pure virtual]
 

Removes a Master Object from the scene.

Parameters:
object A pointer to the object that should be removed.

virtual MCCOMErr MCCOMAPI I3DShScene::RemoveDataComponent (  uint32  index  )  [pure virtual]
 

Removes a data component from the scene.

Parameters:
index The index of the data component to remove.

virtual MCCOMErr MCCOMAPI I3DShScene::RemoveDuplicatedAndUnusedMasterShaders (  boolean  justRemoveDuplicatedLink = false,
boolean  lookForReferenceShaders = true
)  [pure virtual]
 

Removes all Duplicated and unused master shaders.

Parameters:
justRemoveDuplicatedLink If true, this function will merge shaders that are identical but not remove shaders that are not referenced in the scene.
lookForReferenceShaders if false reference shaders are ignored. Note that if there are reference shaders in your scene, this would corrupt your shaders...

virtual MCCOMErr MCCOMAPI I3DShScene::RemoveMasterShader (  I3DShMasterShader *  masterShader  )  [pure virtual]
 

Deletes a master shader from the scene.

Parameters:
masterShader A pointer to the master shader that should be deleted from the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::RemoveMasterSound (  IShMasterSound *  masterSound  )  [pure virtual]
 

Deletes a master sound from the scene.

Parameters:
masterSound A pointer to the sound that should be removed from the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::RemoveRenderFilter (  uint32  index  )  [pure virtual]
 

Removed a post renderer from the scene.

Parameters:
index The index of the post renderer to remove.

virtual MCCOMErr MCCOMAPI I3DShScene::Rename3DObject (  I3DShObject *  object,
TMCString &  newName
)  [pure virtual]
 

Change the name of a Master Object and makes sure it is unique.

Parameters:
object The object whose name should be changed.
newName The new name of the object.

virtual MCCOMErr MCCOMAPI I3DShScene::RenameMasterShader (  I3DShMasterShader *  masterShader,
TMCString &  newName
)  [pure virtual]
 

Change the name of a master shader and makes sure it is unique. Note that the name of the master shader might be changed by this function in order to ensure that it is unique in the scene.

Parameters:
masterShader The shader whose name should be changed.
newName The new name of the shader.

virtual MCCOMErr MCCOMAPI I3DShScene::Replace3DObject (  I3DShObject *  oldObject,
I3DShObject *  newObject
)  [pure virtual]
 

Replace a master object by another one.

Parameters:
oldObject The old Master object.
newObject The new Master Object.

virtual MCCOMErr MCCOMAPI I3DShScene::SetAllocatedTime (  MicroTick  inAllocatedTime,
boolean  inUpdateViews
)  [pure virtual]
 

Sets the duration of time that is allocated.

Parameters:
inAllocatedTime The allocated time.
inUpdateViews True if the view should be updated.

virtual MCCOMErr MCCOMAPI I3DShScene::SetAmbientLight (  I3DShAmbientLight *  ambient,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets the ambient light of the scene.

Parameters:
ambient The ambient light.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::SetAmbientLightByID (  int32  kindID  )  [pure virtual]
 

Sets the type of ambient light

Parameters:
kindID The classID of the ambient light.

virtual void MCCOMAPI I3DShScene::SetAnimate (  boolean  animate  )  [pure virtual]
 

Sets the animation status of the scene.

Parameters:
animate The animation status of the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::SetAtmosphere (  I3DShAtmosphericShader *  atmosphere,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets the atmosphere.

Parameters:
atmosphere The atmosphere.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::SetAtmosphereByID (  int32  kindID  )  [pure virtual]
 

Sets the type of atmosphere.

Parameters:
kindID The classID of the atmosphere.

virtual MCCOMErr MCCOMAPI I3DShScene::SetBackdrop (  I3DShBackdrop *  backdrop,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets the backdrop of the scene.

Parameters:
backdrop A pointer to the backdrop.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::SetBackdropByID (  int32  kindID  )  [pure virtual]
 

Sets the type of backdrop.

Parameters:
kindID The class ID of the backdrop.

virtual MCCOMErr MCCOMAPI I3DShScene::SetBackground (  I3DShBackground *  background,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets the background of the scene.

Parameters:
background A pointer to the background of the scene.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::SetBackgroundByID (  int32  kindID  )  [pure virtual]
 

Sets the type of background on the scene.

Parameters:
kindID The classID of the background.

virtual MCCOMErr MCCOMAPI I3DShScene::SetComment (  const TMCString &  comment  )  [pure virtual]
 

Sets the comment string that is saved with the scene file.

Parameters:
comment A string.

virtual void MCCOMAPI I3DShScene::SetConstraintsAndIKEnabled (  boolean  inEnable  )  [pure virtual]
 

Enables or disables the Constraints (and therefore the IK)

Parameters:
inEnable 

virtual MCCOMErr MCCOMAPI I3DShScene::SetDataComponentByID (  I3DShDataComponent *  dataComp,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets a data component on the scene.

Parameters:
dataComp A pointer to the data component.
cloneMode The clone Mode (see ECloneMode).

virtual void MCCOMAPI I3DShScene::SetIsDoingIK (  boolean  isDoingIK  )  [pure virtual]
 

Tells the scene to avoid sending tree move messages while solving inverse kinematics (used by the IK solver in BasicComponents)

Parameters:
isDoingIK True when solving IK, false when done

virtual MCCOMErr MCCOMAPI I3DShScene::SetPostRenderers (  TMCCountedPtrArray< I3DShPostRenderer > &  list,
ECloneMode  cloneMode
)  [pure virtual]
 

Sets the list of post renders of the scene.

Parameters:
list The list of post renderers.
cloneMode The clone mode (see ECloneMode).

virtual MCCOMErr MCCOMAPI I3DShScene::SetRenderingCamera (  I3DShCamera *  camera  )  [pure virtual]
 

Sets the rendering camera of the scene.

Parameters:
camera The rendering camera of the scene.

virtual MCCOMErr MCCOMAPI I3DShScene::SetScene (  I3DShScene *  topScene  )  [pure virtual]
 

Deprecated:
This call is obsolete and should not be used !!

virtual MCCOMErr MCCOMAPI I3DShScene::SetTime (  MicroTick  inTime,
boolean  inUpdateViews,
boolean  isContinuePlaying = false,
boolean  dontRecompute = false,
boolean  forceSetTime = false
)  [pure virtual]
 

Sets the current time of the scene. Note that this function can be slow since it will trigger some calculations (like physics or particle simulation).

Parameters:
inTime The new time.
inUpdateViews True if the 3D View should be updated.
isContinuePlaying to know if it'll be a single set time or mutliple (ex: PlayAnim=multiple set time)
dontRecompute 
forceSetTime 

virtual MCCOMErr MCCOMAPI I3DShScene::SetTreeRoot (  I3DShGroup *  universe  )  [pure virtual]
 

Sets the group that is the root of the scene hierarchy.

Parameters:
universe The root of the scene hierarchy

virtual void MCCOMAPI I3DShScene::StoreCurrentState (  EFrameType  frameType  )  [pure virtual]
 

Stores the current animation parameters of the scene for motion blur purpose. each object that can affect motion blur (skinned object, transforms...) should store their current state so that they can calculate the motion between that time (store) and the current time.

Parameters:
frameType Indicates if the data are stored in the past or future (kPreviousFrame or kNextFrame)


The documentation for this struct was generated from the following file:
Generated on Mon Mar 14 12:29:02 2005 for Carrara SDK Doc by  doxygen 1.3.9.1