Rasterfarm-SDK
Loading...
Searching...
No Matches
Engine::Raster::ReflectionMap Class Reference

#include <reflectionmap.h>

Inheritance diagram for Engine::Raster::ReflectionMap:
Scene Surface::Render::ComponentManager DynamicType

Public Member Functions

 ReflectionMap (Scene *pSourceScene, float resolutionFactor=1.0, uint blurIterations=0)
 
virtual ~ReflectionMap ()
 
virtual void addMaterialList (const Surface::MaterialList &pMaterial)
 
virtual void addGeometricObject (GeometricBase *pObject)
 
virtual void removeGeometricObject (GeometricBase *pObject)
 
virtual void createModel ()
 
void clearTexture (Texture *pTexture, FrameBuffer *pBuffer)
 
FrameBuffergetFrameBuffer ()
 
const Texture::AttributegetTextureAttribute ()
 
- Public Member Functions inherited from Scene
 Scene (const Matrix4f &projectionMatrix, float nearZClip, float farZClip)
 
virtual ~Scene ()
 
virtual void removeGeometricObject (Node *pObject)
 
virtual void addMaterials ()
 
void queueGeometricObject (GeometricBase *pObject)
 
void queueGeometricObject (Node *pObject)
 
bool hasFrameBuffer (FrameBuffer *pFrameBuffer)
 
void addFrameBuffer (FrameBuffer *pFrameBuffer)
 
void removeFrameBuffer (FrameBuffer *pFrameBuffer)
 
bool inDisplayArea (GeometricBase *pObject)
 
bool inDisplayArea ()
 
const Matrix4fgetModel (GeometricBase *pObject)
 
const UnorderedMap< Node *, Matrix4f > & getNodeModel () const
 
Primitive3D::AABoundingBox getAABoundingBox ()
 
Primitive3D::AABoundingBox getAABoundingBox (GeometricBase *pObject)
 
Primitive3D::AABoundingBox getNDCAABoundingBox ()
 
Primitive3D::AABoundingBox getNDCAABoundingBox (GeometricBase *pObject)
 
uint getGeometricObjectSize ()
 
const GeometricBaseListgetGeometricObject ()
 
void updateCamera ()
 
void renderMaterialList (Surface::MaterialList &pList, Surface::MaterialSortFunction sortFunction, float clipFactor=1.0f)
 
void renderMaterial (Surface::Material *pMaterial)
 
void setCamera (Camera *pCamera)
 
Camera * getCamera ()
 
const Matrix4fgetProjectionMatrix ()
 
const Matrix4fgetViewMatrix ()
 
float getNearZClip ()
 
float getFarZClip ()
 
bool hasGeometricObject (GeometricBase *pObject)
 
Vertex4f project (const Vertex3f &vertex)
 
Vertex3f unProject (const Vertex4f &vertex)
 
Vertex3f localToNdc (Vertex3f point)
 
Vertex3f ndcToLocal (Vertex3f point, float w)
 
- Public Member Functions inherited from DynamicType
 DynamicType ()
 
template<class C >
void addType ()
 
TypeID getDerivedTypeId () const
 
template<class C >
const bool isType () const
 
template<class C >
const C * cast () const
 
template<class C >
C * cast ()
 
template<class FROM , class TO >
TO * cast ()
 
template<class FROM , class TO >
const TO * cast () const
 

Protected Member Functions

virtual void renderMaterialLists ()
 
virtual void clearMaterialLists ()
 
virtual void release (Surface::Material *pMaterial)
 
virtual void release (Surface::Render::Component *pComponent)
 

Protected Attributes

ObjectReflection2DList pReflection2DGeometricBasePair
 
GeometricBaseList pStaticObject
 
ScenepSourceScene
 
Engine::Texture::Attribute textureAttribute
 
UnorderedMap< Raster::GeometricBase *, PostProcessTexturePairArraypPostProcessTexture
 
UnorderedMap< Raster::GeometricBase *, Texture * > pPostProcessReceiverTexture
 
Surface::MaterialList pMaterialList
 
FrameBufferpReflectionFrameBuffer
 
FrameBufferpPPFrameBuffer
 
const Matrix4f quadProjection
 
Raster::QuadpQuadObject
 
uint blurIterations
 
BlurMaterialPair blurMaterial
 
- Protected Attributes inherited from Scene
float nearZClip
 
float farZClip
 
Matrix4f view
 
