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
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