NL3D::CWaterInstanceUser Class Reference

#include <water_user.h>

Inheritance diagram for NL3D::CWaterInstanceUser:

NL3D::CInstanceUser NL3D::UWaterInstance NL3D::UInstance NL3D::CTransformUser NL3D::UTransform NL3D::UTransform NL3D::CTransformableUser NL3D::UTransformable NL3D::UTransformable NL3D::UTransformable

Detailed Description

implementation of UWaterInstance methods

Definition at line 36 of file water_user.h.

Public Types

enum  TTransformMode { DirectMatrix = 0, RotEuler, RotQuat, TransformModeCount }
enum  TVisibility { Show = 0, Hide, Herit, VisibilityCount }
 The visibility flag. In the root case, Herit means Show. More...


Public Member Functions

virtual bool canStartStop ()
 Test if there is a start/stop caps in the objects (some fxs such as remanence).

virtual void changeMRMDistanceSetup (float distanceFinest, float distanceMiddle, float distanceCoarsest)
 CWaterInstanceUser (CScene *scene, CTransform *trans)
virtual float getAttenuatedHeight (const NLMISC::CVector2f &pos, const NLMISC::CVector &viewer)
virtual float getCoarseMeshDist () const
virtual float getDistMax () const
virtual bool getForceClipRoot () const
virtual bool getForceClipRoot () const=0
virtual float getHeight (const NLMISC::CVector2f &pos)
 Get the height of the water in world space at the given location.

virtual float getHeightFactor () const
virtual bool getLastClippedState () const
 Return true if the object was rendered during the last Scene->rendere(). return false else (ie clipped).

virtual bool getLastClippedState () const=0
 Return true if the object was rendered during the last Scene->rendere(). return false else (ie clipped).

virtual void getLastParentClusters (std::vector< CCluster * > &clusters) const
 Fill a list of cluster that contain this tranform. This is valid after the clip traversal.

virtual void getLastParentClusters (std::vector< CCluster * > &clusters) const=0
 Fill a list of cluster that contain this tranform. This is valid after the clip traversal.

virtual const CMatrixgetLastWorldMatrixComputed () const
virtual const CMatrixgetLastWorldMatrixComputed () const=0
virtual bool getLastWorldVisState () const
 Return true if the object was determined as Visible in Hrc during the last Scene->rendere(). NB: interesting only if Herit. else can use getVisibility().

virtual bool getLastWorldVisState () const=0
 Return true if the object was determined as Visible in Hrc during the last Scene->rendere(). NB: interesting only if Herit. else can use getVisibility().

virtual uint getOrderingLayer () const
 Get the ordering layer.

virtual uint getOrderingLayer () const=0
 Get the ordering layer.

virtual void getShapeAABBox (NLMISC::CAABBox &bbox) const
virtual float getShapeDistMax () const
 see setShapeDistMax()

virtual float getSliceTime () const
virtual uint32 getWaterHeightMapID () const
virtual bool isStarted () const
virtual void setBlendShapeFactor (const std::string &blendShapeName, float factor, bool dynamic)
virtual void setCoarseMeshDist (float dist)
virtual void setDistMax (float distMax)
virtual void setForceClipRoot (bool forceClipRoot)
virtual void setForceClipRoot (bool forceClipRoot)=0
virtual void setLogicInfo (ILogicInfo *logicInfo)
virtual void setLogicInfo (ILogicInfo *logicInfo)=0
virtual void setOrderingLayer (uint layer)
virtual void setOrderingLayer (uint layer)=0
virtual void setShapeDistMax (float distMax)
virtual void setSliceTime (float duration)
virtual void start ()
virtual void stop ()
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
Async Texture Loading
virtual void enableAsyncTextureMode (bool enable)
virtual float getAsyncTextureDistance () const
virtual bool getAsyncTextureMode () const
virtual bool isAsyncTextureDirty () const
 see dirtAsyncTextureState()

virtual bool isAsyncTextureReady ()
virtual void setAsyncTextureDirty (bool flag)
virtual void setAsyncTextureDistance (float dist)
virtual void startAsyncTextureLoading ()
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Material access.
virtual UInstanceMaterialgetMaterial (uint materialId)
 return a local access on a material, to change its values. (NB: overwrited, if animated).

virtual uint getNumMaterials () const
 return number of materials this mesh instance use.

virtual void selectTextureSet (uint id)
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Position set
void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)
virtual void enableReceiveShadowMap (bool state)
ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
Async Texture Loading
virtual void enableAsyncTextureMode (bool enable)
virtual float getAsyncTextureDistance () const
virtual bool getAsyncTextureMode () const
virtual bool isAsyncTextureDirty () const
 see dirtAsyncTextureState()

virtual bool isAsyncTextureReady ()
virtual void setAsyncTextureDirty (bool flag)
virtual void setAsyncTextureDistance (float dist)
virtual void startAsyncTextureLoading ()
freezeHRC
virtual void freezeHRC ()
virtual void unfreezeHRC ()
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Space manipulation
virtual UInstanceGroupgetClusterSystem ()
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather.

virtual void setClusterSystem (UInstanceGroup *pIG)
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const
virtual void setLoadBalancingGroup (const std::string &group)
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Material access.
virtual UInstanceMaterialgetMaterial (uint materialId)
 return a local access on a material, to change its values. (NB: overwrited, if animated).

virtual uint getNumMaterials () const
 return number of materials this mesh instance use.

virtual void selectTextureSet (uint id)
Space manipulation
virtual const CMatrixgetMatrix () const
 Get the matrix, compute her if necessary (work in all modes).

virtual void setMatrix (const CMatrix &mat)
 Work only in DirecTMatrix mode (nlassert).

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)
virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
space set/get.
virtual CVector getPivot ()
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()
 get the current transform mode.

virtual void setPivot (const CVector &pivot)
 Work only in Rot* mode (nlassert).

virtual void setPos (const CVector &pos)
 Work only in Rot* mode(nlassert).

virtual void setRotEuler (const CVector &rot)
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)
virtual void setRotQuat (const CVector &jdir)
virtual void setRotQuat (const CQuat &quat)
 Work only in RotQuat mode (nlassert).

virtual void setScale (const CVector &scale)
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)
 Change the transform mode. Components or matrix are not reseted.

Accessor for CSceneUser / Other.
CScenegetScene ()
CTransformgetTransform ()
visibility
virtual bool getUserClipping () const
 Return the user clipping state.

virtual TVisibility getVisibility ()
 Get the local visibility state.

virtual void heritVisibility ()
 herit the visibility from his father. (default behavior).

virtual void hide ()
 Hide the object and his sons.

virtual void setUserClipping (bool enable)
 Return the user clipping state.

virtual void show ()
 Show the objet and his sons.

visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const
virtual void setUserLightable (bool enable)
virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
virtual void setOpacity (bool v)
virtual void setTransparency (bool v)
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

ShadowMapping
virtual bool canCastShadowMap () const=0
 true if the instance cast shadow. By default false

virtual bool canReceiveShadowMap () const=0
 true if the instance receive shadow. By default false

virtual void enableCastShadowMap (bool state)=0
virtual void enableReceiveShadowMap (bool state)=0
freezeHRC
virtual void freezeHRC ()=0
virtual void unfreezeHRC ()=0
Hierarchy manipulation
virtual UInstanceGroupgetClusterSystem ()=0
virtual void parent (UTransform *newFather)=0
virtual void setClusterSystem (UInstanceGroup *pIG)=0
virtual const std::string & getLoadBalancingGroup () const=0
virtual void setLoadBalancingGroup (const std::string &group)=0
Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

virtual NLMISC::CRGBA getMeanColor () const=0
 see setMeanColor()

virtual void setMeanColor (NLMISC::CRGBA color)=0
visibility
virtual bool getUserClipping () const=0
 Return the user clipping state.

virtual TVisibility getVisibility ()=0
 Get the local visibility state.

virtual void heritVisibility ()=0
 herit the visibility from his father. (default behavior).

virtual void hide ()=0
 Hide the object and his sons.

virtual void setUserClipping (bool enable)=0
 Return the user clipping state.

virtual void show ()=0
 Show the objet and his sons.

virtual bool getUserLightable () const=0
virtual void setUserLightable (bool enable)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0
virtual void setOpacity (bool v)=0
virtual void setTransparency (bool v)=0
Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.

Position get
virtual const CMatrixgetMatrix () const=0
 Get the matrix, compute her if necessary (work in all modes).

virtual CVector getPivot ()=0
 Work only in Rot* mode (nlassert).

virtual void getPivot (CVector &pivot)=0
 Work only in Rot* mode (nlassert).

virtual CVector getPos ()=0
 Work only in Rot* mode(nlassert).

