看板 GameDesign 關於我們 聯絡資訊
※ 引述《littleshan (我要加入劍道社!)》之銘言: : ※ 引述《zouber (旅行的意義)》之銘言: : : 在有打光的情況下 如果這樣寫的話 OpenGL實際上做的事情是? : : 1. 先依照這三個點的法向量算出他們個別的光強(By local reflection model) : : 再由這三個頂點的光強來內插出三角形內部像素的光強 然後畫出整個三角形 : : (Gouraud shading?) : 看你用的 shading mode 是什麼 : OpenGL 提供 flat shading 和 gouraud shading 給你選擇 : 可以用 glShadeModel 來切換 : glShadeModel(GL_FLAT); // flat shading : glShadeModel(GL_SMOOTH); // gouraud shading : 預設使用 gouraud shading : : 2. 先由這三個頂點的法向量內插出三角形內每個像素的法向量 : : 再由每個像素的法向量來算出他們個別的光強 然後畫出整個三角形 : : (Phong shading?) : OpenGL 並沒有內建 phong shading : 如果要達成這個效果必需寫 shader : : 3. 都不是 囧~~ : : 希望板上OpenGL的高手指點小弟.... 那請問phong shading 要如何寫呢? 似乎要用到控制pixel的技巧 ~ ~ 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.89.129