仿dota2渲染--shader常见贴图含义(直观展示)

cs 复制代码
    Properties {
        [Header(Texture)]
        _MainTex        ("RGB:颜色 A:透贴", 2D)           = "white"{}
        _NormTex        ("RGB:法线贴图", 2D)              = "bump" {}
        _MaskTex        ("R:高光强度 G:边缘光强度 B:高光染色 A:高光次幂",2D)  ="black"{}
        _MetalnessTex   ("金属度遮罩",2D)                 ="black"{}
        _EmissionMask   ("自发光遮罩",2D)                 ="black"{}
        _DiffWarpTex    ("颜色Warp图",2D)                 ="gray"{}
        _FresWarpTex    ("菲涅尔Warp图",2D)               ="gray"{}
        _CubeMap        ("环境图",Cube)                   ="_Skybox"{}

    }

1 基础颜色

cs 复制代码
half3 baseCol = var_MainTex.rgb;

2 透明贴图(黑透白不透)

cs 复制代码
half  opacity = var_MainTex.a;

3 高光强度

cs 复制代码
half  specInt = var_MaskTex.r;

4 轮廓光强度

很像AO,但又处理的比较剧烈,叠加了一些纹理信息

cs 复制代码
half  rimInt = var_MaskTex.g;

5 高光染色

越黑,染的色越多;越白,染的色越少。

金属部分希望染的很多。

cs 复制代码
half  specTint = var_MaskTex.b;

6 高光次幂 / 光滑度

金属稍微粗糙,想让他的高光扩大。

布料粗糙

皮革牙齿光滑

cs 复制代码
half  specPow = var_MaskTex.a;

7 金属度

越白,金属度越高,越黑,金属度越低

cs 复制代码
half  metallic = var_MetalnessTex.r;

8 自发光

cs 复制代码
half  emitInt = var_EmissionMask.r;

9 菲涅尔项

cs 复制代码
half3 var_FresWarpTex   = tex2D(_FresWarpTex, ndotv);
half3 fresWarp = var_FresWarpTex;

10 菲涅尔项-颜色

理论上。这个图会先乘以一个颜色,详情见官方

cs 复制代码
return fresWarp.r;

11 菲涅尔项-边缘光

边缘光很实,过度比较硬

cs 复制代码
return fresWarp.g;

12 菲涅尔-高光

除了cubemap的高光,还想加上fresnel样子的高光

cs 复制代码
return fresWarp.b;

13 环境球

这个光照成分对于金属很重要

cs 复制代码
half3 var_CubeMap = texCUBElod(_CubeMap, float4(vrDirWS, lerp(8.0, 0.0, var_MaskTex.a))).rgb ;
half3 cubemap = var_CubeMap;
return fixed4(cubemap,1);

14 投影

cs 复制代码
half shadow = LIGHT_ATTENUATION(i);

15 漫反射RampTex

cs 复制代码
uniform sampler2D _DiffWarpTex;   uniform float4 _DiffWarpTex_ST;
half3 var_DiffWarpTex   = tex2D(_DiffWarpTex,TRANSFORM_TEX(half2(ndotl,0.5), _DiffWarpTex));
half3 diffWarp = var_DiffWarpTex;
return fixed4(diffWarp,1);

Lambert

半Lambert

相关推荐
悦人楼18 小时前
C4D实战技巧:域与顶点贴图在布料动力学中详细解析附资源
贴图·c4d实战技巧·域与顶点贴图·布料动力学中详细解析
Chloe_lll5 天前
threejs(五)纹理贴图、顶点UV坐标
javascript·贴图·uv
da_vinci_x6 天前
告别“手绘序列帧”:Substance Designer中的程序化VFX材质工作流
游戏·材质·贴图·技术美术·游戏美术·vfx·substance designer
Min;22 天前
cesium-kit:让 Cesium 开发像写 UI 组件一样简单
javascript·vscode·计算机视觉·3d·几何学·贴图
Duo1J1 个月前
【OpenGL】LearnOpenGL学习笔记25 - 法线贴图 NormalMap
笔记·学习·图形渲染·贴图·着色器
Duo1J1 个月前
【OpenGL】LearnOpenGL学习笔记26 - 视差贴图 Parallax Map
笔记·学习·图形渲染·贴图·着色器
da_vinci_x1 个月前
游戏UI告别“贴图”时代:用Adobe XD构建“活”的设计系统
游戏·ui·材质·贴图·游戏策划·游戏美术·pbr
AndrewHZ1 个月前
【3D算法技术】blender中,在曲面上如何进行贴图?
算法·3d·blender·贴图·三维建模·三维重建·pcg
在下胡三汉2 个月前
3dmax烘培插件3dmax法线贴图烘焙教程glb和gltf元宇宙灯光效果图烘焙烘焙光影贴图支持VR渲染器
vr·贴图
二川bro2 个月前
第21节:环境贴图与PBR材质升级——构建电影级真实感渲染
材质·贴图