[126] | 1 | // author: Barnabas Aszodi (BME-IIT)
|
---|
| 2 |
|
---|
| 3 | #include "Ogre.h"
|
---|
| 4 | #include "OgreEffectWrapper.h"
|
---|
| 5 | #include "ManagedOgreRenderTexturePass.h"
|
---|
| 6 |
|
---|
| 7 |
|
---|
| 8 | #include "VRMRun.h"
|
---|
| 9 | #include "SoftShadowMapRun.h"
|
---|
| 10 |
|
---|
| 11 |
|
---|
| 12 | SoftShadowMapRun::SoftShadowMapRun( Entity* entity )
|
---|
| 13 | {
|
---|
| 14 | Root* mRoot = new Root();
|
---|
| 15 |
|
---|
| 16 | this->entity = entity;
|
---|
| 17 |
|
---|
| 18 | this->vRMRenderingRun =
|
---|
| 19 | new VRMRun(entity,1024,1024);
|
---|
| 20 |
|
---|
| 21 | this->vRMRenderGeometryMapPass =
|
---|
| 22 | new VRMRenderGeometryMapPass(mRoot,"GeometryMapTexture",1024,1024,TEX_TYPE_2D,PF_FLOAT32_RGBA);
|
---|
| 23 |
|
---|
| 24 | this->vRMFilteringMapPass =
|
---|
| 25 | new VRMFilteringMapPass(mRoot,"FilterMapTexture",1024,1024,TEX_TYPE_2D,PF_FLOAT32_RGBA);
|
---|
| 26 | }
|
---|
| 27 |
|
---|
| 28 | void SoftShadowMapRun::update()
|
---|
| 29 | {
|
---|
| 30 | vRMRenderingRun->update();
|
---|
| 31 | vRMRenderDepthBufferMapPass->update();
|
---|
| 32 | vRMRenderGeometryMapPass->update();
|
---|
| 33 | vRMFilteringMapPass->update();
|
---|
| 34 | }
|
---|
| 35 |
|
---|
| 36 | const String& SoftShadowMapRun::getResultTextureName()
|
---|
| 37 | {
|
---|
| 38 | return vRMFilteringMapPass->getMaterialName();
|
---|
| 39 | }
|
---|
| 40 |
|
---|
| 41 | SoftShadowMapRun::~SoftShadowMapRun()
|
---|
| 42 | {
|
---|
| 43 | SAFE_DELETE(vRMRenderingRun);
|
---|
| 44 | SAFE_DELETE(vRMRenderDepthBufferMapPass);
|
---|
| 45 | SAFE_DELETE(vRMRenderGeometryMapPass);
|
---|
| 46 | SAFE_DELETE(vRMFilteringMapPass);
|
---|
| 47 | }
|
---|