public void UpdatePosition(ulong time) { ulong count = 0; foreach (var node in m_SelectedNodes) { ulong currentTime = time + 1500 * count; count++; var currenmtMotion = m_Motion.GetCurrentMotion(currentTime); var currentPositon = currenmtMotion.GetCurrentPosition(currentTime); node.Position = VectorConversions.ToOgreVector(currentPositon); var rotation = new Primitives.Angle(currenmtMotion.GetVelocity(currentTime)); rotation.ReduceAngle(); Quaternion quat = new Quaternion(new Radian(rotation.Value), new Vector3(0, -1, 0)); node.Orientation = quat; } }
public void UpdatePosition(ulong time) { ulong count = 0; foreach (var node in m_SelectedNodes) { ulong currentTime = time + 1500* count; count++; var currenmtMotion = m_Motion.GetCurrentMotion(currentTime); var currentPositon = currenmtMotion.GetCurrentPosition(currentTime); node.Position = VectorConversions.ToOgreVector(currentPositon); var rotation = new Primitives.Angle(currenmtMotion.GetVelocity(currentTime)); rotation.ReduceAngle(); Quaternion quat = new Quaternion(new Radian(rotation.Value), new Vector3(0, -1, 0)); node.Orientation = quat; } }