Game Development

[Unity] Game Creator 2 Perception — Sight, Hearing, Smell & Stealth System

[Unity] Game Creator 2 Perception — Sight, Hearing, Smell & Stealth System

Thank you for visiting this site.

This article provides a detailed guide to “Perception”, one of Game Creator 2’s modules — the perception and stealth system.

Perception is a module that gives AI agents “senses”. It integrates four sensors — Sight / Hearing / Smell / Feel — with an Awareness meter and Evidence (traces) for comprehensive situational cognition.

Official documentation: Game Creator 2 Documentation

You can find a complete list of all articles in this series here:

Complete Article List — Game Creator 2 Complete Guide Series Indexen.senkohome.com/gamecreator2-series-index/

What is Perception?

  • Attach a Perception component to any GameObject → Combine any of the 4 Sensors for detection
  • All sensor results are consolidated into Awareness (a 0–1 value), simplifying AI decisions
  • Evidence detects “facts that the world has changed” (opened doors, etc.)
  • Relay (knowledge transfer) passes information to ally Perceptions

Installation

  1. Purchase the Perception module from the Asset Store
  2. Install via Window > Package Manager
  3. Sample scenes and UI prefabs in Game Creator > Install...Perception.Examples
  4. Install location: Assets/Plugins/GameCreator/Installs/Perception.Examples/

Awareness (Recognition Meter)

Value

0 (unaware) to 1 (fully aware). The Perception component holds this per tracked GameObject.

Stages

StageRange
None0 – 0.05
Suspicious0.05 – 0.5
Alert0.5 – 0.95
Aware0.95 – 1

Tracking

Perception doesn’t automatically track anything.

  • Track Awareness Instruction: Start tracking a target
  • Untrack Awareness Instruction: Stop tracking
  • Typical: Track the Player via the enemy Prefab’s On Start Trigger

Increasing Awareness

  • Each Sensor (Sight/Feel) automatically increases it
  • Increase Awareness Instruction enables manual increase (can specify Maximum Level to limit, e.g., “don’t raise above Alert”)

Forgetting

  • Forget Speed: Rate at which Awareness decreases after stimuli stop
  • Forget Delay: Grace period (seconds) after stimuli stop before decay begins
  • Exception after reaching Aware stage:
    • Can Forget = false: Stays Aware indefinitely
    • Can Forget = true: Uses a Duration field instead of Forget Delay to set a longer forgetting start time (useful for maintaining combat mode)

Sight

Settings

  • Update: Every Frame / Interval / Manual
  • Detection Speed: Maximum Awareness increase rate on sight (reduced by luminance and distance)
  • Layer Mask: Physics layers treated as occluders (for raycasting)
  • Optics: Bone used as viewpoint (default is hip, making it easier to hide behind)

Luminance Integration

Turn on Use Luminance to make light levels affect detection (Dim Threshold below is invisible, Lit Threshold and above gives maximum speed).

  • For a Night Vision effect, set Dim=0, Lit=0.1 or similarly low

Primary / Peripheral Cone

Primary (main field of view): A cone defined by angle, radius, and height. 100% detection speed.

Peripheral: An extended range around Primary. Detection speed attenuates with distance.

The Peripheral Radius value is added to Primary (Primary=5, Peripheral=2 → effective range is 7).


Hearing

Settings

  • Use Obstruction: Whether to consider sound blocking by Obstruction components (has performance cost)
  • Min / Max Intensity: Detectable volume range (above max / below min are ignored)
  • Decay Time: Seconds the sound lingers in the ear (reverb feel)

Emit Noise

Emit Noise Instruction generates sound at any point:

  • Position / Radius: Sound origin and reach distance
  • Tag: String identifying the type of sound
  • Intensity: Volume

Response

React with the On Hear Trigger. Tags allow differentiation like “whistle → Suspicious, gunshot → Aware” (note: this doesn’t automatically raise Awareness).

Din (Ambient Noise)

Sounds quieter than Din can’t be heard. This creates effects like whispers being drowned out by thunder.

  • Global Din: Default volume for the entire scene
  • Local Din: Place spherical local noise with a Din component (Radius / Roll off / Level / Audio Source sync)

Obstruction (Sound/Sight Blocking)

  • Requires a Collider component
  • Noise Damping / Sight Damping: Attenuation coefficients on passage (0=fully blocked, 1=no blocking)
  • For transparent glass that “can be seen through but blocks sound,” separate with Layer settings

Smell

Settings

  • Update: Every Frame / Interval / Manual
  • Radius: Maximum distance for detecting smells
  • Use Obstruction: Whether Obstruction blocks smells
  • Min Intensity: Minimum detectable intensity

