# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CTransformUser Class Reference

UTransform implementation. More...

#include <transform_user.h>

Inheritance diagram for NL3D::CTransformUser:

NL3D::UTransform NL3D::CTransformableUser NL3D::UTransformable NL3D::UTransformable NL3D::CCameraUser NL3D::CInstanceUser NL3D::CParticleSystemInstanceUser NL3D::CPointLightUser NL3D::CSkeletonUser NL3D::CWaterInstanceUser List of all members.

Public Methods

virtual void setOrderingLayer (uint layer)
 Set the current ordering layer for this transform. More...

virtual uint getOrderingLayer () const
 Get the ordering layer. More...

virtual void setLogicInfo (ILogicInfo *logicInfo)
 Set the LogicInfo for this transfrom, eg to retrieve statc light information, see ILogicInfo. More...

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

virtual const CMatrix & getLastWorldMatrixComputed () const
 get the last world matrix computed in last render(). More...

Object
 CTransformUser (CScene *scene, IModel *trans)
 Give a Scene Instance. CTransformUser owns it, and will delete it. More...

virtual ~CTransformUser ()
Space manipulation
virtual void parent (UTransform *newFather)
 unlink this from oldparent, and make this be a son of newFather. More...

virtual void setClusterSystem (UInstanceGroup *pIG)
virtual UInstanceGroupgetClusterSystem ()
visibility
virtual void hide ()
 Hide the object and his sons. More...

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

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

virtual TVisibility getVisibility ()
 Get the local visibility state. More...

freezeHRC
virtual void freezeHRC ()
 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. More...

virtual void unfreezeHRC ()
 see freezeHRC(). More...

virtual void setUserLightable (bool enable)
 Set the UserLightable flag. More...

virtual bool getUserLightable () const
 Get the UserLightable flag. More...

virtual void setLoadBalancingGroup (const std::string &group)
 Change the load Balancing group of a model. More...

virtual const std::string & getLoadBalancingGroup () const
 Get the load Balancing group of a model. More...

virtual void setMeanColor (NLMISC::CRGBA color)
 set the Mean color of the transform. More...

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

virtual void setTransparency (bool v)
virtual void setOpacity (bool v)
virtual uint32 isOpaque ()
virtual uint32 isTransparent ()
Accessor for CSeneUser / Other.
CScenegetScene ()
CTransformgetTransform ()

Protected Attributes

CScene_Scene
CTransform_Transform
UInstanceGroup_pIG

Detailed Description

UTransform implementation.

Author:
Lionel Berenguier , Nevrax France
Date:
2001

Definition at line 51 of file transform_user.h.


Constructor & Destructor Documentation

NL3D::CTransformUser::CTransformUser CScene   scene,
IModel   trans
[inline]
 

Give a Scene Instance. CTransformUser owns it, and will delete it.

Definition at line 65 of file transform_user.h.

References _pIG, _Scene, _Transform, NL3D_MEM_TRANSFORM, and nlassert.

Referenced by NL3D::CCameraUser::CCameraUser, and parent.

virtual NL3D::CTransformUser::~CTransformUser   [inline, virtual]
 

Definition at line 76 of file transform_user.h.

References _Scene, _Transform, and NL3D_MEM_TRANSFORM.


Member Function Documentation

void NL3D::CTransformUser::freezeHRC   [virtual]
 

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.

Definition at line 60 of file transform_user.cpp.

References _Transform, and nlassert.

UInstanceGroup * NL3D::CTransformUser::getClusterSystem   [virtual]
 

Implements NL3D::UTransform.

Definition at line 53 of file transform_user.cpp.

References _pIG.

virtual bool NL3D::CTransformUser::getLastClippedState   const [inline, virtual]
 

Return true if the object was rendered during the last Scene->rendere(). return false else (ie clipped).

Implements NL3D::UTransform.

Definition at line 196 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

const CMatrix & NL3D::CTransformUser::getLastWorldMatrixComputed   const [virtual]
 

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.

Definition at line 97 of file transform_user.cpp.

References _Transform.

const std::string & NL3D::CTransformUser::getLoadBalancingGroup   const [virtual]
 

Get the load Balancing group of a model.

see setLoadBalancingGroup().

Implements NL3D::UTransform.

Definition at line 80 of file transform_user.cpp.

References _Transform.

NLMISC::CRGBA NL3D::CTransformUser::getMeanColor   const [virtual]
 

see setMeanColor().

Implements NL3D::UTransform.

Definition at line 91 of file transform_user.cpp.

References _Transform.

virtual uint NL3D::CTransformUser::getOrderingLayer   const [inline, virtual]
 

Get the ordering layer.

