Thank you for visiting this site.
This article provides a detailed guide to “Cameras”, one of Game Creator 2’s core features — the camera system.
Game Creator’s camera system overlays a unique model on top of Unity’s standard Camera that separates the “camera operator” (Camera Controller) from the “camera angle” (Camera Shot), enabling no-code switching between third-person, first-person, fixed, follow, lock-on, and other behaviors.
Official documentation: Game Creator 2 Documentation
You can find a complete list of all articles in this series here:
What are Cameras?
Game Creator’s camera system consists of two components:
- Camera Controller: Attached to a GameObject in the scene (usually the Main Camera). It has no behavior of its own — it simply mimics the behavior of the currently active Camera Shot
- Camera Shot: A component that defines specific camera behavior (follow, look-at, orbit, etc.). You can place as many as you want in the scene
For example, when a “Third Person Shot is assigned to the Main Camera,” the Main Camera moves according to that Shot’s behavior (following the target while orbiting with the mouse). Switching to a different Shot replaces the Main Camera’s behavior entirely.
As an analogy, Shots are “camera angle candidates” scattered throughout the scene, and you (the director) give instructions on which angle to display on screen and when to cut to a different angle. The Camera Controller is the “camera operator” who follows those instructions.
Main Camera’s Role
Most games use only one main camera. The Main Camera component is a special version of the Camera Controller that can be accessed globally from any script.
Camera Controller (Main Camera)
Creation
Right-click in Hierarchy → Game Creator > Cameras > Main Camera.
Component Structure
The Main Camera component consists of 3 blocks:
- Game Time: Camera update timing. Default is
Game Time(stops whenTime.timeScale = 0). Set toUnscaled Timeif you want the camera to move during UI pauses - Shot: The Camera Shot bound to this Controller. If not set, the camera does nothing
- Avoid Clipping: Settings to prevent camera clipping into scene geometry
For smoothness adjustment, the Shot’s Smoothing options control how much lag to apply to the Shot’s behavior. Moderate lag reduces jitter, but too much makes controls feel sluggish.
Camera Shot
Creation
Right-click in Hierarchy → Game Creator > Cameras > Shot Camera. If there’s no Main Camera in the scene, one is automatically created and linked when you create a Shot.
Component Contents
Each Camera Shot holds a complete set of parameters defining “how this angle behaves.” To change the Shot type, click the component’s type name and select a different type from the dropdown.
Is Main Shot (v2.3.15+)
All Camera Shots have an Is Main Shot toggle. When ON, it becomes selectable from the “Main Shot” dropdown in the Main Camera’s Shot field, serving as a shortcut to identify one primary Shot in the scene.
Shot Types
All Shots can be switched on-the-fly via Visual Scripting using Change To Shot / Revert To Previous Shot / Set Main Shot instructions.
Fixed Position
- The camera itself doesn’t move
- However, it can pan and tilt in place to track any target
- Think of it like a security camera viewpoint
Follow Target
- Adds “follow the target at a fixed distance” to Fixed Position
- Ideal for Diablo-style top-down perspectives
Follow Track
- Follows a target while tracing a predefined rail-like path
- Position on the path is determined by “where the target object is on a separate path”
- Suitable for games with many straight corridors but where you want the camera to turn smoothly at corners
Animation
- Moves along a predefined path over a set time, stopping at the final position
- Excels at chaining animation Shots to dynamically follow the action like cutscenes
First Person
Places the camera at the target’s position (usually a Humanoid) and accepts head rotation. Packed with sub-features:
- Head Bobbing: Vertical and lateral camera movement simulating center-of-gravity shift during walking/running
- Head Leaning: Adds subtle roll/pitch toward the movement direction, expressing the feel of forward momentum
- Noise: Applies tiny random variations to rotation and position, expressing idle breathing or restlessness
- Offset (v2.17.51+): Allows setting offset values for the camera position
These are modifiable at runtime (e.g., increasing Noise amount after sprinting).
Third Person
- Follows the target, allowing users to freely orbit around it with input
- The staple for action/adventure games
- Since v2.17.51, Shoulder (horizontal offset) and Lift (vertical offset) dynamically change
Lock On
- Follows target A’s position while facing toward target B. Always composes the frame so that both targets are on screen
- Ideal for enemy lock-on or highlighting important objects you don’t want players to miss
Anchor Peek
- Anchors to any object and allows a limited amount of horizontal and vertical panning/tilting from that position
- Returns to center via the
Restitutefield when input stops - Ideal for peeking around corners with a gamepad
Shot Transitions
To smoothly transition the Camera Controller to a different Camera Shot, use the Change Shot instruction (Visual Scripting: Cameras > Change To Shot). Specify a Duration (seconds) for a timed blend, or 0 for instant switching.
Revert To Previous Shot “returns to the previously used Shot”, and Set Main Shot registers the Is Main Shot-designated Shot as the new Main Shot.
C# Programming Through Unity 3D Game DevelopmentView on Amazon →
Zero to Start! Unity Game Development — Your First TextbookView on Amazon →
Viewport (v2.7.28+)
A Viewport section has been added to all Camera Shots, allowing camera properties to be swapped the moment you switch Shots.
Target properties include:
- Field of View (FoV)
- Projection Mode (Perspective / Orthographic)
- Orthographic Size
- Other Shot-specific settings
This lets you manage presentation like “FoV 60° for town exploration / FoV 80° for combat scenes” by binding them to Shots.
Quick Start Mini Guide
- Create
Game Creator > Cameras > Main Camerain Hierarchy (or add theMain Cameracomponent to an existing camera) - Create
Game Creator > Cameras > Shot Camera. Initial type isFixed Position - Click the Shot type name, change to Third Person, and set
Look TargetandOrbit Targetto the Player - Assign the Shot you just created to the Main Camera’s
Shot(auto-created and auto-assigned if no scene camera exists when creating a Shot) - Play → If you can orbit around the Player with mouse/right stick, you’re good
- For cutscenes or combat transitions, prepare separate Shots and blend-switch with
Change To Shot - Turn on Avoid Clipping on
Main Cameraas needed to prevent wall clipping
Visual Scripting Reference (Complete Instruction / Condition / Event List)
All nodes under the Cameras category. Instruction names are listed in English (as displayed in Visual Scripting).
Instructions
Category is Cameras > (subcategory).
Cameras (Root)
| Instruction | Function | Main Parameters |
|---|---|---|
| Change To Shot | Switch the specified Camera’s Shot | Camera / Shot / Duration / Wait To Complete |
| Revert To Previous Shot | Return to the previous Shot | Camera / Duration |
| Set Main Shot | Register a new Main Shot | Shot |
Properties (Camera Properties)
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Culling Mask | Change culling mask | Camera / Culling Mask |
| Change Field Of View | Change FoV over time (for Perspective) | Camera / FoV / Duration / Easing |
| Change Orthographic Size | Change Orthographic Size over time | Camera / Size / Duration / Easing |
| Change Projection | Switch Perspective ↔ Orthographic | Camera / Projection |
| Change Smooth Time | Change position/rotation smooth time | Camera / Smooth Position / Smooth Rotation |
Shakes (Camera Shake / Hit Stop)
| Instruction | Function | Main Parameters |
|---|---|---|
| Shake Camera Burst | Play a one-shot shake for a set duration | Camera / Delay / Duration / Shake Position / Shake Rotation / Magnitude / Roughness / Transform (source) / Radius (falloff radius) |
| Shake Camera Sustain | Continuous shake until manually stopped | Camera / Delay / Transition (blend in) / Shake Position / Shake Rotation / Magnitude / Roughness / Transform / Radius |
| Stop Camera Sustain Shake | Stop Sustain Shake on specified layer | Camera / Layer / Delay / Transition |
| Stop Shake Camera Bursts | Stop all Burst Shakes | Camera / Delay / Transition |
Shots > Anchor (For Anchor Peek Shot)
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Distance | Change relative distance from anchor | Shot / Distance |
| Change Offset | Change offset position relative to target | Shot / Offset |
| Change Target | Change the look-at target | Shot / Target |
Shots > Animation (For Animation Shot)
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Duration | Change the path completion time | Shot / Duration |
Shots > First Person
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Bone | Change the head bone attachment | Shot / Bone |
| Change Max Pitch | Change the up/down look angle limit | Shot / Max Pitch |
| Change Sensitivity | Change mouse/stick sensitivity (X/Y) | Shot / Sensitivity |
| Change Smooth Time | Change rotation smooth time | Shot / Smooth Time |
| Change Target | Change the first-person viewpoint object | Shot / Target |
Shots > Follow
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Distance | Change distance to target | Shot / Distance |
| Change Target | Change the follow target | Shot / Follow |
Shots > Head Bobbing
| Instruction | Function | Main Parameters |
|---|---|---|
| Enable Head Bobbing | Toggle Head Bobbing ON/OFF | Shot / Active |
Shots > Head Leaning
| Instruction | Function | Main Parameters |
|---|---|---|
| Enable Head Leaning | Toggle Head Leaning ON/OFF | Shot / Active |
Shots > Lock On
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Anchor | Change the Lock On anchor (position target) | Shot / Anchor |
| Change Distance | Change distance from anchor | Shot / Distance |
| Change Offset | Change offset relative to anchor | Shot / Offset |
Shots > Look
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Target | Change the look-at target | Shot / Target |
| Change Offset | Change the look-at point offset | Shot / Offset |
| Enable Look | Toggle Look system ON/OFF | Shot / Active |
Shots > Third Person
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Aim | Change aim-mode Shoulder / Lift / Radius / Keep Center / Layer Mask | Shot / Shoulder / Lift / Radius / Keep Center / Layer Mask |
| Change Alignment | Change auto-alignment behind target settings | Shot / Align with Target / Delay / Smooth Time |
| Change Max Pitch | Change vertical rotation limit | Shot / Max Pitch |
| Change Sensitivity | Change input sensitivity (X/Y) | Shot / Sensitivity |
Shots > Zoom
| Instruction | Function | Main Parameters |
|---|---|---|
| Change Level Zoom | Change zoom level (0–1) | Shot / Level |
| Change Min Distance | Change minimum zoom distance | Shot / Min Distance |
| Change Smooth Time | Change zoom input smooth time | Shot / Smooth Time |
Conditions
| Condition | Check | Main Parameters |
|---|---|---|
| Is Shot Active | True if the specified Camera Shot is assigned to the Main Camera | Shot |
Events
Camera-related state changes can be monitored from the Trigger component.
| Event | Fires When |
|---|---|
| On Camera Change | The moment the Camera’s Shot changes for any reason |
| On Change From Shot | The moment this Shot is deactivated (transitioning from this Shot to another) |
| On Change To Shot | The moment this Shot is activated (transitioning from another Shot to this one) |
Tips and Notes
- One Main Camera per scene is the standard. For multiple cameras, you can use Camera Controllers (generic Controllers, not
Main Camera), but many Instructions accept aCameraargument for individual specification - Camera settings across scene transitions: GC2’s Main Camera and Player are regular
MonoBehaviourinstances, notSingleton<T>, so both are destroyed during scene transitions (Load Scene in Single mode). Therefore, you need to place all three — Player, Main Camera, and Camera Shot — in the destination scene as well. If you set Is Main Shot to ON on the Camera Shot, it automatically binds to the Main Camera on scene load. Gameplay data (Stats, Inventory, Quests, Global Variables, etc.) is managed by module singletons and persists across scene transitions - Lag and Duration responsiveness trade-off: Higher Smooth values produce smoother visuals but make controls feel sluggish. For first-person/third-person, adjust
Smooth TimeandSensitivitytogether - Use Change Shot as the starting point for cutscenes: When you want to use them like a timeline, preparing multiple Shots and sequentially calling
Change To Shotis the most maintainable approach - Camera Shake Transform / Radius: When you provide a world-space source, the shake attenuates as the player moves further away. Useful for explosions
- Viewport (v2.7.28+) lets you attach FOV, projection mode, and Ortho size per Shot, eliminating the need to manually revert them with Instructions
Practical Usage — Configuration Guide by Goal
Here’s a summary of which Shot types and instructions to use when you want to achieve “this kind of camera work.”
Action/Adventure Third-Person Camera (Basic)
A camera that shows the character from behind and lets you freely look around with mouse/right stick.
| What to Use | Setting |
|---|---|
| Shot Type | Third Person |
| Look Target | Player |
| Orbit Target | Player |
| Avoid Clipping | Turn ON on Main Camera to prevent wall clipping |
Switch to over-the-shoulder view when aiming
Normally centered behind, but shifts to an over-the-shoulder composition when the aim button is pressed.
| What to Use | Role |
|---|---|
| Shot Type | Third Person (reuse the same Shot as normal) |
| Instruction | Change Aim |
| Parameters | Shoulder (horizontal distance from pivot) shifts camera left/right / Lift (vertical distance from pivot) adjusts height / Radius (max distance from pivot) controls how close |
Flow example: Trigger (aim button pressed) → Change Aim (change Shoulder/Lift/Radius) → Trigger (aim button released) → Change Aim (restore original values)
Diablo-style top-down view
Looking down from directly above (slightly angled) at a fixed distance, following the character as it moves.
| What to Use | Setting |
|---|---|
| Shot Type | Follow Target |
| Follow Target | Player |
| Distance | Looking-down distance (relative distance between Shot and target in world coordinates) |
The Shot object’s own Transform rotation determines the looking-down angle, and Distance adjusts the distance to the target.
Add realism to first-person view (walking sway & breathing)
Reduce the “standing still” feel in FPS by adding subtle sway appropriate for walking and idle states.
| What to Use | Role |
|---|---|
| Shot Type | First Person |
| Head Bobbing | Vertical and lateral movement during walking/running (center-of-gravity simulation) |
| Head Leaning | Roll/pitch toward movement direction (forward momentum feel) |
| Noise | Subtle random variation to rotation/position (breathing, restlessness) |
Dynamic control is possible, such as increasing Noise after a dash or enabling Head Bobbing only during walking (Enable Head Bobbing).
Lock on to an enemy and keep both on screen
When locking on in an action game, compose the frame so both your character and the lock-on target are visible.
| What to Use | Setting |
|---|---|
| Shot Type | Lock On |
| Position Follow Target (Anchor) | Player (camera follows the player’s position) |
| Rotation Follow Target | Enemy (camera faces toward the enemy) |
Flow example: Trigger (lock-on button) → Change To Shot (transition to Lock On Shot with Duration for smooth switching) → Trigger (lock-on release) → Revert To Previous Shot
Move the camera continuously during cutscenes
Chain multiple camera angles in sequence during event scenes for cinematic presentation.
| What to Use | Role |
|---|---|
| Shot Type | Animation (prepare multiple) |
| Instruction | Change To Shot (specify Duration for smooth blending) |
| Wait To Complete | ON to “wait for transition to complete before proceeding to next instruction” |
For the setup, place multiple Animation Shots for the cutscene (each Shot moves along a predefined path over a set time, stopping at the end), then line up Change To Shot instructions in the Actions list with Duration for each Shot.
For instant cuts, set Duration to 0 for blend-free instant switching.
Smoothly rotate the camera in linear stages
In side-scrolling or linear dungeon layouts, the camera naturally curves where corridors bend.
| What to Use | Setting |
|---|---|
| Shot Type | Follow Track |
| Rail Path | The path the camera moves along |
| Target Path | The path the player moves along |
The camera’s position on the path is determined by where the target is on a separate path.
Peek around corners with a gamepad
In cover-action scenarios, use stick input to slightly pan the camera left/right and up/down to check ahead.
| What to Use | Setting |
|---|---|
| Shot Type | Anchor Peek |
| Anchor | Character or wall-edge GameObject |
| Restitute | Setting for camera to automatically return to center after input stops |
Express explosion impact with camera shake
Shake the screen during explosions or hits for impact effect. Shake can weaken with distance from the source.
| What to Use | Role |
|---|---|
| Instruction | Shake Camera Burst |
| Duration | Shake duration (seconds) |
| Magnitude | Maximum amount the camera shifts from its original position |
| Roughness | Shake frequency (higher = more intense vibration) |
| Transform (optional) | Source of the shake (world coordinates) |
| Radius (optional) | Falloff begins at this distance from the source |
When Transform and Radius are specified, the shake attenuates if the player is farther than Radius from the source.
Express continuous vibration (earthquake, engine vibration)
Like an earthquake or riding a motorcycle — continuous shaking until manually stopped, not for a set duration.
| What to Use | Role |
|---|---|
| Start Instruction | Shake Camera Sustain |
| Stop Instruction | Stop Camera Sustain Shake |
| Transition (start) | Seconds for blend-in (gradually ramps up instead of starting abruptly) |
| Transition (stop) | Seconds for blend-out |
Switch to a different angle during conversation scenes, then return to the original
Use a dedicated front shot during NPC conversations, then naturally return to the gameplay camera when the conversation ends.
| What to Use | Role |
|---|---|
| Conversation Shot | Fixed Position (showing the NPC from the front) or any type |
| Start Instruction | Change To Shot (specify Duration for smooth transition) |
| End Instruction | Revert To Previous Shot (specify Duration to return smoothly) |
Revert To Previous Shot is a dedicated instruction for “returning to the previously active Shot.” It’s ideal for patterns like “temporarily switch to a different Shot → return to original” as in conversation scenes.
Keep the camera moving during pause menu
Prevent the camera from stopping its updates even when the game is paused with Time.timeScale = 0.
| What to Use | Setting |
|---|---|
| Main Camera Component | Change Game Time to Unscaled Time |
Change the field of view (FoV) by scene
Use narrow FoV for a calm exploration feel, and wide FoV for impactful combat scenes.
Method A — Manage per Shot with Viewport (recommended):
Set the FoV in each Camera Shot’s Viewport section, and the FoV is automatically swapped when you switch Shots with Change To Shot (v2.7.28+).
Method B — Change dynamically with instructions:
Use the Change Field Of View instruction with Duration and Easing to smoothly transition the FoV over time.
Prevent the camera from clipping into walls and geometry
Prevent the third-person camera from rendering through walls when it’s caught between the character and a wall.
| What to Use | Setting |
|---|---|
| Main Camera Component | Turn Avoid Clipping ON |
For games with third-person view in tight spaces, it’s generally safe to keep this ON.
Auto-align behind the character when there’s no camera input for a while
When stick input stops on a third-person camera, the camera automatically aligns behind the character’s movement direction.
| What to Use | Setting |
|---|---|
| Instruction | Change Alignment |
| Align with Target | ON to enable the feature that moves behind the target |
| Delay | How long to wait after input stops before starting alignment |
| Smooth Time | Alignment speed |
Track a target from a fixed position like a security camera
Like a security camera mounted in a room corner — the camera doesn’t move but visually tracks the target.
| What to Use | Setting |
|---|---|
| Shot Type | Fixed Position |
| Look Feature | Set the tracking target in Look’s Target |
Unity Game Programming Bible 2nd GenerationView on Amazon →
The Game Developer's Map: Lessons from 20 Years of Solo DevelopmentView on Amazon →
Official Links
Summary
This article covered the Cameras system for Game Creator 2.
The camera system’s separation of Camera Controller and Camera Shot enables no-code switching between all types of camera work — third-person, first-person, fixed, follow, lock-on, and more.
Simply specifying a Duration when switching Shots achieves smooth blending, and it’s packed with features for visual presentation including camera shake and FoV management through Viewport.
We hope you’ll continue reading our next article as well.
📚 Series: Game Creator 2 Complete Guide (3/16)