Matrix4f projectionMatrix
 
Camera * pCamera
 
GeometricBaseList pGeometricObject
 
UnorderedMap< Node *, Matrix4fnodeModel
 
List< FrameBuffer * > pFrameBuffer
 

Additional Inherited Members

- Public Types inherited from Scene
typedef List< GeometricBase * > GeometricBaseList
 

Constructor & Destructor Documentation

◆ ReflectionMap()

Engine::Raster::ReflectionMap::ReflectionMap ( Scene * pSourceScene,
float resolutionFactor = 1.0,
uint blurIterations = 0 )
Parameters
Theperspective matrix of the reflective scene.
Factorof resolution from the display resolution.
Numberof iterations of gaussian-blur.

◆ ~ReflectionMap()

virtual Engine::Raster::ReflectionMap::~ReflectionMap ( )
virtual

Member Function Documentation

◆ addGeometricObject()

virtual void Engine::Raster::ReflectionMap::addGeometricObject ( GeometricBase * pObject)
virtual

Raster & Render the GeometricObject in this Scene.

Parameters
TheGeometricBase object containing at least 1 Material.

Reimplemented from Scene.

◆ addMaterialList()

virtual void Engine::Raster::ReflectionMap::addMaterialList ( const Surface::MaterialList & pMaterial)
virtual

Implements Scene.

◆ clearMaterialLists()

virtual void Engine::Raster::ReflectionMap::clearMaterialLists ( )
protectedvirtual

Implements Scene.

◆ clearTexture()

void Engine::Raster::ReflectionMap::clearTexture ( Texture * pTexture,
FrameBuffer * pBuffer )

◆ createModel()

virtual void Engine::Raster::ReflectionMap::createModel ( )
virtual

Reimplemented from Scene.

◆ getFrameBuffer()

FrameBuffer * Engine::Raster::ReflectionMap::getFrameBuffer ( )
inline

◆ getTextureAttribute()

const Texture::Attribute & Engine::Raster::ReflectionMap::getTextureAttribute ( )
inline

◆ release() [1/2]

virtual void Engine::Raster::ReflectionMap::release ( Surface::Material * pMaterial)
protectedvirtual

◆ release() [2/2]

virtual void Engine::Raster::ReflectionMap::release ( Surface::Render::Component * pComponent)
protectedvirtual

◆ removeGeometricObject()

virtual void Engine::Raster::ReflectionMap::removeGeometricObject ( GeometricBase * pObject)
virtual
Parameters
TheGeometricBase object containing at least 1 Material.

Reimplemented from Scene.

◆ renderMaterialLists()

virtual void Engine::Raster::ReflectionMap::renderMaterialLists ( )
protectedvirtual

Implements Scene.

Member Data Documentation

◆ blurIterations

uint Engine::Raster::ReflectionMap::blurIterations
protected

◆ blurMaterial

BlurMaterialPair Engine::Raster::ReflectionMap::blurMaterial
protected

◆ pMaterialList

Surface::MaterialList Engine::Raster::ReflectionMap::pMaterialList
protected

◆ pPostProcessReceiverTexture

UnorderedMap< Raster::GeometricBase *, Texture * > Engine::Raster::ReflectionMap::pPostProcessReceiverTexture
protected

◆ pPostProcessTexture

UnorderedMap< Raster::GeometricBase *, PostProcessTexturePairArray > Engine::Raster::ReflectionMap::pPostProcessTexture
protected

◆ pPPFrameBuffer

FrameBuffer* Engine::Raster::ReflectionMap::pPPFrameBuffer
protected

◆ pQuadObject

Raster::Quad* Engine::Raster::ReflectionMap::pQuadObject
protected

◆ pReflection2DGeometricBasePair

ObjectReflection2DList Engine::Raster::ReflectionMap::pReflection2DGeometricBasePair
protected

◆ pReflectionFrameBuffer

FrameBuffer* Engine::Raster::ReflectionMap::pReflectionFrameBuffer
protected

◆ pSourceScene

Scene* Engine::Raster::ReflectionMap::pSourceScene
protected

◆ pStaticObject

GeometricBaseList Engine::Raster::ReflectionMap::pStaticObject
protected

◆ quadProjection

const Matrix4f Engine::Raster::ReflectionMap::quadProjection
protected

◆ textureAttribute

Engine::Texture::Attribute Engine::Raster::ReflectionMap::textureAttribute
protected

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