virtual void getPos (CVector &pos)=0
 Work only in Rot* mode(nlassert).

virtual CVector getRotEuler ()=0
 Work only in RotEuler mode(nlassert).

virtual void getRotEuler (CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual CMatrix::TRotOrder getRotOrder ()=0
 get the current rotorder (information vlaid only when RotEuler mode).

virtual CQuat getRotQuat ()=0
 Work only in RotQuat mode (nlassert).

virtual void getRotQuat (CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

virtual CVector getScale ()=0
 Work only in Rot* mode (nlassert).

virtual void getScale (CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual TTransformMode getTransformMode ()=0
 get the current transform mode.

Misc
virtual void lookAt (const CVector &eye, const CVector &target, float roll=0.f)=0
Position set
virtual void setMatrix (const CMatrix &mat)=0
 Work only in DirecTMatrix mode (nlassert).

void setPivot (float px, float py, float pz)
 Work only in Rot* mode (nlassert).

virtual void setPivot (const CVector &pivot)=0
 Work only in Rot* mode (nlassert).

void setPos (float px, float py, float pz)
 Work only in Rot* mode(nlassert).

virtual void setPos (const CVector &pos)=0
 Work only in Rot* mode(nlassert).

void setRotEuler (float rx, float ry, float rz)
 Work only in RotEuler mode(nlassert).

virtual void setRotEuler (const CVector &rot)=0
 Work only in RotEuler mode(nlassert).

virtual void setRotQuat (const CVector &jdir, const CVector &vup)=0
virtual void setRotQuat (const CVector &jdir)=0
virtual void setRotQuat (const CQuat &quat)=0
 Work only in RotQuat mode (nlassert).

void setScale (float sx, float sy, float sz)
 Work only in Rot* mode (nlassert).

virtual void setScale (const CVector &scale)=0
 Work only in Rot* mode (nlassert).

virtual void setTransformMode (TTransformMode mode, CMatrix::TRotOrder ro=CMatrix::ZXY)=0
 Change the transform mode. Components or matrix are not reseted.


Static Public Member Functions

Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()
Channel name
const char * getPivotValueName ()
const char * getPosValueName ()
const char * getRotEulerValueName ()
const char * getRotQuatValueName ()
const char * getScaleValueName ()

Data Fields

CTransformShape_Instance
 This is the SAME pointer than _Transform, but correctly casted.

std::vector< CInstanceMaterialUser_Materials
 This is a mirror of _Instance->Materials.


Protected Attributes

bool _DeleteIt
CScene_Scene
CTransform_Transform
ITransformable_Transformable


Member Enumeration Documentation

enum NL3D::UTransformable::TTransformMode [inherited]
 

Enumeration values:
DirectMatrix 
RotEuler 
RotQuat 
TransformModeCount 

Definition at line 66 of file u_transformable.h.

00067         {
00068                 DirectMatrix=0,         // DirectMatrixMode .
00069                 RotEuler,                       // Matrix is computed from sperated composantes, with euler rotation.
00070                 RotQuat,                        // Matrix is computed from sperated composantes, with quat rotation (default).
00071 
00072                 TransformModeCount
00073         };

enum NL3D::UTransform::TVisibility [inherited]
 

The visibility flag. In the root case, Herit means Show.

Enumeration values:
Show 
Hide 
Herit 
VisibilityCount 

Definition at line 68 of file u_transform.h.

00069         {
00070                 Show=0,         // The model is shown in the hierarchy
00071                 Hide,           // The model is hidden in the hierarchy
00072                 Herit,          // The model herit the visibilty from his father
00073 
00074                 VisibilityCount
00075         };


Constructor & Destructor Documentation

NL3D::CWaterInstanceUser::CWaterInstanceUser CScene scene,
CTransform trans
[inline]
 

Definition at line 39 of file water_user.h.

References NL3D_MEM_WATER.

00039                                                              : CInstanceUser(scene, trans, true) 
00040         {
00041                 NL3D_MEM_WATER
00042         }


Member Function Documentation

virtual bool NL3D::CTransformUser::canCastShadowMap  )  const [virtual, inherited]
 

true if the instance cast shadow. By default false

Implements NL3D::UTransform.

virtual bool NL3D::UTransform::canCastShadowMap  )  const [pure virtual, inherited]
 

true if the instance cast shadow. By default false

Implemented in NL3D::CTransformUser.

virtual bool NL3D::CTransformUser::canReceiveShadowMap  )  const [virtual, inherited]
 

true if the instance receive shadow. By default false

Implements NL3D::UTransform.

virtual bool NL3D::UTransform::canReceiveShadowMap  )  const [pure virtual, inherited]
 

true if the instance receive shadow. By default false

Implemented in NL3D::CTransformUser.

virtual bool NL3D::CInstanceUser::canStartStop  )  [inline, virtual, inherited]
 

Test if there is a start/stop caps in the objects (some fxs such as remanence).

Implements NL3D::UInstance.

Definition at line 105 of file instance_user.h.

References NL3D::CTransformShape::canStartStop(), and NL3D_MEM_INSTANCE.

00106         { 
00107                 NL3D_MEM_INSTANCE
00108                 return _Instance->canStartStop(); 
00109         }       

void NL3D::CInstanceUser::changeMRMDistanceSetup float  distanceFinest,
float  distanceMiddle,
float  distanceCoarsest
[virtual, inherited]
 

Change MRM Distance setup. Only for mesh which support MRM. NB MeshMultiLod apply it only on Lod0 (if Lod0 is a MRM). NB: This apply to the shape direclty!! ie All instances using same shape will be affected NB: no-op if distanceFinest<0, distanceMiddle<=distanceFinest or if distanceCoarsest<=distanceMiddle.

Parameters:
distanceFinest The MRM has its max faces when dist<=distanceFinest.
distanceMiddle The MRM has 50% of its faces at dist==distanceMiddle.
distanceCoarsest The MRM has faces/Divisor (ie near 0) when dist>=distanceCoarsest.

Implements NL3D::UInstance.

Definition at line 84 of file instance_user.cpp.

References NL3D_MEM_INSTANCE.

00085 {
00086         NL3D_MEM_INSTANCE
00087         CMeshBaseInstance       *mi= dynamic_cast<CMeshBaseInstance*>(_Instance);
00088 
00089         // Just for CMeshBaseInstance.
00090         if (mi)
00091         {
00092                 mi->changeMRMDistanceSetup(distanceFinest, distanceMiddle, distanceCoarsest);
00093         }
00094 }

void NL3D::CInstanceUser::enableAsyncTextureMode bool  enable  )  [virtual, inherited]
 

if true, the instance is said in "AsyncTextureMode". Ie user must fill AsyncTextures field with name of the textures to load. At each startAsyncTextureLoading(), the system start to load async them. Then, isAsyncTextureReady() should be test each frame, to know if loading has completed. By default, AsyncTextureMode=false. When it swap from false to true, each texture file in Materials are replaced with "blank.tga", and true fileNames are copied into AsyncTextures. When it swap from true to false, the inverse is applied. NB: calling enableAsyncTextureMode(true) calls setAsyncTextureDirty(true)

Implements NL3D::UInstance.

Definition at line 131 of file instance_user.cpp.

References NL3D::CMeshBaseInstance::enableAsyncTextureMode(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, and nlassert.

00132 {
00133         NL3D_MEM_INSTANCE
00134         nlassert(_Instance->isMeshBaseInstance());
00135         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00136         mbi->enableAsyncTextureMode(enable) ;
00137 }

virtual void NL3D::CTransformUser::enableCastShadowMap bool  state  )  [virtual, inherited]
 

By default, map shadow casting is disabled. This enabled shadow for this model. Fails if the model don't support dynamic Map Shadow Casting (eg landscape)

Implements NL3D::UTransform.

virtual void NL3D::UTransform::enableCastShadowMap bool  state  )  [pure virtual, inherited]
 

By default, map shadow casting is disabled. This enabled shadow for this model. Fails if the model don't support dynamic Map Shadow Casting (eg landscape)

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::enableReceiveShadowMap bool  state  )  [virtual, inherited]
 

By default, map shadow receiving is disabled. This enabled shadow for this model. Fails if the model don't support dynamic Map Shadow Receiving (eg Particle system)

Implements NL3D::UTransform.

virtual void NL3D::UTransform::enableReceiveShadowMap bool  state  )  [pure virtual, inherited]
 

By default, map shadow receiving is disabled. This enabled shadow for this model. Fails if the model don't support dynamic Map Shadow Receiving (eg Particle system)

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::freezeHRC  )  [virtual, inherited]
 

Optimisation: freeze the HRC so the WorldMatrix computed at next render() will be kept for long, and the model won't either be tested in HRC.

