Fog Of War World
The central manager component. There should be exactly one Fog Of War World in your scene. It owns every global fog setting, drives revealer and hider updates, and renders the fog.
FogOfWarWorld is accessible from code as a singleton via FogOfWarWorld.instance.
Setup
See Getting Started: Fog Of War World for adding the component and setting the essential buffer limits.
Properties
The component exposes a large number of properties, organized by inspector section. Each section has a dedicated reference page:
| Section | Reference |
|---|---|
| Fog type, fade curve, blend mode, softening, distance | Configuration: Rendering |
| Appearance modes, color, pixelation, dithering, invert, arc leaking | Configuration: Appearance |
| Pixel-Perfect vs Texture sampling, hider sampling, fog texture resolution | Configuration: Sampling Mode |
| Fog regrow and revealer fade in/out | Configuration: Regrow & Fading |
| World boundary definition and black-out | Configuration: World Bounds |
| Update modes, spatial acceleration, staged uploads, buffer limits | Optimization |
Essential Limits
| Property | Type | Default | Description |
|---|---|---|---|
| Max Possible Revealers | int | 256 | Maximum revealers active at once. |
| Max Possible Segments Per Revealer | int | 128 | Maximum sight segments per revealer. |
| Max Possible Hiders | int | 512 | Maximum hiders (auto-resizes, with a hitch). |
| Is 2D? | bool | false | Switches the system to 2D mode. |
| Game Plane Orientation | enum (XZ / XY / ZY) | XZ | The world plane the fog is calculated on (3D). |
Scripting
FogOfWarWorld has an extensive public API for runtime control, fog sampling, save/load, and more. See the Fog Of War World API.
using FOW;
// the active Fog Of War World
var fow = FogOfWarWorld.instance;