- Home /
Moving camera by z axis in 2D
Hello.
I have played this game. Is it possible to do this on Unity 2D mode? First, I thought that I should just place objects (in 2D editor mode) changing z coordinates and move camera by z cordinates, but this is not working.
The next idea is to use zooming, multiply every time to orthographic matrix, but I need to keep all of objects in very small size and some of them in very big size.
Is there any solutions for that kind of situation in 2D mode, or I need to switch to 3D mode and work like that?
Answer by rutter · Jun 04, 2014 at 06:54 AM
It's important to distinguish between orthographic and perspective cameras.
3D games tend to use perspective cameras, which measure 3 axes of movement. This produces a "cone"-shaped view.
2D games tend to use orthographic cameras, which measure only 2 axes of movement. This produces a "box"-shaped view. It has no sense of 3D perspective. Traditional side-scrolling or top-down games tend to use orthographic rendering.
If your game is using an orthographic camera, the distance between the camera and some object it's rendering generally does not matter. It can matter once the object is outside of the render bounds (ie: behind the camera), or if one object renders in front of another.
Are you trying to implement a "zoom" effect? With a perspective camera, that usually involves changing its field of view (a wider field of view "zooms out" because the camera can see more). With an orthographic camera, that usually involves changing its size (a larger size increases the area that the camera will render).
Your answer
Follow this Question
Related Questions
Help with 2D AI scripting 2 Answers
Restricting the movment in the Zaxis 2 Answers
Moving 2D Sprite Player 0 Answers
AI Movement Direction 0 Answers
How to make sprites in SideScroller move in smooth curves 0 Answers