Commit 96b3d0be authored by bitplane's avatar bitplane

Fixed bug with Maya cam animator absorbing all wheel events (1983850)

OpenGL render target flip now works with texture clamping (assuming tcoords are 0.0 to 1.0)
Quick fix for crash when removing old hardware buffers.

git-svn-id: svn://svn.code.sf.net/p/irrlicht/code/trunk@1366 dfc29bdd-3216-0410-991c-e03cc46cb475
parent 5ac04338
......@@ -1277,6 +1277,9 @@ void CNullDriver::updateAllHardwareBuffers()
if (Link->LastUsed>20000)
{
deleteHardwareBuffer(Link);
// todo: needs better fix
Iterator = HWBufferMap.getParentFirstIterator();
}
}
}
......
......@@ -348,6 +348,9 @@ bool COpenGLDriver::genericDriverInit(const core::dimension2d<s32>& screenSize,
// set fog mode
setFog(FogColor, LinearFog, FogStart, FogEnd, FogDensity, PixelFog, RangeFog);
// create matrix for flipping textures
TextureFlipMatrix.buildTextureTransform(0.0f, core::vector2df(0,0), core::vector2df(0,1.0f), core::vector2df(1.0f,-1.0f));
return true;
}
......@@ -509,9 +512,11 @@ void COpenGLDriver::setTransform(E_TRANSFORMATION_STATE state, const core::matri
glLoadIdentity();
else
{
createGLTextureMatrix(glmat, mat);
if (isRTT)
glmat[5] *= -1.0f;
createGLTextureMatrix(glmat, mat * TextureFlipMatrix);
else
createGLTextureMatrix(glmat, mat);
glLoadMatrixf(glmat);
}
break;
......
......@@ -389,6 +389,8 @@ namespace video
core::stringc vendorName;
core::matrix4 TextureFlipMatrix;
#ifdef _IRR_WINDOWS_API_
HDC HDc; // Private GDI Device Context
HWND Window;
......
......@@ -73,7 +73,7 @@ bool CSceneNodeAnimatorCameraMaya::OnEvent(const SEvent& event)
break;
case EMIE_MOUSE_WHEEL:
case EMIE_COUNT:
break;
return false;
}
return true;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment