Foundry Virtual Tabletop - API Documentation - Version 14
    Preparing search index...

    A specialized subclass of the BaseLightSource which renders a source of darkness as a point-based effect.

    PointEffectSource

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    ratio: number = 1

    A ratio of dim:bright as part of the source radius

    _padding: number = ...

    Padding applied on the darkness source shape for visual appearance only. Note: for now, padding is increased radius. It might evolve in a future release.

    _visualShape: SourceShape

    The optional geometric shape is solely utilized for visual representation regarding darkness sources. Used only when an additional radius is added for visuals.

    _brightLightingLevel: -2 = LIGHTING_LEVELS.DARKNESS
    _dimLightingLevel: -1 = LIGHTING_LEVELS.HALFDARK
    _initializeShaderKeys: string[] = ...
    _refreshUniformsKeys: string[] = ...
    defaultData: any = ...

    Effect source default data.

    EDGE_OFFSET: number = -8

    The offset in pixels applied to create soft edges.

    effectsCollection: string = "darknessSources"
    sourceType: string = "darkness"

    Accessors

    • get darkness(): PointSourceMesh

      A convenience accessor to the darkness layer mesh.

      Returns PointSourceMesh

    • get requiresEdges(): boolean

      Returns boolean

    • get _layers(): {
          darkness: {
              blendMode: string;
              defaultShader: typeof AdaptiveDarknessShader;
          };
      }

      Returns {
          darkness: {
              blendMode: string;
              defaultShader: typeof AdaptiveDarknessShader;
          };
      }

    Methods

    • Returns void

    • Parameters

      • layerId: any

      Returns any

    • Returns { direction: 1; light: 20; object: any; priority: any; sight: 20; type: string }

    • Returns any

    • Returns void

    • An animation with flickering ratio and light intensity

      Parameters

      • dt: number

        Delta time

      • Optionaloptions: {
            amplification?: number;
            intensity?: number;
            reverse?: boolean;
            speed?: number;
        } = {}

        Additional options which modify the flame animation

        • Optionalamplification?: number

          Noise amplification (>1) or dampening (<1)

        • Optionalintensity?: number

          The animation intensity, from 1 to 10

        • Optionalreverse?: boolean

          Reverse the animation direction

        • Optionalspeed?: number

          The animation speed, from 0 to 10

      Returns void

    • A basic "pulse" animation which expands and contracts.

      Parameters

      • dt: number

        Delta time

      • Optionaloptions: { intensity?: number; reverse?: boolean; speed?: number } = {}

        Additional options which modify the pulse animation

        • Optionalintensity?: number

          The animation intensity, from 1 to 10

        • Optionalreverse?: boolean

          Reverse the animation direction

        • Optionalspeed?: number

          The animation speed, from 0 to 10

      Returns void

    • A sound-reactive animation that uses bass/mid/treble blending to control certain shader uniforms. "speed" is interpreted as how quickly we adapt to changes in audio. No time-based pulsing is used by default, but we incorporate dt into smoothing so that behavior is consistent across varying frame rates.

      Parameters

      • dt: number

        The delta time since the last frame, in milliseconds.

      • Optionaloptions: { intensity?: number; reverse?: boolean; speed?: number } = {}

        Additional options for customizing the audio reaction.

        • Optionalintensity?: number

          A blend factor in [0..10] that transitions from bass (near 0) to treble (near 10) Mid frequencies dominate around intensity=5.

        • Optionalreverse?: boolean

          Whether to invert the final amplitude as 1 - amplitude.

        • Optionalspeed?: number

          A smoothing factor in [0..10], effectively updates/second.

      Returns void

    • An animation with flickering ratio and light intensity.

      Parameters

      • dt: number

        Delta time

      • Optionaloptions: { intensity?: number; reverse?: boolean; speed?: number } = {}

        Additional options which modify the flame animation

        • Optionalintensity?: number

          The animation intensity, from 1 to 10

        • Optionalreverse?: boolean

          Reverse the animation direction

        • Optionalspeed?: number

          The animation speed, from 0 to 10

      Returns void

    • Parameters

      • point: any

      Returns boolean

    • Protected

      Update the uniforms of the shader on the darkness layer.

      Returns void