Small World Engine API Reference - v0.78.00
    Preparing search index...

    Interface PostProcessingEffectsConfig

    Per-effect settings for the post-processing pipeline, nested under PostProcessingConfig.effects rather than a { type, ... } array -- see docs/adr/0001-config-shape-named-keys-not-tagged-arrays.md.

    interface PostProcessingEffectsConfig {
        bloom?: {
            color?: [number, number, number] | { b: number; g: number; r: number };
            enabled?: boolean;
            intensity?: number;
            radius?: number;
            softThreshold?: number;
            threshold?: number;
        };
        colorGrading?: {
            contrast?: number;
            enabled?: boolean;
            gain?: [number, number, number]
            | { b: number; g: number; r: number };
            gamma?: [number, number, number] | { b: number; g: number; r: number };
            lift?: [number, number, number] | { b: number; g: number; r: number };
            saturation?: number;
            temperature?: number;
            tint?: number;
        };
        flash?: {
            color?: [number, number, number]
            | { b: number; g: number; r: number };
            enabled?: boolean;
        };
        grain?: { enabled?: boolean; intensity?: number };
        gravitationalLensing?: {
            enabled?: boolean;
            eventHorizonRadius?: number;
            relativisticBeaming?: number;
            ringGlowIntensity?: number;
            singularityScreenPos?:
                | [number, number, number]
                | { x: number; y: number; z: number };
            spaghettification?: number;
            strength?: number;
        };
        hbao?: { enabled?: boolean; intensity?: number; radius?: number };
        motionTrail?: { enabled?: boolean; feedback?: number };
        quantize?: { enabled?: boolean; steps?: number };
        taa?: { enabled?: boolean; feedback?: number };
        toneMapping?: {
            enabled?: boolean;
            exposure?: number;
            gamma?: number;
            mode?: ToneMappingMode;
        };
        vignette?: {
            darkness?: number;
            enabled?: boolean;
            offset?: number;
            roundness?: number;
        };
    }
    Index
    bloom?: {
        color?: [number, number, number] | { b: number; g: number; r: number };
        enabled?: boolean;
        intensity?: number;
        radius?: number;
        softThreshold?: number;
        threshold?: number;
    }
    colorGrading?: {
        contrast?: number;
        enabled?: boolean;
        gain?: [number, number, number] | { b: number; g: number; r: number };
        gamma?: [number, number, number] | { b: number; g: number; r: number };
        lift?: [number, number, number] | { b: number; g: number; r: number };
        saturation?: number;
        temperature?: number;
        tint?: number;
    }

    Parametric color grading (contrast/saturation/temperature-tint/lift-gamma-gain), applied after tone mapping. Distinct from filterMode's camera-look presets -- an always-available continuous grading layer, not one of those mutually exclusive stylized filters.

    flash?: {
        color?: [number, number, number] | { b: number; g: number; r: number };
        enabled?: boolean;
    }

    Full-screen flash overlay, driven per-frame by camera FlashEffects (e.g. hit/explosion feedback).

    grain?: { enabled?: boolean; intensity?: number }
    gravitationalLensing?: {
        enabled?: boolean;
        eventHorizonRadius?: number;
        relativisticBeaming?: number;
        ringGlowIntensity?: number;
        singularityScreenPos?:
            | [number, number, number]
            | { x: number; y: number; z: number };
        spaghettification?: number;
        strength?: number;
    }

    Black hole gravitational lensing, Einstein ring and relativistic beaming.

    hbao?: { enabled?: boolean; intensity?: number; radius?: number }

    Simplified screen-space ambient occlusion (HBAO, not GTAO). WebGL/WebGPU only, off by default.

    motionTrail?: { enabled?: boolean; feedback?: number }

    Deliberate ghost/afterimage motion-trail effect (not anti-aliasing). WebGL/WebGPU only, off by default.

    quantize?: { enabled?: boolean; steps?: number }
    taa?: { enabled?: boolean; feedback?: number }

    Simplified TAA (jitter + history blend, no motion vectors). WebGL/WebGPU only, off by default.

    toneMapping?: {
        enabled?: boolean;
        exposure?: number;
        gamma?: number;
        mode?: ToneMappingMode;
    }
    vignette?: {
        darkness?: number;
        enabled?: boolean;
        offset?: number;
        roundness?: number;
    }