Orbit controls are great, but they have the limitation that the Y axis always points UP on the screen.
I want to add a "roll" to the camera and retain it while orbiting. If I change the camera.up vector it will add a roll but as I orbit around the object the appearance of the roll vector changes. e.g. If it starts tilted to the left on the screen, when I orbit around to the other side the camera.up is unchanged, but it now tilts to the right on the screen.
I noticed this is exactly how the camera works in Blender, per screenshot.
Any idea how to achieve this in threejs?
(Bonus points: In Blender the orbit control is also able to continue orbiting smoothly over the top of the sphere, whereas the orbit control in three.js gets stuck at the top of the sphere. It would be great to know that too)