I did post this a considerable amount of time ago and a bug fix was due to go out, but it never did for whatever reason and I’d like to bring this up again.
If you have the camera type set to custom and right click you won’t be able to move your mouse, even with your own Camera script. What should be happening is the default camera script should set MouseBehaviour to LockCurrentPosition and back when you let go, however it seems to be done internally and this is really annoying when trying to make your own cameras.
I, for example am trying to use Custom for the camera that is focused on the player and scriptable for when another script wants to make use of it.
Yeah, not sure that should be done internally. Regarding the last bit of your post though, I think I can provide something you can do to get it working right now until ROBLOX fixes the bug.
.
I became dependent on a modified version of Ethan’s smooth studio camera that sets the camera to scriptable since I used it to remove Q/E and arrow key functionality so I could use them in other plugins. I really wanted to make a local plugin that allowed me to preview what a weapon would look like in first person, and to do that I would have to use a Scriptable camera and set its CoordinateFrame to what I wanted it to be. Unfortunately, Ethan’s camera would conflict with this and it wouldn’t work. To solve this, I just created a new camera for the weapon plugin, parented the normal camera to nil and the weapon plugin’s camera to workspace (also set it to the CurrentCamera) and manipulated that, and then when I wanted to return control to the studio camera I parented the weapon plugin’s camera to nil, parented the studio camera to workspace, and set the studio camera to the CurrentCamera.
I don’t remember if the order you do it matters, but this is what I do:
oldCamera = workspace.CurrentCamera
newCamera.Parent = workspace
workspace.CurrentCamera = newCamera
oldCamera.Parent = nil