OpenGL延迟着色之三
生活随笔
收集整理的這篇文章主要介紹了
OpenGL延迟着色之三
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OpenGL延遲著色
- OpenGL延遲著色簡介
- 源代碼剖析
- 主要源代碼
OpenGL延遲著色簡介
看來我們對延遲著色技術的實現是正確的,但是如果您仔細觀察,我們會注意到上一課最后列出的許多缺點。首先,由于背面的夾持,當相機進入光源區域時,光線消失了。第二個問題與光范圍的限制有關。事實是,由于我們使用光源周圍的球體來選擇要進行計算的像素,并且該球體在光柵化器之前投影到屏幕空間中,因此屏幕空間中被球體覆蓋的每個像素都將用于計算中,即使它很遠(并且很可能是光源不可用的)。
稱為模板緩沖區(模板緩沖區或模板緩沖區)的OpenGL功能將在這種情況下為我們提供幫助。模板緩沖區與顏色和深度緩沖區并排交互并交換分辨率(對于顏色緩沖區中的每個像素,模板緩沖區中都有一個像素)。模板緩沖區中的像素類型是整數,通常為1個字節。模板緩沖與現實世界中的紙模完成相同的工作。模版通常用于通過將字母或其他元素切成紙來打印字母或其他元素。在OpenGL中,模板緩沖區用于約束要為其調用片段著色器的像素。
模板緩沖區是使用模板測試附加的,模板測試是我們首次使用的一個像素功能。以與深度測試類似的方式,模版測試可用于在調用像素著色器之前丟棄像素。它通過將當前像素與參考值進行比較來工作。我們可以使用以下幾種功能:
永遠過去
總是失敗
大于/小于
大于或等于/小于或等于
掠奪
不相等
根據模板測試和深度測試的結果,我們可以對模板中記
總結
以上是生活随笔為你收集整理的OpenGL延迟着色之三的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: w7怎么关闭管理员身份运行程序 关闭w7
- 下一篇: 运输电子烟违法吗?