void Dispose(bool a_state) { #if DEBUG_INFO Tools.VerifyObjectMemoryState(this, a_state); #endif EMotionState.MotionState_delete(m_objectPtr); }
internal void UpdateTransform(Transform a_transform) { byte staticState = a_transform.StaticState; if ((staticState & 0b1 << 2) == 0) { IntPtr ptr = EMotionState.MotionState_getTransformMatrix(m_objectPtr); Matrix4 matrix = Marshal.PtrToStructure <Matrix4>(ptr); a_transform.Translation = matrix.ExtractTranslation(); a_transform.Quaternion = matrix.ExtractRotation(); EMotionState.MotionState_freeTransformMatrix(ptr); }
public void SetState(EMotionState state, float animSpeed = 1.0f) { eMotion = state; fAnimSpeed = animSpeed; }
public MotionState() { m_objectPtr = EMotionState.MotionState_new(); }