PostProcessStageCollection

new Cesium.PostProcessStageCollection()

A collection of PostProcessStages and/or PostProcessStageComposites.

The input texture for each post-process stage is the texture rendered to by the scene or the texture rendered to by the previous stage in the collection.

If the ambient occlusion or bloom stages are enabled, they will execute before all other stages.

If the FXAA stage is enabled, it will execute after all other stages.

成员(属性)

A post-process stage that applies Horizon-based Ambient Occlusion (HBAO) to the input texture.

Ambient occlusion simulates shadows from ambient light. These shadows would always be present when the surface receives light and regardless of the light's position.

The uniforms have the following properties:

  • intensity is a scalar value used to lighten or darken the shadows exponentially. Higher values make the shadows darker. The default value is 3.0.
  • bias is a scalar value representing an angle in radians. If the dot product between the normal of the sample and the vector to the camera is less than this value, sampling stops in the current direction. This is used to remove shadows from near planar edges. The default value is 0.1.
  • lengthCap is a scalar value representing a length in meters. If the distance from the current sample to first sample is greater than this value, sampling stops in the current direction. The default value is 0.26.
  • directionCount is the number of directions along which the ray marching will search for occluders. The default value is 8.
  • stepCount is the number of steps the ray marching will take along each direction. The default value is 32.
  • randomTexture is a texture where the red channel is a random value in [0.0, 1.0]. The default value is undefined. This texture needs to be set.
  • ambientOcclusionOnly is a boolean value. When true, only the shadows generated are written to the output. When false, the input texture is modulated with the ambient occlusion. This is a useful debug option for seeing the effects of changing the uniform values. The default value is false.

When enabled, this stage will execute before all others.

A post-process stage for a bloom effect.

A bloom effect adds glow effect, makes bright areas brighter, and dark areas darker.

This stage has the following uniforms: contrast, brightness, glowOnly, delta, sigma, and stepSize.

  • contrast is a scalar value in the range [-255.0, 255.0] and affects the contract of the effect. The default value is 128.0.
  • brightness is a scalar value. The input texture RGB value is converted to hue, saturation, and brightness (HSB) then this value is added to the brightness. The default value is -0.3.
  • glowOnly is a boolean value. When true, only the glow effect will be shown. When false, the glow will be added to the input texture. The default value is false. This is a debug option for viewing the effects when changing the other uniform values.

delta, sigma, and stepSize are the same properties as PostProcessStageLibrary#createBlurStage. The blur is applied to the shadows generated from the image to make them smoother.

When enabled, this stage will execute before all others.

Control the exposure when HDR is on. Less than 1.0 makes the tonemapping darker while greater than 1.0 makes it brighter.
默认值: 1.0
使用示例:
viewer.scene.postProcessStages.exposure = 1.0;
A post-process stage for Fast Approximate Anti-aliasing.

When enabled, this stage will execute after all others.

The number of post-process stages in this collection.
Determines if all of the post-process stages in the collection are ready to be executed.
Specifies the tonemapping algorithm used when rendering with high dynamic range. Sandcastle Demo
默认值: Tonemapper.PBR_NEUTRAL
使用示例:
viewer.scene.postProcessStages.tonemapper = Cesium.Tonemapper.ACES;

方法

Adds the post-process stage to the collection.
参数名称 类型 描述信息
stage PostProcessStage | PostProcessStageComposite The post-process stage to add to the collection.
返回值:
The post-process stage that was added to the collection.
Throws:
  • DeveloperError : The post-process stage has already been added to the collection or does not have a unique name.
Returns whether the collection contains a post-process stage.
参数名称 类型 描述信息
stage PostProcessStage | PostProcessStageComposite The post-process stage.
返回值:
Whether the collection contains the post-process stage.
Destroys the WebGL resources held by this object. Destroying an object allows for deterministic release of WebGL resources, instead of relying on the garbage collector to destroy this object.

Once an object is destroyed, it should not be used; calling any function other than isDestroyed will result in a DeveloperError exception. Therefore, assign the return value (undefined) to the object as done in the example.

Throws:
  • DeveloperError : This object was destroyed, i.e., destroy() was called.
参考:
Gets the post-process stage at index.
参数名称 类型 描述信息
index number The index of the post-process stage.
返回值:
The post-process stage at index.
Returns true if this object was destroyed; otherwise, false.

If this object was destroyed, it should not be used; calling any function other than isDestroyed will result in a DeveloperError exception.

返回值:
true if this object was destroyed; otherwise, false.
参考:
Removes a post-process stage from the collection and destroys it.
参数名称 类型 描述信息
stage PostProcessStage | PostProcessStageComposite The post-process stage to remove from the collection.
返回值:
Whether the post-process stage was removed.
Removes all post-process stages from the collection and destroys them.