Drag[en]gine Game Engine  1.21
deEnvMapProbe Class Reference

Environment Map Probe Resource. More...

#include <deEnvMapProbe.h>

Inheritance diagram for deEnvMapProbe:
deResource deObject

Public Types

typedef deTObjectReference< deEnvMapProbeRef
 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 decDVectorGetPosition () const
 Position. More...
 
void SetPosition (const decDVector &position)
 Set position. More...
 
const decQuaternionGetOrientation () const
 Orientation. More...
 
void SetOrientation (const decQuaternion &orientation)
 Set orientation. More...
 
const decVectorGetScaling () const
 Scaling. More...
 
void SetScaling (const decVector &scaling)
 Set scaling. More...
 
decShapeListGetShapeListInfluence ()
 Influence shape list. More...
 
const decShapeListGetShapeListInfluence () const
 
void NotifyShapeListInfluenceChanged ()
 Notifies the peers that the influence shape list changed. More...
 
decShapeGetShapeReflection () const
 Reflection shape or NULL if the environment map is global. More...
 
void SetShapeReflection (decShape *shape)
 Set reflection shape or NULL if the environment map is global. More...
 
decShapeListGetShapeListReflectionMask ()
 Reflection mask shape list. More...
 
const decShapeListGetShapeListReflectionMask () const
 
void NotifyShapeReflectionChanged ()
 Notifies the peers that the reflection shape changed. More...
 
float GetInfluenceBorderSize () const
 Influence border size. More...
 
void SetInfluenceBorderSize (float borderSize)
 Set influence border size. More...
 
int GetInfluencePriority () const
 Influence priority. More...
 
void SetInfluencePriority (int priority)
 Set influence priority. More...
 
const decLayerMaskGetLayerMask () const
 Layer mask. More...
 
void SetLayerMask (const decLayerMask &layerMask)
 Set layer mask. More...
 
deImageGetImage () const
 Explicit environment map image to use or NULL to auto-generate. More...
 
void SetImage (deImage *image)
 Set explicit environment map image to use or NULL to auto-generate. More...
 
System Peers
deBaseGraphicEnvMapProbeGetPeerGraphic () const
 Graphics system peer. More...
 
void SetPeerGraphic (deBaseGraphicEnvMapProbe *peer)
 Set graphics system peer. More...
 
Linked List
deWorldGetParentWorld () const
 Parent world or NULL. More...
 
void SetParentWorld (deWorld *world)
 Set parent world or NULL. More...
 
deEnvMapProbeGetLLWorldPrev () const
 Previous environment map probe in the parent world linked list. More...
 
void SetLLWorldPrev (deEnvMapProbe *instance)
 Set next environment map probe in the parent world linked list. More...
 
deEnvMapProbeGetLLWorldNext () const
 Next environment map probe in the parent world linked list. More...
 
void SetLLWorldNext (deEnvMapProbe *instance)
 Set next environment map probe in the parent world 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

 deEnvMapProbe (deEnvMapProbeManager *manager)
 Create new environment map probe. More...
 
virtual ~deEnvMapProbe ()
 Clean up environment map probe. 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

Environment Map Probe Resource.

Environment map probes tell the Graphic Module about a good place for a local environment map probe. Environment map probes define a shape list of influence, a shape list of reflection border, an influence border size and an influence priority. The influence shape list defines the shape inside which this environment map probe is best used. The influence border size defines the distance in meters form the border of the influence shape list where the influence gradually fades. Inside this border the influence is at the maximum. If multiple environment map probes overlap with full influence the influence priority defines which environment map wins over the others. The environment map probe with the highest influence priorty receives the full influence. All others are blended accordingly. This allows to place smaller environment maps inside larger ones to refine the result in places where a more narrow sampling is useful without having to construct complex influence shape lists excluding each other properly.The reflection border shape list defines the shape where the reflection maps to. Typically this is a box and should line up with the reflected map geometry as well as possible. Avoid complex shape lists for the reflection border as this is usually better for Graphic Modules to handle.

Member Typedef Documentation

◆ Ref

Type holding strong reference.

Constructor & Destructor Documentation

◆ deEnvMapProbe()

deEnvMapProbe::deEnvMapProbe ( deEnvMapProbeManager manager)

Create new environment map probe.

◆ ~deEnvMapProbe()

virtual deEnvMapProbe::~deEnvMapProbe ( )
protectedvirtual

