Unity | Shader基础知识(番外:了解内置Shader-Standard<一>)

目录

前言

一、什么是Standard

二、Standard参数详解

1.了解着色前

2. 着色拆分

3.参数RenderingMode

4.参数Albedo 

5.参数Metallic

三、作者的话


前言

有粉丝给我说,感觉自己内部自带的Shader都还不知道怎么用,希望我讲一下内置Shader。

那我们就从Standard开始吧!~

一、什么是Standard

standard是标准着色器,但标准着色器是什么意思?

官方解释:Unity 标准着色器是一个包含一整套功能的内置着色器。此着色器可用于渲染“真实世界”的对象,如石头、木头、玻璃、塑料和金属,并支持各种着色器类型和组合。

通俗解释:出去买衣服,有没有见过均码?什么叫均码?就是大部分人都能穿的衣服。标准着色器的意义也是在此,不能帮助你做惊才艳艳的东西,但一些普通的着色,基本都是可以用的。

二、Standard参数详解

我们一起详细了解一下,每一个参数,代表什么,怎么去应用。

1.了解着色前

我们首先了解一下,为什么要用着色器着色,如果不着色会怎么样。

(如图1和图二所示)相信不用我多讲,你们就懂了。

图1 纯模型
图2 模型着色后

接下来,我们就一起用standard着色器上色吧~~ 

2. 着色拆分

这个模型在给到你的时候,就设置的可以添加两个材质,一个是盖子的材质,一个是瓶子的材质。(如图3所示)

图3 两个材质
3.参数RenderingMode

RenderingMode,叫渲染模式,这个是standard的第一个参数,里面有四个选项。

图4 RenderingMode

以下我放了一些对比图,帮助我们看出来材质的位置,和一些功能。 

  • Opaque - 不透明模式,用于不透明普通固体(盖子明显用这个,如图5、图6所示)

    图5 删除材质前
    图6 删除材质后
  • Cutout - 镂空模式,用在又有透明又有不透明,且不需要半透明过度的情况。(球网的网是不透明绳子,中间是透明空气,没有过度阶段,如图7、图8所示) 

图7 Cutout模式下的球网
图8 Opaque模式下的球网
  • Transparent - 透明模式,完全透明(如玻璃窗)

  • Fade - 淡入淡出模式,用在从不透明到透明时,用半透明过度的情况(例:手机屏幕里是不透明的,屏幕是透明的)

难点解析之区分以下三个:

cutout:   只有100%透明和完全不透明(和别的比,会有明显边界线,如球网,如图9所示)

图9 cutout和Fade切换

Transparent:        全部都变100%透明,哪怕是你正常的固体(如图10所示)

图10 Opaque和Transparent切换

Fade:        如果贴图有设置透明度的变化,比如50%透明,80%透明,可以显示出来(如图11、图12所示)

图11 Fade模式
图12 transparent模式
4.参数Albedo 

Albedo:可以简单理解为涂色 (如图13、图14所示)

图13 Albedo
图14 有无贴图的对比盖子

 没有贴图并不是没有颜色了,还可以改颜色。

图15 没有贴图只调颜色

注意:这里贴图的透明度设置,就是上文RenderingMode中是否透明的依据

例:Fade模式下,纯红色的瓶盖,受透明度影响(如图16所示)

图16 透明瓶盖

 提示:想知道贴图有没有透明部分,只需要看图片预览里有没有A,如果有,是怎么分配的。(如图17所示)

图17 透明贴图
5.参数Metallic

Metallic:金属性(如图18所示)

图18 金属性

如果从字面理解,就是,有多像金属,但up觉得这个解释有点好笑,因为up不知道金属应该是什么样,这个概念对up来说,有点抽象。在查阅了资料后,这里给出up自己的解释。

物体有两个颜色组成:1.自己的颜色,2.外界的颜色反射给物体的

自己的颜色就是上面那个Albedo ,外界的颜色就是,你把它当成镜子,肯定能反射很多东西,这些东西的颜色,就是外在的颜色。

他们的比例是多少,就是金属性

如果金属性是0,那就一点都不反射外面的颜色,全部由Albedo来上色

如果金属性是1,那就全部用反射的颜色。

那如果是其他的,就按照比例混到一起,最后是什么样就是什么样。


 金属性里还有一个参数smoothness:光滑度

为什么会多一个参数呢?因为我们说了,要反射颜色。

但是,反射颜色,可以有很多种反射,镜面反射,漫反射等等(如图19所示)。。。

图19 粗糙度不同的反射

即使金属性拉满,也就是没有物体自己的颜色了,只反射别人 = 镜子。那坑坑洼洼的镜子和光滑的镜子,反射的还不一样呢。粗糙的金属。(如图20、图21所示)

