# 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::UTransform Class Reference

Base interface for manipulating Movable Objects in the scene: camera, lights, instances etc... More...

#include <u_transform.h>

Inheritance diagram for NL3D::UTransform:

NL3D::UTransformable NL3D::CTransformUser NL3D::UCamera NL3D::UInstance NL3D::UPointLight NL3D::USkeleton NL3D::CCameraUser NL3D::CInstanceUser NL3D::CParticleSystemInstanceUser NL3D::CPointLightUser NL3D::CSkeletonUser NL3D::CCameraUser NL3D::CInstanceUser NL3D::UParticleSystemInstance NL3D::CPointLightUser NL3D::CSkeletonUser List of all members.

Public Types

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


Public Methods

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

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

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

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

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

Hierarchy manipulation
virtual void parent (UTransform *newFather)=0
 Hierarchy edit. More...

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

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

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

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

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

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

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

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

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

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

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

virtual void setTransparency (bool v)=0
virtual void setOpacity (bool v)=0
virtual uint32 isOpaque ()=0
virtual uint32 isTransparent ()=0

Protected Methods

Object
 UTransform ()
 Constructor. By default, RotQuat mode. More...

virtual ~UTransform ()

Detailed Description

Base interface for manipulating Movable Objects in the scene: camera, lights, instances etc...

see UTransformable. A UTransform can be set in a hierachy, and can be hidden.

Author:
Lionel Berenguier , Nevrax France
Date:
2001

Definition at line 52 of file u_transform.h.


Member Enumeration Documentation

enum NL3D::UTransform::TVisibility
 

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

Enumeration values:
Show 
Hide 
Herit 
VisibilityCount 

Definition at line 67 of file u_transform.h.

Referenced by NL3D::CTransformUser::getVisibility.


Constructor & Destructor Documentation

NL3D::UTransform::UTransform   [inline, protected]
 

Constructor. By default, RotQuat mode.

Definition at line 59 of file u_transform.h.

virtual NL3D::UTransform::~UTransform   [inline, protected, virtual]
 

Definition at line 60 of file u_transform.h.


Member Function Documentation

virtual void NL3D::UTransform::freezeHRC   [pure 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.

Implemented in NL3D::CTransformUser.

virtual UInstanceGroup* NL3D::UTransform::getClusterSystem   [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual bool NL3D::UTransform::getLastClippedState   const [pure virtual]
 

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

Implemented in NL3D::CTransformUser.

virtual const CMatrix& NL3D::UTransform::getLastWorldMatrixComputed   const [pure 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().

Implemented in NL3D::CTransformUser.

virtual const std::string& NL3D::UTransform::getLoadBalancingGroup   const [pure virtual]
 

Get the load Balancing group of a model.

see setLoadBalancingGroup().

Implemented in NL3D::CTransformUser.

virtual NLMISC::CRGBA NL3D::UTransform::getMeanColor   const [pure virtual]
 

see setMeanColor().

Implemented in NL3D::CTransformUser.

virtual uint NL3D::UTransform::getOrderingLayer   const [pure virtual]
 

Get the ordering layer.

Implemented in NL3D::CTransformUser.

virtual bool NL3D::UTransform::getUserLightable   const [pure virtual]
 

Get the UserLightable flag.

Implemented in NL3D::CTransformUser.

virtual TVisibility NL3D::UTransform::getVisibility   [pure virtual]
 

Get the local visibility state.

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::heritVisibility   [pure virtual]
 

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

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::hide   [pure virtual]
 

Hide the object and his sons.

Implemented in NL3D::CTransformUser.

virtual uint32 NL3D::UTransform::isOpaque   [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual uint32 NL3D::UTransform::isTransparent   [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::parent UTransform *    newFather [pure virtual]
 

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.

virtual void NL3D::UTransform::setClusterSystem UInstanceGroup   pIG [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setLoadBalancingGroup const std::string &    group [pure 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)

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setLogicInfo ILogicInfo   logicInfo [pure 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.

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setMeanColor NLMISC::CRGBA    color [pure 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)

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setOpacity bool    v [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setOrderingLayer uint    layer [pure 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

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setTransparency bool    v [pure virtual]
 

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::setUserLightable bool    enable [pure 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.

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::show   [pure virtual]
 

Show the objet and his sons.

Implemented in NL3D::CTransformUser.

virtual void NL3D::UTransform::unfreezeHRC   [pure virtual]
 

see freezeHRC().

Implemented in NL3D::CTransformUser.


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