NB: the model won't be tested in HRC only if this model is a "root" For maximum optimisation, you should freezeHRC() all the models of a hierarchy, from base root to leaves.

NB: if the hierarchy of this object must change, or if the object must moves, you must call unfreezeHRC() first, and you should do this for all the parents of this model.

Implements NL3D::UTransform.

virtual void NL3D::UTransform::freezeHRC  )  [pure virtual, inherited]
 

Optimisation: freeze the HRC so the WorldMatrix computed at next render() will be kept for long, and the model won't either be tested in HRC.

NB: the model won't be tested in HRC only if this model is a "root" For maximum optimisation, you should freezeHRC() all the models of a hierarchy, from base root to leaves.

NB: if the hierarchy of this object must change, or if the object must moves, you must call unfreezeHRC() first, and you should do this for all the parents of this model.

Implemented in NL3D::CTransformUser.

float NL3D::CInstanceUser::getAsyncTextureDistance  )  const [virtual, inherited]
 

See also:
setAsyncTextureDistance()

Implements NL3D::UInstance.

Definition at line 171 of file instance_user.cpp.

References NL3D::CMeshBaseInstance::getAsyncTextureDistance(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, and nlassert.

00172 {
00173         NL3D_MEM_INSTANCE
00174         nlassert(_Instance->isMeshBaseInstance());
00175         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00176         return mbi->getAsyncTextureDistance();
00177 }

bool NL3D::CInstanceUser::getAsyncTextureMode  )  const [virtual, inherited]
 

if true, the instance is said in "AsyncTextureMode". Ie user must fill AsyncTextures field with name of the textures to load. At each startAsyncTextureLoading(), the system start to load async them. Then, isAsyncTextureReady() should be test each frame, to know if loading has completed. By default, AsyncTextureMode=false. When it swap from false to true, each texture file in Materials are replaced with "blank.tga", and true fileNames are copied into AsyncTextures. When it swap from true to false, the inverse is applied. NB: calling enableAsyncTextureMode(true) calls setAsyncTextureDirty(true)

Implements NL3D::UInstance.

Definition at line 139 of file instance_user.cpp.

References NL3D::CMeshBaseInstance::getAsyncTextureMode(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, and nlassert.

00140 {
00141         NL3D_MEM_INSTANCE
00142         nlassert(_Instance->isMeshBaseInstance());
00143         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00144         return mbi->getAsyncTextureMode() ;
00145 }

float NL3D::CWaterInstanceUser::getAttenuatedHeight const NLMISC::CVector2f pos,
const NLMISC::CVector viewer
[virtual]
 

Get the attenuated height of the water in world space at the given location. You must provide the viewer position This is useful if you want to compute the position of a floating object

Implements NL3D::UWaterInstance.

Definition at line 88 of file water_user.cpp.

References NL3D_MEM_WATER.

00089 {
00090         NL3D_MEM_WATER
00091         CWaterModel *wm = NLMISC::safe_cast<CWaterModel *>(_Instance);
00092         return wm->getAttenuatedHeight(pos, viewer);
00093 }

virtual UInstanceGroup* NL3D::CTransformUser::getClusterSystem  )  [virtual, inherited]
 

Implements NL3D::UTransform.

virtual UInstanceGroup* NL3D::UTransform::getClusterSystem  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

float NL3D::CInstanceUser::getCoarseMeshDist  )  const [virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 203 of file instance_user.cpp.

References NL3D::CMeshMultiLodInstance::getCoarseMeshDist().

00204 {
00205         CMeshMultiLodInstance *mmli = dynamic_cast<CMeshMultiLodInstance *>(_Instance);
00206         return mmli ? mmli->getCoarseMeshDist() : -1.f;
00207 }

virtual float NL3D::CInstanceUser::getDistMax  )  const [inline, virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 125 of file instance_user.h.

References NL3D::CTransformShape::getDistMax(), and NL3D_MEM_INSTANCE.

00126         {
00127                 NL3D_MEM_INSTANCE
00128                 return _Instance->getDistMax();
00129         }       

virtual bool NL3D::CTransformUser::getForceClipRoot  )  const [inline, virtual, inherited]
 

Implements NL3D::UTransform.

Definition at line 265 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::getForceClipRoot(), and NL3D_MEM_TRANSFORM.

00266         {
00267                 NL3D_MEM_TRANSFORM
00268                 return _Transform->getForceClipRoot();
00269         }

virtual bool NL3D::UTransform::getForceClipRoot  )  const [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

float NL3D::CWaterInstanceUser::getHeight const NLMISC::CVector2f pos  )  [virtual]
 

Get the height of the water in world space at the given location.

Implements NL3D::UWaterInstance.

Definition at line 80 of file water_user.cpp.

References NL3D_MEM_WATER.

00081 {
00082         NL3D_MEM_WATER
00083         CWaterModel *wm = NLMISC::safe_cast<CWaterModel *>(_Instance);
00084         return wm->getHeight(pos);
00085 }

float NL3D::CWaterInstanceUser::getHeightFactor  )  const [virtual]
 

When displaying the water height field, the value in the height field is actually multiplied by a factor to get the height in world space. This returns this factor

Implements NL3D::UWaterInstance.

Definition at line 72 of file water_user.cpp.

References NL3D_MEM_WATER.

00073 {
00074         NL3D_MEM_WATER
00075         CWaterModel *wm = NLMISC::safe_cast<CWaterModel *>(_Instance);
00076         return wm->getHeightFactor();
00077 }

virtual bool NL3D::CTransformUser::getLastClippedState  )  const [inline, virtual, inherited]
 

Return true if the object was rendered during the last Scene->rendere(). return false else (ie clipped).

Implements NL3D::UTransform.

Definition at line 204 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::isClipVisible(), and NL3D_MEM_TRANSFORM.

00205         {
00206                 NL3D_MEM_TRANSFORM
00207                 return _Transform->isClipVisible();
00208         }

virtual bool NL3D::UTransform::getLastClippedState  )  const [pure virtual, inherited]
 

Return true if the object was rendered during the last Scene->rendere(). return false else (ie clipped).

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::getLastParentClusters std::vector< CCluster * > &  clusters  )  const [virtual, inherited]
 

Fill a list of cluster that contain this tranform. This is valid after the clip traversal.

Implements NL3D::UTransform.

virtual void NL3D::UTransform::getLastParentClusters std::vector< CCluster * > &  clusters  )  const [pure virtual, inherited]
 

Fill a list of cluster that contain this tranform. This is valid after the clip traversal.

Implemented in NL3D::CTransformUser.

virtual const CMatrix& NL3D::CTransformUser::getLastWorldMatrixComputed  )  const [virtual, inherited]
 

get the last world matrix computed in last render(). NB: this WM is computed in last render() only if the object was not clipped. So use it wisely. use getLastClippedState() to konw if the object was visible in last render().

Implements NL3D::UTransform.

virtual const CMatrix& NL3D::UTransform::getLastWorldMatrixComputed  )  const [pure virtual, inherited]
 

get the last world matrix computed in last render(). NB: this WM is computed in last render() only if the object was not clipped. So use it wisely. use getLastClippedState() to konw if the object was visible in last render().

Implemented in NL3D::CTransformUser.

virtual bool NL3D::CTransformUser::getLastWorldVisState  )  const [inline, virtual, inherited]
 

Return true if the object was determined as Visible in Hrc during the last Scene->rendere(). NB: interesting only if Herit. else can use getVisibility().

Implements NL3D::UTransform.

Definition at line 198 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::isHrcVisible(), and NL3D_MEM_TRANSFORM.

00199         {
00200                 NL3D_MEM_TRANSFORM
00201                 return _Transform->isHrcVisible();
00202         }

virtual bool NL3D::UTransform::getLastWorldVisState  )  const [pure virtual, inherited]
 

Return true if the object was determined as Visible in Hrc during the last Scene->rendere(). NB: interesting only if Herit. else can use getVisibility().

Implemented in NL3D::CTransformUser.

virtual const std::string& NL3D::CTransformUser::getLoadBalancingGroup  )  const [virtual, inherited]
 

Get the load Balancing group of a model. see setLoadBalancingGroup().

Implements NL3D::UTransform.

virtual const std::string& NL3D::UTransform::getLoadBalancingGroup  )  const [pure virtual, inherited]
 

Get the load Balancing group of a model. see setLoadBalancingGroup().

Implemented in NL3D::CTransformUser.

virtual UInstanceMaterial& NL3D::CInstanceUser::getMaterial uint  materialId  )  [inline, virtual, inherited]
 

return a local access on a material, to change its values. (NB: overwrited, if animated).

Implements NL3D::UInstance.

Definition at line 88 of file instance_user.h.

References NL3D_MEM_INSTANCE, nlerror, and uint.

