Bird
Raised Fist0
Unityframework~10 mins

2D camera setup in Unity - Step-by-Step Execution

Choose your learning style10 modes available
Concept Flow - 2D camera setup
Start Unity Project
↓
Create 2D Scene
↓
Add Main Camera
↓
Set Camera to Orthographic
↓
Adjust Camera Size & Position
↓
Attach Camera Follow Script (optional)
↓
Run Scene & Observe Camera View
This flow shows how to set up a 2D camera in Unity step-by-step, from creating the scene to adjusting the camera and optionally making it follow a player.
Execution Sample
Unity
Camera.main.orthographic = true;
Camera.main.orthographicSize = 5f;
Camera.main.transform.position = new Vector3(0, 0, -10);
This code sets the main camera to orthographic mode, adjusts its size, and positions it to view the 2D scene properly.
Execution Table
StepActionCamera ModeOrthographic SizePosition (x,y,z)Result
1Start Unity ProjectPerspective (default)N/A(0,0,-10)Camera in default 3D mode
2Set Camera to OrthographicOrthographicN/A(0,0,-10)Camera switches to 2D view
3Set Orthographic Size to 5Orthographic5(0,0,-10)Camera zoom level set for 2D
4Set Camera Position to (0,0,-10)Orthographic5(0,0,-10)Camera positioned to see 2D scene front
5Run SceneOrthographic5(0,0,-10)Scene displays with 2D camera view
💡 Setup complete; camera is ready for 2D gameplay view.
Variable Tracker
VariableStartAfter Step 2After Step 3After Step 4Final
Camera ModePerspectiveOrthographicOrthographicOrthographicOrthographic
Orthographic SizeN/AN/A555
Position(0,0,-10)(0,0,-10)(0,0,-10)(0,0,-10)(0,0,-10)
Key Moments - 3 Insights
Why do we set the camera mode to orthographic for 2D games?
Orthographic mode removes perspective distortion, showing objects in the same size regardless of depth, which is essential for 2D visuals as shown in execution_table step 2.
What does changing the orthographic size do?
It changes the zoom level of the camera in 2D. A larger size shows more of the scene, a smaller size zooms in. This is clear in execution_table step 3.
Why is the camera positioned at (0,0,-10)?
Because the camera must be behind the 2D objects on the z-axis to see them. Unity's 2D objects are usually at z=0, so camera at z=-10 looks towards them, as in step 4.
Visual Quiz - 3 Questions
Test your understanding
Look at the execution_table, what is the camera mode after step 2?
APerspective
BOrthographic
CIsometric
DNone
💡 Hint
Check the 'Camera Mode' column at step 2 in the execution_table.
At which step does the orthographic size get set to 5?
AStep 3
BStep 2
CStep 1
DStep 4
💡 Hint
Look at the 'Orthographic Size' column in execution_table rows.
If the camera position was set to (0,0,10) instead of (0,0,-10), what would happen?
ACamera would see the 2D scene correctly
BCamera would flip the scene upside down
CCamera would be behind the scene and see nothing
DCamera would zoom in automatically
💡 Hint
Recall that 2D objects are at z=0 and camera looks along negative z-axis as per variable_tracker.
Concept Snapshot
2D Camera Setup in Unity:
- Set Camera.main.orthographic = true to enable 2D view
- Adjust Camera.main.orthographicSize to control zoom
- Position camera behind scene (e.g., z = -10)
- This setup removes 3D perspective for flat 2D display
- Optional: add scripts to follow player for dynamic view
Full Transcript
This visual execution shows how to set up a 2D camera in Unity. First, the camera mode changes from default perspective to orthographic to remove 3D depth effects. Then, the orthographic size is set to control how much of the scene is visible, acting like zoom. The camera is positioned at (0,0,-10) so it looks at the 2D objects placed at z=0. The execution table tracks these changes step-by-step, and the variable tracker shows how camera properties update. Key moments clarify why orthographic mode is needed, what orthographic size does, and why camera position matters. The quiz tests understanding of these steps. This setup is essential for clear 2D game visuals in Unity.

Practice

(1/5)
1. What is the main reason to set a Unity camera to Orthographic mode in a 2D game?
easy
A. It increases the camera's field of view.
B. It removes perspective, showing objects without depth distortion.
C. It automatically follows the player character.
D. It enables 3D rendering with shadows.

Solution

  1. Step 1: Understand camera modes in Unity

    Unity cameras can be set to Perspective or Orthographic. Perspective shows depth with size changes, Orthographic does not.
  2. Step 2: Identify the effect of Orthographic mode

    Orthographic mode removes perspective distortion, making objects appear the same size regardless of distance, ideal for 2D games.
  3. Final Answer:

    It removes perspective, showing objects without depth distortion. -> Option B
  4. Quick Check:

    Orthographic = No perspective distortion [OK]
