- Home /
 
Clamp camera to multiple on-screen players
I am trying to get my camera to clamp and zoom in towards a group of players on screen. So if these players are close together the camera will be zoomed in more than if they were further apart. I would like to do this by adjusting the FOV.
Currently, I am getting the centroid of all the players and then rotating the camera toward that point (so it stays focused on the middle), but I still need to accomplish the zooming using FOV adjustments.
I wrote a function that currently gets the minimum and maximum points on the viewport, which I think should then be used to adjust the camera (as well as some sort of buffer/edge so that the players don't directly touch the edge of the screen).
 private void UpdateFOV()
     {
         Vector3 minViewPortPos = camera.WorldToViewportPoint(players[0].position);
         Vector3 maxViewportPos = camera.WorldToViewportPoint(players[0].position);
 
         // Find the minimum and maximum viewport points
         for (int i = 1; i < players.Length; i++)
         {
             Vector3 viewportPos = camera.WorldToViewportPoint(players[i].position);
             if (viewportPos.x < minViewPortPos.x)
                 minViewPortPos.x = viewportPos.x;
             if (viewportPos.x > maxViewportPos.x)
                 maxViewportPos.x = viewportPos.x;
             if (viewportPos.y < minViewPortPos.y)
                 minViewPortPos.y = viewportPos.y;
             if (viewportPos.y > maxViewportPos.y)
                 maxViewportPos.y = viewportPos.y;
             if (viewportPos.z < minViewPortPos.z)
                 minViewPortPos.z = viewportPos.z;
             if (viewportPos.z > maxViewportPos.z)
                 maxViewportPos.z = viewportPos.z;
         }
         // Change the FOV
     }
 
               How would I accomplish this? Thank you!
Your answer
 
             Follow this Question
Related Questions
Change the FOV from "60" to "90" smoothly when pressing "W" (C#, first time posting, beginner) 2 Answers
Multiple Cars not working 1 Answer
Distribute terrain in zones 3 Answers
How to rotate camera diagonally over players shoulder while still facing towards players direction 0 Answers
Why are my 2D sprite GameObjects blinking and how do I fix this problem? 0 Answers