00089         {
00090                 NL3D_MEM_INSTANCE
00091                 if(materialId>=_Materials.size())
00092                         nlerror("getMaterial(): bad materialId");
00093                 return dynamic_cast<UInstanceMaterial&>(_Materials[materialId]);
00094         }

virtual const CMatrix& NL3D::CTransformableUser::getMatrix  )  const [inline, virtual, inherited]
 

Get the matrix, compute her if necessary (work in all modes).

Implements NL3D::UTransformable.

Definition at line 81 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getMatrix(), and NL3D_MEM_TRANSFORMABLE.

00082         {
00083                 NL3D_MEM_TRANSFORMABLE
00084                 return _Transformable->getMatrix();
00085         }

virtual const CMatrix& NL3D::UTransformable::getMatrix  )  const [pure virtual, inherited]
 

Get the matrix, compute her if necessary (work in all modes).

Implemented in NL3D::CTransformableUser.

Referenced by NL3D::CDriverUser::setMatrixMode3D().

virtual NLMISC::CRGBA NL3D::CTransformUser::getMeanColor  )  const [virtual, inherited]
 

see setMeanColor()

Implements NL3D::UTransform.

virtual NLMISC::CRGBA NL3D::UTransform::getMeanColor  )  const [pure virtual, inherited]
 

see setMeanColor()

Implemented in NL3D::CTransformUser.

virtual uint NL3D::CInstanceUser::getNumMaterials  )  const [inline, virtual, inherited]
 

return number of materials this mesh instance use.

Implements NL3D::UInstance.

Definition at line 83 of file instance_user.h.

References NL3D_MEM_INSTANCE, and uint.

00084         {
00085                 NL3D_MEM_INSTANCE
00086                 return _Materials.size();
00087         }

virtual uint NL3D::CTransformUser::getOrderingLayer  )  const [inline, virtual, inherited]
 

Get the ordering layer.

Implements NL3D::UTransform.

Definition at line 169 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::getOrderingLayer(), NL3D_MEM_TRANSFORM, and uint.

00170         { 
00171                 NL3D_MEM_TRANSFORM
00172                 return _Transform->getOrderingLayer(); 
00173         }

virtual uint NL3D::UTransform::getOrderingLayer  )  const [pure virtual, inherited]
 

Get the ordering layer.

Implemented in NL3D::CTransformUser.

virtual CVector NL3D::CTransformableUser::getPivot  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 195 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getPivot(), and NL3D_MEM_TRANSFORMABLE.

00196         {
00197                 NL3D_MEM_TRANSFORMABLE
00198                 return _Transformable->getPivot();
00199         }

virtual void NL3D::CTransformableUser::getPivot CVector pivot  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 169 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getPivot(), and NL3D_MEM_TRANSFORMABLE.

00170         {
00171                 NL3D_MEM_TRANSFORMABLE
00172                 _Transformable->getPivot(pivot);
00173         }

virtual CVector NL3D::UTransformable::getPivot  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::getPivot CVector pivot  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

const char * NL3D::UTransformable::getPivotValueName  )  [static, inherited]
 

Definition at line 55 of file transformable_user.cpp.

References NL3D_MEM_TRANSFORMABLE.

00056 {
00057         NL3D_MEM_TRANSFORMABLE
00058         return ITransformable::getPivotValueName();
00059 }

virtual CVector NL3D::CTransformableUser::getPos  )  [inline, virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 175 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getPos(), and NL3D_MEM_TRANSFORMABLE.

Referenced by NL3D::CInstanceUser::startAsyncTextureLoading().

00176         {
00177                 NL3D_MEM_TRANSFORMABLE
00178                 return _Transformable->getPos();
00179         }

virtual void NL3D::CTransformableUser::getPos CVector pos  )  [inline, virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 149 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getPos(), and NL3D_MEM_TRANSFORMABLE.

00150         {
00151                 NL3D_MEM_TRANSFORMABLE
00152                 _Transformable->getPos(pos);
00153         }

virtual CVector NL3D::UTransformable::getPos  )  [pure virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::getPos CVector pos  )  [pure virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implemented in NL3D::CTransformableUser.

const char * NL3D::UTransformable::getPosValueName  )  [static, inherited]
 

Definition at line 35 of file transformable_user.cpp.

References NL3D_MEM_TRANSFORMABLE.

00036 {
00037         NL3D_MEM_TRANSFORMABLE
00038         return ITransformable::getPosValueName ();
00039 }

virtual CVector NL3D::CTransformableUser::getRotEuler  )  [inline, virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 180 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getRotEuler(), and NL3D_MEM_TRANSFORMABLE.

00181         {
00182                 NL3D_MEM_TRANSFORMABLE
00183                 return _Transformable->getRotEuler();
00184         }

virtual void NL3D::CTransformableUser::getRotEuler CVector rot  )  [inline, virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 154 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getRotEuler(), and NL3D_MEM_TRANSFORMABLE.

00155         {
00156                 NL3D_MEM_TRANSFORMABLE
00157                 _Transformable->getRotEuler(rot);
00158         }

virtual CVector NL3D::UTransformable::getRotEuler  )  [pure virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::getRotEuler CVector rot  )  [pure virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implemented in NL3D::CTransformableUser.

const char * NL3D::UTransformable::getRotEulerValueName  )  [static, inherited]
 

Definition at line 40 of file transformable_user.cpp.

References NL3D_MEM_TRANSFORMABLE.

00041 {
00042         NL3D_MEM_TRANSFORMABLE
00043         return ITransformable::getRotEulerValueName();
00044 }

virtual CMatrix::TRotOrder NL3D::CTransformableUser::getRotOrder  )  [inline, virtual, inherited]
 

get the current rotorder (information vlaid only when RotEuler mode).

Implements NL3D::UTransformable.

Definition at line 143 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getRotOrder(), and NL3D_MEM_TRANSFORMABLE.

00144         {
00145                 NL3D_MEM_TRANSFORMABLE
00146                 return _Transformable->getRotOrder();
00147         }

virtual CMatrix::TRotOrder NL3D::UTransformable::getRotOrder  )  [pure virtual, inherited]
 

get the current rotorder (information vlaid only when RotEuler mode).

Implemented in NL3D::CTransformableUser.

virtual CQuat NL3D::CTransformableUser::getRotQuat  )  [inline, virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 185 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getRotQuat(), and NL3D_MEM_TRANSFORMABLE.

00186         {
00187                 NL3D_MEM_TRANSFORMABLE
00188                 return _Transformable->getRotQuat();
00189         }

virtual void NL3D::CTransformableUser::getRotQuat CQuat quat  )  [inline, virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 159 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getRotQuat(), and NL3D_MEM_TRANSFORMABLE.

00160         {
00161                 NL3D_MEM_TRANSFORMABLE
00162                 _Transformable->getRotQuat(quat);
00163         }

virtual CQuat NL3D::UTransformable::getRotQuat  )  [pure virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::getRotQuat CQuat quat  )  [pure virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implemented in NL3D::CTransformableUser.

const char * NL3D::UTransformable::getRotQuatValueName  )  [static, inherited]
 

Definition at line 45 of file transformable_user.cpp.

References NL3D_MEM_TRANSFORMABLE.

00046 {
00047         NL3D_MEM_TRANSFORMABLE
00048         return ITransformable::getRotQuatValueName();
00049 }

virtual CVector NL3D::CTransformableUser::getScale  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 190 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getScale(), and NL3D_MEM_TRANSFORMABLE.

00191         {
00192                 NL3D_MEM_TRANSFORMABLE
00193                 return _Transformable->getScale();
00194         }

virtual void NL3D::CTransformableUser::getScale CVector scale  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 164 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getScale(), and NL3D_MEM_TRANSFORMABLE.

00165         {
00166                 NL3D_MEM_TRANSFORMABLE
00167                 _Transformable->getScale(scale);
00168         }

virtual CVector NL3D::UTransformable::getScale  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::getScale CVector scale  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

const char * NL3D::UTransformable::getScaleValueName  )  [static, inherited]
 

Definition at line 50 of file transformable_user.cpp.

References NL3D_MEM_TRANSFORMABLE.

00051 {
00052         NL3D_MEM_TRANSFORMABLE
00053         return ITransformable::getScaleValueName();
00054 }

CScene* NL3D::CTransformUser::getScene void   )  [inline, inherited]
 

Definition at line 274 of file transform_user.h.

References NL3D_MEM_TRANSFORM.

Referenced by NL3D::CSceneUser::setCam().

00275         {
00276                 NL3D_MEM_TRANSFORM
00277                 return _Scene;
00278         }

void NL3D::CInstanceUser::getShapeAABBox NLMISC::CAABBox bbox  )  const [virtual, inherited]
 