Hint: Orthographic means no depth, perfect for 2D views [OK]
Common Mistakes:
  • Confusing orthographic with perspective mode
  • Thinking orthographic adds 3D effects
  • Assuming orthographic auto-follows player
2. Which of the following is the correct way to set a Unity camera to orthographic mode in C#?
easy
A. camera.mode = Orthographic;
B. camera.isOrthographic = true;
C. camera.setOrthographic(true);
D. camera.orthographic = true;

Solution

  1. Step 1: Recall Unity Camera properties

    The Camera class has a boolean property called orthographic to switch modes.
  2. Step 2: Identify correct syntax

    The correct syntax to enable orthographic mode is camera.orthographic = true;. Other options use incorrect property names or methods.
  3. Final Answer:

    camera.orthographic = true; -> Option D
  4. Quick Check:

    Property name is orthographic [OK]
Hint: Use camera.orthographic = true to enable orthographic mode [OK]
Common Mistakes:
  • Using incorrect property names like isOrthographic
  • Trying to call a method instead of setting a property
  • Assigning string or enum instead of boolean
3. Given this code snippet in Unity C#:
Camera.main.orthographicSize = 5f;
Debug.Log(Camera.main.orthographicSize);
What will be printed in the console?
medium
A. 5
B. 10
C. 0
D. Error: orthographicSize is read-only

Solution

  1. Step 1: Understand orthographicSize property

    The orthographicSize controls half the vertical size of the camera view in world units and can be set and read.
  2. Step 2: Analyze the code output

    The code sets orthographicSize to 5f, then logs it. So the output will be 5.
  3. Final Answer:

    5 -> Option A
  4. Quick Check:

    Set orthographicSize = 5, output = 5 [OK]
Hint: orthographicSize is half the vertical view size [OK]
Common Mistakes:
  • Thinking orthographicSize doubles the value
  • Assuming orthographicSize is read-only
  • Confusing orthographicSize with field of view
4. You want the camera to follow the player smoothly in 2D. Which code snippet fixes the error in this code?
void Update() {
  Vector3 targetPos = player.transform.position;
  targetPos.z = -10;
  transform.position = targetPos;
}
The camera jumps abruptly instead of moving smoothly.
medium
A. Use Vector3.Lerp to interpolate between current and target positions.
B. Set targetPos.z = 0 instead of -10.
C. Call transform.Translate(targetPos) instead of setting position.
D. Remove the z-axis assignment to let camera auto-adjust.

Solution

  1. Step 1: Identify the problem with abrupt movement

    Directly setting transform.position to player position causes instant jumps without smooth transition.
  2. Step 2: Apply smooth movement using interpolation

    Using Vector3.Lerp blends current and target positions over time, creating smooth camera movement.
  3. Final Answer:

    Use Vector3.Lerp to interpolate between current and target positions. -> Option A
  4. Quick Check:

    Smooth follow = Vector3.Lerp [OK]
Hint: Use Vector3.Lerp for smooth camera movement [OK]
Common Mistakes:
  • Ignoring z-axis setting causing camera clipping
  • Using transform.Translate incorrectly
  • Removing z-axis assignment breaks camera depth
5. You want to set up a 2D camera in Unity that shows exactly 20 units vertically and follows the player with an offset of (2, 3) units smoothly. Which code snippet correctly sets the orthographic size and follows the player with offset?
hard
A. camera.fieldOfView = 20f; transform.position = player.position + new Vector3(2, 3, -10);
B. camera.orthographicSize = 20f; Vector3 target = player.position + new Vector3(2, 3, 0); transform.position = target;
C. camera.orthographicSize = 10f; Vector3 target = player.position + new Vector3(2, 3, -10); transform.position = Vector3.Lerp(transform.position, target, 0.1f);
D. camera.orthographicSize = 5f; transform.position = player.position + new Vector3(2, 3, -10);

Solution

  1. Step 1: Calculate orthographicSize for 20 units vertical view

    Orthographic size is half the vertical size, so 20 units vertical means orthographicSize = 10.
  2. Step 2: Set camera position with offset and smooth follow

    Adding offset (2,3) to player position and setting z to -10 keeps camera behind. Using Vector3.Lerp smooths movement.
  3. Final Answer:

    camera.orthographicSize = 10f; Vector3 target = player.position + new Vector3(2, 3, -10); transform.position = Vector3.Lerp(transform.position, target, 0.1f); -> Option C
  4. Quick Check:

    OrthographicSize = half vertical size, smooth follow with Lerp [OK]
Hint: OrthographicSize = half vertical view; use Lerp for smooth follow [OK]
Common Mistakes:
  • Setting orthographicSize equal to full vertical size
  • Not using smooth interpolation for camera movement
  • Using fieldOfView instead of orthographicSize for 2D camera
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard