Table of Contents

Class DefaultFogOfWarRenderer

Namespace
Map.Rendering.FogOfWar
Assembly
MapAssembly.dll

ENGINE: Default fog of war renderer using GPU compute shader.

Features:

  • GPU-accelerated fog texture generation via compute shader
  • Three visibility states: unexplored (0.0), explored (0.5), visible (1.0)
  • Owned provinces and adjacents marked as visible
  • Previous visible areas demoted to explored when lost

Pattern 20: Pluggable Implementation (Interface + Registry)

public class DefaultFogOfWarRenderer : FogOfWarRendererBase, IFogOfWarRenderer
Inheritance
object
DefaultFogOfWarRenderer
Implements
Inherited Members

Constructors

DefaultFogOfWarRenderer()

public DefaultFogOfWarRenderer()

DefaultFogOfWarRenderer(ComputeShader)

public DefaultFogOfWarRenderer(ComputeShader computeShader)

Parameters

computeShader ComputeShader

Properties

DisplayName

Human-readable name for UI/debugging

public override string DisplayName { get; }

Property Value

string

RendererId

Unique identifier for this renderer (e.g., "Default", "Stylized", "Minimal")

public override string RendererId { get; }

Property Value

string

Methods

Dispose()

Cleanup resources

public override void Dispose()

OnInitialize()

Override to perform implementation-specific initialization

protected override void OnInitialize()

OnVisibilityChanged()

Called when visibility state changes - override to update textures

protected override void OnVisibilityChanged()

UpdateVisibility()

Update visibility state based on current ownership

public override void UpdateVisibility()