mirror of
https://github.com/TorqueGameEngines/Torque3D.git
synced 2026-01-19 20:24:49 +00:00
Merge pull request #532 from DavidWyand-GG/OculusRiftUpdate2
Fix GroundCover banking with camera
This commit is contained in:
commit
a959b0f800
|
|
@ -1572,12 +1572,20 @@ void GroundCover::prepRenderImage( SceneRenderState *state )
|
|||
|
||||
mShaderConstData.gustInfo.set( mWindGustLength, mWindGustFrequency * simTime, mWindGustStrength );
|
||||
mShaderConstData.turbInfo.set( mWindTurbulenceFrequency * simTime, mWindTurbulenceStrength );
|
||||
|
||||
|
||||
// Use the camera's forward vector to calculate the camera's right
|
||||
// and up vectors. This removes any camera banking from affecting
|
||||
// the ground cover.
|
||||
const MatrixF &camMat = state->getDiffuseCameraTransform();
|
||||
Point3F camDir, camUp, camRight;
|
||||
camMat.getColumn( 1, &camDir );
|
||||
camMat.getColumn( 2, &camUp );
|
||||
camMat.getColumn( 0, &camRight );
|
||||
mCross( camDir, Point3F::UnitZ, &camRight );
|
||||
if ( camRight.magnitudeSafe() == 0.0f )
|
||||
{
|
||||
camRight.set( 0.0f, -1.0f, 0.0f );
|
||||
}
|
||||
camRight.normalizeSafe();
|
||||
mCross( camRight, camDir, &camUp );
|
||||
|
||||
// Limit the camera up vector to keep the billboards
|
||||
// from leaning too far down into the terrain.
|
||||
|
|
|
|||
Loading…
Reference in a new issue