Get the untransformed AABBox of the mesh. NULL (gtSize()==0) if no mesh.

Implements NL3D::UInstance.

Definition at line 64 of file instance_user.cpp.

References NL3D::CTransformShape::getAABBox(), and NL3D_MEM_INSTANCE.

00065 {
00066         NL3D_MEM_INSTANCE
00067         _Instance->getAABBox(bbox);
00068 }

float NL3D::CInstanceUser::getShapeDistMax  )  const [virtual, inherited]
 

see setShapeDistMax()

Implements NL3D::UInstance.

Definition at line 108 of file instance_user.cpp.

References NL3D_MEM_INSTANCE, and NL3D::CTransformShape::Shape.

00109 {
00110         NL3D_MEM_INSTANCE
00111         if(_Instance && _Instance->Shape)
00112         {
00113                 return _Instance->Shape->getDistMax();
00114         }
00115         else
00116                 return -1;
00117 }

float NL3D::CInstanceUser::getSliceTime  )  const [virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 218 of file instance_user.cpp.

References NL3D::CSegRemanence::getSliceTime().

00219 {
00220         CSegRemanence *sr = dynamic_cast<CSegRemanence *>(_Instance);
00221         if (!sr) return 0.f;
00222         return sr->getSliceTime();
00223 }

CTransform* NL3D::CTransformUser::getTransform  )  [inline, inherited]
 

Definition at line 279 of file transform_user.h.

References NL3D::CTransformUser::_Transform, and NL3D_MEM_TRANSFORM.

Referenced by NL3D::CPlayListUser::registerTransform().

00280         {
00281                 NL3D_MEM_TRANSFORM
00282                 return _Transform;
00283         }

virtual TTransformMode NL3D::CTransformableUser::getTransformMode  )  [inline, virtual, inherited]
 

get the current transform mode.

Implements NL3D::UTransformable.

Definition at line 138 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::getTransformMode(), NL3D_MEM_TRANSFORMABLE, and uint.

00139         {
00140                 NL3D_MEM_TRANSFORMABLE
00141                 return (TTransformMode)(uint)_Transformable->getTransformMode();
00142         }

virtual TTransformMode NL3D::UTransformable::getTransformMode  )  [pure virtual, inherited]
 

get the current transform mode.

Implemented in NL3D::CTransformableUser.

virtual bool NL3D::CTransformUser::getUserClipping  )  const [inline, virtual, inherited]
 

Return the user clipping state.

Implements NL3D::UTransform.

Definition at line 132 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::getUserClipping(), NL3D_MEM_TRANSFORM, and nlassert.

00133         {
00134                 NL3D_MEM_TRANSFORM
00135                 nlassert(_Transform) ; // object invalid now ...
00136                 return _Transform->getUserClipping();
00137         }

virtual bool NL3D::UTransform::getUserClipping  )  const [pure virtual, inherited]
 

Return the user clipping state.

Implemented in NL3D::CTransformUser.

virtual bool NL3D::CTransformUser::getUserLightable  )  const [inline, virtual, inherited]
 

Get the UserLightable flag.

Implements NL3D::UTransform.

Definition at line 183 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::getUserLightable(), and NL3D_MEM_TRANSFORM.

00184         {
00185                 NL3D_MEM_TRANSFORM
00186                 return  _Transform->getUserLightable();
00187         }

virtual bool NL3D::UTransform::getUserLightable  )  const [pure virtual, inherited]
 

Get the UserLightable flag.

Implemented in NL3D::CTransformUser.

virtual TVisibility NL3D::CTransformUser::getVisibility  )  [inline, virtual, inherited]
 

Get the local visibility state.

Implements NL3D::UTransform.

Definition at line 146 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::getVisibility(), NL3D_MEM_TRANSFORM, nlassert, and uint32.

00147         {
00148                 NL3D_MEM_TRANSFORM
00149                 nlassert(_Transform) ; // object invalid now ...
00150                 return (UTransform::TVisibility)(uint32)_Transform->getVisibility();
00151         }

virtual TVisibility NL3D::UTransform::getVisibility  )  [pure virtual, inherited]
 

Get the local visibility state.

Implemented in NL3D::CTransformUser.

uint32 NL3D::CWaterInstanceUser::getWaterHeightMapID  )  const [virtual]
 

Get the ID of the water height map attached with this surface of water. Once you got it, you can get an interface on it from the water height map manager. NB : a water height map is usually shared between several wtare instances

Implements NL3D::UWaterInstance.

Definition at line 63 of file water_user.cpp.

References NL3D_MEM_WATER, and uint32.

00064 {
00065         NL3D_MEM_WATER
00066         CWaterModel *wm = NLMISC::safe_cast<CWaterModel *>(_Instance);
00067         return wm->getWaterHeightMapID();
00068 }

virtual void NL3D::CTransformUser::heritVisibility  )  [inline, virtual, inherited]
 

herit the visibility from his father. (default behavior).

Implements NL3D::UTransform.

Definition at line 139 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::heritVisibility(), NL3D_MEM_TRANSFORM, and nlassert.

00140         {
00141                 NL3D_MEM_TRANSFORM
00142                 nlassert(_Transform) ; // object invalid now ...
00143                 _Transform->heritVisibility();
00144         }

virtual void NL3D::UTransform::heritVisibility  )  [pure virtual, inherited]
 

herit the visibility from his father. (default behavior).

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::hide  )  [inline, virtual, inherited]
 

Hide the object and his sons.

Implements NL3D::UTransform.

Definition at line 113 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::hide(), NL3D_MEM_TRANSFORM, and nlassert.

00114         {
00115                 NL3D_MEM_TRANSFORM
00116                 nlassert(_Transform) ; // object invalid now ...
00117                 _Transform->hide();
00118         }

virtual void NL3D::UTransform::hide  )  [pure virtual, inherited]
 

Hide the object and his sons.

Implemented in NL3D::CTransformUser.

bool NL3D::CInstanceUser::isAsyncTextureDirty  )  const [virtual, inherited]
 

see dirtAsyncTextureState()

Implements NL3D::UInstance.

Definition at line 187 of file instance_user.cpp.

References NL3D::CMeshBaseInstance::isAsyncTextureDirty(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, and nlassert.

00188 {
00189         NL3D_MEM_INSTANCE
00190         nlassert(_Instance->isMeshBaseInstance());
00191         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00192         return mbi->isAsyncTextureDirty();
00193 }

bool NL3D::CInstanceUser::isAsyncTextureReady  )  [virtual, inherited]
 

return true if all the async textures of the instances are uploaded. if was not ready before, this swap the upload textures into the rendered ones so they are rendered return always true if not in async texture mode, or if startAsyncTextureLoading() has not been called since last enableAsyncTextureMode(true)

Implements NL3D::UInstance.

Definition at line 155 of file instance_user.cpp.

References NL3D::CMeshBaseInstance::isAsyncTextureReady(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, and nlassert.

00156 {
00157         NL3D_MEM_INSTANCE
00158         nlassert(_Instance->isMeshBaseInstance());
00159         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00160         return mbi->isAsyncTextureReady();
00161 }

virtual uint32 NL3D::CTransformUser::isOpaque  )  [inline, virtual, inherited]
 

Implements NL3D::UTransform.

Definition at line 239 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::isOpaque(), NL3D_MEM_TRANSFORM, and uint32.

00240         {
00241                 NL3D_MEM_TRANSFORM
00242                 return _Transform->isOpaque();
00243         }

virtual uint32 NL3D::UTransform::isOpaque  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

virtual bool NL3D::CInstanceUser::isStarted  )  const [inline, virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 120 of file instance_user.h.

References NL3D::CTransformShape::isStarted(), and NL3D_MEM_INSTANCE.

00121         { 
00122                 NL3D_MEM_INSTANCE
00123                 return _Instance->isStarted(); 
00124         }       

virtual uint32 NL3D::CTransformUser::isTransparent  )  [inline, virtual, inherited]
 

Implements NL3D::UTransform.

Definition at line 244 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D::CTransform::isTransparent(), NL3D_MEM_TRANSFORM, and uint32.

00245         {
00246                 NL3D_MEM_TRANSFORM
00247                 return _Transform->isTransparent();
00248         }

virtual uint32 NL3D::UTransform::isTransparent  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformableUser::lookAt const CVector eye,
const CVector target,
float  roll = 0.f
[inline, virtual, inherited]
 

Setup Matrix by the lookAt method. Work only in DirectMatrix mode and RotQuat mode (not euler...).

Parameters:
eye is the coordinate of the object.
target is the point the object look at.
roll is the roll angle in radian along the object's Y axis.

Implements NL3D::UTransformable.