Clean up environment map probe.

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

◆ GetImage()

deImage* deEnvMapProbe::GetImage ( ) const
inline

Explicit environment map image to use or NULL to auto-generate.

◆ GetInfluenceBorderSize()

float deEnvMapProbe::GetInfluenceBorderSize ( ) const
inline

Influence border size.

◆ GetInfluencePriority()

int deEnvMapProbe::GetInfluencePriority ( ) const
inline

Influence priority.

◆ GetLayerMask()

const decLayerMask& deEnvMapProbe::GetLayerMask ( ) const
inline

Layer mask.

◆ GetLLWorldNext()

deEnvMapProbe* deEnvMapProbe::GetLLWorldNext ( ) const
inline

Next environment map probe in the parent world linked list.

◆ GetLLWorldPrev()

deEnvMapProbe* deEnvMapProbe::GetLLWorldPrev ( ) const
inline

Previous environment map probe in the parent world linked list.

◆ GetOrientation()

const decQuaternion& deEnvMapProbe::GetOrientation ( ) const
inline

Orientation.

◆ GetParentWorld()

deWorld* deEnvMapProbe::GetParentWorld ( ) const
inline

Parent world or NULL.

◆ GetPeerGraphic()

deBaseGraphicEnvMapProbe* deEnvMapProbe::GetPeerGraphic ( ) const
inline

Graphics system peer.

◆ GetPosition()

const decDVector& deEnvMapProbe::GetPosition ( ) const
inline

Position.

◆ GetScaling()

const decVector& deEnvMapProbe::GetScaling ( ) const
inline

Scaling.

◆ GetShapeListInfluence() [1/2]

decShapeList& deEnvMapProbe::GetShapeListInfluence ( )
inline

Influence shape list.

◆ GetShapeListInfluence() [2/2]

const decShapeList& deEnvMapProbe::GetShapeListInfluence ( ) const
inline

◆ GetShapeListReflectionMask() [1/2]

decShapeList& deEnvMapProbe::GetShapeListReflectionMask ( )
inline

Reflection mask shape list.

◆ GetShapeListReflectionMask() [2/2]

const decShapeList& deEnvMapProbe::GetShapeListReflectionMask ( ) const
inline

◆ GetShapeReflection()

decShape* deEnvMapProbe::GetShapeReflection ( ) const
inline

Reflection shape or NULL if the environment map is global.

◆ NotifyShapeListInfluenceChanged()

void deEnvMapProbe::NotifyShapeListInfluenceChanged ( )

Notifies the peers that the influence shape list changed.

◆ NotifyShapeReflectionChanged()

void deEnvMapProbe::NotifyShapeReflectionChanged ( )

Notifies the peers that the reflection shape changed.

◆ SetImage()

void deEnvMapProbe::SetImage ( deImage image)

Set explicit environment map image to use or NULL to auto-generate.

◆ SetInfluenceBorderSize()

void deEnvMapProbe::SetInfluenceBorderSize ( float  borderSize)

Set influence border size.

◆ SetInfluencePriority()

void deEnvMapProbe::SetInfluencePriority ( int  priority)

Set influence priority.

◆ SetLayerMask()

void deEnvMapProbe::SetLayerMask ( const decLayerMask layerMask)

Set layer mask.

◆ SetLLWorldNext()

void deEnvMapProbe::SetLLWorldNext ( deEnvMapProbe instance)

Set next environment map probe in the parent world linked list.

◆ SetLLWorldPrev()

void deEnvMapProbe::SetLLWorldPrev ( deEnvMapProbe instance)

Set next environment map probe in the parent world linked list.

◆ SetOrientation()

void deEnvMapProbe::SetOrientation ( const decQuaternion orientation)

Set orientation.

◆ SetParentWorld()

void deEnvMapProbe::SetParentWorld ( deWorld world)

Set parent world or NULL.

◆ SetPeerGraphic()

void deEnvMapProbe::SetPeerGraphic ( deBaseGraphicEnvMapProbe peer)

Set graphics system peer.

◆ SetPosition()

void deEnvMapProbe::SetPosition ( const decDVector position)

Set position.

◆ SetScaling()

void deEnvMapProbe::SetScaling ( const decVector scaling)

Set scaling.

◆ SetShapeReflection()

void deEnvMapProbe::SetShapeReflection ( decShape shape)

Set reflection shape or NULL if the environment map is global.


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