- Home /
Scaling Orthographic Camera Up
Hey everyone,
Right now I'm developing a 2D Unity game on IOS and Android. I started my project developing on the Iphone 4S which has a resolution of 960x640. So I set my camera size to 4.8. I tried viewing this on an Android device with a resolution of 1920x1080 and as expected the sides were being cropped in a bit.
Is there a way to scale everything to fit other screens instead of it being cropped? Right now I have objects that are place very specifically to the original resolution.
Another question is it better to start with a larger resolution and then scale down? For example go from a camera size of 9.6 down to 4.8? I guess I have to live with one resolution being slightly skewed, I just want to know which size I should use as a base so I can balance the game around that size.
Answer by robertbu · May 04, 2014 at 01:30 PM
In Unity, as you move your game from device to device, the World vertical size seen by the camera is always the same. The horizontal size changes with the aspect ratio. So you as a game designer need to figure out what to do when the ratio changes. Your example uses a wider screen. Are you okay then with a narrow screen where the sides get chopped off? If the only criteria is that the original game fill the screen, then you can scale the camera if the aspect is wider than your original aspect ratio. This answer tells you one way to make that calcualtion:
http://answers.unity3d.com/questions/671486/orthographic-camera-same-width-different-height.html
An alternate solution is to stretch or shrink your world to fit the device. That means all things seen by the camera are "deformed" to fit the device. If that is an acceptable solution, then you can get a solution here:
http://answers.unity3d.com/questions/635701/screen-resolution-scaling-no-solution.html?sort=oldest
Answer by Aldeminor · May 04, 2014 at 01:18 PM
I think the basic size is not matter. You just need to automaticaly get current device screen resolution and set dimensions of viewplane when initialize the camera.
Another way is not using the orthographic camera. If your game is fully 2D, you can just place the camera 90° to "ground" on required distance.
Right now I have objects that are place very specifically to the original resolution.
If it is interface elements, place it in the camera space according to screen size (set position in 0.Nx and 0.Ny of screen size instead of NNx and NNy pixels). The only thing you need to correct in this way - scale down the objects if they are too big to small screen resolution and vice versa.
Your answer
Follow this Question
Related Questions
How to prevent screen size from showing more space? 0 Answers
How could I deal with the resolution and camera size? 0 Answers
Change camera FOV to keep 3d scene same size on screen, independently from resolution 0 Answers
How to letterbox the screen and have pixel perfection in a 2d game 0 Answers
2D Game. Screen, Camera and coordinates. 0 Answers