Browse Source

Sanity check for sequence times.
If the sequence end time is greater than 1000, millisecond timestamps are automatically assigned.

OTHGMars 6 years ago
parent
commit
8ecbe5992a
1 changed files with 6 additions and 0 deletions
  1. 6 0
      Engine/source/ts/assimp/assimpAppSequence.cpp

+ 6 - 0
Engine/source/ts/assimp/assimpAppSequence.cpp

@@ -69,6 +69,12 @@ AssimpAppSequence::AssimpAppSequence(aiAnimation *a) :
    }
    else
    {  // Timing specified in seconds or ms depending on format
+      if (maxEndTime > 1000.0f || mAnim->mDuration > 1000.0f)
+      {
+         timeFactor = 1000.0f;   // If it's more than 1000 seconds, assume it's ms.
+         Con::setIntVariable("$Assimp::AnimTiming", 1000);
+      }
+
       timeFactor = mClamp(timeFactor, 1, 1000);
       minFrameTime /= (F32)timeFactor;
       maxEndTime /= (F32)timeFactor;