高光反射是一種經驗模型,並不完全符合真實世界中的高光反射現象。
先根據表面法線、視角方向、光源方向計算出反射方向。
通過 phong 模型來計算高光反射的部分。
一般都用逐畫素,得到更平滑的高光效果。
公式:
高光反射光線強度 = 入射光線顏色 * 高光反射顏色 * max( 0, 視角方向 · 反射方向 ) ^ 高光反光度case 逐頂點:
shader "specularvertexlevel"
subshader
lod 100
pass ;
fixed4 frag (v2f i)
: sv_target
endcg
}}fallback "diffuse"
}
case 逐畫素:
struct v2f
;fixed4 frag (v2f i)
: sv_target
6 6高光反射 BlinnPhong光照模型
blinnphong光照模型 specular c.m max 0,n.h 乘glass的 次方 需要4個引數 入射光顏色和強度c,材質的高光反射係數m,法線n和向量h blinn phong光照模型高光反射部分更大更亮,更符合結果 shader unity shader book chapter ...
Shader 基礎光照 高光反射光照模型
高光反射計算公式 我們需要4個引數,光源的顏色和強度,材質的高光反射係數,視角方向和反射方向.在高光反射中我們要取得反射光線和視線的夾角.cg提供了反射光線的函式reflect i,n 1.宣告三個屬性,specular控制高光反射材質,diffuse漫反射材質,gloss控制高光區域大小 prop...
Phong和Blinn Phong光照模型
phong和 blinn phong 是計算鏡面反射光的兩種光照模型,兩者僅僅有很小的不同之處。1.phong模型 phone模型計算中的乙個關鍵步驟就是反射向量r的計算 上圖中的位於表面 下面 的向量 i 是原始 i 向量的拷貝,並且二者是一樣的,現在我們的目標計算出向量 r 根據向量相加原則,向...