Definition at line 206 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D::ITransformable::lookAt(), and NL3D_MEM_TRANSFORMABLE.

00207         {
00208                 NL3D_MEM_TRANSFORMABLE
00209                 _Transformable->lookAt(eye, target, roll);
00210         }

virtual void NL3D::UTransformable::lookAt const CVector eye,
const CVector target,
float  roll = 0.f
[pure virtual, inherited]
 

Setup Matrix by the lookAt method. Work only in DirectMatrix mode and RotQuat mode (not euler...).

Parameters:
eye is the coordinate of the object.
target is the point the object look at.
roll is the roll angle in radian along the object's Y axis.

Implemented in NL3D::CTransformableUser.

virtual void NL3D::CTransformUser::parent UTransform newFather  )  [virtual, inherited]
 

unlink this from oldparent, and make this be a son of newFather.

Implements NL3D::UTransform.

virtual void NL3D::UTransform::parent UTransform newFather  )  [pure virtual, inherited]
 

Hierarchy edit. unlink this from oldparent, and make this be a son of newFather. if this was already a son of newFather, no-op.

Parameters:
newFather the new Father. If NULL, the transform will be linked to the root of the hierarchy (Default!).

Implemented in NL3D::CTransformUser.

void NL3D::CInstanceUser::selectTextureSet uint  id  )  [virtual, inherited]
 

Select textures of material among several sets (if available) NB: if success and if getAsyncTextureMode()==true, then setAsyncTextureDirty(true) is called

Implements NL3D::UInstance.

Definition at line 121 of file instance_user.cpp.

References NL3D_MEM_INSTANCE, and uint.

00122 {
00123         NL3D_MEM_INSTANCE
00124         CMeshBaseInstance *mbi  = dynamic_cast<CMeshBaseInstance *>(_Instance);
00125         if (mbi)
00126                 mbi->selectTextureSet(id);
00127 }

void NL3D::CInstanceUser::setAsyncTextureDirty bool  flag  )  [virtual, inherited]
 

User is free to flag this state, to know if startAsyncTextureLoading() should be called. Internal system don't use this flag. Default is false

Implements NL3D::UInstance.

Definition at line 179 of file instance_user.cpp.

References NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, nlassert, and NL3D::CMeshBaseInstance::setAsyncTextureDirty().

00180 {
00181         NL3D_MEM_INSTANCE
00182         nlassert(_Instance->isMeshBaseInstance());
00183         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00184         mbi->setAsyncTextureDirty(flag);
00185 }

void NL3D::CInstanceUser::setAsyncTextureDistance float  dist  )  [virtual, inherited]
 

For Lod of texture, and load balancing, set the approximate distance of the instance to the camera.

Implements NL3D::UInstance.

Definition at line 163 of file instance_user.cpp.

References NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, nlassert, and NL3D::CMeshBaseInstance::setAsyncTextureDistance().

00164 {
00165         NL3D_MEM_INSTANCE
00166         nlassert(_Instance->isMeshBaseInstance());
00167         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00168         mbi->setAsyncTextureDistance(dist);
00169 }

void NL3D::CInstanceUser::setBlendShapeFactor const std::string &  blendShapeName,
float  factor,
bool  dynamic
[virtual, inherited]
 

Set the blend shape factor for this instance blenShapeName is the name of the blendshape we want to set factor the blendshape percentage from -100.0 to 100.0 dynamic tells the optimizer if the blendshape have to change in real time

Reimplemented from NL3D::UInstance.

Definition at line 71 of file instance_user.cpp.

References NL3D_MEM_INSTANCE.

00072 {
00073         NL3D_MEM_INSTANCE
00074         CMeshBaseInstance       *mi= dynamic_cast<CMeshBaseInstance*>(_Instance);
00075 
00076         if (mi)
00077         {
00078                 mi->setBlendShapeFactor (blendShapeName, factor);
00079                 // \todo trap takes care of the dynamic flag
00080         }
00081 }

virtual void NL3D::CTransformUser::setClusterSystem UInstanceGroup pIG  )  [virtual, inherited]
 

Implements NL3D::UTransform.

virtual void NL3D::UTransform::setClusterSystem UInstanceGroup pIG  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

void NL3D::CInstanceUser::setCoarseMeshDist float  dist  )  [virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 196 of file instance_user.cpp.

References NL3D::CMeshMultiLodInstance::setCoarseMeshDist().

00197 {
00198         CMeshMultiLodInstance *mmli = dynamic_cast<CMeshMultiLodInstance *>(_Instance);
00199         if (mmli) mmli->setCoarseMeshDist(dist);
00200 }

virtual void NL3D::CInstanceUser::setDistMax float  distMax  )  [inline, virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 130 of file instance_user.h.

References NL3D_MEM_INSTANCE, and NL3D::CTransformShape::setDistMax().

00131         {
00132                 NL3D_MEM_INSTANCE
00133                 _Instance->setDistMax(distMax);
00134         }

virtual void NL3D::CTransformUser::setForceClipRoot bool  forceClipRoot  )  [inline, virtual, inherited]
 

Force the transform to always be attached to the root As a consequence, it can't be inserted into a cluster system (even the root cluster) and is thus always visible when in the frustum (not clusterized) NB : any call to setClusterSystem will be ignored (must remain unclesterized) NB : any call to parent will be ignored (must remain linked to the root)

Implements NL3D::UTransform.

Definition at line 259 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, and NL3D::CTransform::setForceClipRoot().

00260         {
00261                 NL3D_MEM_TRANSFORM
00262                 _Transform->setForceClipRoot(forceClipRoot);
00263         }

virtual void NL3D::UTransform::setForceClipRoot bool  forceClipRoot  )  [pure virtual, inherited]
 

Force the transform to always be attached to the root As a consequence, it can't be inserted into a cluster system (even the root cluster) and is thus always visible when in the frustum (not clusterized) NB : any call to setClusterSystem will be ignored (must remain unclesterized) NB : any call to parent will be ignored (must remain linked to the root)

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setLoadBalancingGroup const std::string &  group  )  [virtual, inherited]
 

Change the load Balancing group of a model. Every models are in a special LoadBalancingGroup. NB: the group is created if did not exist. NB: if models are skinned, it is their Skeleton which drive the group

By default, models lies in the "Default" group, but Skeletons for skinning and ParticlesSystems which are in "Skin" and "Fx" group respectively. The "Default" group is special because it is not balanced (ie models are only degraded from their distance to camera)

Implements NL3D::UTransform.

virtual void NL3D::UTransform::setLoadBalancingGroup const std::string &  group  )  [pure virtual, inherited]
 

Change the load Balancing group of a model. Every models are in a special LoadBalancingGroup. NB: the group is created if did not exist. NB: if models are skinned, it is their Skeleton which drive the group

By default, models lies in the "Default" group, but Skeletons for skinning and ParticlesSystems which are in "Skin" and "Fx" group respectively. The "Default" group is special because it is not balanced (ie models are only degraded from their distance to camera)

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setLogicInfo ILogicInfo logicInfo  )  [inline, virtual, inherited]
 

Set the LogicInfo for this transfrom, eg to retrieve statc light information, see ILogicInfo. Ptr is kept in UTransfrom, so should call setLogicInfo(NULL) before to clean up.

Implements NL3D::UTransform.

Definition at line 191 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, and NL3D::CTransform::setLogicInfo().

00192         {
00193                 NL3D_MEM_TRANSFORM
00194                 _Transform->setLogicInfo(logicInfo);
00195         }

virtual void NL3D::UTransform::setLogicInfo ILogicInfo logicInfo  )  [pure virtual, inherited]
 

Set the LogicInfo for this transfrom, eg to retrieve statc light information, see ILogicInfo. Ptr is kept in UTransfrom, so should call setLogicInfo(NULL) before to clean up.

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformableUser::setMatrix const CMatrix mat  )  [inline, virtual, inherited]
 

Work only in DirecTMatrix mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 76 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, and NL3D::ITransformable::setMatrix().

00077         {
00078                 NL3D_MEM_TRANSFORMABLE
00079                 _Transformable->setMatrix(mat);
00080         }

virtual void NL3D::UTransformable::setMatrix const CMatrix mat  )  [pure virtual, inherited]
 

Work only in DirecTMatrix mode (nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::CTransformUser::setMeanColor NLMISC::CRGBA  color  )  [virtual, inherited]
 

set the Mean color of the transform. The mean color can be used for many purpose, such as drawing objects if the textures are not loaded. It is used also for Lod Character. Default color is (255,255,255)

Implements NL3D::UTransform.

virtual void NL3D::UTransform::setMeanColor NLMISC::CRGBA  color  )  [pure virtual, inherited]
 

