PostProcessStage
s或其它逻辑上一起执行的后处理复合阶段的集合。
All stages are executed in the order of the array. The input texture changes based on the value of inputPreviousStageTexture
.
If inputPreviousStageTexture
is true
, the input to each stage is the output texture rendered to by the scene or of the stage that executed before it.
If inputPreviousStageTexture
is false
, the input texture is the same for each stage in the composite. The input texture is the texture rendered to by the scene
or the output texture of the previous stage.
Name | Type | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object | 具有以下属性的对象:
|
Throws:
-
DeveloperError : 选项.阶段.长度必须大于0.0。
Examples:
// Example 1: separable blur filter
// The input to blurXDirection is the texture rendered to by the scene or the output of the previous stage.
// The input to blurYDirection is the texture rendered to by blurXDirection.
scene.postProcessStages.add(new Cesium.PostProcessStageComposite({
stages : [blurXDirection, blurYDirection]
}));
// Example 2: referencing the output of another post-process stage
scene.postProcessStages.add(new Cesium.PostProcessStageComposite({
inputPreviousStageTexture : false,
stages : [
// The same as Example 1.
new Cesium.PostProcessStageComposite({
inputPreviousStageTexture : true
stages : [blurXDirection, blurYDirection],
name : 'blur'
}),
// The input texture for this stage is the same input texture to blurXDirection since inputPreviousStageTexture is false
new Cesium.PostProcessStage({
fragmentShader : compositeShader,
uniforms : {
blurTexture : 'blur' // The output of the composite with name 'blur' (the texture that blurYDirection rendered to).
}
})
]
});
// Example 3: create a uniform alias
var uniforms = {};
Cesium.defineProperties(uniforms, {
filterSize : {
get : function() {
return blurXDirection.uniforms.filterSize;
},
set : function(value) {
blurXDirection.uniforms.filterSize = blurYDirection.uniforms.filterSize = value;
}
}
});
scene.postProcessStages.add(new Cesium.PostProcessStageComposite({
stages : [blurXDirection, blurYDirection],
uniforms : uniforms
}));
See:
Members
inputPreviousStageTexture
而变化。
如果inputPreviousStageTexture
是true
,则每个阶段的输入是由场景渲染的输出纹理或在其之前执行的阶段的输出纹理。
如果inputPreviousStageTexture
是false
,则合成中每个阶段的输入纹理都相同。输入纹理是场景渲染到的纹理
或者上一级的输出纹理。undefined
;在这种情况下,让每个阶段设置统一的值。Methods
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 :此对象已销毁,即调用destroy()。
index
处的后处理阶段Name | Type | Description |
---|---|---|
index |
Number | 后处理阶段或组合的索引。 |
Returns:
Throws:
-
DeveloperError :索引必须大于或等于0。
If this object was destroyed, it should not be used; calling any function other than
isDestroyed
will result in a DeveloperError
exception.
Returns:
true
;否则为false
。