#ifndef __POSITIONUPDATE__H__ #define __POSITIONUPDATE__H__ #include "NiPoint3.h" #include "NiQuaternion.h" struct RemoteInputInfo { bool operator==(const RemoteInputInfo& other) { return m_RemoteInputX == other.m_RemoteInputX && m_RemoteInputY == other.m_RemoteInputY && m_IsPowersliding == other.m_IsPowersliding && m_IsModified == other.m_IsModified; } float m_RemoteInputX = 0; float m_RemoteInputY = 0; bool m_IsPowersliding = false; bool m_IsModified = false; }; struct LocalSpaceInfo { LWOOBJID objectId = LWOOBJID_EMPTY; NiPoint3 position = NiPoint3Constant::ZERO; NiPoint3 linearVelocity = NiPoint3Constant::ZERO; }; struct PositionUpdate { NiPoint3 position = NiPoint3Constant::ZERO; NiQuaternion rotation = NiQuaternionConstant::IDENTITY; bool onGround = false; bool onRail = false; NiPoint3 velocity = NiPoint3Constant::ZERO; NiPoint3 angularVelocity = NiPoint3Constant::ZERO; LocalSpaceInfo localSpaceInfo; RemoteInputInfo remoteInputInfo; }; #endif //!__POSITIONUPDATE__H__