reflector classvar cleanups

This commit is contained in:
Azaezel 2018-03-13 21:26:27 -05:00
parent 33ebe34440
commit ebf3f2d971
2 changed files with 21 additions and 21 deletions

View file

@ -315,20 +315,20 @@ void CubeReflector::updateReflection( const ReflectParams &params )
const GFXFormat reflectFormat = REFLECTMGR->getReflectFormat();
if ( texResize ||
cubemap.isNull() ||
cubemap->getFormat() != reflectFormat )
mCubemap.isNull() ||
mCubemap->getFormat() != reflectFormat )
{
cubemap = GFX->createCubemap();
cubemap->initDynamic( texDim, reflectFormat );
mCubemap = GFX->createCubemap();
mCubemap->initDynamic( texDim, reflectFormat );
}
GFXTexHandle depthBuff = LightShadowMap::_getDepthTarget( texDim, texDim );
mDepthBuff = LightShadowMap::_getDepthTarget( texDim, texDim );
if ( renderTarget.isNull() )
renderTarget = GFX->allocRenderToTextureTarget();
if ( mRenderTarget.isNull() )
mRenderTarget = GFX->allocRenderToTextureTarget();
GFX->pushActiveRenderTarget();
renderTarget->attachTexture( GFXTextureTarget::DepthStencil, depthBuff );
mRenderTarget->attachTexture( GFXTextureTarget::DepthStencil, mDepthBuff );
F32 oldVisibleDist = gClientSceneGraph->getVisibleDistance();
@ -407,8 +407,8 @@ void CubeReflector::updateFace( const ReflectParams &params, U32 faceidx )
GFX->setWorldMatrix(matView);
GFX->clearTextureStateImmediate(0);
renderTarget->attachTexture( GFXTextureTarget::Color0, cubemap, faceidx );
GFX->setActiveRenderTarget( renderTarget );
mRenderTarget->attachTexture( GFXTextureTarget::Color0, mCubemap, faceidx );
GFX->setActiveRenderTarget(mRenderTarget);
GFX->clear( GFXClearStencil | GFXClearTarget | GFXClearZBuffer, gCanvasClearColor, 1.0f, 0 );
SceneRenderState reflectRenderState
@ -427,7 +427,7 @@ void CubeReflector::updateFace( const ReflectParams &params, U32 faceidx )
LIGHTMGR->unregisterAllLights();
// Clean up.
renderTarget->resolve();
mRenderTarget->resolve();
}
F32 CubeReflector::calcFaceScore( const ReflectParams &params, U32 faceidx )
@ -746,18 +746,18 @@ void PlaneReflector::setGFXMatrices( const MatrixF &camTrans )
MatrixF relCamTrans = invObjTrans * camTrans;
MatrixF camReflectTrans = getCameraReflection( relCamTrans );
MatrixF camTrans = mObject->getRenderTransform() * camReflectTrans;
camTrans.inverse();
MatrixF objTrans = mObject->getRenderTransform() * camReflectTrans;
objTrans.inverse();
GFX->setWorldMatrix( camTrans );
GFX->setWorldMatrix(objTrans);
// use relative reflect transform for modelview since clip plane is in object space
camTrans = camReflectTrans;
camTrans.inverse();
objTrans = camReflectTrans;
objTrans.inverse();
// set new projection matrix
gClientSceneGraph->setNonClipProjection( (MatrixF&) GFX->getProjectionMatrix() );
MatrixF clipProj = getFrustumClipProj( camTrans );
MatrixF clipProj = getFrustumClipProj(objTrans);
GFX->setProjectionMatrix( clipProj );
}
else

View file

@ -153,16 +153,16 @@ public:
virtual void unregisterReflector();
virtual void updateReflection( const ReflectParams &params );
GFXCubemap* getCubemap() const { return cubemap; }
GFXCubemap* getCubemap() const { return mCubemap; }
void updateFace( const ReflectParams &params, U32 faceidx );
F32 calcFaceScore( const ReflectParams &params, U32 faceidx );
protected:
GFXTexHandle depthBuff;
GFXTextureTargetRef renderTarget;
GFXCubemapHandle cubemap;
GFXTexHandle mDepthBuff;
GFXTextureTargetRef mRenderTarget;
GFXCubemapHandle mCubemap;
U32 mLastTexSize;
class CubeFaceReflector : public ReflectorBase