A helper class which manages the refresh workflow for perception layers on the canvas. This controls the logic which batches multiple requested updates to minimize the amount of work required. A singleton instance is available as foundry.canvas.Canvas#perception.

Hierarchy

  • RenderFlagObject<this>
    • PerceptionManager

Properties

renderFlags: RenderFlags

Status flags which are applied at render-time to update the PlaceableObject. If an object defines RenderFlags, it should at least include flags for "redraw" and "refresh".

RENDER_FLAG_PRIORITY: string = "PERCEPTION"
RENDER_FLAGS: {
    identifyInteriorWalls: {
        alias: boolean;
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    };
    initializeDarknessSources: {
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    };
    initializeLighting: { propagate: string[] };
    initializeLightSources: { propagate: string[] };
    initializeSounds: { propagate: string[] };
    initializeVision: { propagate: string[] };
    initializeVisionModes: { propagate: string[] };
    refreshEdges: {};
    refreshLighting: { propagate: string[] };
    refreshLightSources: {};
    refreshOcclusion: { propagate: string[] };
    refreshOcclusionMask: {};
    refreshOcclusionStates: {};
    refreshPrimary: {};
    refreshSounds: {};
    refreshTiles: {
        alias: boolean;
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    };
    refreshVision: { propagate: string[] };
    refreshVisionSources: {};
    soundFadeDuration: {};
} = ...

Type declaration

  • identifyInteriorWalls: {
        alias: boolean;
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    }

    since v12

  • initializeDarknessSources: {
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    }

    since v13

  • initializeLighting: { propagate: string[] }
  • initializeLightSources: { propagate: string[] }
  • initializeSounds: { propagate: string[] }
  • initializeVision: { propagate: string[] }
  • initializeVisionModes: { propagate: string[] }
  • refreshEdges: {}
  • refreshLighting: { propagate: string[] }
  • refreshLightSources: {}
  • refreshOcclusion: { propagate: string[] }
  • refreshOcclusionMask: {}
  • refreshOcclusionStates: {}
  • refreshPrimary: {}
  • refreshSounds: {}
  • refreshTiles: {
        alias: boolean;
        deprecated: { message: string; since: number; until: number };
        propagate: string[];
    }

    since v12

  • refreshVision: { propagate: string[] }
  • refreshVisionSources: {}
  • soundFadeDuration: {}

Methods

  • Returns void

  • A helper function to perform an immediate initialization plus incremental refresh.

    Returns void

  • Update perception manager flags which configure which behaviors occur on the next frame render.

    Parameters

    • flags: object

      Flag values (true) to assign where the keys belong to PerceptionManager.FLAGS

    Returns void