Drag[en]gine Game Engine  1.21
deDecal Class Reference

Decal Resource. More...

#include <deDecal.h>

Inheritance diagram for deDecal:
deResource deObject

Public Types

typedef deTObjectReference< deDecalRef
 Type holding strong reference. More...
 
- Public Types inherited from deResource
typedef deTObjectReference< deResourceRef
 Type holding strong reference. More...
 
- Public Types inherited from deObject
typedef deTObjectReference< deObjectRef
 Type holding strong reference. More...
 

Public Member Functions

Management
const decVectorGetPosition () const
 Position. More...
 
void SetPosition (const decVector &position)
 Set position. More...
 
const decQuaternionGetOrientation () const
 Orientation. More...
 
void SetOrientation (const decQuaternion &orientation)
 Set orientation. More...
 
const decVectorGetSize () const
 Size. More...
 
void SetSize (const decVector &size)
 Set size. More...
 
const decTexMatrix2GetTransform () const
 Texture coordinate transformation matrix. More...
 
void SetTransform (const decTexMatrix2 &matrix)
 Set texture coordinate transformation matrix. More...
 
deSkinGetSkin () const
 Skin. More...
 
void SetSkin (deSkin *skin)
 Set skin. More...
 
int GetTexture () const
 Texture number in the skin. More...
 
void SetTexture (int texture)
 Set texture number in the skin. More...
 
deDynamicSkinGetDynamicSkin () const
 Dynamic skin or NULL if not used. More...
 
void SetDynamicSkin (deDynamicSkin *dynamicSkin)
 Set dynamic skin or NULL if not used. More...
 
bool GetVisible () const
 Decal is visible. More...
 
void SetVisible (bool visible)
 Set if decal is visible. More...
 
Bone States
int GetBoneStateCount () const
 Number of bone states. More...
 
void SetBoneStateCount (int count)
 Set number of bone states. More...
 
deDecalBoneStateGetBoneStateAt (int index)
 Bone state at the given index. More...
 
void SnapshotBoneStatesFrom (deComponent *component)
 Copy current bone state from the provided component. More...
 
Component linked list
deComponentGetParentComponent () const
 Parent component or NULL. More...
 
void SetParentComponent (deComponent *component)
 Set parent component or NULL. More...
 
deDecalGetLLComponentPrev () const
 Previous decal in component linked list. More...
 
void SetLLComponentPrev (deDecal *decal)
 Set next decal in the component linked list. More...
 
deDecalGetLLComponentNext () const
 Next decal in the component linked list. More...
 
void SetLLComponentNext (deDecal *decal)
 Set next decal in the component linked list. More...
 
Height terrain sector linked list
deHeightTerrainSectorGetParentHeightTerrainSector () const
 Parent height terrain sector or NULL. More...
 
void SetParentHeightTerrainSector (deHeightTerrainSector *sector)
 Set parent height terrain sector or NULL. More...
 
deDecalGetLLHeightTerrainSectorPrev () const
 Previous decal in height terrain sector linked list. More...
 
void SetLLHeightTerrainSectorPrev (deDecal *decal)
 Set next decal in the height terrain sector linked list. More...
 
deDecalGetLLHeightTerrainSectorNext () const
 Next decal in the height terrain sector linked list. More...
 
void SetLLHeightTerrainSectorNext (deDecal *decal)
 Set next decal in the height terrain sector linked list. More...
 
- Public Member Functions inherited from deResource
deResourceManagerGetResourceManager () const
 Resource manager or NULL if resource is leaking. More...
 
deEngineGetEngine () const
 Game engine object from resource manager. More...
 
deResourceGetLLManagerPrev () const
 Previous resource in the resource manager linked list. More...
 
void SetLLManagerPrev (deResource *resource)
 Set next resource in the resource manager linked list. More...
 
deResourceGetLLManagerNext () const
 Next resource in the resource manager linked list. More...
 
