Pipeline -> ProgressivePipeline

Progressive pipelines define three stages for themselves:

  • Dynamic
  • Progressive
  • Passthrough

Each stage will typically have its own list of GPass, but they can share pass instances between them if necessary. At any given time the pipeline can be in one of these stages.

  • Dynamic: When the pipeline needs to render dynamic content like for example when the camera is in motion.
  • Progressive: When the pipeline has reached a stationary point and progressive rendering can start and accumulate.
  • Passthrough: When the pipeline needs to render, without restarting an already existing progressive result. The progressive rendering result is passed through as is.

Constructors

constructor

constructor(speckleRenderer: SpeckleRenderer)

Parameters

Properties

accumulating

protected accumulating: boolean;

Flag that indicates whether the pipeline is in the process of accumulating samples or not

accumulationFrameCount

protected accumulationFrameCount: number;

The pipeline’s desired accumulation frames count. Defaults to 16

Returns: boolean

accumulationFrameIndex

protected accumulationFrameIndex: number;

The pipeline’s current accumulation frame index, 0 if not in the progressive stage

Returns: number

dynamicStage

protected dynamicStage: Array<GPass>;

The pipeline’s dynamic rendering stage pass list. These passes will be used for rendering in dynamic scenarios, like when the camera is moving

Returns: Array<GPass>

passthroughStage

protected passthroughStage: Array<GPass>;

The pipeline’s passthrough rendering stage pass list.

These passes will be used for rendering in scenarios where the pipeline needs to render, however it wants to keep its last progressive render result and just pass it through

Returns: Array<GPass>

progressiveStage

protected progressiveStage: Array<GPass>;

The pipeline’s progressive rendering stage pass list.

These passes will be used for rendering in static scenarios, like when the camera has stopped and the pipeline needs to accumulate progressive samples

Returns: Array<GPass>

Accessors

passes

protected passes: Array<GPass>;

The pipeline’s passes by combining all three of its stages passes in the following order: dynamic, progressive and passthrough.

Returns: Array<GPass>

Methods

onStationaryBegin

onStationaryBegin(): void

Callback for when the pipeline is switching from dynamic/passthrough stage to progressive

Returns: void

onStationaryEnd

onStationaryEnd(): void

Callback for when the pipeline is switching from progressive stage to dynamic

Returns: void

onAccumulationComplete

onAccumulationComplete(): void

Callback for when the pipeline has finished accumulating and is switching from progressive to passthrough

Returns: void