shader 凹凸紋理

2021-10-24 06:20:42 字數 1353 閱讀 6803

使法線紋理上儲存的資訊,將相關變數轉到切線空間進行統一計算。

漫反射由法線方向和光源方向求得,

高光由半方向和法線方向求得,

半方向由光源方向和法線求得,

環境光可以由系統內建變數拿到,

shader "custom/normaltangentspacemat"

//主貼圖

_bumpmap

("normal map"

,2d)

="bump"

//凹凸紋理貼圖

_bumpscale

("bump scale"

, float)=1

//凹凸程度

_specular (

"specular"

, color)=(

1,1,

1,1)

//高光顏色

_gloss (

"gloss"

,range(2

,256))

=20//高光範圍

}

subshader

//渲染模式

cgprogram//cg**開始

//頂點著色器

#pragma vertex vert

//片元著色器

#pragma fragment frag

//引用內建光照檔案

#include

"lighting.cginc"

fixed4 _color;

//總顏色定義

sampler2d _maintex;

//定義主貼圖

sampler2d _bumpmap;

//定義凹凸法線貼圖

float _bumpscale;

//凹凸程度

fixed4 _specular;

//高光顏色

float _gloss;

//高光範圍

float4 _maintex_st;

//主圖紋理縮放與偏移

float4 _bumpmap_st;

//凹凸紋理縮放與偏移

struct a2v

;struct v2f

;

v2f vert (a2v v)

; fixed4 frag (v2f f )

:sv_target

; endcg

}}

fallback "diffuse"

}

Shader 九 凹凸對映

凹凸對映 的兩種方法 1.在切線空間下計算 在切線空間下計算 凹凸對映 shader unlit nomalmapintangentspace bump 內建法線紋理,當沒有提供任何法線紋理時,bump 就對應了模型自帶的法線資訊 bumpmap texture 2d bump bumpscale則...

10 2 渲染紋理 Shader

於 馮樂樂 shader 入門精要 1.思路就是 新建乙個camera,這個攝像機的視角就是物體跟主攝像機反方向的視角,將此攝像機渲染到 rendertexture 我們的shader 只需要對 該 rendertexture 的 uv.x 取反即可,因為取樣攝像機跟我們實際看到的是相反的 額大概就...

Shader 高階紋理 立方體紋理

立方體紋理 cubemap 天空盒子 skybox是遊戲中模擬背景的一種方法,每個面使用的技術就是立方體紋理對映技術。建立用於環境對映的立方體紋理 1.提供一張具有特殊布局的紋理,類似於立方體展開圖的交叉布局 全景布局等。我們需要將texturetype設定為cubemap 2.使用camera.r...