Emit Scent

Emit Scent disperses a smell:

  • Source: Source GameObject
  • Tag: Identification string
  • Dispel Duration: Seconds until dissipation
  • Diffusion Rate: Spread speed
  • Intensity: Initial intensity (decays over time)

Scent Trail

Emitting multiple scents with the same Tag creates a chronologically linked trail that AI can follow sequentially (breadcrumb-style).

Response and Tracking

  • On Smell Trigger for detection response
  • Combining with the Character’s Move To Follow Scent option reproduces trail-following behavior

Dissipation (Dissipation Coefficient)

Set Dissipation globally changes Scent dissipation time. A value of 0 has no effect; a value of 1 doubles the dissipation time.


Feel (Sixth Sense)

Settings

  • Update: Every Frame / Interval / Manual
  • Detection Speed: Awareness increase rate
  • Radius: Detection radius
  • Layer Mask: Obstacle detection

Automatic Awareness

When a target enters the Radius, Awareness automatically increases (unlike Sight, luminance and line-of-sight angle are not considered).

Use Cases

  • A “sixth sense” effect of feeling a presence behind you
  • Expanding the Radius with Interval updates creates a sonar-like effect

Luminance and Camouflage

Luminance Component

  • Placed alongside a Light component to indicate “this Light affects Sight detection”
  • Multiplier: Coefficient applied to Light Intensity (adjust for cases where art direction requires Intensity=2 but effective Luminance should be 1)
  • Layer Mask: Which objects block Luminance (Collider-based)
  • To let light through transparent glass, exclude that glass’s Collider from the Layer Mask

Environment Luminance

Change Global Luminance Instruction changes the scene-wide minimum light level (simulating ambient light).

Camouflage Component

  • Sight Damping (0–1): Multiplicatively reduces own visibility
  • Can change via dynamic properties:
    • Invisibility skill linked to Local Variables
    • Stealth value improvement linked to Stats
    • Switch visibility between stationary/moving

Evidence (Traces)

Purpose

A system for making AI notice world changes like “an opened door” or “a knocked-over chair.”

Evidence Component

  • Tag: Evidence type identifier
  • On Sight: Make detectable by sight
  • Emit Noise: Emit sound when tampered (reuses Tag as Noise Tag)
  • Emit Scent: Emit smell when tampered (reuses Tag as Scent Tag)

Tampering

Tamper Evidence marks it as “tampered.” Restore Evidence restores it.

Multiple Evidence with Same Tag

Detecting one treats all Evidence with the same Tag as detected. Useful for “3 doors are open, but only react once to the first one discovered.”

Detection

  • On Notice Evidence Trigger: When Evidence is discovered
  • On Tamper Evidence Trigger: When Evidence is Tampered/Restored (added in v2.1.3)

Debug

During Play mode, an Is Tampered field appears on the Evidence component, showing the current tamper state.


Relay (Knowledge Sharing)

Relay Awareness Knowledge

Instruction Relay Awareness Knowledge: Copies all Awareness information from Perception A to Perception B (B’s existing information is preserved).

This concisely implements behavior like “when Guard A spots the Player, shout to alert nearby Guard B.”

Relay Evidence Knowledge

Instruction Relay Evidence Knowledge: Transfers Evidence discovery information to another Perception.

  • The receiver fires On Relayed Evidence Trigger
  • The awareness sender fires On Relayed Awareness Trigger

User Interface

Provides demo UIs that work with drag & drop of included prefabs.

  • Awareness UI: Aggregates and displays surrounding agents’ Awareness toward a specific GameObject (usually the Player). Tag filter allows showing enemies only
  • Luminance UI: Bar display of target’s light level (Lit/Dim)
  • Noise UI: Displays the loudest audible noise and Din
  • Smell UI: Bar display of the strongest detected Scent

Each UI can be switched to Update: Interval for performance improvement.


Visual Scripting Reference

Instructions (13)

Perception (2)

InstructionFunctionMain Parameters
Track AwarenessStart tracking a targetPerception / Target
Untrack AwarenessStop trackingPerception / Target

Perception > Awareness (3)

InstructionFunctionMain Parameters
Increase AwarenessAdd to AwarenessIncrement / Maximum Level / Perception / Target
Decrease AwarenessSubtract from AwarenessDecrement / Perception / Target
Relay Awareness KnowledgeTransfer knowledge to another PerceptionPerception / Target

Perception > Evidence (3)

