Inheritance diagram for OgreCausticRecieverRenderTechnique:
Public Member Functions | |
OgreCausticRecieverRenderTechnique (int maxcasters, String causticVertexProgram, String causticFragmentProgram, Pass *pass, OgreRenderable *parentRenderable, OgreTechniqueGroup *parentTechniqueGroup) | |
Constructor. | |
~OgreCausticRecieverRenderTechnique () | |
Destructor. | |
virtual void | update (unsigned long frameNum) |
Updates the resources in the given frame. | |
Protected Attributes | |
int | maxcasters |
the maximum number of caustic casters from which this reciever can recieve caustic light | |
String | causticVertexProgram |
the vertex program to be used in the caustic gathering passes | |
String | causticFragmentProgram |
the fragment program to be used in the caustic gathering passes | |
std::vector< Pass * > | passes |
std::vector< OgreSharedRuns * > | causticCasters |
the nearest caustic casters found during update |
This technique defines that the object will recieve caustic lighting from caustic caster objects. The caustic light spots will be calculated by the caustic caster's RenderingRuns. These runs will only be updated if caustic redievers are visible, so it is the reciever technique's responsibility to update them.
Each caustic caster's light contribution will be added in separate passes. Each pass will add some light to the shaded image, so these passes should be the last passes. In the constructor the given Pass* parameter will be the pass after which the caustic lighting passes will be added by the technique.
|
Constructor.
|
|
Updates the resources in the given frame. A RenderTechnique is usually need some resources from several runs, so these runs will be updated.
Reimplemented from RenderTechnique. |
|
the fragment program to be used in the caustic gathering passes It should have one pass and the caustic cubemap of a caster will be bound to the first sampler unit. |
|
new passes created by this technique |