I've had no luck with this question elsewhere so I thought I'd give it a go here. You lot are a helpful bunch after all
My game is 3d and set in a cylindrical tunnel, the player must rotate around this tunnel in order to perform platforming puzzles. The tunnel endlessly generates and moves past the player at speed while they stay fixed at 0, 0, 0 (think of something like Outrun or Super Hang-On, where the track moves to give the illusion of forward motion).
What I would like is for the camera to freely rotate around the Z-axis with an offset from the centre of the tunnel, while also being able to move 'up' and 'down' in it's local Y-axis for jumps and vertical movement within the game-world (using gravity if possible). Something like this...
As well as this the camera needs to collide with various objects inside the tunnel such as ramps, raised platforms, obstacles, as well as the tunnel itself. If the player falls outside the tunnel they 'fail' and have to restart.
My current setup has a gameobject with a sphere collider and rigidbody attached, with the camera attached as a child. I have the y-axis movement (jumps) handled by an add force action in PM, they all seem to work ok.
The difficulty comes in rotating this gameobject. The rotation needs to be fixed from 0,0,0 otherwise the player will exit the tunnel. I can't seem to get the rotation working correctly at all. I'm at a loss as to what to try next with it tbh. I think maybe a configurable joint might help?