PostProcessStage
或其他后期处理复合阶段的集合。
所有阶段均按数组顺序执行。输入纹理根据
inputPreviousStageTexture
的值而变化。如果
inputPreviousStageTexture
为
true
,则每个阶段的输入都是场景或其之前执行的阶段渲染到的输出纹理。如果
inputPreviousStageTexture
为
false
,则组合中每个阶段的输入纹理均相同。输入纹理是场景渲染的纹理或上一阶段的输出纹理。
Name | Type | Description | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options
|
Object |
具有以下属性的对象:
|
Throws:
-
DeveloperError :options.stages.length必须大于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 LSGlobe.PostProcessStageComposite({
stages : [blurXDirection, blurYDirection]
}));
// Example 2: referencing the output of another post-process stage
scene.postProcessStages.add(new LSGlobe.PostProcessStageComposite({
inputPreviousStageTexture : false,
stages : [
// The same as Example 1.
new LSGlobe.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 LSGlobe.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 = {};
LSGlobe.defineProperties(uniforms, {
filterSize : {
get : function() {
return blurXDirection.uniforms.filterSize;
},
set : function(value) {
blurXDirection.uniforms.filterSize = blurYDirection.uniforms.filterSize = value;
}
}
});
scene.postProcessStages.add(new LSGlobe.PostProcessStageComposite({
stages : [blurXDirection, blurYDirection],
uniforms : uniforms
}));
See:
Members
inputPreviousStageTexture
的值而变化。如果
inputPreviousStageTexture
为
true
,则每个阶段的输入都是场景或其之前执行的阶段渲染到的输出纹理。如果
inputPreviousStageTexture
为
false
,则组合中每个阶段的输入纹理均相同。输入纹理是场景渲染的纹理或上一阶段的输出纹理。
undefined
;在这种情况下,让每个阶段设置统一的值。
Methods
一旦物体被破坏,就不应使用。调用除
isDestroyed
将导致
DeveloperError
异常。因此,如示例中所述,将返回值(
undefined
)分配给对象。
Throws:
-
DeveloperError :此对象已销毁,即调用destroy()。
index
处获取后期处理阶段
Name | Type | Description |
---|---|---|
index
|
Number | 后处理阶段或组合的索引。 |
Returns:
Throws:
-
DeveloperError :索引必须大于或等于0。
如果该对象被破坏,则不应使用。调用除
isDestroyed
将导致
DeveloperError
异常。
Returns:
真正
该物体是否被破坏;除此以外,
假
。