private void SyncProperties()
        {
            // TODO: If "get" has native we can return the current velocity? Still possible to set.
            if (m_rb == null)
            {
                return;
            }

            m_linearVelocity  = m_rb.getVelocity().ToHandedVector3();
            m_angularVelocity = m_rb.getAngularVelocity().ToHandedVector3();
        }
        public void RestoreLocalDataFrom(agx.RigidBody native)
        {
            if (native == null)
            {
                throw new ArgumentNullException("native", "Native object is null.");
            }

            MassProperties.RestoreLocalDataFrom(native.getMassProperties());

            enabled                = native.getEnable();
            MotionControl          = native.getMotionControl();
            HandleAsParticle       = native.getHandleAsParticle();
            LinearVelocity         = native.getVelocity().ToHandedVector3();
            LinearVelocityDamping  = native.getLinearVelocityDamping().ToHandedVector3();
            AngularVelocity        = native.getAngularVelocity().ToHandedVector3();
            AngularVelocityDamping = native.getAngularVelocityDamping().ToHandedVector3();
        }