diff options
author | UbitUmarov | 2013-01-11 20:25:12 +0000 |
---|---|---|
committer | UbitUmarov | 2013-01-11 20:25:12 +0000 |
commit | fcf39601687b30f088903faaa12d2b4aaa18bf1a (patch) | |
tree | 80b847237c67810798d1b8c852b61f543ee290b2 /OpenSim/Region/ScriptEngine/Shared | |
parent | go back bypassing sog updates control (test) (diff) | |
download | opensim-SC-fcf39601687b30f088903faaa12d2b4aaa18bf1a.zip opensim-SC-fcf39601687b30f088903faaa12d2b4aaa18bf1a.tar.gz opensim-SC-fcf39601687b30f088903faaa12d2b4aaa18bf1a.tar.bz2 opensim-SC-fcf39601687b30f088903faaa12d2b4aaa18bf1a.tar.xz |
make sure keyframe rotations are normalized
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 0dfcfd6..1e1e574 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -12691,7 +12691,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
12691 | if ((data & KeyframeMotion.DataFormat.Rotation) != 0) | 12691 | if ((data & KeyframeMotion.DataFormat.Rotation) != 0) |
12692 | { | 12692 | { |
12693 | LSL_Types.Quaternion tempq = frames.GetQuaternionItem(idx++); | 12693 | LSL_Types.Quaternion tempq = frames.GetQuaternionItem(idx++); |
12694 | frame.Rotation = new Quaternion((float)tempq.x, (float)tempq.y, (float)tempq.z, (float)tempq.s); | 12694 | Quaternion q = new Quaternion((float)tempq.x, (float)tempq.y, (float)tempq.z, (float)tempq.s); |
12695 | q.Normalize(); | ||
12696 | frame.Rotation = q; | ||
12695 | } | 12697 | } |
12696 | 12698 | ||
12697 | float tempf = (float)frames.GetLSLFloatItem(idx++); | 12699 | float tempf = (float)frames.GetLSLFloatItem(idx++); |