Exemplo n.º 1
0
        public override void Update()
        {
            JVector vec = body.Position;

            tmpVec0.Set(vec.X, vec.Y, vec.Z);
            // tmpVec0.SubtractStore(boundingBox.Center);
            // if (mass > 0.0f)
            //if (!GameObject.GetWorldTranslation().Equals(tmpVec0))

            tmpRotMatrix.SetToIdentity();
            tmpRotMatrix.values[Matrix4f.m00] = body.Orientation.M11;
            tmpRotMatrix.values[Matrix4f.m10] = body.Orientation.M12;
            tmpRotMatrix.values[Matrix4f.m20] = body.Orientation.M13;

            tmpRotMatrix.values[Matrix4f.m01] = body.Orientation.M21;
            tmpRotMatrix.values[Matrix4f.m11] = body.Orientation.M22;
            tmpRotMatrix.values[Matrix4f.m21] = body.Orientation.M23;

            tmpRotMatrix.values[Matrix4f.m02] = body.Orientation.M31;
            tmpRotMatrix.values[Matrix4f.m12] = body.Orientation.M32;
            tmpRotMatrix.values[Matrix4f.m22] = body.Orientation.M33;

            tmpRot0.SetFromMatrix(tmpRotMatrix);



            GameObject.SetWorldTransformPhysics(tmpVec0, tmpRot0, tmpScl);

            //    tmpRot0.Set(rot.X, rot.Y, rot.Z, rot.W);
            //    tmpRot0.InverseStore();
            //    GameObject.SetLocalRotation(tmpRot0);
        }