Hi, I did not managed to get your playground working, but here are my ideas : If you want to move the camera relative to pointer location, you can use engine.isPointerLock = true. This will lock the pointer and every mouse move will act on the camera. In my opinion this method is better than applying rotation with A and D keys.   If you want to move forward after rotating the camera with the mouse, you have to compute how much you will move along X and Z axis. Here is how I