- Home /
Camera Zoom - FoV/Mouse Sensitivity Issues
I've implemented a zoomable camera using the scroll wheel to directly affect the field of view of the camera in question. Zoom works fine, but now moving the mouse around results in a huge change, because it's very sensitive. Is there a way to get around this? Perhaps an alternate zoom method or a way to counterbalance the sensitivity brought on by the change in FOV?
Answer by iwaldrop · Feb 12, 2013 at 02:35 AM
You can do absolutely anything you want in code! :)
The problem sounds like the camera moves too fast, and you've actually suggested a perfectly good solution; slow the panning of the camera while it's zoomed in. This is pretty much what you'd do with a camera in real-life, so let's go down that rabbit hole.
What you need to do is slow your camera panning by a factor of your zoom level. I don't know how you're figuring your zoom level, but I assume that, since you're using the mouse wheel, there is a value that you set. If not, then create a float value to store the 'zoom level'. A value of 1 should have the camera at the maximum zoom level and 0 at the minimum zoom level. Do something like the following (psudocode):
float zoomLevel = 0.5f;
// scroll mouse wheel up
increment the zoomLevel
set the camera zoom level by using Lerp(minFOV, maxFOV, zoomLevel).
// pan camera
determine panning speed in the same way by using Lerp(maxPanSpeed, minPanSpeed, zoomLevel).
Your answer
![](https://koobas.hobune.stream/wayback/20220613092542im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
How do I make the camera zoom in and out with the mouse wheel? 10 Answers
Zooming To Mouse Position With Scroll Wheel 3 Answers
Camera Rotation 1 Answer
Pinch zoom 0 Answers
WebCamTexture zoomed in on iPad Pro 1 Answer