6 6高光反射 BlinnPhong光照模型

2021-10-04 21:07:23 字數 735 閱讀 3695

//blinnphong光照模型

// specular = (c.m)max(0,n.h)乘glass的 次方

//需要4個引數:入射光顏色和強度c,材質的高光反射係數m,法線n和向量h

//blinn-phong光照模型高光反射部分更大更亮,更符合結果

shader "unity shader book/chapter 6/blinn"

subshader

cgprogram

// upgrade note: excluded shader from dx11; has structs without semantics (struct v2f members pos)

//#pragma exclude_renderers d3d11

#pragma vertex vert

#pragma fragment frag

#include "lighting.cginc"

fixed4 _diffuse;

fixed4 _specular;

float _gloss;

struct a2v ;

struct v2f ;

//計算世界空間下的法線方向和頂點座標,傳遞給片元著色器

v2f vert(a2v v)

fixed4 frag(v2f i) :sv_target

endcg}}

fallback "specular"

}

逐頂點高光反射

逐頂點高光反射 shader unity shader book chapter 6 specular vertex leve1 subshader cgprogram pragma vertex vert pragma fragment frag 引用內建的變數 include lighting....

shader入門5 高光反射

高光反射一般用於實現金屬光澤的效果,原理是反射光與物體朝相機的方向的夾角cos值為標準進行光照補償,夾角越小補償值越高.其實現原理與在漫反射基礎上加了高光補償的部分,要注意的是世界座標系中的光照與入射角方向是相反的 n是normaldir v是viewdir l是lightdir 因為反射公式的入射...

高光反射Phong光照模型

高光反射是一種經驗模型,並不完全符合真實世界中的高光反射現象。先根據表面法線 視角方向 光源方向計算出反射方向。通過 phong 模型來計算高光反射的部分。一般都用逐畫素,得到更平滑的高光效果。公式 高光反射光線強度 入射光線顏色 高光反射顏色 max 0,視角方向 反射方向 高光反光度 case ...