void SetLLManagerNext (deResource *resource)
 Set next resource in the resource manager linked list. More...
 
void MarkLeaking ()
 Marks the resource leaking. More...
 
 deResource (deResourceManager *resourceManager)
 Create resource. More...
 
- Public Member Functions inherited from deObject
int GetRefCount () const
 Reference count. More...
 
void AddReference ()
 Add reference increasing reference count by 1. More...
 
void FreeReference ()
 Decrease reference count by one and delete object if count reaches 0. More...
 
 deObject ()
 Create object with reference count of 1. More...
 

Constructors and Destructors

 deDecal (deDecalManager *manager)
 Create decal. More...
 
virtual ~deDecal ()
 Clean up decal. More...
 

System Peers

deBaseGraphicDecalGetPeerGraphic () const
 Graphic system peer. More...
 
void SetPeerGraphic (deBaseGraphicDecal *peer)
 Set graphic system peer. More...
 
deBasePhysicsDecalGetPeerPhysics () const
 Physics system peer. More...
 
void SetPeerPhysics (deBasePhysicsDecal *peer)
 Set physics system peer. More...
 
deBaseAudioDecalGetPeerAudio () const
 Audio system peer. More...
 
void SetPeerAudio (deBaseAudioDecal *peer)
 Set audio system peer. More...
 

Additional Inherited Members

- Protected Member Functions inherited from deResource
virtual ~deResource ()
 Clean up resource. More...
 
- Protected Member Functions inherited from deObject
virtual ~deObject ()
 Clean up object. More...
 

Detailed Description

Decal Resource.

Decals are rectangular textures splatted on a curved surface like a component. Decals have a slight offset from the hosting surface hence they cover the surface below. The ordering of the decal determines which decal covers others. A decal is defined by projection parameters. The actual projection is carried out by the Graphic Module. A decal is first located in space using a position and orientation. The size determines the width and height of the decal on the projection plane previously defined. The texture coordinates defined the texture coordinates of the corners of the decal starting in the upper left corner going around the decal in clockwise order. The decal is then projected along the view direction on the geometry it is attached to.

Member Typedef Documentation

◆ Ref

Type holding strong reference.

Constructor & Destructor Documentation

◆ deDecal()

deDecal::deDecal ( deDecalManager manager)

Create decal.

◆ ~deDecal()

virtual deDecal::~deDecal ( )
protectedvirtual

Clean up decal.

Note
Subclasses should set their destructor protected too to avoid users accidently deleting a reference counted object through the object pointer. Only FreeReference() is allowed to delete the object.

Member Function Documentation

◆ GetBoneStateAt()

deDecalBoneState& deDecal::GetBoneStateAt ( int  index)

Bone state at the given index.

◆ GetBoneStateCount()

int deDecal::GetBoneStateCount ( ) const
inline

Number of bone states.

◆ GetDynamicSkin()

deDynamicSkin* deDecal::GetDynamicSkin ( ) const
inline

Dynamic skin or NULL if not used.

◆ GetLLComponentNext()

deDecal* deDecal::GetLLComponentNext ( ) const
inline

Next decal in the component linked list.

◆ GetLLComponentPrev()

deDecal* deDecal::GetLLComponentPrev ( ) const
inline

Previous decal in component linked list.

◆ GetLLHeightTerrainSectorNext()

deDecal* deDecal::GetLLHeightTerrainSectorNext ( ) const
inline

Next decal in the height terrain sector linked list.

◆ GetLLHeightTerrainSectorPrev()

deDecal* deDecal::GetLLHeightTerrainSectorPrev ( ) const
inline

Previous decal in height terrain sector linked list.

◆ GetOrientation()

const decQuaternion& deDecal::GetOrientation ( ) const
inline

Orientation.

◆ GetParentComponent()

deComponent* deDecal::GetParentComponent ( ) const
inline

Parent component or NULL.

