For a while now I’ve come across a few bugs regarding the mouse and camera implementations in studio. As far as I’m aware some of these apply to both mac and windows studio versions, but all bug reports are true for the windows version. None of these bugs seem to persist in game, they only happen in studio.
First person / mouse locked camera panning
The camera doesn’t seem to pan to the right as well as it should when compared to panning to the left. I’m assuming this has to do with mouse deltas and them not being applied correctly to the standard camera.
Repro steps are as follows:
[ol]
[li]open studio[/li]
[li]hit play solo / test with a character[/li]
[li]zoom in until first person[/li]
[li]pan camera very slowly[/li]
[/ol]
The red line is rotated based on the .Delta from input objects from UserInputService.
You can also observe for jumpy the camera is when moved at a moderate speed to the right as compared to the left.
Humanoid.CameraOffset “lag”
I made a post about this a while ago, and it got absolutely no recognition so I can only assume it’s not known about.
Basically when using the humanoids CameraOffset property paired with a first person / mouse locked camera in studio the camera seems to lag behind in it’s rotation. Regardless of how fast you update the offset the bug still exists. This bug also follows the same right panning difficulties mentioned above.
Repro steps are as follows:
[ol]
[li]open attached rbxl file named “offset bug”[/li]
[li]hit play solo / test with a character[/li]
[li]move mouse around[/li]
[/ol]
None of this uses any kind of hacky script to achieve this type of camera. This is done with the available roblox mouse and camera properties. As mentioned before you can observe the right panning camera issue.
Studio vs. game mouse delta difference
I can’t really capture or display any kind of visual proof of this happening, but it seems the rate at which deltas are captured at, or the magnitude of them, is waaay different than when captured in studio vs captured in game.
I came across this using them for camera rotation on a custom camera, but found I couldn’t continue the project because of the huge difference in studio and game. The following pseudo code is how I used the deltas to transform the camera:
inputService.InputChanged:connect(function(object)
local rotationY = math.rad(object.Delta.X)
local rotationX = math.rad(object.Delta.Y)
camera.CoordinateFrame = CFrame.new(cameraPos) * CFrame.Angles(0, rotationY, 0) * CFrame.Angles(rotationX, 0, 0)
end)
It’s something you’d have to rig up and try for yourself, but I’m sure similar results could be found by just printing the deltas and comparing them from studio vs in game.
So these are the 3 bugs that have me seriously annoyed with trying to do anything involving cameras for games right now. I find it really hard to do anything in studio when what actually makes it into the game is totally different, and the whole publish just to test thing is something that shouldn’t have to be done. If any staff members or anybody in general can shed some light on if these bugs are known about, if they’re in the process of being fixed, I’d be super grateful.