lambert光照模型是乙個非常簡單的模型,早在200 多年前,乙個叫lambert的傢伙提出,當光照射到粗糙 的表面時,它將向四周均勻的反射。這種各向同性的反 射叫漫反射(diffuse reflection)
漫反射光的強度服從於lambert定律,漫反射的光強 與入射光的方向和反射點處表面法向夾角的余弦成正比。
lambert模型的數學表達示如下:idiffuse = kdidcosθ
kd表示物體表面漫反射屬性,id表時入射光強。若n 表示入射點單位法向量,l表示從入射點指向光源的單位 向量(注意是入射點指向光源,表示了入射光的方向), 由點乘與cos之間的關係,cosθ = n●l,則lmbert模型 可表示為:idiffuse = kdid(n●l)
乙個光滑物體被光照射時,可以早某個方向上看到很強的反射光,這是因為在接近鏡面反射角的乙個區域內,反**入射光的全部或大部分光強,這種現象稱為鏡面發射。
故此,phong bui tuong提出乙個計算鏡面反射光強的光照模型,稱為phong模型,認為鏡面反射的光強與反射光線和視線的夾角相關。
phong模型數學表示式:ispec = ksil(v·r)^n
注:((v·r)^n
表示(v·r)的n次方即(v·r)^n 。ks表示材質的鏡面反射係數,n指高光指數,v表示從頂點到視點觀察方向,r表示反射光方向。高光指數n反映了物體表面的光澤程度。n越大,反射越集中,當偏離發射方向時,光線衰減的越厲害,只有當視線方向與反射光線非常接近時,才能看到鏡面反射的高光現象。此時,鏡面反射光將會在反射方向附近形成亮且小的光斑。n越小,表示物體表面越粗糙,反射光越分散,觀察到的光斑區域越小,強度弱。
反射光方向向量r可以通過入射方向l(從頂點指向光源)和物體表面法向量l求出。
注:ip:入射光強,ks:鏡面反射係數,ns:鏡面高光係數,ψ:r和n的夾角
光線追蹤(raytracing)
考慮乙個二維平面,攝像機在 0,0 0,0 的位置,初始時平面上沒有障礙物。現在執行qq次操作,操作有兩種 假設這是第ii次操作,1 i q1 i q 1 給定x0,y0,x1,y1 x0 2 給定向量 x,y x,y 會有乙個動點從攝像機所在的 0,0 0,0 位置出發,以 x,y x,y 所指的...
光線追蹤(raytracing)
考慮乙個二維平面,攝像機在 0,0 0,0 的位置,初始時平面上沒有障礙物。現在執行qq次操作,操作有兩種 假設這是第ii次操作,1 i q1 i q 1 給定x0,y0,x1,y1 x0 2 給定向量 x,y x,y 會有乙個動點從攝像機所在的 0,0 0,0 位置出發,以 x,y x,y 所指的...
實現光線追蹤
參考文章 作者正大三,剛好選修到計算機圖形學這門課,基於興趣,便試著實現全域性光照的效果,由此,寫下此篇文章。所謂光線追蹤,是指從眼睛出發,經過影象平面每一畫素,投射光線到場景中,求該光線與場景中幾何圖形的最近交點,然後求該交點的顏色屬性,並將該顏色值記錄下來,再根據相交點的材質判斷性地進行反射 折...