Unity Shader常用函式變數

2021-08-26 14:43:54 字數 908 閱讀 2714

unity_matrix_mvp 從頂點座標到螢幕座標的矩陣

_worldtoobject 世界到自身的矩陣

_objecttoworld 自身到世界的矩陣

_worldspacelightpos0 光的世界座標

l:worldspacelightdir(v.vertex) 頂點到光源的向量,未歸一化

v:worldspaceviewdir(v.vertex) 頂點到攝像機的向量,未歸一化

n:unityobjecttoworldnormal(v.normal) 頂點法向量轉入世界座標系,已歸一化

h = normalize(l+v)半形向量

o.r = reflect(-v,n)視線的反射向量

fixed4 color = texcube(_cube,in.r)立方體取樣

unity_lightmodel_ambient 環境光

_lightcolor0 主光源的顏色

o.uv = transform_tex(v.texcoord,_maintex)將主紋理的縮放和偏移重新計算uv

******r2d unity_lightmap; 光照貼圖,無需properties申明

o.uv2 = v.texcoord1.xy*unity_lightmapst.xy+unity_lightmapst.zw;計算光照貼圖uv

float3 lmcol = decodelightmap(tex2d(unity_lightmap,in.uv2))光照貼圖取樣(r,g,b)

float3 lmcol = decodelightmap(unity_sample_tex2d(unity_lightmap,in.uv2)) 5.0之後的光照貼圖取樣

tangent_space_rotation 頂點切向量,垂直向量,法向量的座標系轉換,rotation轉換矩陣

Unity Shader常用函式總結

數學函式 abs x 返回輸入引數的絕對值 clamp x,a,b 如果x小於a則返回a 如果x大於b則返回b cross a,b 返回兩個三元向量的叉積 degree x 輸入引數為弧度值 radians 函式將其轉換為角度值 determinant m 計算矩陣的行列式因子 dot a,b 返回...

Unity Shader常用內建函式

函式 功能示例 abs絕對值 frac 取小數floor 向下取整 ceil 向上取整 max取最大值 min取最小值 pow次方 pow a,3 rcp倒數 expe ne n enexp2 2 n2 n 2nfmod 取餘fmod 5,2 saturate 把值限制在0 1 clamp 把值限制...

Unity Shader常用語句

將模型空間下的頂點轉換到齊次裁剪空間 與mul unity matrix mvp,v.vertex 相等 它屬於 include unitycg.cginc 所以不要忘記新增 cg程式中用來在一張貼圖中對乙個點進行取樣的方法,返回乙個float4,這裡對 maintex在輸入點上進行了取樣,並將其顏...