图20 光滑的镜子
图21 粗糙的镜子

总结:金属度是自己颜色和反射颜色混合的比例,但因为反射的颜色和光滑度有关,所以这里也可需要调节光滑度。 


金属度贴图:

如果用上面的滑动条来调,我们整个模型金属度就是一个种类。

那我们做东西的时候,有些地方是金属,有些地方不是金属,怎么办?

答:我们需要用金属度贴图。

在做金属度贴图的时候,我们需要控制两个值,一个Metallic一个是Smoothness,这两个刚才都单独讲过了。图片一共可以有RGBA四个信息,一般Metallic用R通道表示Smoothness用A通道表示。


备注:

底下还一个Source。(如图22所示)

图22 Source

 Source是用来控制Smoothness的,前面说到,我们的Smoothness一般都存在透明通道,有时我们也会用Albedo贴图的透明通道存。这时候我们就可以选一下,你打算用哪个做smoothness的值。

三、作者的话

这章就到这里啦,我们下一集再见~感谢大家的点赞,收藏,关注~真心地哦~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/694742.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker Desktop - WSL distro terminated abruptly

打开 PowerShell 或以管理员身份运行的命令提示符。运行以下命令以列出已安装的 WSL 分发&#xff1a; wsl --list 运行以下命令以注销 Docker 相关的分发 wsl --unregister <distro_name> 将<distro_name>替换为实际的 Docker 相关分发的名称。将<distro_…

[书生·浦语大模型实战营]——LMDeploy 量化部署 LLM 实践

1.基础作业 1.1配置 LMDeploy 运行环境 创建开发机 创建新的开发机&#xff0c;选择镜像Cuda12.2-conda&#xff1b;选择10% A100*1GPU&#xff1b;点击“立即创建”。注意请不要选择Cuda11.7-conda的镜像&#xff0c;新版本的lmdeploy会出现兼容性问题。其他和之前一样&…

智能组网节点是什么?

智能组网节点是一种用于解决复杂网络环境下远程连接问题的关键技术。它是一种通过智能化的方式&#xff0c;在任何网络环境下实现不同地区之间快速组建局域网的解决方案。其中&#xff0c;【天联】组网就是一款优秀的智能组网节点产品&#xff0c;是北京金万维科技有限公司自主…

苍穹外卖笔记-07-菜品管理-增加、删除、修改、查询分页还有菜品起售或停售状态

菜品管理 1 新增菜品1.1 需求分析与设计1.2 代码开发文件上传新增菜品实现 1.3 功能测试 2 菜品分页查询2.1 需求分析和设计2.2 代码开发设计DTO类设计VO类Controller层Service层Mapper层 2.3 功能测试 3 删除菜品3.1 需求分析和设计3.2 代码开发Controller层Service层Mapper层…

Unity Standard shader 修改(增加本地坐标裁剪)

本想随便找一个裁剪的shader&#xff0c;可无奈的是没找到一个shader符合要求&#xff0c;美术制作的场景都是用的都标准的着色器他们不在乎你的功能逻辑需求&#xff0c;他们只关心场景的表现&#xff0c;那又找不到和unity标准着色器表现一样的shader 1.通过贴图的透明通道做…

【set】集合总结

一、Set Set集合是Collection的子接口,代表一种集合,此种集合是元素不重复. 有两个常用实现类 HashSet 是元素不重复,无序,主要是指遍历顺序和插入顺序不一致 TreeSet 是元素不重复,排序 LinkedHashSet不常用 二、HashSet 1.1 介绍 HashSet是Set的实现类 底层是由哈希表实…

区块链(Blockchain)调查研究(一)

文章目录 1. 区块链是什么&#xff1f;2. 区块链分类和特点3. 区块链核心关键技术3.1 共识机制3.2 密码学技术3.4 分布式存储3.5 智能合约 4. 区块链未来发展趋势5. 区块链能做什么、不能做什么&#xff1f;5.1 第一部分5.2 第二部分5.3 第三部分&#xff08;结论&#xff09; …

④-1单细胞学习-cellchat单数据代码补充版

目录 1&#xff0c;数据输入及处理 ①载入包和数据 ②CellChat输入数据准备 ③构建CellChat对象 ④数据预处理 2&#xff0c;细胞通讯预测 ①计算细胞通讯概率 ②提取配受体对细胞通讯结果表 ③提取信号通路水平的细胞通讯表 ④细胞互作关系可视化 1&#xff09;细胞…

java线程相关知识点

Java多线程涉及以下几个关键点 1.线程生命周期&#xff1a;理解线程从创建到销毁的各个阶段&#xff0c;包括新建、运行、阻塞、等待、计时等待和终止。 2.线程同步&#xff1a;掌握如何使用synchronized关键字和Lock接口来同步代码&#xff0c;防止数据竞争和死锁。 3.线程间通…

