Exemple #1
0
        public bool LoadSavedExport(UInt32 step)
        {
            if (step > _maxStep)
            {
                return(false);
            }

            if (step < _minStep)
            {
                return(false);
            }

            int index = CalculateExportIndex(step);

            PBodyExport2D export = bodyExports[index];

            linearVelocity  = export.linearVelocity;
            angularVelocity = export.angularVelocity;
            position        = export.position;
            angle           = export.angle;

            Parallel2D.UpdateBodyTransForm(this, position, angle);
            Parallel2D.UpdateBodyVelocity(this, linearVelocity, angularVelocity);

            return(true);
        }
        void UpdateRigidbodyTransform()
        {
            if (_rigidbody2D == null)
            {
                _rigidbody2D = GetComponent <ParallelRigidbody2D>();
            }

            if (_rigidbody3D == null)
            {
                _rigidbody3D = GetComponent <ParallelRigidbody3D>();
            }

            if (_rigidbody2D != null)
            {
                Parallel2D.UpdateBodyTransForm(_rigidbody2D._body2D, (Fix64Vec2)_localPosition, Fix64.DegToRad(_internalLocalEularAngles.z));
            }

            if (_rigidbody3D != null)
            {
                Parallel3D.UpdateBodyTransForm(_rigidbody3D._body3D, _localPosition, _internalLocalRotation);
            }
        }