---
generated_by: gdlink-build
generated_at: 2026-06-23T12:34:28Z
do_not_edit: true
title: Camera
brick_type: executor
tier: Plus
generated: true
---
# Camera
**Category:** Executor
**Tier:** Plus
## Purpose
Controls camera switching, camera properties, and cinematic camera movements.
## Visual Reference
```{raw} html
```
## When To Use
- Cutscene cameras (switch to cinematic camera)
- Security cameras (cycle through multiple cameras)
- Death cam (switch to overview camera)
- Zoom effects (change FOV)
- Hit feedback (camera shake)
- Follow cam (follow player or vehicle)
- Third-person/first-person toggle
- Splitscreen (activate player 2 camera)
## Runtime Behavior
**Executes**: When activated, performs camera control operations
```{raw} html
Trans (s)0.0
v
FOV75.0
v
Verbose
```
## Properties
| Property | Type | Default | Notes |
|---|---|---|---|
| Mode | option | Set Active | Shared 2D/3D camera surface. FOV is 3D-only. Zoom and Offset are 2D-only. |
| Camera Name | string | | Name/path of Camera2D or Camera3D node |
| Trans (s) | float | 0.0 | Smooth transition duration (0 = instant) |
| FOV | float | 75.0 | [Set FOV] Field of view (3D only) |
| Zoom | vector2 | [1, 1] | [Set Zoom] Zoom level (2D only). (1,1)=Normal |
| Offset | vector2 | [0, 0] | [Set Offset] Camera offset in pixels (2D only) |
| Verbose | bool | False | Log camera operation to console for debugging |
## Example Use Cases
**Cutscene Camera**:
```
Property(cutscene_start) -> AND -> Camera(mode=Set Active, target=CutsceneCamera, transition=2.0)
Delay(300) -> AND -> Camera(mode=Set Active, target=PlayerCamera, transition=1.0)
// Switch to cutscene camera for 5 seconds, then back to player camera
```
**Death Camera**:
```
Property(HP, Less or Equal, 0) -> AND -> Camera(mode=Set Active, target=DeathCam, transition=1.5)
// Switch to death camera when player dies
```
**Zoom Scope (FOV)**:
```
Mouse(Right Button, hold=true) -> AND -> Camera(mode=Set FOV, target=PlayerCamera, fov=30.0, transition=0.2)
Mouse(Right Button, release=true) -> AND -> Camera(mode=Set FOV, target=PlayerCamera, fov=75.0, transition=0.2)
// Zoom in when right-clicking (aim down sights)
```
**Explosion Shake**:
```
Collision(Explosion) -> AND -> Camera(mode=Shake, target=PlayerCamera, intensity=2.0, duration=0.5)
// Shake camera when explosion nearby
```
**Follow Vehicle**:
```
Property(in_vehicle, Equal, true) -> AND -> Camera(mode=Follow Object, follow_target=Car, transition=1.0)
Property(in_vehicle, Equal, false) -> AND -> Camera(mode=Follow Object, follow_target=Player, transition=1.0)
// Camera follows car when inside, player when outside
```
**Security Camera Cycle**:
```
Delay(180, repeat=true) -> AND -> Math(cam_index, Add, 1)
Property(cam_index, Equal, 0) -> AND -> Camera(Set Active, SecurityCam1)
Property(cam_index, Equal, 1) -> AND -> Camera(Set Active, SecurityCam2)
Property(cam_index, Equal, 2) -> AND -> Camera(Set Active, SecurityCam3)
// Cycle through 3 security cameras every 3 seconds
```