ProgressivePipeline
Abstract class that extends the abstract Pipeline and provides builtin functionality for progressive rendering.
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
Parameters
- speckleRenderer: The hosting renderer as
SpeckleRenderer
Properties
accumulating
Flag that indicates whether the pipeline is in the process of accumulating samples or not
accumulationFrameCount
The pipeline’s desired accumulation frames count. Defaults to 16
Returns: boolean
accumulationFrameIndex
The pipeline’s current accumulation frame index, 0 if not in the progressive stage
Returns: number
dynamicStage
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
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
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
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
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
Callback for when the pipeline has finished accumulating and is switching from progressive to passthrough
Returns: void