◆ GetParentHeightTerrainSector()

deHeightTerrainSector* deDecal::GetParentHeightTerrainSector ( ) const
inline

Parent height terrain sector or NULL.

◆ GetPeerAudio()

deBaseAudioDecal* deDecal::GetPeerAudio ( ) const
inline

Audio system peer.

◆ GetPeerGraphic()

deBaseGraphicDecal* deDecal::GetPeerGraphic ( ) const
inline

Graphic system peer.

◆ GetPeerPhysics()

deBasePhysicsDecal* deDecal::GetPeerPhysics ( ) const
inline

Physics system peer.

◆ GetPosition()

const decVector& deDecal::GetPosition ( ) const
inline

Position.

◆ GetSize()

const decVector& deDecal::GetSize ( ) const
inline

Size.

◆ GetSkin()

deSkin* deDecal::GetSkin ( ) const
inline

Skin.

◆ GetTexture()

int deDecal::GetTexture ( ) const
inline

Texture number in the skin.

◆ GetTransform()

const decTexMatrix2& deDecal::GetTransform ( ) const
inline

Texture coordinate transformation matrix.

◆ GetVisible()

bool deDecal::GetVisible ( ) const
inline

Decal is visible.

◆ SetBoneStateCount()

void deDecal::SetBoneStateCount ( int  count)

Set number of bone states.

◆ SetDynamicSkin()

void deDecal::SetDynamicSkin ( deDynamicSkin dynamicSkin)

Set dynamic skin or NULL if not used.

◆ SetLLComponentNext()

void deDecal::SetLLComponentNext ( deDecal decal)

Set next decal in the component linked list.

Warning
For use by deComponent only.

◆ SetLLComponentPrev()

void deDecal::SetLLComponentPrev ( deDecal decal)

Set next decal in the component linked list.

Warning
For use by deComponent only.

◆ SetLLHeightTerrainSectorNext()

void deDecal::SetLLHeightTerrainSectorNext ( deDecal decal)

Set next decal in the height terrain sector linked list.

Warning
For use by deHeightTerrainSector only.

◆ SetLLHeightTerrainSectorPrev()

void deDecal::SetLLHeightTerrainSectorPrev ( deDecal decal)

Set next decal in the height terrain sector linked list.

Warning
For use by deHeightTerrainSector only.

◆ SetOrientation()

void deDecal::SetOrientation ( const decQuaternion orientation)

Set orientation.

◆ SetParentComponent()

void deDecal::SetParentComponent ( deComponent component)

Set parent component or NULL.

◆ SetParentHeightTerrainSector()

void deDecal::SetParentHeightTerrainSector ( deHeightTerrainSector sector)

Set parent height terrain sector or NULL.

◆ SetPeerAudio()

void deDecal::SetPeerAudio ( deBaseAudioDecal peer)

Set audio system peer.

◆ SetPeerGraphic()

void deDecal::SetPeerGraphic ( deBaseGraphicDecal peer)

Set graphic system peer.

◆ SetPeerPhysics()

void deDecal::SetPeerPhysics ( deBasePhysicsDecal peer)

Set physics system peer.

◆ SetPosition()

void deDecal::SetPosition ( const decVector position)

Set position.

◆ SetSize()

void deDecal::SetSize ( const decVector size)

Set size.

◆ SetSkin()

void deDecal::SetSkin ( deSkin skin)

Set skin.

◆ SetTexture()

void deDecal::SetTexture ( int  texture)

Set texture number in the skin.

◆ SetTransform()

void deDecal::SetTransform ( const decTexMatrix2 matrix)

Set texture coordinate transformation matrix.

◆ SetVisible()

void deDecal::SetVisible ( bool  visible)

Set if decal is visible.

◆ SnapshotBoneStatesFrom()

void deDecal::SnapshotBoneStatesFrom ( deComponent component)

Copy current bone state from the provided component.


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