// author: Barnabas Aszodi (BME-IIT) #include "Ogre.h" #include "OgreEffectWrapper.h" #include "ManagedOgreRenderTexturePass.h" #include "VRMRenderGeometryMapPass.h" VRMRenderGeometryMapPass::VRMRenderGeometryMapPass( Root* mRoot,const String& renderTextureName,unsigned int width,unsigned int height, TextureType texType, PixelFormat internalFormat, const NameValuePairList *miscParams, bool fullScreenQuadRenderer):ManagedOgreRenderTexturePass(mRoot,renderTextureName,width,height,texType,internalFormat,miscParams,fullScreenQuadRenderer) { effectWrapper->createMaterial("RenderGeometryTexture"); } void VRMRenderGeometryMapPass::onRenderStart(NameValuePairList* namedParams){ effectWrapper->SetTechniqueToUse(0); effectWrapper->BeginPass(); effectWrapper->SetVertexProgramParameters(); effectWrapper->SetMatrix("g_mLightViewTexBias",g_mLightViewTexBias); effectWrapper->SetMatrix("g_mWorldViewProj",g_mWorldViewProj); effectWrapper->SetFloatArray("g_vLightPos3f",g_vLightPos3f,3); } void VRMRenderGeometryMapPass::onRenderEnd(NameValuePairList* namedParams) { effectWrapper->EndPass(); } Matrix4 VRMRenderGeometryMapPass::getLightViewTexBias() { return g_mLightViewTexBias; } void VRMRenderGeometryMapPass::setLightViewTexBias( Matrix4 matrix4 ) { g_mLightViewTexBias = matrix4; } Matrix4 VRMRenderGeometryMapPass::getWorldViewProj() { return g_mWorldViewProj; } void VRMRenderGeometryMapPass::setWorldViewProj( Matrix4 matrix4 ) { g_mWorldViewProj = matrix4; } float* VRMRenderGeometryMapPass::getLightPos3f() { return g_vLightPos3f; } void VRMRenderGeometryMapPass::setLightPos3f( float* vector3 ) { g_vLightPos3f = vector3; }