PostProcessStage
s和/或PostProcessStageComposite
s.的集合,每個后處理階段的輸入紋理是場景渲染到的紋理或集合中上一階段渲染到的紋理。
如果啟用環境遮擋或光暈階段,它們將在所有其他階段之前執行。
如果啟用了fxaa階段,它將在所有其他階段之后執行。
Members
(readonly) ambientOcclusion : PostProcessStageComposite
將基于地平線的環境遮擋(HBAO)應用于輸入紋理的后期處理階段。
環境光遮擋模擬來自環境光的陰影。當表面接收到光時,不管光的位置如何,這些陰影總是存在的。
結構具有以下特性:intensity
,bias
,lengthCap
,stepSize
,frustumLength
,ambientOcclusionOnly
,delta
,sigma
,和blurStepSize
。
intensity
是一個標量值,用于以指數方式照亮或暗化陰影。值越大,陰影越暗。默認值為3.0
。bias
是以弧度表示角度的標量值。如果樣本法向與相機矢量之間的點積小于該值,則采樣將停止在當前方向。這用于從近平面邊緣移除陰影。默認值為0.1
。lengthCap
是表示長度(單位:米)的標量值。如果當前采樣到第一個采樣的距離大于此值,則采樣將在當前方向停止。默認值為0.26
。stepSize
是一個標量值,指示當前方向到下一個Texel樣本的距離。默認值為1.95
。frustumLength
是以米為單位的標量值。如果當前片段與相機的距離大于此值,則不會為片段計算環境光遮擋。默認值為1000.0
。ambientOcclusionOnly
為布爾值。當true
時,只有生成的陰影寫入輸出。當false
時,輸入紋理隨環境光遮擋進行調制。這是一個有用的調試選項,用于查看更改統一值的效果。默認值為false
.
delta
,sigma
,且blurStepSize
與PostProcessStageLibrary#createBlurStage
相同。模糊應用于從圖像生成的陰影,使其更平滑。
啟用后,此階段將先于所有其他階段執行。
(readonly) bloom : PostProcessStageComposite
開花效應的后處理階段。
光華效果增加了光暈效果,使亮區更亮,暗區更暗。
此階段有以下結構:contrast
,brightness
,glowOnly
,delta
,sigma
,和stepSize
。
- {
contrast
是范圍內的標量值[-255.0,255.0]并影響效果的契約。默認值為128.0
。brightness
是一個標量值。輸入紋理RGB值轉換為色調、飽和度和亮度(hsb),然后將該值添加到亮度中。默認值為-0.3
。glowOnly
為布爾值。當true
時,僅顯示輝光效果。當false
時,輝光將添加到輸入紋理。默認值為false
。這是一個調試選項,用于在更改其他統一值時查看效果。
delta
、sigma
和stepSize
與PostProcessStageLibrary#createBlurStage
具有相同的屬性。模糊應用于從圖像生成的陰影,使其更平滑。
啟用后,此階段將先于所有其他階段執行。
(readonly) fxaa : PostProcessStage
快速近似消除混疊的后處理階段。
啟用后,此階段將在所有其他階段之后執行。
(readonly) length : Number
此集合中的后期處理階段數。
(readonly) ready : Boolean
確定集合中的所有后期處理階段是否準備好執行。
Methods
add(stage) → {PostProcessStage|PostProcessStageComposite}
將后期處理階段添加到集合中。
Parameters:
Throws
-
DeveloperError : 后處理階段已添加到集合中,或者沒有唯一的名稱。
返回集合是否包含后期處理階段。
Parameters:
銷毀此對象持有的WebGL資源。銷毀對象允許確定地釋放WebGL資源,而不是依賴垃圾收集器來銷毀此對象。
一旦對象被破壞,就不應使用它;調用除isDestroyed
以外的任何函數都將導致DeveloperError
異常。因此,將返回值(undefined
)賦給對象,如示例中所述。
Throws
-
DeveloperError : 此對象已被銷毀,即調用destroy()。
在
index
處獲取后期處理階段。
Parameters:
index
(Number)
后處理階段的索引。
如果此對象被破壞,則返回true;否則返回false。
remove(stage) → {Boolean}
如果此對象被破壞,則不應使用它;調用除isDestroyed
以外的任何函數都將導致DeveloperError
異常。
從集合中移除后處理階段并將其銷毀。
Parameters:
從集合中移除所有后期處理階段并銷毀它們。