《图形编程技术学习》(三十五)Phong明暗处理
一.Gouraud明暗處理的問題
1.曲面分隔可能產生錯誤效果
2.高光的丟失
3.馬赫帶效應(即光亮度變化率不連續的邊界處呈現亮帶或黑帶)
二.Phong明暗處理
1.Phong明暗處理的思想:
不是插值光亮度顏色,而是插值法向量。故而也稱為”法向量插值明暗處理“
2.對多邊形頂點處法向量做雙線性插值,將插值計算得到的多邊形內各片元的法向量代入光亮度計算公式,得到各片元的光亮度
step1:計算出多邊形各頂點的法向;
step2:多邊形中的某個片元,雙線性插值計算其法向;
step3:計算出多邊形內該片元的光亮度。
三.不同明暗處理效果比較
Phong明暗處理的缺點是計算量大。以往圖形硬件中不常采用。
Phong明暗處理是為每一個片元點都計算光照明方程
四.Phong shading計算發生在哪里?
Step1:計算出多邊形各頂點的法向;
——CPU
Step2: 對多邊形中的某個片元,雙線性插值計算其法向;
——Rasterization
Step3:計算出多邊形內該片元的光亮度。
——Fragment operation
五.三種明暗處理方法
1.常數明暗處理
2.Gouraud明暗處理
3.Phong明暗處理
(1)三種方法效果越來越好
(2)但計算機量也越來越大
(3)前兩者是頂點級別的光照計算;而Phong Shading則是像素級別的光照計算。
/問題:還有別的明暗處理方法嗎?/
六.凹凸紋理映射
七.OpenGL中的相關函數
glShadeModel(GLenum mode)
GL_FLAT 即常數明暗處理
GL_SMOOTH 即采用Gouraud明暗處理
擴展鏈接:https://www.khronos.org/registry/OpenGL-Refpages/gl2.1/
?
總結
以上是生活随笔為你收集整理的《图形编程技术学习》(三十五)Phong明暗处理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全息照相原理基础
- 下一篇: LR性能测试Web Page Break