As for the camera.rotate issue, the lastest version of the library has made some changes, they basically dropped some functions including .rotate( , so I'll need to rewrite those functions.
X3M Don't mind me, i'm here to post issues in a more "hey X3M, i found this..." manner Not really expecting an immediate fix. I have ways to work around (or sacrifice game features).
But you might be interested to know that BJS'es .rotate method still works for meshes. Just not for cameras. And since .cameraRotation already implies BABYLON.Space.LOCAL, the only part you'd need to figure out is WORLD.
Already did this as a workaround for LOCAL an hour ago (for bablylonCamera\runtime.js).
And it works just fine. Here I'm restricting the Camera's pitch as i only want yaw (left and right).
BTW, the above is just a baked texture test. The ceiling, floor and all the walls are each 2K textures (2048x2048). Will try 4K just for the heck of it to see if it breaks. Yes, I'm aware that it's not good for mobile (but my target deployment is for a single high-end desktop PC and projected to a very large outdoor display).
Anyway, the usual WASD movement keys apply.