#include "Ogre.h" #include "OgreEffectWrapper.h" #include "managedogrerendertexturepass.h" #include "SEMFinalGatheringPass.h" SEMFinalGatheringPass::SEMFinalGatheringPass(Root* mRoot) :ManagedOgreRenderTexturePass(mRoot,ManagedOgreRenderTexturePass::noRenderTargetName,1,1) { setMaterialName("EnvMap/EnvMapMaterial"); } SEMFinalGatheringPass::~SEMFinalGatheringPass(void) { } void SEMFinalGatheringPass::onRenderStart(NameValuePairList* namedParams){ effectWrapper->SetTechniqueToUse(0); effectWrapper->BeginPass(); effectWrapper->SetVector3("g_EyePos",renderTargets.at(0)->getViewport(0)->getCamera()->getPosition()); effectWrapper->SetVector3("g_EnvMapPos",this->envMapPosition); effectWrapper->SetVector3("g_SpecularColor",this->specularColor); effectWrapper->SetFloat("g_Shininess",this->shininess); } void SEMFinalGatheringPass::onRenderEnd(NameValuePairList* namedParams){ effectWrapper->EndPass(); } void SEMFinalGatheringPass::setEnvMapPostition(Vector3 envMapPosition){ this->envMapPosition=envMapPosition; } void SEMFinalGatheringPass::setSpecularColor(Vector3 specularColor){ this->specularColor = specularColor; } void SEMFinalGatheringPass::setShininess(float shininess){ this->shininess=shininess; } void SEMFinalGatheringPass::update(){ }