InstructionFunctionMain Parameters
Tamper EvidenceMark Evidence as “tampered”Evidence
Restore EvidenceRestore Evidence to original stateEvidence
Relay Evidence KnowledgeTransfer Evidence knowledge to another PerceptionSource / Target

Perception > Hear (2)

InstructionFunctionMain Parameters
Emit NoiseGenerate soundPosition / Radius / Tag / Intensity
Global DinChange global Din valueDin / Transition

Perception > See (1)

InstructionFunctionMain Parameters
Change Global LuminanceChange global luminanceLuminance / Transition

Perception > Smell (2)

InstructionFunctionMain Parameters
Emit ScentDisperse a scentSource / Dispel Duration / Diffusion Rate / Tag / Intensity
Set DissipationChange dissipation coefficientDissipation / Transition

Conditions (7)

Perception (2)

ConditionCheckMain Parameters
Compare AwarenessCompare Awareness valuePerception / Target / Value
In Awareness StageWhether in specified Stage(s)Perception / Target / Stage

Perception > Evidence (1)

ConditionCheckMain Parameters
Is Evidence TamperedWhether Evidence is tamperedEvidence

Perception > Hear (2)

ConditionCheckMain Parameters
Can Hear NoiseWhether a new Noise can be heardPerception / Position / Radius / Intensity
Hears Noise TagWhether hearing a Noise with specified TagPerception / Noise Tag / Value

Perception > See (2)

ConditionCheckMain Parameters
Can SeeWhether a specified GameObject is visiblePerception / Target
Compare Luminance AtCompare Luminance value at specified targetTarget / Value

Perception > Smell (2)

ConditionCheckMain Parameters
Can Smell ScentWhether a new Scent can be smelledPerception / Position / Radius / Intensity
Smells Scent TagWhether smelling a Scent with specified TagPerception / Scent Tag / Value

Events (8)

Perception (2)

EventFires When
On Change Awareness LevelAwareness value changes
On Change Awareness StageStage changes

Perception > Awareness (1)

EventFires When
On Relayed AwarenessReceives Awareness knowledge from another agent

Perception > Evidence (3)

EventFires When
On Notice EvidenceNew Evidence discovered
On Tamper EvidenceEvidence is Tampered/Restored
On Relayed EvidenceReceives Evidence knowledge from another agent

Perception > Hear (1)

EventFires When
On HearA sound is heard

Perception > See (1)

EventFires When
On SeeA tracked target is sighted

Perception > Smell (1)

EventFires When
On SmellA Scent is detected

Tips and Notes

  • Sensor Update: Every Frame is accurate but heavy. For many agents, consider Interval/Manual combined with Processor Update
  • Design Awareness in stages: The standard approach is switching behavior at 3 stages — Suspicious/Alert/Aware (use Stage conditions in State Machine/Behavior Tree)
  • Adjusting forgetting time: Forgetting instantly after Aware is unnatural. For combat, 10–30 seconds of Duration is a good guideline
  • Obstruction is expensive: Turn Use Obstruction OFF for open worlds. ON for indoor stealth
  • Hearing and Din unit sense: Normalize everything to 0–1. Design based on relative relationships of “player is quiet/normal/noisy,” not absolute volume values
  • Scent and Smell Dissipation: Can express wind/ventilation. Increase values in open areas, set to 0 in caves
  • Luminance is Collider-based: Forgetting to add a Collider to a mesh causes light leaks with unintended visibility
  • Evidence Tag duplication is convenient but ensure it matches design intent. Same Tags result in “detect all at once” behavior
  • Relay is differential propagation: Existing knowledge is preserved. For fully syncing everyone’s Awareness, supplement with Increase Awareness on the receiver side
  • Night Vision can be easily implemented by just setting Dim Threshold to very low. Toggle with goggles ON/OFF Instructions

Practical Usage — Configuration Guide by Goal

A summary of which features to use when you want to achieve specific perception/stealth effects.

Detected when entering enemy’s vision cone

Awareness rises when the player enters the enemy’s forward field of view, transitioning to combat when fully recognized.

What to UseSetting
SensorSight
Start TrackingTrack Awareness (Target = Player) on enemy’s On Start
Awareness StagesGradually change behavior at Suspicious → Alert → Aware
Behavior IntegrationUse Awareness Stage as State Machine transition conditions

Stealth system where darkness makes you harder to find

Players are harder for enemies to detect in dark areas.

What to UseSetting
SightTurn Use Luminance ON
Dim ThresholdTargets are invisible below this brightness
Luminance ComponentPlace near lights to set brightness values

Recommended to enable only in stealth games.

Harder to detect in bushes or with camouflage gear