set the Mean color of the transform. The mean color can be used for many purpose, such as drawing objects if the textures are not loaded. It is used also for Lod Character. Default color is (255,255,255)

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setOpacity bool  v  )  [inline, virtual, inherited]
 

Implements NL3D::UTransform.

Definition at line 234 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, NL3D::CTransform::setOpacity(), and v.

00235         {
00236                 NL3D_MEM_TRANSFORM
00237                 _Transform->setOpacity(true);
00238         }

virtual void NL3D::UTransform::setOpacity bool  v  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setOrderingLayer uint  layer  )  [inline, virtual, inherited]
 

Set the current ordering layer for this transform. Typically, this is used to sort transparent objects. Isn't used with solid objects. For now : Layer 0 is for underwater Layer 1 is for water surfaces Layer 2 is for object above water

Implements NL3D::UTransform.

Definition at line 162 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, NL3D::CTransform::setOrderingLayer(), and uint.

00163         { 
00164                 NL3D_MEM_TRANSFORM
00165                 _Transform->setOrderingLayer(layer); 
00166         }

virtual void NL3D::UTransform::setOrderingLayer uint  layer  )  [pure virtual, inherited]
 

Set the current ordering layer for this transform. Typically, this is used to sort transparent objects. Isn't used with solid objects. For now : Layer 0 is for underwater Layer 1 is for water surfaces Layer 2 is for object above water

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformableUser::setPivot const CVector pivot  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 132 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, and NL3D::ITransformable::setPivot().

00133         {
00134                 NL3D_MEM_TRANSFORMABLE
00135                 _Transformable->setPivot(pivot);
00136         }

void NL3D::UTransformable::setPivot float  px,
float  py,
float  pz
[inline, inherited]
 

Work only in Rot* mode (nlassert).

Definition at line 108 of file u_transformable.h.

References NL3D::UTransformable::setPivot().

00108 {setPivot(CVector(px, py, pz));}

virtual void NL3D::UTransformable::setPivot const CVector pivot  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

Referenced by NL3D::UTransformable::setPivot().

virtual void NL3D::CTransformableUser::setPos const CVector pos  )  [inline, virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 97 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, and NL3D::ITransformable::setPos().

00098         {
00099                 NL3D_MEM_TRANSFORMABLE
00100                 _Transformable->setPos(pos);
00101         }

void NL3D::UTransformable::setPos float  px,
float  py,
float  pz
[inline, inherited]
 

Work only in Rot* mode(nlassert).

Definition at line 86 of file u_transformable.h.

References NL3D::UTransformable::setPos().

00086 {setPos(CVector(px, py, pz));}

virtual void NL3D::UTransformable::setPos const CVector pos  )  [pure virtual, inherited]
 

Work only in Rot* mode(nlassert).

Implemented in NL3D::CTransformableUser.

Referenced by NL3D::UTransformable::setPos().

virtual void NL3D::CTransformableUser::setRotEuler const CVector rot  )  [inline, virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implements NL3D::UTransformable.

Definition at line 102 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, and NL3D::ITransformable::setRotEuler().

00103         {
00104                 NL3D_MEM_TRANSFORMABLE
00105                 _Transformable->setRotEuler(rot);
00106         }

void NL3D::UTransformable::setRotEuler float  rx,
float  ry,
float  rz
[inline, inherited]
 

Work only in RotEuler mode(nlassert).

Definition at line 90 of file u_transformable.h.

References NL3D::UTransformable::setRotEuler().

00090 {setRotEuler(CVector(rx, ry, rz));}

virtual void NL3D::UTransformable::setRotEuler const CVector rot  )  [pure virtual, inherited]
 

Work only in RotEuler mode(nlassert).

Implemented in NL3D::CTransformableUser.

Referenced by NL3D::UTransformable::setRotEuler().

virtual void NL3D::CTransformableUser::setRotQuat const CVector jdir,
const CVector vup
[inline, virtual, inherited]
 

Work only in RotQuat mode (nlassert). Build a quaternion from a forward direction (a J vector). the roll is determined with help of the vector up vup... vectors do not need to be noramlized.

Implements NL3D::UTransformable.

Definition at line 120 of file transformable_user.h.

References NL3D_MEM_TRANSFORMABLE, and NL3D::CTransformableUser::setRotQuat().

00121         {
00122                 NL3D_MEM_TRANSFORMABLE
00123                 CMatrix mat;
00124                 mat.setRot(CVector::I, jdir, vup);
00125                 mat.normalize(CMatrix::YZX);
00126                 setRotQuat(mat.getRot());
00127         }

virtual void NL3D::CTransformableUser::setRotQuat const CVector jdir  )  [inline, virtual, inherited]
 

Work only in RotQuat mode (nlassert). Build a quaternion from a forward direction (a J vector). there is no roll... jdir do not need to be noramlized.

Implements NL3D::UTransformable.

Definition at line 112 of file transformable_user.h.

References NL3D_MEM_TRANSFORMABLE, and NL3D::CTransformableUser::setRotQuat().

00113         {
00114                 NL3D_MEM_TRANSFORMABLE
00115                 CMatrix mat;
00116                 mat.setRot(CVector::I, jdir, CVector::K);
00117                 mat.normalize(CMatrix::YZX);
00118                 setRotQuat(mat.getRot());
00119         }

virtual void NL3D::CTransformableUser::setRotQuat const CQuat quat  )  [inline, virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 107 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, and NL3D::ITransformable::setRotQuat().

Referenced by NL3D::CTransformableUser::setRotQuat().

00108         {
00109                 NL3D_MEM_TRANSFORMABLE
00110                 _Transformable->setRotQuat(quat);
00111         }

virtual void NL3D::UTransformable::setRotQuat const CVector jdir,
const CVector vup
[pure virtual, inherited]
 

Work only in RotQuat mode (nlassert). Build a quaternion from a forward direction (a J vector). the roll is determined with help of the vector up vup... vectors do not need to be noramlized.

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::setRotQuat const CVector jdir  )  [pure virtual, inherited]
 

Work only in RotQuat mode (nlassert). Build a quaternion from a forward direction (a J vector). there is no roll... jdir do not need to be noramlized.

Implemented in NL3D::CTransformableUser.

virtual void NL3D::UTransformable::setRotQuat const CQuat quat  )  [pure virtual, inherited]
 

Work only in RotQuat mode (nlassert).

Implemented in NL3D::CTransformableUser.

virtual void NL3D::CTransformableUser::setScale const CVector scale  )  [inline, virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implements NL3D::UTransformable.

Definition at line 128 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, and NL3D::ITransformable::setScale().

00129         {
00130                 _Transformable->setScale(scale);
00131         }

void NL3D::UTransformable::setScale float  sx,
float  sy,
float  sz
[inline, inherited]
 

Work only in Rot* mode (nlassert).

Definition at line 104 of file u_transformable.h.

References NL3D::UTransformable::setScale().

00104 {setScale(CVector(sx, sy, sz));}

virtual void NL3D::UTransformable::setScale const CVector scale  )  [pure virtual, inherited]
 

Work only in Rot* mode (nlassert).

Implemented in NL3D::CTransformableUser.

Referenced by NL3D::UTransformable::setScale().

void NL3D::CInstanceUser::setShapeDistMax float  distMax  )  [virtual, inherited]
 

Change Max Display distance. After this distance the shape won't be displayed. setting <0 means -1 and so means DistMax = infinite (default in meshs but multilod meshes). NB: This apply to the shape direclty!! ie All instances using same shape will be affected

Note: If the instance is skinned/sticked to a skeleton, this setup is not taken into account. But you can call USkeleton::setShapeDistMax() to have same effect.

Note (complex): All instances of the same shape which are freezeHRC()-ed and are linked to the QuadGridClipManager (ie not linked to a cluster) may not be updated corretcly. In other words, you should setup this value only at beginning of program, just after creating your instance (more exactly before UScene::render()), and all instances of the same shape should be setuped with same value (or don't call setShapeDistMax() for subsequent instances). If you don't do this, QuadGridClipManager may clip such instances nearer than they should

Implements NL3D::UInstance.

Definition at line 98 of file instance_user.cpp.

References NL3D_MEM_INSTANCE, and NL3D::CTransformShape::Shape.

00099 {
00100         NL3D_MEM_INSTANCE
00101         if(_Instance && _Instance->Shape)
00102         {
00103                 _Instance->Shape->setDistMax(distMax);
00104         }
00105 }

void NL3D::CInstanceUser::setSliceTime float  duration  )  [virtual, inherited]
 

Trails specific. Set the slice time (period used to sample the trail pos) If the object is not a trail, this has no effect

Implements NL3D::UInstance.

Definition at line 210 of file instance_user.cpp.

References NL3D::CSegRemanence::setSliceTime().

