Code: Select all
            Entity e = new Box(freeLookCamera.Position, 2, 2, 2, 1);
            e.IsAffectedByGravity = false;
            // Prevent the entity from rotating by setting it inverse inertia tensor to zero
            Matrix m = new Matrix();
            e.LocalInertiaTensorInverse = m;
            freeLookCamera.Entity = e;
            space.Add(freeLookCamera.Entity);
I'm updating the velocity for the camera's entity as follows:
Code: Select all
            Vector3 velocity = speed * direction;
            if (entity != null)
            {
                //entity.LinearVelocity = velocity;
                entity.InternalLinearVelocity = velocity;
                position = entity.InternalCenterPosition;
            }
Code: Select all
space.SimulationSettings.CollisionDetection.CollisionDetectionType = CollisionDetectionType.LinearContinuous;