Player becomes less visible when crouching or equipping certain items.

What to UseSetting
ComponentCamouflage (attach to player)
Sight Damping0–1 coefficient. Lower = harder to detect
Dynamic SwitchingSet Damping low only while crouching (switch via Instructions)

A Sight Damping of 0.25 effectively reduces visibility to 25%.

Enemies alerted by gunshots or footsteps

Raise nearby enemy Awareness with gunfire or running sounds.

What to UseSetting
SensorHearing (attach to enemies)
Sound GenerationEmit Noise instruction (specify position, Intensity, Radius)
Din (Ambient Noise)Environmental noise level. Sounds with Intensity below Din can’t be heard

During a thunderstorm, raising Din makes running sounds get drowned out.

Sixth sense detects sneaking up from behind (Boss counterattack)

Detect presence at very close range even outside the field of view.

What to UseSetting
SensorFeel (attach to boss)
RadiusShort range (about 2–3m)
Detection SpeedSet high (instant detection)

Expanding the Radius enables sonar-like effects.

Guards notice doors the player opened (Evidence)

AI discovers traces left by the player (opened doors, broken windows) and becomes alert.

What to UseSetting
ComponentEvidence (attach to the door GameObject)
TagString identifying the evidence type (e.g., open-door)
DetectionProcessed as Evidence discovery when enemy Sight visually detects this object

Multiple Evidence with the same Tag — discovering one treats all as detected.

Allies share information with each other (Relay)

When one enemy spots the player, it alerts nearby allies so everyone enters alert state.

What to UseSetting
FeatureRelay (knowledge transfer)
UsageThe discovering enemy passes information to surrounding Perceptions via Relay Awareness instruction

Relay is differential propagation. For fully syncing everyone’s Awareness, also execute Increase Awareness on the receiver side.

Continue pursuit for a set time after losing sight (Forgetting control)

After an enemy fully recognizes the player (Aware), maintain pursuit mode for a set period before forgetting.

What to UseSetting
Forget SpeedRate at which Awareness decreases
Forget DelayGrace period seconds after stimuli stop before decay begins
Special Aware SettingsCan Forget = true + set Duration to be long (e.g., 20–30 seconds)

Throw coins or stones to distract enemies (Decoy)

Lure enemies to the landing point of a thrown object.

What to UseSetting
Sound GenerationEmit Noise at the landing point (Tag = distract, Intensity = low)
Enemy ResponseOn Hear event → Increase Awareness (Maximum Level limited to Suspicious)
MovementWhen Awareness rises, Behavior executes Move To (sound source position)

The key is setting decoy sound Intensity higher than Din but below combat level (around 0.3–0.5).

Tracking dog follows blood scent trail (Smell application)

An injured character leaves scent traces while moving, and a tracking dog follows them.

What to UseSetting
Scent EmissionEmit Scent on injured character (Tag = blood, set spread speed with Diffusion Rate)
Tracking DogAdd Smell sensor to Perception
ResponseOn Smell event → Move To (move toward Scent source direction)

Lower Dissipation makes traces last longer, making tracking easier.

Display “detection level” on screen (Awareness UI)

Show on the HUD how much enemies are aware of the player.

What to UseSetting
Awareness UIPlace Prefab on Canvas
TargetPlayer (display target)
FilterRestrict which enemy group’s Awareness to show by Tag

A classic UI pattern for stealth game “detection meters.”


  • Behavior: Use Awareness/Stage from Perception as conditions in State/Tree/GOAP/Utility
  • Characters: Link to Feel/Sight Optics bones, Relay coordinates across NPC groups
  • Stats: Link Awareness changes to HP/MP effects / capability bonuses via Stats (stealth values)
  • Quests: Evidence discovery triggers Task completion
  • Dialogue: Start conversations on Aware / insert discovery lines
  • Shooter / Melee: Switch combat behavior by Awareness stage (patrol → alert → combat)


Summary

This article covered the “Perception” module for Game Creator 2.

By integrating four sensors — Sight, Hearing, Smell, and Feel — into the Awareness meter, you can finely tune detection difficulty with Luminance, Camouflage, Din (ambient noise), and Obstruction. Evidence (traces) and Relay (knowledge sharing) enable building stealth game essentials: “AI that notices world changes” and “AI that communicates information to allies.”

Visual Scripting provides 13 Instructions, 7 Conditions, and 8 Events, and combined with the Behavior module, lets you build stealth game enemy AI entirely with no code.

Complete Article List — Game Creator 2 Complete Guide Series Indexen.senkohome.com/gamecreator2-series-index/

We hope you’ll continue reading our next article as well.