00211 {
00212         CSegRemanence *sr = dynamic_cast<CSegRemanence *>(_Instance);
00213         if (!sr) return;
00214         sr->setSliceTime(duration);
00215 }

virtual void NL3D::CTransformableUser::setTransformMode TTransformMode  mode,
CMatrix::TRotOrder  ro = CMatrix::ZXY
[inline, virtual, inherited]
 

Change the transform mode. Components or matrix are not reseted.

Implements NL3D::UTransformable.

Definition at line 92 of file transformable_user.h.

References NL3D::CTransformableUser::_Transformable, NL3D_MEM_TRANSFORMABLE, NL3D::ITransformable::setTransformMode(), and uint.

00093         {
00094                 NL3D_MEM_TRANSFORMABLE
00095                 _Transformable->setTransformMode((ITransformable::TTransformMode)(uint)mode, ro);
00096         }

virtual void NL3D::UTransformable::setTransformMode TTransformMode  mode,
CMatrix::TRotOrder  ro = CMatrix::ZXY
[pure virtual, inherited]
 

Change the transform mode. Components or matrix are not reseted.

Implemented in NL3D::CTransformableUser.

virtual void NL3D::CTransformUser::setTransparency bool  v  )  [inline, virtual, inherited]
 

Implements NL3D::UTransform.

Definition at line 229 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, NL3D::CTransform::setTransparency(), and v.

00230         {
00231                 NL3D_MEM_TRANSFORM
00232                 _Transform->setTransparency(v);
00233         }

virtual void NL3D::UTransform::setTransparency bool  v  )  [pure virtual, inherited]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setUserClipping bool  enable  )  [inline, virtual, inherited]
 

Return the user clipping state.

Implements NL3D::UTransform.

Definition at line 126 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, nlassert, and NL3D::CTransform::setUserClipping().

00127         {
00128                 NL3D_MEM_TRANSFORM
00129                 nlassert(_Transform) ; // object invalid now ...
00130                 _Transform->setUserClipping(enable);
00131         }

virtual void NL3D::UTransform::setUserClipping bool  enable  )  [pure virtual, inherited]
 

Return the user clipping state.

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::setUserLightable bool  enable  )  [inline, virtual, inherited]
 

Set the UserLightable flag. if false, isLightable() will always return false. Doing this, user can disable lighting on a model which may be interesting for speed. NB: most of models don't need it. For example models with LightMaps are by default Lighing-disabled. Default behavior is UserLightable==true.

Implements NL3D::UTransform.

Definition at line 178 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, and NL3D::CTransform::setUserLightable().

00179         {
00180                 NL3D_MEM_TRANSFORM
00181                 _Transform->setUserLightable(enable);
00182         }

virtual void NL3D::UTransform::setUserLightable bool  enable  )  [pure virtual, inherited]
 

Set the UserLightable flag. if false, isLightable() will always return false. Doing this, user can disable lighting on a model which may be interesting for speed. NB: most of models don't need it. For example models with LightMaps are by default Lighing-disabled. Default behavior is UserLightable==true.

Implemented in NL3D::CTransformUser.

virtual void NL3D::CTransformUser::show  )  [inline, virtual, inherited]
 

Show the objet and his sons.

Implements NL3D::UTransform.

Definition at line 120 of file transform_user.h.

References NL3D::CTransformUser::_Transform, NL3D_MEM_TRANSFORM, nlassert, and NL3D::CTransform::show().

00121         {
00122                 NL3D_MEM_TRANSFORM
00123                 nlassert(_Transform) ; // object invalid now ...
00124                 _Transform->show();
00125         }

virtual void NL3D::UTransform::show  )  [pure virtual, inherited]
 

Show the objet and his sons.

Implemented in NL3D::CTransformUser.

virtual void NL3D::CInstanceUser::start  )  [inline, virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 110 of file instance_user.h.

References NL3D_MEM_INSTANCE, and NL3D::CTransformShape::start().

00111         { 
00112                 NL3D_MEM_INSTANCE
00113                 _Instance->start(); 
00114         }       

void NL3D::CInstanceUser::startAsyncTextureLoading  )  [virtual, inherited]
 

Start to load all textures in AsyncTextures array (if needed) NB: old setup is kept in Material => instance is still rendered with "coherent" textures, until new textures are ready no op if not in async texture mode.

Implements NL3D::UInstance.

Definition at line 147 of file instance_user.cpp.

References NL3D::CTransformableUser::getPos(), NL3D::CTransform::isMeshBaseInstance(), NL3D_MEM_INSTANCE, nlassert, and NL3D::CMeshBaseInstance::startAsyncTextureLoading().

00148 {
00149         NL3D_MEM_INSTANCE
00150         nlassert(_Instance->isMeshBaseInstance());
00151         CMeshBaseInstance *mbi  = static_cast<CMeshBaseInstance *>(_Instance);
00152         mbi->startAsyncTextureLoading(getPos());
00153 }

virtual void NL3D::CInstanceUser::stop  )  [inline, virtual, inherited]
 

Implements NL3D::UInstance.

Definition at line 115 of file instance_user.h.

References NL3D_MEM_INSTANCE, and NL3D::CTransformShape::stop().

00116         { 
00117                 NL3D_MEM_INSTANCE
00118                 _Instance->stop(); 
00119         }       

virtual void NL3D::CTransformUser::unfreezeHRC  )  [virtual, inherited]
 

see freezeHRC().

Implements NL3D::UTransform.

virtual void NL3D::UTransform::unfreezeHRC  )  [pure virtual, inherited]
 

see freezeHRC().

Implemented in NL3D::CTransformUser.


Field Documentation

bool NL3D::CTransformUser::_DeleteIt [protected, inherited]
 

Definition at line 60 of file transform_user.h.

Referenced by NL3D::CTransformUser::CTransformUser(), and NL3D::CTransformUser::~CTransformUser().

CTransformShape* NL3D::CInstanceUser::_Instance [inherited]
 

This is the SAME pointer than _Transform, but correctly casted.

Definition at line 54 of file instance_user.h.

std::vector<CInstanceMaterialUser> NL3D::CInstanceUser::_Materials [inherited]
 

This is a mirror of _Instance->Materials.

Definition at line 57 of file instance_user.h.

CScene* NL3D::CTransformUser::_Scene [protected, inherited]
 

Definition at line 55 of file transform_user.h.

CTransform* NL3D::CTransformUser::_Transform [protected, inherited]
 

Definition at line 57 of file transform_user.h.

Referenced by NL3D::CTransformUser::CTransformUser(), NL3D::CTransformUser::getForceClipRoot(), NL3D::CTransformUser::getLastClippedState(), NL3D::CTransformUser::getLastWorldVisState(), NL3D::CTransformUser::getOrderingLayer(), NL3D::CTransformUser::getTransform(), NL3D::CTransformUser::getUserClipping(), NL3D::CTransformUser::getUserLightable(), NL3D::CTransformUser::getVisibility(), NL3D::CTransformUser::heritVisibility(), NL3D::CTransformUser::hide(), NL3D::CTransformUser::isOpaque(), NL3D::CTransformUser::isTransparent(), NL3D::CTransformUser::setForceClipRoot(), NL3D::CTransformUser::setLogicInfo(), NL3D::CTransformUser::setOpacity(), NL3D::CTransformUser::setOrderingLayer(), NL3D::CTransformUser::setTransparency(), NL3D::CTransformUser::setUserClipping(), NL3D::CTransformUser::setUserLightable(), NL3D::CTransformUser::show(), and NL3D::CTransformUser::~CTransformUser().

ITransformable* NL3D::CTransformableUser::_Transformable [protected, inherited]
 

Definition at line 50 of file transformable_user.h.

Referenced by NL3D::CTransformableUser::CTransformableUser(), NL3D::CTransformableUser::getMatrix(), NL3D::CTransformableUser::getPivot(), NL3D::CTransformableUser::getPos(), NL3D::CTransformableUser::getRotEuler(), NL3D::CTransformableUser::getRotOrder(), NL3D::CTransformableUser::getRotQuat(), NL3D::CTransformableUser::getScale(), NL3D::CTransformableUser::getTransformMode(), NL3D::CTransformableUser::lookAt(), NL3D::CTransformableUser::setMatrix(), NL3D::CTransformableUser::setPivot(), NL3D::CTransformableUser::setPos(), NL3D::CTransformableUser::setRotEuler(), NL3D::CTransformableUser::setRotQuat(), NL3D::CTransformableUser::setScale(), NL3D::CTransformableUser::setTransformMode(), and NL3D::CTransformableUser::~CTransformableUser().


The documentation for this class was generated from the following files:
Generated on Tue Mar 16 08:28:35 2004 for NeL by doxygen 1.3.6