From 16a159992ffd4c89c2646f49e593203d38490fed Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Fri, 12 Jun 2020 14:38:19 -0500 Subject: [PATCH] adress #162 based on work by Chad Hall --- Engine/source/T3D/spotLight.cpp | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/Engine/source/T3D/spotLight.cpp b/Engine/source/T3D/spotLight.cpp index 4cc8ccb57..3a3340b60 100644 --- a/Engine/source/T3D/spotLight.cpp +++ b/Engine/source/T3D/spotLight.cpp @@ -134,9 +134,18 @@ void SpotLight::_conformLights() // Update the bounds and scale to fit our spotlight. F32 radius = mRange * mSin( mDegToRad( mOuterConeAngle ) * 0.5f ); - mObjBox.minExtents.set( -1, 0, -1 ); - mObjBox.maxExtents.set( 1, 1, 1 ); - mObjScale.set( radius, mRange, radius ); + Point3F objectScale(radius, mRange, radius); + Point3F objectBoxMin(-1, 0, -1); + + if (mAnimationData && mAnimationData->mRot.keyLen > 0) + { + objectBoxMin.set(-1, -1, -1); + objectScale.set(mRange, mRange, mRange); + } + + mObjBox.minExtents.set(objectBoxMin); + mObjBox.maxExtents.set(1, 1, 1); + mObjScale.set(objectScale); // Skip our transform... it just dirties mask bits. Parent::setTransform( mObjToWorld );