csrf与xss差别 别在弄乱了 直接靶场实操pikachu的csrf题 token绕过可以吗???

我们现在来说说这2个之间的关系&#xff0c;因为昨天的我也没有弄清楚这2者的关系&#xff0c;总感觉迷迷糊糊的。 xss这个漏洞是大家并不怎么陌生&#xff0c;导致xss漏洞的产生是服务器没有对用户提交数据过滤不严格&#xff0c;导致浏览器把用户输入的当作js代码返回客户端…

HCIA--NAT地址转换(复习)

先交换后路由&#xff1a; 1&#xff1a;在交换机上创建vlan&#xff0c;进入接口划分vlan&#xff0c;接着在交换机连接路由器的接口上建立trunk干道 2&#xff1a;在路由器上&#xff0c;先配置物理接口IP&#xff0c;接着在路由器上创建两个子接口&#xff0c;将建立的vla…

Fences 5 激活码 - 电脑桌面整理软件

提起桌面整理&#xff0c;经典老牌工具 Fences 必有一席之地&#xff0c;Stardock 发布了最新的 Fences 5 版本。 可以将文件和图标归类放入各个栅栏分区&#xff0c;并支持文件夹展开至桌面、分区置顶、淡化隐藏图标等功能&#xff0c;能让你的桌面焕然一新&#xff0c;不再混…

请求 响应

在web的前后端分离开发过程中&#xff0c;前端发送请求给后端&#xff0c;后端接收请求&#xff0c;响应数据给前端 请求 前端发送数据进行请求 简单参数 原始方式 在原始的web程序中&#xff0c;获取请求参数&#xff0c;需要通过HttpServletRequest 对象手动获取。 代码…

数据库四种隔离等级

持续更新以及完善中… 数据库事务隔离 首先&#xff0c;为什么要有事务隔离呢&#xff1f; 在单线程下&#xff0c;没什么大碍&#xff0c;但是我们想要提高效率&#xff0c;采用多线程并发时&#xff0c;便会出现一些问题。 **下面的问题一定要当作一个事务来看待&#xf…

vscode中执行python语句dir(torch)不返回结果

输入半天&#xff0c;发现在IDLE运行后的shell界面输入语句就会返回一大串。但是在vscode中老是不返回值。 结果恍然发现这没加print&#xff08;&#xff09;。 无语惨了。 家人们&#xff0c;这是python&#xff0c;而不是matlab。思维还没转换过来&#xff0c;笑死

电影制作中的版本控制:Perforce Helix Core帮助某电影短片避免灾难性文件损坏,简化艺术资产管理

Zubaida Nila是来自马来西亚的一名视觉特效师和虚拟制作研究员&#xff0c;她参加了Epic Games的一个为期六周的虚拟培训和指导项目——女性创作者计划。该计划提供了虚幻引擎工作流程的实践经验以及其他课程。Zubaida希望从中获得更多关于虚幻引擎的灯光、后期处理和特效技能方…

279 基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计

基于matlab的粒子群集法对铁路电能质量控制系统的容量避行优化设计。计算出满足功率因素、电压不平衡度等电能指标的条件下。RPC所需要的补偿功率。求得所需最小的系统客量。该设计能快速计算出符合系统设定指标的各项最优补偿功率。并通过sumulink份真。检验设计参数的准确性。…

Pytorch 实现目标检测二(Pytorch 24)

一 实例操作目标检测 下面通过一个具体的例子来说明锚框标签。我们已经为加载图像中的狗和猫定义了真实边界框&#xff0c;其中第一个 元素是类别&#xff08;0代表狗&#xff0c;1代表猫&#xff09;&#xff0c;其余四个元素是左上角和右下角的(x, y)轴坐标&#xff08;范围…

极域卸载不干净导致无法重新安装问题:独家解决方案

文章目录 一、问题二、解决1.网上常规方法2.本贴特殊之处 三、致谢 一、问题 极域卸载不干净&#xff0c;导致无法重新安装。 二、解决 1.网上常规方法 1.regedit命令注册表删除 topdomain、mythware、{5FB4EEDF-6A79-45C3-B049-EF327CA03FCD} 2.删除极域对应tmp文件 网上…

稀疏高效扩散模型:推动扩散模型的部署与应用

数据驱动的世界中&#xff0c;生成模型扮演着至关重要的角色&#xff0c;尤其是在需要创建逼真样本的任务中。扩散模型&#xff08;Diffusion Models, DM&#xff09;&#xff0c;以其卓越的样本质量和广泛的模式覆盖能力&#xff0c;已经成为众多数据生成任务的首选。然而&…