Skip to main content

Camera Shot Rules

Shot selection rules determine how the automatic camera system chooses shots when no explicit camera beat is present.

Rules are evaluated in order from a DialogueShotSelectionProfile. The first rule that returns a valid shot is used.

Cinematic rules​

The default cinematic profile evaluates these rules in order:

GroupEstablishingShotRule​

Fires on the first beat of a group conversation (more than two participants). Returns a group-wide establishing shot with a Blend transition.

EstablishingShotRule​

Fires on the first beat of a two-person conversation. Selects a wide or two-shot to establish the scene before closer framing begins.

RepetitionAvoidanceShotRule​

Prevents the same shot type from being used more than a configurable number of consecutive times (default: 3). Picks the first preset from its varietyShots list that differs from the previous.

ShotReverseShotRule​

Alternates framing between the two conversation participants. When the speaker changes, the camera switches to frame the new speaker with an over-the-shoulder shot using a Cut transition. This creates the classic shot-reverse-shot pattern used in film.

MoodDrivenShotRule​

Selects shots based on the current mood state. DefaultMoodCameraHintResolver maps moods to camera hints using substring matching:

Mood keywordsCamera hintDefault shot
angry, aggressive, furious, rageIntenseCloseUp
sad, melancholy, grief, sorrowSoftMedium
happy, friendly, warm, cheerfulWarmMediumCloseUp
fear, anxious, nervous, tenseTenseCloseUp

When the mood does not match any keyword, the rule is skipped (returns Neutral).

BeatPositionShotRule​

Selects shots based on where the current beat falls within the node's beat groups. The first beat uses an opening shot, the last beat uses a closing shot, and middle beats use a default shot.

DefaultShotRule​

A catch-all fallback that always returns a valid shot (MediumCloseUp by default). Place this last in the profile.

First-person rules​

A separate shot selection profile handles first-person mode. The built-in rules are:

FPMoodDrivenShotRule​

Same mood resolution as cinematic, but maps to first-person presets:

Camera hintFirst-person preset
Intense / TenseFP-Intimidate
SoftFP-Conversation
WarmFP-Focus

FPBeatPositionShotRule​

Opening beats use FP-Focus, closing beats use FP-Conversation, middle beats use FP-Focus.

FPDefaultShotRule​

Always returns FP-Focus as the fallback.

Rule evaluation order​

Rules are evaluated in the order they appear in the profile. This means:

  1. put specific, conditional rules first (establishing, mood-driven)
  2. put avoidance and alternation rules in the middle (repetition, shot-reverse-shot)
  3. put the default rule last as a fallback

A well-ordered profile creates natural-feeling camera work without any per-beat configuration.

Camera settings​

The DialogueCameraSettings ScriptableObject (loaded from Resources) provides global configuration for the camera system, including transition durations and default shot preferences.

Practical advice​

The default profile order works well for most conversations. If you find the camera behaviour unsatisfying, the most common adjustments are:

  • moving the mood-driven rule higher to make emotional moments more visually distinct
  • adjusting the repetition avoidance rule to allow more variety
  • changing the default rule's preferred shot to match your game's visual style

Reference​

Next step​

Continue to Mood and Non-Verbal.