unity 默认渲染管线材质球的材质通道,材质球的材质通道

标准渲染管线------材质球的材质通道

复制代码
文档,与内容无关,是介绍材质球的属性的。
https://docs.unity3d.com/2022.1/Documentation/Manual/StandardShaderMaterialParameters.html

游戏资源中常见的贴图类型
https://zhuanlan.zhihu.com/p/260973533
十大贴图常用贴图介绍 Shader的诞生 
https://www.bilibili.com/read/cv7860546/
『材质贴图』正确打开方式 ,只需要听听得懂的地方就行了
https://www.bilibili.com/video/BV1j4411x7PG/

可能用的,如何制作贴图
https://blog.csdn.net/GoodCooking/article/details/142669974

在Unity的标准渲染管线中,使用默认材质(Standard Material)和默认的Shader(Standard Shader)时,贴图的命名和对应关系如下:

贴图类型 命名后缀 对应Shader属性 文件后缀
漫反射贴图(Albedo Map) _MainTex _MainTex *_diffuse.png*_color.png 或者*_albedo.png
金属度贴图(Metallic Map) _MetallicGlossMap _MetallicGlossMap *_metallic.png*_Gloss.png*_metalness.png
粗糙度贴图(Roughness Map) _MetallicGlossMap _MetallicGlossMap *_roughness.pngsmoothness.png
法线贴图(Normal Map) _BumpMap _BumpMap *_normal.png
高度贴图(Height Map) _ParallaxMap _ParallaxMap *_height.png
环境光遮蔽贴图(Ambient Occlusion Map) _OcclusionMap _OcclusionMap *_ao.png*_ambientocclusion.png
细节遮罩贴图(Detail Mask) _DetailMask _DetailMask *_detail_mask.png
自发光贴图(Emissive Map) _EmissionMap _EmissionMap *_emissive.png
细节漫反射贴图(Detail Albedo x2) _DetailAlbedoMap _DetailAlbedoMap *_detail_albedo.png
贴图类型 命名后缀 对应Shader属性 文件后缀
高光贴图(Specular Map) _SpecGlossMap _SpecGlossMap *_specular.png
透明度贴图(Opacity Map) _MainTex _MainTex (Alpha通道) *_opacity.png
环境光遮蔽贴图(Ambient Occlusion Map) _OcclusionMap _OcclusionMap *_ao.png
置换贴图(Displacement Map) _ParallaxMap _ParallaxMap *_displacement.png*_height.png
凹凸贴图(Bump Map) _BumpMap _BumpMap *_bump.png
边缘贴图(Edge Map) 不适用 不适用 不适用
环境贴图(Environment Map) 不适用 不适用 不适用
折射贴图(Refraction Map) 不适用 不适用 不适用

不适用意思的意思是:Unity的标准Shader不直接支持

形变通道:

凹凸:会改变光线在模型表面的凹凸的感觉,但是不会改变物体的结构

法线:会改变光线在模型表面的凹凸的感觉,不会改变物体的结构,

区别:凹凸是通过灰度图片去描述凹凸的程度,法线是通过法线贴图描述物体的凹凸程度

置换:可以使物体表面产生凹凸的通道,不同于凹凸和法线,置换会改变模型的网格,但是不会修改原来的网格。

置换会占很多内存,且拖慢渲染速度!

有法线先用法线。

颜色信息:漫反射

反射信息:反射,光泽度

高度信息:法线,凹凸,置换

如何使用代码修改材质球的某个属性

使用代码方式访问的方式:

找到要修改的属性,比如颜色,找到之后确定属性的类型,然后Set 类型,

比如设置金属度,找到:Metallic,类型是range,就设置float ,参数中的strng 就是:_metallc 数值就是0-1.

复制代码
// 设置金属度

     mat.SetFloat("_Metallic", 1.0f); 
相关推荐
zyh______19 小时前
关于unity的序列化
unity·游戏引擎
weixin_4093831219 小时前
godot碰撞测试的学习
学习·游戏引擎·godot
电子云与长程纠缠19 小时前
Godot学习06 - AnimationPlayer内置动画
学习·游戏引擎·godot
星夜泊客21 小时前
C# : 引用类型都存在堆上吗
unity·c#
点量云实时渲染-小芹21 小时前
Unity模型数字孪生虚拟仿真webgl推流卡实时云渲染推流
unity·webgl·数字孪生·实时云渲染·虚拟仿真·云推流
mxwin1 天前
Unity Shader 齐次坐标与透视除法理解 SV_POSITION 的 w 分量
unity·游戏引擎·shader
NPUQS1 天前
【Unity 3D学习】Unity 与 Python 互通入门:点击按钮调用 Python(超简单示例)
学习·3d·unity
电子云与长程纠缠2 天前
Godot学习05 - 播放与分离FBX动画
学习·游戏引擎·godot
小贺儿开发2 天前
【Arduino与Unity交互探究】03 超声波测距模块
unity·arduino·串口通信·传感器·videoplayer·硬件交互
weixin_409383122 天前
godot等轴视角tilemaplayer的学习 isocheric的素材xy大小怎么调
学习·游戏引擎·godot