PostProcessStage
和/或 PostProcessStageComposite
的集合。
每个后期处理阶段的输入纹理是场景渲染的纹理或渲染的纹理 到集合中的上一阶段。
如果启用了 Ambient Occlusion 或 Bloom 阶段,它们将在所有其他阶段之前执行。
如果启用了 FXAA 阶段,它将在所有其他阶段之后执行。
Members
readonly ambientOcclusion : PostProcessStageComposite
将基于地平线的环境光遮蔽 (HBAO) 应用于输入纹理的后处理阶段。
环境光遮挡模拟环境光的阴影。当 Surface 接收光线,而不管光线的位置如何。
uniforms 具有以下属性:
intensity
是用于以指数方式使阴影变亮或变暗的标量值。较高的值会使阴影更暗。默认值为3.0
.bias
是一个标量值,表示以弧度为单位的角度。如果样本法线与相机向量之间的点积小于此值,则 采样在当前方向停止。这用于从附近的平面边缘移除阴影。默认值为0.1
.lengthCap
是一个标量值,表示以米为单位的长度。如果从当前样本到第一个样本的距离大于此值,则 采样在当前方向停止。默认值为0.26
.directionCount
是光线行进搜索遮挡物所沿的方向数。默认值为8
.stepCount
是光线行进沿每个方向所走的步数。默认值为32
.randomTexture
是一个纹理,其中红色通道是 [0.0, 1.0] 中的随机值。默认值为undefined
. 需要设置此纹理。ambientOcclusionOnly
是布尔值。如果为 true
,则仅将生成的阴影写入输出。什么时候false
, Input Texture 被调制 与 Ambient Occlusion 一起使用。这是一个有用的调试选项,用于查看更改 uniform 值的效果。默认值为false
.
启用后,此阶段将先于所有其他阶段执行。
泛光效果的后处理阶段。
泛光效果可添加发光效果,使明亮区域更亮,使黑暗区域更暗。
此阶段有以下 uniforms:contrast
、brightness
、glowOnly
、
delta
、sigma
和 stepSize
。
contrast
是 [-255.0, 255.0] 范围内的标量值,会影响效果的收缩。默认值为128.0
。brightness
是一个标量值。输入纹理 RGB 值转换为色相、饱和度和亮度 (HSB),则该值为 添加到亮度。默认值为-0.3
。glowOnly
是一个布尔值。如果为true
,则仅显示发光效果。如果为false
,则发光将添加到输入纹理中。 默认值为false
。这是一个调试选项,用于在更改其他 uniform 值时查看效果。
delta
、sigma
和 stepSize
是与 PostProcessStageLibrary#createBlurStage
相同的属性。
模糊应用于图像生成的阴影,以使其更平滑。
启用后,此阶段将先于所有其他阶段执行。
在 HDR 开启时控制曝光。小于 1.0 会使色调映射更暗,而大于 1.0 会使色调映射更亮。
-
Default Value:
1.0
Example:
viewer.scene.postProcessStages.exposure = 1.0;
快速近似抗锯齿的后期处理阶段。
启用后,此阶段将在所有其他阶段之后执行。
此集合中的后处理阶段数。
确定集合中的所有后处理阶段是否都已准备好执行。
指定使用高动态范围渲染时使用的色调映射算法。
Sandcastle Demo
-
Default Value:
Tonemapper.PBR_NEUTRAL
Example:
viewer.scene.postProcessStages.tonemapper = Cesium.Tonemapper.ACES;
Methods
将后期处理阶段添加到集合中。
Name | Type | Description |
---|---|---|
stage |
PostProcessStage | PostProcessStageComposite | 要添加到集合中的后处理阶段。 |
Returns:
{PostProcessStage|已添加到集合的后处理阶段。
Throws:
-
DeveloperError : The post-process stage has already been added to the collection or does not have a unique name.
返回集合是否包含后处理阶段。
Name | Type | Description |
---|---|---|
stage |
PostProcessStage | PostProcessStageComposite | 后处理阶段。 |
Returns:
集合是否包含后处理阶段。
销毁此对象持有的 WebGL 资源。 销毁对象允许确定性
释放 WebGL 资源,而不是依赖垃圾回收器来销毁这个对象。
一旦对象被销毁,就不应该使用它;调用
isDestroyed
将导致 DeveloperError
异常。 因此
将返回值 (undefined
) 分配给对象,如示例中所示。
Throws:
-
DeveloperError : 这个物体被摧毁了,destroy().
get(index) → PostProcessStage|PostProcessStageComposite
获取
index
处的后处理阶段。
Name | Type | Description |
---|---|---|
index |
number | 后处理阶段的索引。 |
Returns:
索引处的后处理阶段。
如果此对象已销毁,则返回 true;否则为 false。
如果此对象已销毁,则不应使用;调用
isDestroyed
将导致 DeveloperError
异常。
Returns:
true
,如果此对象被销毁;否则为 false
。
从集合中删除后处理阶段并将其销毁。
Name | Type | Description |
---|---|---|
stage |
PostProcessStage | PostProcessStageComposite | 要从集合中删除的后处理阶段。 |
Returns:
是否删除了后处理阶段。
从集合中删除所有后处理阶段并销毁它们。