2009/03/02

090302 GLSL練習

090307
1. 之前完全搞錯,應該只要再背光面作陰影處理,之前連向光的面都弄...,下圖示改正後使用三燈光的效果,只差沒處理SPECULAR
2. 這個燈光主要是我覺得OpenGL燈光PointLight沒那麼好控,所以我只是給個距離作為光源的強弱控制因素



090304
1. 由於GLSL頂點著色器的varying參數會進行內插求職給片元著色器,所以當我將燈光放在一個quad的中上方時候,各點求得距離一樣,傳給片元著色器內插後的值還是一樣,故不會有變化,應該要將座標值給片元著色器,在片元著色器中求距離值

2. 運用法向量與燈光距離求dot,算出不面向光的面,使其較暗是一般的方法,但我卻弄出bug

左邊的面離燈光較遠的點由於與正規化的距離dot後會比較小,造成奇怪的落差
不考慮的會像下面這樣

改天試著加上陰影,應該會比上面的狀況好看吧
接下來要看的資料Orange book 2nd 12.1 Hemisphere Lighting、13.2. Shadow Maps

---------
090302

試著將Orange book的範例修改一下,覺得有點怪怪的
  1. cube的顏色跟我想的不一樣,我希望同一面也要有深淺變化,但好像沒有(或我眼花)
  2. 陰影與其他處理,或其他燈光加入

沒有留言 :