Пример #1
0
        public void setPhysMesh(Shape newShape)
        {
            RigidBody newBody = new RigidBody(newShape);

            newBody.Position = GenericMethods.FromOpenTKVector(Position);
            newBody.Mass     = 20f;

            newBody.Tag         = this;
            newBody.Orientation = GenericMethods.FromOpenTKMatrix(Orientation);

            Body = newBody;
            Scene.world.AddBody(newBody);
        }
Пример #2
0
        protected override void rotate()
        {
            if (gameInput.keyboard[Key.Q])
            {
                if (selectedMod != null && mConst == null)
                {
                    JMatrix rotMatA = JMatrix.CreateRotationY(gameInput.move.X * cameraRotSpeed);
                    JMatrix rotMatB = GenericMethods.FromOpenTKMatrix(Matrix4.CreateFromAxisAngle(-Parent.rightVec, gameInput.move.Y * cameraRotSpeed));

                    JMatrix rotMatFinal = JMatrix.Multiply(rotMatA, rotMatB);

                    selectedBody.Orientation = JMatrix.Multiply(selectedBody.Orientation, rotMatFinal);
                }
            }
            else
            {
                base.rotate();
            }
        }