Implements NL3D::UTransform.

Definition at line 167 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

CScene* NL3D::CTransformUser::getScene void    [inline]
 

Definition at line 243 of file transform_user.h.

References _Scene, and NL3D_MEM_TRANSFORM.

CTransform* NL3D::CTransformUser::getTransform   [inline]
 

Definition at line 248 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual bool NL3D::CTransformUser::getUserLightable   const [inline, virtual]
 

Get the UserLightable flag.

Implements NL3D::UTransform.

Definition at line 181 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual TVisibility NL3D::CTransformUser::getVisibility   [inline, virtual]
 

Get the local visibility state.

Implements NL3D::UTransform.

Definition at line 144 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, nlassert, and NL3D::UTransform::TVisibility.

virtual void NL3D::CTransformUser::heritVisibility   [inline, virtual]
 

herit the visibility from his father. (default behavior).

Implements NL3D::UTransform.

Definition at line 137 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, and nlassert.

virtual void NL3D::CTransformUser::hide   [inline, virtual]
 

Hide the object and his sons.

Implements NL3D::UTransform.

Definition at line 123 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, and nlassert.

virtual uint32 NL3D::CTransformUser::isOpaque   [inline, virtual]
 

Implements NL3D::UTransform.

Definition at line 228 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual uint32 NL3D::CTransformUser::isTransparent   [inline, virtual]
 

Implements NL3D::UTransform.

Definition at line 233 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual void NL3D::CTransformUser::parent UTransform   newFather [inline, virtual]
 

unlink this from oldparent, and make this be a son of newFather.

Implements NL3D::UTransform.

Definition at line 96 of file transform_user.h.

References _Scene, _Transform, CTransformUser, NL3D_MEM_TRANSFORM, nlassert, and nlerror.

void NL3D::CTransformUser::setClusterSystem UInstanceGroup   pIG [virtual]
 

Implements NL3D::UTransform.

Definition at line 37 of file transform_user.cpp.

References _pIG, _Transform, and nlassert.

void NL3D::CTransformUser::setLoadBalancingGroup const std::string &    group [virtual]
 

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.

Definition at line 75 of file transform_user.cpp.

References _Transform.

virtual void NL3D::CTransformUser::setLogicInfo ILogicInfo   logicInfo [inline, virtual]
 

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 189 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

void NL3D::CTransformUser::setMeanColor NLMISC::CRGBA    color [virtual]
 

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.

Definition at line 86 of file transform_user.cpp.

References _Transform.

virtual void NL3D::CTransformUser::setOpacity bool    v [inline, virtual]
 

Implements NL3D::UTransform.

Definition at line 223 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, and v.

virtual void NL3D::CTransformUser::setOrderingLayer uint    layer [inline, virtual]
 

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 160 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual void NL3D::CTransformUser::setTransparency bool    v [inline, virtual]
 

Implements NL3D::UTransform.

Definition at line 218 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, and v.

virtual void NL3D::CTransformUser::setUserLightable bool    enable [inline, virtual]
 

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 176 of file transform_user.h.

References _Transform, and NL3D_MEM_TRANSFORM.

virtual void NL3D::CTransformUser::show   [inline, virtual]
 

Show the objet and his sons.

Implements NL3D::UTransform.

Definition at line 130 of file transform_user.h.

References _Transform, NL3D_MEM_TRANSFORM, and nlassert.

void NL3D::CTransformUser::unfreezeHRC   [virtual]
 

see freezeHRC().

Implements NL3D::UTransform.

Definition at line 67 of file transform_user.cpp.

References _Transform, and nlassert.


Member Data Documentation

UInstanceGroup* NL3D::CTransformUser::_pIG [protected]
 

Definition at line 58 of file transform_user.h.

Referenced by CTransformUser, getClusterSystem, and setClusterSystem.

CScene* NL3D::CTransformUser::_Scene [protected]
 

Definition at line 55 of file transform_user.h.

Referenced by CTransformUser, getScene, parent, and ~CTransformUser.

CTransform* NL3D::CTransformUser::_Transform [protected]
 

Definition at line 57 of file transform_user.h.

Referenced by CTransformUser, freezeHRC, getLastClippedState, getLastWorldMatrixComputed, getLoadBalancingGroup, getMeanColor, getOrderingLayer, getTransform, getUserLightable, getVisibility, heritVisibility, hide, isOpaque, isTransparent, parent, setClusterSystem, setLoadBalancingGroup, setLogicInfo, setMeanColor, setOpacity, setOrderingLayer, setTransparency, setUserLightable, show, unfreezeHRC, and ~CTransformUser.


The documentation for this class was generated from the following files: