PostProcessStageLibrary

包含用于创建常见后处理阶段的函数。

Methods

static Cesium.PostProcessStageLibrary.createBlackAndWhiteStage()PostProcessStage

创建一个后处理阶段,以黑白渐变渲染输入纹理。

此阶段有一个 uniform 值 gradations,用来缩放每个像素的亮度。

Returns:
一个以黑白渐变渲染输入纹理的后处理阶段。

static Cesium.PostProcessStageLibrary.createBlurStage()PostProcessStageComposite

创建一个后处理阶段,对输入纹理应用高斯模糊。这个阶段通常与其他阶段一起应用。

此阶段具有以下 uniforms: deltasigmastepSize

deltasigma 用于计算高斯滤波器的权重。计算公式为 exp((-0.5 * delta * delta) / (sigma * sigma))delta 的默认值为 1.0sigma 的默认值为 2.0stepSize 是到下一个纹理元素的距离。默认值为 1.0

Returns:
一个后处理阶段,对输入纹理应用高斯模糊。

static Cesium.PostProcessStageLibrary.createBrightnessStage()PostProcessStage

创建一个后处理阶段,增强输入纹理的饱和度。

此阶段有一个 uniform 值 brightness,用来缩放每个像素的饱和度。

Returns:
一个增强输入纹理饱和度的后处理阶段。

static Cesium.PostProcessStageLibrary.createDepthOfFieldStage()PostProcessStageComposite

创建一个后处理阶段,应用景深效果。

景深模拟相机对焦。场景中的对焦物体会清晰,而未对焦的物体会模糊。

此阶段具有以下 uniforms: focalDistancedeltasigmastepSize

focalDistance 是从相机到设置相机对焦的距离(以米为单位)。

deltasigmastepSize 是与 PostProcessStageLibrary#createBlurStage 相同的属性。 模糊应用于未对焦的区域。

Returns:
一个后处理阶段,应用景深效果。

static Cesium.PostProcessStageLibrary.createEdgeDetectionStage()PostProcessStage

创建一个检测边缘的后处理阶段。

在边缘处,将颜色写入输出纹理,alpha 设置为 1.0。

此阶段具有以下 uniforms: colorlength

  • color 是高亮边缘的颜色。默认值为 Color#BLACK
  • length 是以像素为单位的边缘长度。默认值为 0.5

此阶段在 2D 模式下不支持。

Returns:
一个应用边缘检测效果的后处理阶段。
Example:
// multiple silhouette effects
const yellowEdge = Cesium.PostProcessStageLibrary.createEdgeDetectionStage();
yellowEdge.uniforms.color = Cesium.Color.YELLOW;
yellowEdge.selected = [feature0];

const greenEdge = Cesium.PostProcessStageLibrary.createEdgeDetectionStage();
greenEdge.uniforms.color = Cesium.Color.LIME;
greenEdge.selected = [feature1];

// draw edges around feature0 and feature1
postProcessStages.add(Cesium.PostProcessStageLibrary.createSilhouetteStage([yellowEdge, greenEdge]);

static Cesium.PostProcessStageLibrary.createLensFlareStage()PostProcessStage

创建一个应用模拟镜头光晕效果的后处理阶段。

此阶段具有以下 uniforms: dirtTexturestarTextureintensitydistortionghostDispersalhaloWidthdirtAmountearthRadius

  • dirtTexture 是一个纹理,样本用于模拟镜头上的污垢。
  • starTexture 是用于光晕星形图案的纹理。
  • intensity 是一个标量,与镜头光晕的结果相乘。默认值为 2.0
  • distortion 是一个影响色差效果失真的标量值。默认值为 10.0
  • ghostDispersal 是一个标量,指示光晕效果距离纹理中心的距离。默认值为 0.4
  • haloWidth 是一个标量,表示从光晕扩散的宽度。默认值为 0.4
  • dirtAmount 是一个标量,表示镜头上的污垢量。默认值为 0.4
  • earthRadius 是地球的最大半径。默认值为 Ellipsoid.WGS84.maximumRadius

Returns:
一个应用镜头光晕效果的后处理阶段。

static Cesium.PostProcessStageLibrary.createNightVisionStage()PostProcessStage

创建一个对输入纹理添加夜视效果的后处理阶段。
Returns:
一个对输入纹理添加夜视效果的后处理阶段。

static Cesium.PostProcessStageLibrary.createSilhouetteStage(edgeDetectionStages)PostProcessStageComposite

创建一个应用轮廓效果的后处理阶段。

轮廓效果将边缘检测阶段的颜色与输入颜色纹理进行复合。

edgeDetectionStagesundefined 时,此阶段具有以下 uniforms: colorlength

color 是高亮边缘的颜色。默认值为 Color#BLACKlength 是以像素为单位的边缘长度。默认值为 0.5

Name Type Description
edgeDetectionStages Array.<PostProcessStage> optional 一个边缘检测后处理阶段的数组。
Returns:
一个应用轮廓效果的后处理阶段。

static Cesium.PostProcessStageLibrary.isAmbientOcclusionSupported(scene)boolean

是否支持环境光遮蔽阶段。

此阶段需要 WEBGL_depth_texture 扩展。

Name Type Description
scene Scene 场景。
Returns:
该后处理阶段是否受支持。
See:

static Cesium.PostProcessStageLibrary.isDepthOfFieldSupported(scene)boolean

是否支持景深阶段。

此阶段需要 WEBGL_depth_texture 扩展。

Name Type Description
scene Scene 场景。
Returns:
该后处理阶段是否受支持。
See:

static Cesium.PostProcessStageLibrary.isEdgeDetectionSupported(scene)boolean

是否支持边缘检测阶段。

此阶段需要 WEBGL_depth_texture 扩展。

Name Type Description
scene Scene 场景。
Returns:
该后处理阶段是否受支持。
See:

static Cesium.PostProcessStageLibrary.isSilhouetteSupported(scene)boolean

是否支持轮廓阶段。

此阶段需要 WEBGL_depth_texture 扩展。

Name Type Description
scene Scene 场景。
Returns:
该后处理阶段是否受支持。
See:
需要帮助?获得答案的最快方法是来自社区和团队 Cesium Forum.