Yeah, that did the trick.
However in cases without pointer lock, I need to also add custom multi-pointer functionality, so that when more than one pointer is down, I can do custom behavior.
But I discovered yet another issue: if we disable Babylon’s controls (detachControls()
) when a second pointer goes down to handle multi-pointer behavior, Babylon’s controls break. After that, attachControls()
will never bring it back, it stays broken indefinitely.
In the end, I abandoned trying to use Babylon’s controls, and rolled my own from scratch.