Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source/gameengine/Ketsji/BL_Action.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/source/gameengine/Ketsji/BL_Action.cpp b/source/gameengine/Ketsji/BL_Action.cpp
index fbeb34b70b4..a21c3965be9 100644
--- a/source/gameengine/Ketsji/BL_Action.cpp
+++ b/source/gameengine/Ketsji/BL_Action.cpp
@@ -206,7 +206,7 @@ bool BL_Action::Play(const char* name,
}
// Now that we have an action, we have something we can play
- m_starttime = KX_GetActiveEngine()->GetFrameTime();
+ m_starttime = -1.f; // We get the start time on our first update
m_startframe = m_localtime = start;
m_endframe = end;
m_blendin = blendin;
@@ -338,6 +338,11 @@ void BL_Action::Update(float curtime)
curtime -= KX_KetsjiEngine::GetSuspendedDelta();
+ // Grab the start time here so we don't end up with a negative m_localtime when
+ // suspending and resuming scenes.
+ if (m_starttime < 0)
+ m_starttime = curtime;
+
if (m_calc_localtime)
SetLocalTime(curtime);
else