粉丝257获赞1009

各位小伙伴大家好,今天开始我们一起学习优异舞,也就是虚幻引擎舞,本教程是根据油管上大神制作的教程改变而成, 虽然优异舞教程很多,但是大部分都是英文的,如果有中文的基本上也是机器翻译,根本没法使用,因此我改编死教程,希望可以帮助到和我一样英语不好又想学习优异舞的小伙伴。 首先简单介绍一下本教程,本教程的最终目的就是教会大家制作我们正看到的这样一个场景。 我们会从下载安装优异五开始,教大家如何在三 d 世界中进行导航移动,包括移动对象,如何创建材质并导入三 d 模型,如何雕刻风景并绘制树叶,如何下载免费免费的素材。最后会简要介绍如何 使用蓝图对游戏进行编程。下面我就开始带大家一起下载安装优异舞。首先我们先打开自己的搜索引擎,然后输入优异物官网, 点击搜索好我们看到的第一个虚幻引擎,最强大的实施三 d 创作平台,这个就是点击进入。好,我们现在看到的就是虚幻引擎五的官网,大家可以看一下,右上角有一个下载按钮,大家点击一下, 然后我们下载虚幻引擎五的话就在这里边下载。首先我们需要下载他的启动器,点击下载启动器啊,下载完之后我们找到这个启动器,双击进行安装就可以啊,当然我这边安装过了,所以 就不需要安装,大家没安装的就安装一下。安装完之后我们点击桌面上的快捷方式, 进来之后应该会提示大家首先进行登录,那我们可以根据自己的实际情况来进行登录,像我的话是用的 ipad 账号,大家可以自己注册一下。登录之后应该是这个界面,大家看左侧,我们点击这个虚幻引擎, 进来之后上边有新闻视力修换商城库,我们点击一下库,在引擎版本这选择五点零点一,点击安装 过程可能会有点慢,大家耐心等待就行。安装完成之后,你这个隐形版本下边就会出现五点零点一,然后我们点击启动旁边的下拉箭头, 点击创建快捷方式,这样你桌面上就会有一个 优异舞的快捷方式,我们平时进优异舞的时候直接点这个快捷方式就可以了,因为如果没有网的时候,这个启动器是打不开的,所以我们直接打开之后,我们大家可以看到左侧有最近打开的项目, 但是如果你是第一次进,有可能这里边没有,然后下边有游戏、影视、建筑、汽车,我们可以在这选择对应的模板来进行创建自己的项目。下面我们就先从创建一个空白的模板开始,我们选择游戏右侧选择空白,下边有项目位置,选择好位置, 他默认应该是 c 盘,我不建议大家保存在 c 盘,因为项目非常占用内存, 我建议大家可以保存在自己啊空间比较大的硬盘上面。大家看右侧项目默认设置里边蓝图和 c 加加,我们选择蓝图目标平台,选桌面就可以,质量预设 保持默认初学者内容包勾选上项目名称,自己可以命名一下 我的第一个项目,好了,大家点击创建就可以,进来之后就是这样一个界面,今天先讲这些,明天我们再继续,谢谢大家。



大家好,我是由于我兔子。今天我们来对上一期呃地形上的知识进行一个升解,上一期我们用红绿蓝的方式 跟大家讲述的地形,今天我们来说一下如何代入啊。我们首先找到窗口,打开我们的位置,然后在主页下面找到 surface, 然后下拉,再找到 mos, 嗯,里面会有一些表面材质啊,包括一些青苔的,呃,岩石的是吧?我这边下一个岩石层,然后再下一个,嗯,是类似于草地和青苔的, 最后再下一个,嗯,找一个特殊一点的吧,找个偏黄色的啊,封土层的样子,好吧,嗯,我们来下载这三个啊。 好的,然后我们已经将啊这三个材质添加到我们的引擎里面去了啊,这个过程我就剪掉了,今天网速不是特别好啊。 然后我们检查一下他会有一个材质球。之后呢,我也附带了三张贴图,对吧?一张颜色,一张发现,一张复合贴图 啊,然后这三张我看一下他的通道里面都有什么,一张高光,一张粗糙,还有一张啊, 类似于 ao 的啊,三张贴图啊,应该都是这么摆放的啊。我们再观察一下另外的一张复合贴图啊,我点击红通道,哎,再看绿通道,最后再看蓝通道,嗯,是吧,就是这个样子啊,三张贴图。好的,然后呢,我们来查 尝试着啊,在空白处出现出一个材质,哎,随便吧,就这边空白处右键材质啊,就叫地形 好的重新打开它。然后呢,我们需要将我们的就拿这个青草吧 这三张图拖拽到我们的材质编辑器里面,双击打开。之后呢,我们需要利用上期的知识,是不是搜索 lay 二,然后我们找到 layer, blood? 对的,然后同样的出现出三个层啊,上期的知识还记得吧,改个名字, 连到我们的基础颜色上,但是大家会发现个问题啊, 我直接将我的贴图连接在这个嗯烂而不烂的混合层里面呢,他是可以连的。那么我的发现怎么连呢?我总不能连到第二层里面去吧,这是非常不对的啊 啊,这个时候我们需要介绍一个新的节点啊,我们需要在空白处右键搜索 m a k e 啊,下面会有一个材质属性 哎,我们点击他,哎,他会出现一个戴着绿帽子的啊节点啊,这个呢,就是将我们的材质属性重新区分一下啊,重新设置一下,这样的话,我们就是不是可以对我们的啊层衣进行一个完整的材质属性变 音节,那么我的啊,赖而不烂的这边呢,连到我们的材质结果节点上,但是呢,下面的一些东西又多了,因为我根本就用不上,对吧?那这个时候呢,我就需要点击我的地形材质,将我的材质下面的 细节面板下的啊,使用材质属性勾选上,哎,搁上之后呢,我这个地形材质就变成材质属性了,我这样再连,哎,他就不会出问题啊,我这边可以尝试一下 将我们的颜色哎,这样连上,将我的发线啊连到发线上,然后将这张复合贴图呢,我们来观察一下啊,他的红通道 啊,是高光,我们连到高光上 啊, spigola 对吧?然后绿铜 donna rafness, 蓝铜 donna 属于 ao 啊啊,这样连一下,同时呢,哎,我们算了,我们就先这样测试一下,好吧,我们点击应用, 然后呢将我们刚刚创建好的材质地形材质丢到我们的啊地形上面去,他会提示需要进行一个着色啊,这边的地貌层已经设置过了啊啊就不需要再重新设置了,哎,大家会发现啊,哎,我的地形成功的出现在了地面上啊, 只不过是有一些小问题,这个问题呢就是因为它的重复率太大了,对吧,我们还需要另外的节点来调节一下,比如说我们的按键盘上的啊优键啊,这个太 nice card 这个也是可以调节的,但是我们地形上呢有一个额外的节点,我们在空白处用电搜索 card 这边会有一个地形啊烂的 space layer cars, 这个戴着绿帽子的,他跟我们啊正常调节截图的时候这个 tax card 有什么区别呢啊这个节点啊,他是啊如果说你用乘法的话呢,他会越乘越大,越乘越大,他对我们地形上是不适合的,所以说他额外除了一个烂了 spacecars 啊这个节点呢,我们应该用除发点为后面出右键搜索一个除法 dy 这样的话随着我的数值调节的越来越大,他就会对我的纹理所放的呃越来越小啊,我们来测试一下, 用一个除法连接,然后就叫 uv 哎,然后默认的给他调节微。然后呢我们来点击一下应用啊 啊将这个材质变形器最小化,我们观察一下我们的地面,我将我的长量转换为参数的长量哎调大之后 哎大家会发现啊我的纹理变得正常了些许,在我的视角下对吧?那么如果说啊,我用乘法呢,大家可以观察一下变化,我将我的书法节点删掉,这边按住 m 键,对吧,出现出一个乘法节点,然后同样的将我的三张图连在一起, 然后这边连到我们的转换为参数的长量,将同样的 uv 分为一, 点击应用,我们来观察一下变化,这边我同样的将我的数值调大,哎,大家会发现啊, 我的地面重复率呢,它会变得越来越大,越来越大,越来越大,那么这个时候呢,我只能将它调小,调节为点滴,它才会回复到一个相对应舒服的一个啊样子呀,所以说这就是我们的 land space house 乘法和除法的区别。 好了,有了这一套的基础,里面呢,我们就可以将我们刚刚下载的其他的两个材质带入到我们的地形材质里面去啊, 我将这个啊,之前写好的第一层赖尔一,第一层向上挪一挪,同时呢,找到我们的延时层啊,将三张截图放到里面去,对吧?嗯,哎, 是两张,少拖了一张啊,将颜色涂拖到里面来,然后呢,我们尝试做一下第二层, 对吧,空白处右键搜索 make make, 找到材质属性啊,将这边连到我们的第二层上面去,同样的颜色层啊,高光层,粗糙层,还有我们的 ao。 这边再连接一下,发现,那么将我们这一套设置复制过来, ctrl cctrl v 啊,然后连接到我们的 uv 上, 然后这边 us, 我改个名吧,叫岩石,哎,因为我们的才是三叔,不允许重名,对吧?哎,对,这样的话 就不会出问题了。然后呢,再加我们的第三层,呃,偏黄的颜色的这三张图同样的拖到我们的材质编辑器里面做一个同类型的操作啊, 向下拉,向下拉,对吧。颜色啊,发现还有我们的复合贴图, 同样的复制 make 点到我们的第三层上面去啊,可能有一点乱了,做到这里的时候节点就啊之前教过大家如何整理节点对吧。嗯,高光粗糙啊。 l 同样的发现 拿往复制上面一层连接连接这个过程可能有点痛苦啊,但是想达到一个基础效果就是跑不掉的啊,然后就叫封图吧封图层。 好的,我们点击下应用,然后将他们三个的默认数值啊都调回为一吧,调回为一吧。嗯, 因为之前我做惩罚的时候是不是忘了调节呀。好的,这个时候我们确定一下, 在我们的啊地形模式下呢地形模式下呢,找到绘制选项啊,这三个层的材质 他会提示着一下色,着色之后呢我们就可以对他进行编辑绘制了,我们尝试着绘制一笔啊,哎,发现我的封图层没有问题,只不过是缺乏了一个 uv 的小姐啊。延时层这是然后封图层再接着画一下,接着画一下,看到没, 地面上出现了三种颜色,当然为了更真实一点呢,我们这边会回到我们的啊,选择模式下将我们的 uv 统一的调节一下,比如说调一调节到一个整体比较舒服的 uv 啊,统一调到十 啊。我这边为什么用乘法了,抱歉啊这边那就点一吧啊,乘法和书法大家自己试用着用吧,我这边懒得再换除法了,同样的也没调节他的那个材质实力啊,就是做一个基基础的演示, 这样之后呢,大家会发现我的地面岩石、风土层,还有我的草地层都是存在的啊。嗯,就是这样的小知识,这就是今天的内容啊,感谢大家观看。

大家好,最近我在游戏里做了一些动态的全息屏幕,比如这块屏幕就有三重效果,屏幕内容会周期性变色,同时背景呢会有城市建筑的移动,当然还有模拟小块屏幕拼接的凹凸纵深感。 关掉材质,可以看到屏幕就是一个拉伸过的立方体,它呈现的效果完全基于材质。那么接下来我就教大家如何制作 刚才的屏幕凹凸用到了 bump offset 这个凹凸偏移节点,变色的屏幕用到了 lip 限行差值节点。屏幕移动的城市背景用到了 piner 移动节点,当然还需要用到五个纹理 实现。屏幕拼接会用到法线金属度还有粗糙度的贴图。移动的背景用一张城市背景贴图,最后屏幕显示的区域还有显示的内容都是通过一张屏幕贴图来实现的。给大家看一下我准备好的贴图。 制作凹凸效果的这几张贴图呢,就是网上随便下一个网格材质,比如这个网站就可以下很多免费材质。 我下的这个网格材质解压完呢,我们自己有背景贴图,所以把这个慢反射的背景图直接删掉。剩下三张图片发现金属度还有粗糙度都可以直接用。我们进入息幻引擎,右键添加一个材质,今天是演示,所以就不创建材质实力了,给他命个名,我们就直接修改, 把准备好的五张图拖进来屏幕内容这张图检查一下,看它的背景是否透明,如果没有识别到它的透明背景的话,我们后面这个遮罩是做不了的。现在呢,给大家边讲边做我们的材质,先把预览模型换成一个片状,方便演示。 按住 t 和左键快速照出纹理节点。左下角改一下,纹理图改成我们的城市背景,将这个纹理连接到基础色上。现在将模型直接拖到屏幕的模型上,应用一下纹理,直接照出纹理坐标节点。 想要持续移动,需要用到 panner 节点,由于中呢很多效果,比如说河流流动啊,岩浆传送带都是可以用 panner 做的。这个节点呢,给它传入一个纹理的 u v 坐标,再设置下它的 x 轴和 y 轴的速度就可以运作了。 搜索 paner, 将 x 轴的速度设置为一,大家可以看看效果。速度有点快是吧,咱们设置为零点一就好了,然后再给它添加一个反方向,加个符号就可以。现在我们屏幕背景的城市图片缓慢移动已经做好了,扩展一下,如果你想让物品旋转,可以搜索 rotation, 这个节点和 pano 的 用法一样。 背景做好了,咱们现在做物品表面的深度,把网格,材质的金属度,法线还有粗糙度三张图咱们直接拖进来。 好的,现在给大家介绍的这个 bump offset 节点呢,就是一个我们经常用来模拟表面深度的节点,一般需要传入纹理的高度图,黑色呢表示凹陷,白色表示凸起。 没有高度图,咱们直接用金属贴图或者粗糙贴图都可以啊,看你选择。简单来说,应用了这个节点后,物体从各个方向看,他都会有一个纵深感,他的好处就是通过图片来模拟高度啊,不用增加模型的几何面数,可以和法线贴图互补,还是一个很好用的节点, 个偏移的深度呢,有一个参数是可以调整的,话不多说,直接演示,有高度图的话就用高度图,没有的话咱们退一步啊,用金属贴图也是可以的,哎,大家可以看一下金属贴图的每个通道的颜色,有些复合贴图啊,他的 b 通道可能就会存高度图,一般这个单独的金属贴图耳机 b 三个通道存储的内容是一样的, 咱们选哪个通道都可以啊。搜索 bump offset 节点,注意一定要连接到它的高度引角上。大家看下面这个参数,默认是零点零五,表示的是深度效果的强弱啊,越接近零效果越弱。咱们按 u 和左键照出一个纹理坐标出来,将这个 u v 连接到 bump offset 节点上, 接着节点的输出连接到法线贴图的 u v 上,法线贴图的输出再连接到组材质节点的法线上。我刚把基础色关了,方便大家观察。左边是刚连好的,右边是只有法线效果的材质,左边在不同的视角看会有一些深度的变化,但是这个变化的强度呢,需要修改这个参数值, 现在网格有点太密了,我们在 u v 里把它的展开数量改小一点,我们把横纵两个方向的大小都改为二分之一,我夸张一点,把这个深度参数改为零点四,给大家看一下效果,大家自己改,不要超过零点一啊,因为会有很大的积变。我在场景中加了一个灯,大家就可以看到它这个深度已经起到了一些变化。 一、深度产生的这个 u v 值啊,可以连接到很多贴图上,我们现在呢就是把粗糙度也连接上了,想要改背景颜色的话,也可以将贴图连接一个乘法节点。 颜色节点是一个三维节点啊,所以我们按数字三加左键就可以照出来,我们就可以修改颜色。好的,最后一步,咱们终于开始设置屏幕的区域还有显示的内容了。先把贴图拖进来,点击空白或者主材质节点,找到左侧的材质模式,将模式设置为 mask 的, 也就是遮罩, 这样主材质节点上这个不透明遮罩这个节点就可以使用了。然后我们将屏幕显示贴图的阿尔法通道连接到不透明遮罩这个节点上。好的,那么屏幕的显示区域就已经被裁剪好了。接下来给大家说一下内容自发光颜色变化的效果怎么做。用到 lip, 也就是混合叉 h 节点,它混合两个颜色, 只要两个颜色的权重一直在变化,那这个整个颜色它就是变化的,所以我们要修改这个 lip 节点的一个是动态过度,也就是 time 节点, time 节点呢,可以让 a 和 b 随时间自动平滑过渡变化的周期。咱们使用正弦函数 sine 周期数值是可以手动调整的,咱慢三取出颜色,因为这两个颜色它互相是叠加的,所以大家不要用太深的颜色。 咱们先把 lab 节点的输出值连接到主材质节点的自发光上,再搜索 time 函数和 sine 函数, sine 函数可以调节周期值, sine 的 值默认是一是比较快的,我们调成三稍微好一点。 做到这一步呢,咱们的动态屏幕就已经做好了,我把连法放出来,大家可以比对一下。好的,我们来场景中看看效果吧,先把之前的自发光给关掉, 就是这样了。其实如果你比较熟悉的话,做这个材质很快了。在游戏里这个屏幕我们还可以做更多的效果,比如击打屏幕,屏幕会破碎啊,等我下一步纯三 d 的 游戏啊,我应该会把这些细节加进去。好的,那么今天就到这里了,咱们下次再见。

大家好,今天给大家录的视频讲的是材质,我们先回顾一下新手会遇见新手建立一个地图会是什么样子。 首先我们肯定会把天气先加上,我这里用的是超级动态天空,我开始建立地形,在讲地形之后,我之前也提到过我用的是这个插件,大概二十多 g, 不知道大家有没有去美甲鱼老师那里下载,如果没有话,今天我也会把这个插件分享给大家。在上一期讲的时候, 我把我自己制作的材质已经分享给大家了,一般新手建立地图的时候是地形不宜材质,今天我想讲的东西其实我思考很久,因为材质方面是个比较怎么说比较枯燥的东西, 今天这个材质是因为以后在 pcg 节点当中也会用到相关的一些知识,所以说我把这期视频单独的录制了一, 希望大家能够好好去理解,特别主要是第三个节点的整个运算的一个逻辑,那这个在 pcg 节点,然后也会用到的。今天我想给大家介绍是我们遇见材当中会有些瑕疵,比如说这个是我从官方里面下载了一个材质 很写实,但是他现在有个很明显的问题,就是他上面有很多这种白色的噪点,我并不是个人,反正并不是很喜欢,而且面积很大,我一般会怎样来去? 这是我在建立我那个场景的时候遇见的问题,当时我想了三个解决方案,今天给大家分享一下。第一个就是用自动的材质来进行准确覆盖,我先让大家看一下,先看一下效果,这是 一个原有的情况下,是表面上我想的增加一些雪,特别在雪地的时候,很好用的一个材质界点,我的材质界点混合了一些雪, 他会根据顶点法线来进行覆盖的雪。比如说我们搭建一些场景,需要一些雪景,我们可以调节这些参数给材质上面,根据他的法线来进行雪的覆盖。这个具体的方法也比较简单,因为前两种方法我就是简单略过,带过一下, 大家看下思路,按照我的节点直接来做都行。首先材质节点方便,我们正常是这样子的,使用材质属性他就会变成这样子点。这几点是把材质属性进行混合,混合材质属性,我们先看一下上面这个节点, 这是原始材质最基本的连法贝壳,还有和这个很像,但他意思是新建材质属性,比如说我们的基本图形,就连到颜色粗糙度 ao 法线,这个打破材质属性的 b 点,我们就连接很简单,白色,白色代表雪,我们当然也可以用下载雪的材质来 进行组合,代表雪材质节点。我简单给大家说下用法,大家不用深刻去理解这里边的意思,直接去连就可以了。首先我们建立世界顶点法线,然后用 s 建立一个属性, 这是 add 世家属性,乘以法线强路,这里是乘,这里是乘,下面连接节点是魅,可我们选择法线顶点法线,在这里选择顶点, 因为它是个三位项链,今年世界发现是个三位项链,它及 b 三个通道代表 xyk, 三个轴向, b 就代表这轴项就是材质的顶点方向开始出现材质进行混合, 然后再乘,再乘一个雪的强度,这里用 pro 对比度就是增强雪的细节。这个材质适当运算在零和一之间,在混合材质当 a 和 b 阿尔法通道只能用,只能接受零和一的数值,如果我们不用这个线的话,会出现过爆或者低于零或大于一 的话,整个材质就会很混乱。这就这个属性的讲解,大家可以根据更简单,讲解之后可以暂停,然后跟着做就行了,不用去深刻理解,因为到我们学习材质到一定程度的时候, 就不理解这个的意思。很简单,材质节点的用法我就不实际去详细讲了,因为讲起来比较枯燥,今天大家就直接按照解决来就行,能够解决这个问题就行。第二个是一个绘制的方式,我这里刚才把这个节点给编反了, 先看下这个材质用法,这材质球的作用就是比如说我们出现某一个污点,或者想覆盖某一点的时候,我们可以用进混合材质的方式,用绘制的方法来把那个部分给涂抹掉就可以了。 比如这里我混合绿色的排血,大家当然也可以用血或者用石头其他材质来进行混合。比如我们在某一个位置上,当他单独出现 某一种颜色或怎么样,就可以使用这个方法。这时候都是我在实践,实践当中常用到的解决一些材质的一些方案。比如我们想一起上个题来说,我们想用在哪里,会直接投入颜色,都会用到这几点。这个材质我也是经期一波解化了,比较简单,我给大家简单简单讲解一下,这个不用混合, 首先我们遇到节点是这个 it love r e r p。 我们在材质当中经常会遇到这个,这个意思也是符合,直接输入就可以使用了。首先 a 和 b 连接不同的材质,一个连接我们原有的材质,一个连接我们想混合的材质,记得他们两个连反作为一般原始材质连,在 要混合材质连接到 a 这里经典颜色,我们直接输入就行了,这个这里是高度,需要获取这个材质的高度图。这里为大家讲一下,我们在官方下载材质当中经常会出现三个纹理,第一个基本颜色, 第二个就是这个,第三个是把线,这个一般我们叫做粗糙度,我们可以看到这个纹理的它的名称后缀都会有 d p i f, 这个是什么意思?我怎么讲解 d p i f。 官方这种下载的纹理材质当中,它的图形文排的是 rgb, 三个通道 有三个不同的作用,大头脑 ao 代表环境,光连接 ao 就可以了,一通道是粗糙度,一通道是高度图,你看一下,这是 aoao 贴图, 这是粗糙度贴图,这是高度贴图。然后我们现在这需要高度贴图就可以用在这个连接壁上面就可以了。然后下面这几点就是对比度, 直接给他一个数值就行。默认,我记得当时我学的时候默认值给的是十,这样连起来哈,会没有法线,会没有法线,没有 ao 法线, ao 会怎么连呢?同样建立一个这高度 和蜡,然后同样 b 通道,通道连接我们原有的,发现非通道连接我们想的材质节点呢,就是要混合材质的发现,然后顶点发现连到第三个 高度发线,高度发线用我们要混合的就是原始贴图的发现图,原始材质的高度图连接到这里,然后对比图连接到这里, 这才是很简单,大家看完之后按暂停键就可以直接学会连接了,这是我要讲的两种方法,选择这里选择网络体绘制点绘制就可以了,想要绘制什么颜色就绘制颜色, 这是我们常用的解决两种材质纹理瑕疵,或者说想要混合一些方法,当然我们可以用雪,可以用裁剪,或者说混合一些颜色都可以用得上。以上是我平常解决瑕疵的两种方式,第三种方式我会下期单独来给大家讲,谢谢大家观看。

现在我们就来做一个材质,哎,我们新建一个啊,名字我就先给一个啊 材质的头字母就好了啊。在这个位置我们先需要找到几张贴图,然后就直接在百度上,直接在百度上我找了这么几张,一张木的和一张这样的,以及一张这个死板的, 然后这个石板呢,拿过来之后,他这里像这种地方他不是太完整的,所以我们需要进行一个处理。不过在这之前我们还是先直接拿进来,用一下,直接拖动进来, 打开按住 t 就可以得到我们的贴图查样器啊,我们找到我们的贴图在这边,我们的在这里哈,这样我们就可以直接改过来,或者你可以在这个位置, 这个下面这里有个内容侧滑菜单,我也可以从这个位置啊,从这个位置找到他啊,这样给拖进来,这样给到他,但是 ctrl 加空车他就弹出来了,同样的右键转换为参数, 这是基础颜色,我们直接给上去,同时我们要给一个文理坐标啊,文理坐标也就是能够控制我们的 u v, 要如何控制这个 u v 变大和缩小呢?我们直接来一个乘,乘上一个数就好了, 这是 u v 啊。 moon 给一一的话它就是原来的样子啊,一的话就是原来样子,这如果有什么给到二,它就是进行一个两倍的平铺,这样平铺两倍之后,我们的图案它就进行一个啊变小了,我们想要变大呢,那我们就 将其调小,这样他就将其平铺二分之一啊,就把这个图案给变大,这位置可能有点绕啊, 这个位置可能有点绕,来我们一的时候,他就刚好把我们这一张图就平铺在我们的这个面,主要是我们调成二,他就相当于是把我们这张图进行了二倍的平铺 啊,在这个位置我们还可以再呈上一个颜色,我们按住三右键转换为参数也行,按住 v 点左键也行,他出来都是一样的啊,崩溃了啊,好,我们回来,哎,我们将其连上来 啊,这个颜色我们默认也给一个白色,这个白色的话,它的数值都是 e e e 嘛,所以它这个位置 乘以一就等于他的啊,所以导致这个这个位置的颜色没有变,如果要是我们在这个位置调这种颜色的话啊,哎,他就会改变啊,这里我们先给成一个白色就好啊,同样的我们的粗糙度,哎,我们把这张图打开, 我来看一下他的啊,单通道,好,我们就用他的一个通道来当他的啊出色度的一个遮罩给上台, 这样不是非常的明显啊,我们将其断开,或者我们直接将其提升一个参数啊,现在是一个镜面的啊,给他点上七左右,或者我们直接给上这张图, 导致他稍微光滑一点,同样的我们也可以将其进行一个沉,给他一点五, 咦,这个样子啊,他让他的这个表面的细节稍微丰富一点点,现在的话他就比较平,接下我们就需要一个发现,这个发现等一会我们再去外面用一些小软件来给他生存就好啊,这里我们先保存一个 同样的,创建一个 r 材质实力 来复制一份出来吧。啊,这是木纹, 好,我们可以调整它的 u v 啊,让它这样可以变大变小,就是这个 u v, 然后粗糙度同样的也可以让它变光一些,是吧?我们可以让它没有那么光,还有这样有点泛光的这种 感觉,或者做那种啊,比较毛刺的那种木材的话就可以调高,这就是木头。我们这边还可以更换我们的贴图啊,在这个位置来,我们找到他,我可以换上这么一张啊,还可以换上这个 来我们 u v 改上,大家就会发现会出现一个问题啊,那么改到三,我们在 u v 这位置,哎呀,他就成这种啊,进行一个三倍的平铺之后,他这个接缝的位置啊,就比较生硬,他呢就不是一个无缝贴图,像我们这张的话, 像我们这张贴图他实际上就是一个无缝贴图,可以说是就算他不是非常完美的无缝贴图,那也是起码看不出来他是有这种啊,起码看不出来他是有那种 接缝的地方非常生硬的一种感觉,所以话像这种贴图啊,我们就可能要的特殊处理一下。好在这边两个方式,一,这里有一个小软件, 从这里啊,从图像创建一个啊平铺的纹理啊,他现在需要我们给上一个啊,尺寸啊, 我们选中这张,但是呢像这种你就不能用这个深层,因为他这个是有这种横竖格子的,横竖格子的这种的话我们需要要到 ps 里面去进行一个手动的处理, 像我这里有一张草地的贴图,这一张就不是无缝贴图,而且它是这种杂乱的,所以我们来这边生成的话是可以用的啊,这边我们可以再先拿进来看一下它是什么样的,我们改上来啊,它有这种接缝处,它是 并不自然的,这边我们可以打开啊,重创建一个,可以选中它,我们可以点击生存, 点击一直点击到我们感觉一张比较不错的哈,像这种就可以了。然后我们这边有一个保存保存照在下面啊,先来一个随便来一个名字吧。哎,同样的我们还可以 做法线,是吧?继续置换我们刚刚生成的这张点进来, ok, 这样我们可以细节对细节多一些。 对,我们点到我们的发线,然后就可以在这边调整啊,但这个呢,他生成的就感觉不是太好 啊,因为我是草地,所以他没有这种,这种,他是凹陷下去的那种感觉, 怎么并要是一个平的,然后我们这边就可以保存后缀。 ok, 这是这个,然后这边还有另外一个生成的,可能要稍微好一些啊,就是这个叉 lomo 啊,大家可以到百度上找啊,就可以找得到。然后一进来的话,它可能是一个英文版的,如果你想要变成一个 啊中文版,但是他这个翻译也不准确,就在这个位置点进来,有一个第三行一个语言,你把它点开成简体字就可以了。在这个位置点进去,这是设置, 然后我们到工具这里有一个这个东西,然后我们就可以直接拖这一张进去刚刚生成好的无缝贴图。 ok, 这边我们就可以直接点击生成,然后将其放 大一些,然后这样的话就可以调整它的长度。哎,我们可能要的是这个这种感觉 啊,他值越大,他就越淡到 e 左右吧。嗯,然后就直接保存啊,中间这个有一个保存图标的,这个啊, 好,来看,这这里有两张啊,我将其倒进去, 好的,我们将其换上去。现在是不是起码没有那种非常生硬的边,非常生硬边,这就是做无缝贴图,然后同样的,这我们先把这个发线给进来, 同样的转化为参数啊,同样的我们把控制 u v 的连上去,因为我这个发现跟我们的这个木纹它的是对应的,对吧?所以我们要用同一个 u v 来控制它, 看到了吗?啊,有点这种感觉了,就不再是之前那样光光的,然后我们还可以换另外一张啊,这些种类型的将其给上来,他就是这个样了, 他的效果那就大家自己取舍,他是用哪一个要稍微好一些就用哪一个好。同样的到这边我们这个贴实打开,我们把这张这张给处理一下啊,这有一个,这个,这个叫什么?透视裁剪的,嗯,这个下面这一部分呢,我们就先, 哎,不要了,裁剪成这样,嗯,这下还有一点点的 好,这个样子。同时我们要自己手动做一个无缝贴图啊,我们就比较笨的方法,然后直接拉他,拉开啊,把它给复制一份出来,然后将其 水平翻转啊,现在他中间,这就不是就不就接上了,然后选中啊,把两个啊放下来,同样的 ctrl 加 t, 毕竟进入变换,然后垂直翻转一下,我们就这样得到一个啊,手动做的一个无缝贴图,然后把他们几个给 合并图层,然后这个位置还是有点这个哈,所以我们需要把它给往上面移一点点,这样这一张和 这张我们再往左移一点点,就这个箭头的按键就可以实现他进行一个移动。好,这边我们就可以直接进行裁剪,这样裁剪之后他呢这个 图像的尺寸就不是这个尺寸了啊,这边我们还可以将其进行一个强制强制改行啊,然后他就变成这个样子,我们将其保存, 就普通 g p t 格式啊,我们直接替换掉它就好了啊,同样的我们要要把它的啊法线也一样做, ok, 生成 哎,生成一张这样的,然后保存, ok, 从这个位置一样的,我们还可以 把这张呢也给做了,我们可以给他强一些,可以保存 保存,把它给关掉,我们将其倒进来, 好,在这位置我们就可以把这张换一下,还有啊石板法线也给换一下,对了,这还没有倒进来哈啊,重新倒进来了, 速度调一下。好,这样就得到一张死板的贴图, ok, 我们还可以把它给给到这上面来, 这样就可以得到这样的一张无缝的石板贴图。还有他的这么一个啊发现的效果啊,在这里我们 还可以控制他的发线的效果,在这个位置呢,我们就要聊到一个节点,我们按住 l 左键,他就弹出来了,他这个叫线性差值,他就通过爱法通道控制他的值是偏向 a 还是偏向 b, 像这边 提升一个下来啊,我们这里给零,他这边输出来就是零,我们给一,他输出来就是一,我要是没给到零点五,他就是输出来是 a 到 a 和 b 中间的那个二分之一的那个值,就像这边我给个 一,这里会给个十啊,在这边我们还可以有一个材质函数 啊,这个材质函数它就是把一堆我们写好的功能包装成一个节点啊,里面就是这么一堆啊。现在我们就不管它,我们只需要知道这一个 debug, 它是 可以查看我们这些数值的,我们想要知道这个节点他在这个位置输出的详细数值,我们就需要 debug 这个财政函数。好,我们开始预览,那默认是这么多,把他们给过来, 我们是零的时候他就是一,对吧,我给到一的时候他就是十,我给个零点五的时候他就是零点五五,他在这个位位置啊,这是一个线性插折,他并不是除的那种意思啊,他算就是一到一十,他们的啊,中间啊,取到中间就像我们可以画一条线, 假如我这头是一,这头是十,我这个位置就控制他这个滑标是偏向这边还是偏向这边。 我们这爱法通道就相当于是一个滑标啊,我们滑到这个位置,是吧?他的这个值就取这个和这个位置的啊,这个位置的值,他是这样的,然后要是我们调成零 或者一的时候,他零点五的时候,他就是零点五了,刚好,对啊,如果说我们对是零,这边是一十,零点五的话,那刚好是五,我们是如果是二到一十的话,零点五他就是六。哎呀, 他是一个线性插舌,他就是这个位置,相当于是一个标尺啊,他滑向哪个位置他就偏向哪个位置,若滑向 a, 他就偏向 a 的值, 滑向 b, 它就偏向 b 的值。而且它这个这个位置我们还可以输入是大于一的还是小于零的,因为这里我们是零的话,它就是输入的是 a, 一的话就输入 b, 如果要是我们是负一或者二或者三呢?是吧?它一样的, 但如果是三的时候,他就可能一直到这边去了,对吧?一直到比这个十大,他就在这条线上比往这边走 或者往这边走,这就是这个线性插值。好,这里我们就可以通过这个来控制,我们把这个发线给到 b, 然后这里的话我们要给一个颜色,这个颜色的话我们给一个蓝色,因为我们在发线,他识别一个纯蓝色的时候,就是没有发线的效果。 我们这些法线贴图啊,他发现我们有蓝色,他也有这种紫色,他就这种紫色的地方,他才是那个凹凸的,然后蓝的,蓝色的地方就这种纯蓝色的地方他就是平的。 ok, 我们将其这里还可以将其折叠一下,这个命名字我们就可以命名一下啊, 发现强度默认点击保存。 好,在这里我们还可以控制他大拿走, 那他是不是这种凹凸感,他是不是就更强了?我要是给到零的时候,他就是平的,对吧?我把他给负的话,他就将其反过去 啊,这种就太夸张了,是吧?一二三。好,这的话是这种方式。 k, 这边我们还可以,然后还可以复制一份出来, ctrl 加 d, 他就可以原原地复制,点进来,我们还可以改上我们的其他的贴图,像这个草地的 这一张啊,这就是茶具的,然后我们就可以 把这张草地的丢到这上面, 哎,好,我们的 uv 调整一下啊,变小一些, 这样就行了,然后还可以让这个颜色让他没有那么夸张, 同时把这个粗糙度我们将其调回来,一二三一十啊,你要调到大一点,他的就没有这个粗糙度,就非常粗糙。 这个草地我们就改成这个样子,我们还可以把其他的可以再复制一个出来,写上木纹 啊,点上这个的木纹以及我们的发现 啊,这边这太大了,我们还是将其缩小一点,把这个改上它三,我们调成一啊,那就刚好平铺过来,二三在这上面啊,发现没有那么夸张, 给他一就好啊,像这种的话他可能要光滑一些,所以粗糙度我们就给他。嗯, ok, 好在这个位置补充一点, 像这些哈,我们这边在这边调整的时候,他都是像这种一维的参数啊,他就全部堆在这些,像贴出来堆在这里,这个位置他也堆在这,我们在这里可以进行一个分类,像这个贴图的我们就可以进行一个分制, 这里有个分组,这是贴图。 像这些我们可以叫做啊基础设置,这个的话是法线 好保存啊,看到没有?现在他就有这些分组啊,这样话我们就比较明确这些参数啊,这节的话就这些东西吧。

今天我给大家讲一下颜色矫正最基础的三个功能的原理,分别是这个明度,然后对比度以及这个饱和度,就是大概最后呈现的结果就是这样子的。 那我们来仔细看一下,其实节点就差不多这么多,也不是很多,那我们从头开始啊,把这个断开,然后复制一份, 把贴图拿下来, ctrl d 复制一份,把它拉过来,那我们一个一个来连哦。首先是这个饱和度,那么饱和度的话,其实的节点就是 desacuation, 但是这个节点它其实叫做的是去饱和度,那换句话来说,只要这里是一的时候,其实它相当于就是去掉了百分之百的饱和度。那我们可以来看一下,那我们按 s 键去添加一个这个变量,那叫做 saturation, 先把它连接过来,然后把它连接到基础颜色上保存一下。 呃,然后这个时候我们回到这个这里来啊,现在你会发现就是我们的这个 saturation, 它是数值为一,但是现在整个的贴图其实已经呈现出了一个这个黑白的状态,那也就代表着现在它没有饱和度, 而当我们改变成零的时候,你就会发现他其实就变成了原来的一个颜色。呃,那这个就是这个其实就是他的一个这个节点的问题,他是去饱和度,但这样子他很,他很不人性化,他很反直觉, 所以一般来说我们都会去添加一个节点,就是在这里我们再去添加一个一减,然后 叫做这个 one minus。 那 这个一减 x x 指的是什么? x 指的就是前面的一个数值,那换句话来说,现在我们这里是一那一减 x, 最后得到的结果其实就是一减一,那么也就是变成了零,那么也就是说现在这里就是一个去掉了零的饱和度, 那么换句话来说就是它现在还是保持着它原来的样子。而如果说这个时候当我为零的时候, 那么也就是一减零,也就是去掉了百分百的饱和度,那么也就是说这和我们的一个这个直觉是一样的,所以说我们一般来说都是会去添加一个这个一减 x 的 一个功能,我们保持回一保存一下, 那这个时候我们再回来看,换成一的时候就是正常的一个饱和度,而零的时候就是一个黑白的状态,当然也可以更低一些或者更高一些都是可以的,那么这个就是饱和度。 呃,然后就是我们的一个明度,明度的话这里我们先说答案,我们使用的是一个相乘的算法,那为什么是使用相乘的算法呢?那这个时候我把这个按三键,然后添加一个颜色节点,这个时候我们给到 x、 y、 z 三个轴全部给到一, x、 y、 z 给到了全部一,其实就是 r、 g、 b 都给到一,那因为它这里就是 r、 g、 b 三个值,它都是一样的,所以说呈现出的是一个白色的状态,那这个时候再去添加一个 零点五,这里都是零点五,零点五那么这个就是一个灰色的状态,那当然我可以再来一份,把它都改到零点一,零点一 你会发现它的数值越来越暗,那这个时候这只是一个黑白的状态,现在你可能觉得这里的数值到这里的数值其实我统一的去增加减就可以了,但其实不一样,那这个时候我们继续来看, 这个时候我把这个红色给到一,其他的都给到零啊,其他的我们也给到一个其他数值吧。到零点三的零点一,他现在是这样子的一个颜色,那么这个时候我们把它复制一份,把它同时去把它变暗一点。 呃,这里的话为了给大家更方便一点,所以说我在这里去选择到这里,然后把它的一个这个明度明度给到零点五, 回车确定,这个时候你就会发现现在数值也得到改变,那我们继续再去改变一下,那这个时候我们把它改到一个零点一的值,明度改到零点一。 呃,那这个时候其实大家会发现这一个是零点五的明度,然后这个是零点一的明度,我们仔细观察一下它的数值,大家会发现 x、 y、 z, 也就是 r、 g、 b, 它的值其实是在等比缩放的。 那么这个时候其实我们就要去牵扯到一个数学的最基础概念,就是三元量的一个计算,三元量的计算它是这样子的, 比如说这个时候我们一零点三、零点一 都用成英文说法零点一,那这个时候如果说我们给他去乘以一个数,比如说乘以二,那么其实他最后得到的公式是这样子的, 也就是一乘以二,逗号零点三乘以二,逗号零点一 乘以二,那其实最后得到的结果,那很那很显而易见,那其实就是等于二 零点六零点二,这个就是我们三元量和一元量去进行一个计算得到的结果,那再根据这样子一个计算,以及这里对应的得到的一个结果, 只要我们想在同一个颜色的情况下把它变暗,那我们肯定就需要让它去进行一个等比的缩放,那这个时候不言而喻,我们肯定使用的就是一个乘法,所以说这里我们连接乘法,我们再创建一个变量叫做 brightness, 找到一保存一下,那这个时候我们可以来看一下,把它变亮以及把它变暗,那我们就得到了我们所需要的一个结果,那这个就是明度的一个理论,然后最后就是一个这个对比度, 那么对比度的话,其实比较简单的方法就是直接去处弄一个 power power 节点,那么 power 节点的话,它的意思,它的本质其实是次方,也就是我们的平方立方,那换句话来说,把它打出来就是 x 的 平方, 平方这样子就是默认值,他这里不是二吗?所以说这他是 x 平方,他就是这个次方的意思,那么这个是为什么他是一个对比度呢?就是我们通常来说, 以这张图为例,通常来说白色部分,白色部分其实就是在计算机里边,他是一的值, 它的数值为一,而纯黑色纯黑色的部分,它的数值为零,而中间的部分就是从黑到白,它会有一个灰度,就是零到一之间的关系,那么我们可以想象一下, 以这个为例吧,我们可以想象一下,假设这里是零点五,假设这里是零点五,而这里的这个白色,这里的这些比较亮的部分,就比如说这边的部分,这里的白色是零点九, 那如果说,那如果说我们去给他开一个次方,那么这里的数值就是到了零点二五,而这里是零点八一, 它们由之前零点四的一个这个呃差值变变到了一个这个更大的一个差值,那也就说明了它的一个对比度就变得更强了, 那所以说我们一般来说去给它开就是次方就可以了。至至于是几次方,我们得通过一个变量来去进行一个计算,所以说最简单的方法就是通过 power 直接去进行一个处理。但是这里又会 延伸到一个问题,因为他们的这里的值永远都是小于一的,所以说只要他们的一个就是次方开的越高, 那么也就代表着他们整体上来说就会变得越黑,除非是像这样子的一个纯白部分,就是一不管开几次方,其实永远都是一,所以说他也会带来这样子的一个部分。那么我的做法是什么呢?一般来说我都是会去在后面再去乘以一个数, 再乘一个数,让它让它共同来决定我们的一个 contrast 的 值,那这个时候我们这里去连接一下 contrast, 然后默认给到一次方,然后这个就给到零,那么这样子的一个好处就是什么呢?根据我们刚才的一个理论呢, 如果说我们默,如果说我们零点九去进行了一个这个平方吧,零点九的平方,那就是零点八一嘛,零点八一,然后这个时候我们再去乘以一个二,乘以一个二,那么最后它就会变成一个这个, 最后就会变成一个一点多,对吧?一点六二,然后在我们的计算机里面其实超过一的部分呢,都是会显显示为白色嘛, 所以说这样子的话,相对来说他就不会说是,呃,完全的就是不断的变暗,不断的变暗,而他是会超过这个值的。而至于我们底下的一个,比如说零点二五啊,比较小的一个数值,你比如说我们这里是零点一,零点一的次方嘛?零点一的次方的话,那就是 这个输入法有点烦,零点一的次方就零点零一,然后再去乘以二的话就是零点零二, 那么换句话来说他的数值就会越来越小,而相对来说比较大的值他会越来越大,就是这样子一个区别,那这样子的话我们就可以有效的避免那个 就是偏黑偏黑色一点的部分,然后很快就没有了,并且我们其他的部分会越来越暗,就避免的这种情况。所以说一般来说我会在后面的这进行一个乘法, 但是这里牵扯到一个比较关键的问题,就是如果说你超过一的话,虽然说我们整个画面它会呈现出是一个这个白色状态,但是它不方便我们后面的计算,我们最好还是把它标准化限制一下,所以一般来说我在最后还会再去添加一个 saturation s a t u saturated, 那 么这个节点意思其实就是把那个值就是我们的一个数值大小限制在零到一的区间范围之内,这样子的话它的它的一个这个区间颜色它 永远都是在零到一之间了,这样子它也不会去造成后面的一个这个计算的呃,值过大或者过小保存一下,那这个时候我们再去来看一下整体的功能,首先是明度没有问题,没有问题,然后对比度 也没有问题,然后最后的一个包裹度也没有问题,那这个就是我们最基础的颜色矫正的三个功能的一个原理。呃,然后大家好好的去把这个东西学习一下吧。

hello, 大家好, 我们这小节来了解一下关于虚幻资源的三种主要类型和使用方法,它们在用途、导入方式和试用场景上是各不相同的。我们先来看一下类型,就是整理好的 contact 包,它是原声引擎资产集合,里面有完成的材质、动画和碰撞设置。 我们来看一下它的一个使用流程,这张图是我使用就是知识点,然后使用 ai 生成的,所以里面有些中文字是错误的,这些不重要,我们主要来看一下它的一个大概使用方式,是把我们就是下载到的这个 contact 包,然后 复制到我们的自己项目的 contact 目录下面,这样的话就是我们在 uew 打开就可以在内容浏览器里面找到他的一个相关的一个资源集合。 ok, 然后我们来演示一下, 这个是我自己在网上下载的一个关于动画的一个资源包,我们可以打开看一下,直接双击,然后把这个文件夹放入到我们自己项目的 contact 文件夹中,不能修改名字,他这边是有相关的一个文字提示。呃,提示的, 我们可以双击打开一下这个文件包,它里面就是包含动画资产蓝图,然后这个是官甲地图、材质模型和贴图。 ok, 那 我们先复制一下这个完整的一个文件夹, 然后我们打开自己的优易工程,然后按一下 ctrl 键,它是可以打开我们的这个内容菜单,然后随便就是点击一下我们这里面任何一个文件,右击这边有一个就是 在浏览器当中显示,我们可以打开看一下,这样的话就可以直接定位到我们这个项目的目录,然后在 contact 文件夹里面就是我们自己目前打开的这个文件夹,然后右击粘贴, ok, 然后关掉。现在在我们的 ue 就是 工程里面可以直接看到我们刚才复制进去的这个 contact 文件夹包,然后看一下就是这个关卡,就是可以先把这个资源先卡一下啊,然后双击一下, 点击一下这个视图,然后按一下这边的一个呃关卡,就是我们进入到这个关卡里面, ok, 往前走,然后我们可以看一下这个资源包,就是复制进来的是一个关于动画的资源包,里面有坐下啊,然后从地上站起来,还有跪在地上的这样的一些动画可以退出来。 ok, 然后再按一下就是 control 加呃那个空格键,打开我们这个内容策划菜单,我们可以看一下它这个里面就是有关于动画的一些资源,点击的话,如果这边没有任何资源,我们可以看一下这边的一个过滤器,把关卡取消掉, 然后这边就是有我们一些动画的训练器,就可以找到相对应的每种动画。我们再来看一下就是第二种类型资源,就是完整的一个项目文件,它是一个可独立运行的一个完整项目,里面包含所有的工程文件资源和配置, 看一下它的一个使用流程,正常的话我们下载或者得到的是如果是完整项目文件的话,它里面会有一个打开的工程文件,然后直接双击运行,这样的话我们就可以在 u e 五里面看到就是所有的一些资源呀,关卡配置等, 通常是用于演示教学或者交付,那我们怎么使用呢?我们可以实际演示一下啊,然后退出来。这边的话是我在 facebook 上下载的一个用于学习案例的一个完整工程文件,我们直接双击打开, 这个文件有点大,所以需要等待一下,我们可以看到打开的话直接就是我们整个项目的一个地图。 ok, 可以 看一下全景, 这样的话我们可以在内容浏览器里面就是寻找我们需要的需要学习或者使用的一些资源。我们可以比如说想要寻找整个项目里面关于一些,就是关峡系列,这个是镜头零一,可以直接打开, 或者是蓝图类的资源,我们都可以通过就是这个过滤器把它筛选出来。 ok 啊,文件有点大,他在编辑,这个就是我们介绍的就是第二种关于就是一个完整项目的打开使用方式, 我们接下来来了解一下虚幻。第三种类型就是原始素材,他是没有经过 ue 五处理的一个通用格式资源,需要我们自己手动的导入,并且重新创建材质动画等。 ok, 那 么接下来我们将通过一个实际的案例演示一下如何导入一个 fbx 模型,并使用一套标准的就是 pbr 贴图,为它创建真实感。 ok, 然后我会把我使用案例的这个文件夹打包,就是把它放到网盘里面,把它的网盘路径会放在我的这个视频的简介下面,我们可以先把这个名字复制一下, 我们可以看一下啊,它里面是有一个 f b 叉模型,然后有五张贴图。 ok, 然后我们接下来是先打开我们的 u e 工程,在内容浏览器里面这边创建一个新的文件夹, 一定要全英文啊。 ok, 然后在这个文件夹里面再新建一个模型, 直接把我们这个里面就是文件夹里面的模型直接拖过来, 直接导入就 ok 了啊。我们这个时候可以直接双击打开它的这个静态网格体, 我们可以看到它现在这个模型它是没有贴图的,它是灰色显示的,就说明它的材质或者贴图它是没有粘上的,这个时候我们需要就是自己在内容浏览器里面右键就是创建一个新的材质, 我们在创建新的材质之前,先理解一下,就是我们这个文件夹里面五张贴图,他每张贴图的一个含义和作用。 ok, 我们这里面就是五张贴图,可以就是具体看一下它的一个结尾的一个英文,如果是 a o 结尾的话,就是可以看一下它的含义,它是一个环境光遮蔽 t 图贴图,它的作用主要是模拟物体表面凹陷处的一个阴影效果, 增强细节的一个深度感,比如说像边缘的一些暗角、牙缝隙。然后如果是以 d 结尾的这个贴图,它就是说明它是这个模型的一个基础颜色贴图,它是决定模型的一个颜色和明暗,但是是不包含光照信息的。 ok, 第三张贴图的话,它是以 m 结尾的,它说明是这个模型的一个金属度贴图,它是控制表面是否为金属材质,它零的话就是一个非金属度,一的话是一个金属度,它是可以调整的。 ok, 然后还有一个就是以 m 结尾的,就是通常我们说的法线贴图,它用来模拟就是物体表面微小的一个凹凸感,影响光照的一个方向,就是可以产生一个立体的视觉效果。 最后一张的话是 r 结尾的话,是代表是这个模型的一个粗糙度贴图,可以控制这个物体表面光滑或者粗糙的一个程度。 ok, 然后我们要先做的就是把这五张贴图先导到我们的 u e 里面, 然后我们在这个文件夹就是我们刚才创建的里面再新建一个文件夹, 这边的话就是把我们的这个文件夹命名复制一下,然后直接导入, 把这五张图全部选中导入进来, 我们可以直接右键,然后创建一个新的材质,重新命名, 双击进去, ok, 然后我们把这五张贴图都拖到进来, 呃,鼠标的中键滚轴可以放大缩小,然后鼠标的右键可以左右移动。 我们接下来要做的就是把这五张材质图然后分别连接到我们就是相对应的这个材质球的命令上面。 ok, 那 么第一个先找一下环境光遮蔽, 然后把环境光遮蔽的这个就是最右上角这个 r g b 直接拖到就是我们这个材质球这边有一个环境光遮挡上面。 ok, 然后第二个我们找一下这个基础颜色,呃,是以递结尾的这个图,然后把 r g b 调到这个基础颜色上面, ok, 然后这边材质球就会显示相对应的一个基础颜色和一个环境光遮挡的一个贴图。我们第三个的话是找一下它这个金属度贴图, 再找一下它的这个发线贴图,分别粘一下 最后一张,这个的话是一个出招程度。 ok, 然后保存一下这个材质球, 关掉,我们紧接着就是打开这个斧头,这个把武器的一个静态网壳底双击进去,我们把刚才创建的这个材质球就是赋予给这个静态的网壳体。 ok, 然后直接可以搜索一下他我们刚才的创建的命名, 点击一下,然后这边一定要保存一下,我们可以看一下它的一个最终效果, 保存关掉搞定。 ok, 那 我们最后来了解一下,就是关于谷歌网格体和动画的导入,很多小伙伴会去 maxmore 这个网站免费下载,就是带有绑定的角色和动画。那我们怎么把下载好的这些来 f b c 文件导入到我们的 u e 引擎里面呢?我这里面已经提前下载好了,就是一个模型文件和三个动画文件。 ok, 那 我们直接就是先把这个路径复制一下,然后在 u e 里面先创建一个新的文件夹, 直接导入,我们先导入这个我下载的这个谷歌网格体, 然后向下翻到就是贴图材质的部分,然后默认的话他这边都会就是导入他的纹理和材质,但是我们这个谷歌网格体他是没有 呃材质的,我们就需要把它勾掉,然后这个导入动画,单纯的这个谷歌网格体他也没有动画,所以我们也是需要把这个导入动画也可以去掉。 ok, 然后直接点击导入, 这样的话就会导进来一个骨骼网课顶和一个骨骼,然后我们紧接着就是单独导入动画,我们把这三个动画都选中, 然后这边要注意一下,就是我们翻到最下面这三个动画的话,就是我们不要导入文体文理, ok, 他 是没有勾选的,然后贴啊材质的话,他也是没有勾选的。导入动画这边要勾选起来, ok, 然后我们再向上这边仅导入动画是需要勾一下的,谷家的话是默认的,就是我刚才导入的这个 export 的 谷歌, ok, 然后直接点击导入, 这样的话就是我在 maxmore 这个网站下载,呃,下载的三个动画就全部导入进来了,我们可以双击看一下,这个是个跳舞的动画,这个也是个跳舞的动画, 这个是坐在这边笑的一个动画。以上就是 u e 五中三类常见资源的使用方式,包括整理好的 contact 包、完整项目、原始 f b 叉素材以及谷歌网格题和动画的导入。 如果你觉得这期内容对你有帮助,别忘了点赞收藏,我们下期可见。

今天我们来聊聊高度差值这个知识点我想讲很久了,因为它的实现效果真的超赞,我们已经搞定了最基础内容,来做点有意思的内容,当然之后还有一些基础知识点要讲,别误会,不过先从有趣的开始就是高度差值。 什么是高度差值?说白了就是基于高度信息的差值运算好了,咱们正式开始,我大概率会直接用我现有的这个材质,就是这边这个, 希望我还记得这是哪一个,就是我之前用来演示顶点颜色的那个材质。所以先把这些滚动相关的节点都停掉,因为接下来都用不上了,这些节点也全都用不到了, 这些无关的内容不用管,如果没追根这个系列的内容,这些也不重要。现在我们有这两张小纹理,之前我们讲过是基于顶点颜色的红色通道来循环纹理的, 这个材质的红色通道是满值,另一个就不是,或者反过来,我现在记不清了,直接应用这个材质的话,纹理滚动也会停止,效果会好一点。但如果我们有砖墙纹理、地砖纹理这类素材,想实现特殊效果呢? 比如只想让苔藓、草叶从纹理的缝隙里长出来,或者先让缝隙处显示,再慢慢覆盖整个砖面, 这时候高度差值就派上用场了。高度差值我之前在材质函数的演示视频里提过一嘴,不过我们直接加一个高度差值节点就可以,当然你们也可以自己手动复刻这个节点的逻辑,可以去研究一下背后的数学运算原理, 也可以直接打开这个材质函数看看内部结构,不过我们今天不做这些,我只演示它的实际用法。这个节点有 a 和 b 两个输入口, 还有一个过渡阶段输入口,我们这里用顶点颜色来控制,当然也可以用纹理或者其他任意参数来控制。还有一个高度纹理输入口,这个非常关键, 以及高度纹理的对比度参数最终的输出结果就是混合后的效果,会根据上述参数对 a、 b 两个输入进行差值混合,同时还会输出一个透明通道, 你可以把这个通道值用到自己现有的差值节点中,这都是可以的。另外还有一个无对比度的差值透明通道输出,这个是过渡更柔和的透明通道版本。我先演示高度差值的 a、 b 输入口的用法,之后再演示透明通道的用法, 所以先把我们现在用的这个差值节点先暂时删掉。接下来我们用高度差值节点来替代它。 a 输入口连接草地纹理, b 输入口连接泥土纹理,然后把节点的输出连接到基础颜色通道。你们会发现材质会爆出错误,因为这个节点必须接入高度纹理,这是它的 b 填输入项, 那我们就用造波纹理来作为高度纹理的输入。 现在可以看到预览窗口里全是草地纹理,原因很明显,预览模型没有做过顶点绘制。我们先把材质预览窗口单独拖出来, 然后打开第三人称视力地图,你们肯定也发现了,我忘了接过渡阶段的输入,我真是糊涂,那我们把顶点颜色的红色通道接进去,现在预览里又全是泥土的颜色了,因为模型本身没有顶点颜色信息, 不过其实效果和我们之前用普通差值节点时差不多,确实是差不多的。但接下来就是重点了,这个云纹造波的效果其实不太理想, 就算给它加 u v 坐标,效果也没什么改善,真的没变化。所以如果我们不用顶点颜色,不知道刚才怎么突然卡了,而是用一个标量值来控制过渡阶段, 演示效果会直观很多。比如把这个标量值设为零点五,就能看到另一个纹理开始混合显示了。 简单说,标量值小于等于零点五的区域,都会显示 a 输入口的纹理。 如果把标量值直接设为一画面里,就只会显示 b 输入口的纹理,而这一切都是由高度纹理来驱动的。如果我们换一种纹理,比如平铺纹理或者其他类似的,就用这个网格顶点纹理来举例吧, 因为它本身的对比度就很高。现在标量值设为零点五,所有小于零点五的区域都会显示 a 输入口的纹理,也就是纹理里的黑色方块区域, 这些区域都会显示草地。而大于零点五的区域会显示 b 输入口的纹理,也就是纹理里的线条部分显示泥土纹理。我们再切回平铺造波纹理,然后给它加一点对比度, 把对比度值设为三,让过渡效果没那么柔和,这样整体的混合效果会更明显。 我们把这个对比度设为可调节参数,这样就能实时调整了。现在调整这个参数,就能看到这种基于噪波的滞后混合效果。 一种材质会基于噪波纹理的信息慢慢覆盖在另一种材质之上, 这个效果真的特别棒。但问题来了,我们不仅要给基础颜色通道做这种混合金属感通道,也要做 粗糙度通道,所有的贴图通道都要逐一设置,对吧?这样操作起来会很繁琐。所以换个思路,我们可以保留原来的差值节点,不用高度差值的结果输出口,甚至连 a b 输入口都可以不用接。 用这种方式的话,把纹理接到原有叉值节点的输入口,然后把高度叉值输出的透明通道接到普通叉值节点的透明通道输入口,这样就连法线贴图也能很轻松地实现混合了。我们赶紧来设置一下, 先腾出一点节点空间,造波纹理保留着就好,把这两个节点复制一份。还好我们刚好有草地的法线贴图和沙岩的法线贴图, 这样就能用同一个高度差值的透明通道轻松实现两张法线贴图的混合了。 一定要保证它们用的是相同的 u v 坐标系统,否则法线贴图和基础纹理就会错位,那就出问题了。这样一来,我们就做好了法线通道的插值混合节点。 现在材质的法线贴图和基础颜色都会由同一个参数来驱动混合, 当然我们现在用的还是自定义参数,就是这个参数。我们应用一下材质,看看法线的实际效果,可以慢慢调整参数,实现两张法线贴图的过渡。过渡效果也包含了法线贴图的混合。当然我们现在是用参数来演示,实际项目中 大家大概率还是会用顶点颜色来控制,那我们再把顶点颜色接回过渡阶段的输入口,应用材质后能看到,因为高度差值的对比度设置,纹理的过渡边缘会更锐利。 接下来我们打开网格绘制工具,我现在的绘制强度是零点五,这个强度其实很高了。 把绘质强度调到零点二试试,能看到现在的绘质效果。过渡会更平滑, 也不会一次就把整个区域都涂满,所以有时候需要多次绘质才能达到想要的效果。比如把整个模型都涂成目标纹理。我们也可以做一个限制,让材质在标量值达到零点八之类的预值前,都不进行差值混合, 实现起来会稍微复杂一点,但能做出很多超棒的效果。 我们再切回网格纹理,效果会更明显。 现在开始绘,只能很轻松地把纹理的线条部分画出来,但如果想把方块部分画出来,就需要多次绘制。我们还可以把绘制强度调得更低,能明显看到画线条比画方块容易太多了。 如果持续绘质的话,最终方块部分也会被涂出来,但需要画很多次,直到标量值达到一 到这个值之后,就会完全切换成另一种材质。而在标量值从零到一的过渡过程中,只要标量值大于零,基本就能显示出底层的材质。 以上就是高度差值的基本使用方法。抱歉啊,可能我刚才讲过度阶段的预值时,把大鱼和小鱼说混了。 说到过度阶段的参数,我自己也经常搞混,我脑子一直记不住这个逻辑,过度阶段的参数到底是怎么控制差值的方向的, 我猜你们大概率确实不怎么直观,不过其实也不重要, 因为一旦发现效果不对,只要把 a b 输入口的纹理互换或者换一种顶点绘制的方式就行,比如把顶点颜色的叠加改成相剪,效果就正常了, 所以大家多去尝试就好,吃多了自然就有手感知道它的实际工作逻辑了。

我们继续来讲材质的知识,这次的主题是材质参数级,我们之前讲过材质参数,上一个视频里还简单讲了顶点绘质的内容。 今天我们来聊个有趣的新知识点。材质参数可以在单个材质实力上调整,进而影响材质效果,这一点很实用。 但如果我们需要一个全局生效的参数值呢?让这个数值在整个项目中保持统一,不同的材质又能以各自的方式调用这个值,这会是个很有意思的功能, 而这正是材质参数级的作用。接下来我们就创建一个材质参数级。在编辑器的材质分类下,我们可以创建材质参数及资产, 我们将它命名为教程参数级。打开这个参数级后,能看到里面可以创建标量参数和矢量参数,也就是单值参数和三维矢量参数。我们各创建一个,这个标量参数就直接命名为标量即可。 再创建一个矢量参数,用来存储颜色数据,暂时先命名为矢量,为了简单演示,就先创建这两个。当然你可以根据需要创建任意多个,可以添加大量的各类参数。不过现在我们暂时不需要这么做,这些参数可以被项目中任意一个材质调用。 严格来说,任意蓝图也能访问这些参数,但它的设计初衷主要是为材质系统服务, 不建议用来存储非材质相关的数据,这类需求有其他更合适的实现方式,今天不展开说。接下来我们让两个材质以不同方式调用这个参数级的数据。这里有我们之前做好的一个材质,就是上一个视频中制作的顶点颜色材质, 还有一个是之前视频里做的纯色平面材质。我们先在纯色材质中添加一个参数及节点,在这个节点中可以选择我们创建的所有材质参数级。 当然,目前我们只创建了一个,这里我们选择教程参数级,接着需要选择要调用的具体参数。这个例子中,我们选择标量参数。 在这个材质里,用这个标量值来控制材质的金属感属性。 我们把粗糙度设为零,这样能更直观地看到金属感的变化效果。 现在断开原有节点的连接,接下来打开教程参数集,找到里面的标量参数,将它的默认值设为一,这时能看到材质的金属感变得非常高。尽管在着色器内部,我们并没有直接设置金属感的数值, 原因就是材质参数集中存储了这个数值,而材质正在读取该数据。现在我们切换到顶点颜色材质中进行设置。对于这个材质,我们打算用这个全局参数来控制纹理的滚动效果。同样,添加参数及节点 也选择这个标量参数,用它来控制纹理滚动的速度。实现这个效果需要用到时间节点和纹理坐标节点。 拆分纹理坐标节点的输出,将时间节点的数值除以一百后,与拆分后的坐标值相加, 这样纹理每秒只会滚动自身尺寸的百分之一,再将这个结果与标量参数相乘,通过调整标量值就能控制纹理滚动的快慢。 当然,这并不是材质参数级的最佳应用实力,因为实际开发中,我们可能需要将滚动速度设为五六七、十二十五,甚至一百二十七这样的数值, 但现在我们给标量参数设定的取值范围只有零到一,所以说这个例子不算完美,但能让大家看到它的强大拓展性。 我们继续完成纹理滚动的节点连接添加,使量合并节点还原绿色通道的数值,将合并后的结果作为两张纹理的 u v 坐标,这样纹理就会开始缓慢滚动了。 现在能看到纹理在缓慢滚动,而纯色材质的金属感也处于很高的状态,如果把标量参数的值设为零,纯色材质会失去金属质感顶点,颜色材质的纹理也会停止滚动。如果将标量值设为五,纯色材质依然保持高金属感, 因为金属感的最大值被限制为一,而滚动速度会大幅提升。两个材质都在读取参数集中的同一个标量值,但在各自的着色器中实现了完全不同的效果,这个功能真的非常实用。除此之外,蓝图也能访问材质参数级, 我们可以不在材质编辑器中操作,而是用蓝图来控制这些参数。在蓝图中可以调用获取标量参数值节点,也可以调用获取使量参数值节点 用法和材质中基本一致。先选择要访问的材质参数级,然后在下拉菜单中选择对应的标量参数,使量参数的选择方式也是如此。这样一来,你就能在蓝图中灵活控制所有调用该参数级的材质了。 之前讲材质参数的视频中我没有提到这一点,因为当时觉得关联性不大。其实蓝图也能读取普通材质的参数信息,和读取普通材质参数一样,蓝图也能设置材质参数级的数值。 接下来我们做个有趣的效果试试添加一个时间轴节点, 设置时间轴的关键帧,在中间位置将数值设为一,在结束位置将数值还原为零, 让数值在零和一之间来回变化。接着调用设置标量参数值节点选择对应的参数级,也就是我们的教程参数级选择要控制的标量参数,将时间轴的输出值关联到这个标量参数上, 将时间轴的更新事件与该节点连接。现在运行游戏就能看到,纯色材质在金属质感和普通质感之间来回切换,换个视角看顶点颜色,材质的纹理也在来回滚动,这个效果非常有意思, 纹理看起来是在前后往复滚动,这说明标量参数的数值在某个时刻变成了负数。 暂时还不清楚具体的原因,不过这对我们今天讲解的核心内容没有影响。以上就是材质参数级的用法,它能让不同的着色器以各自的方式调用同一组全局参数。这个功能的实用性极强, 比如在游戏中做下雨系统时,这个功能就特别好用。部分材质遇到雨水会变湿,粗糙度随之降低。 而有些材质对雨水的反馈则完全不同,比如水材质本身下雨时可以在上面添加雨滴撞击的效果。再比如泥土材质遇水后不一定会增加反光度,反而会因为吸收水分而变得颜色更深。 这些和下雨相关的材质效果都可以通过一个简单的全区参数来统一驱动。

今天来分享一个材质的基础教程,在网上我们有很多的教程,其实它是直接去进行添加的,那可能有很多人把它当做是一个固定用法,并没有去深入我们这里的原理, 那么今天我就用数学的方法来细致的描述一下左对的原理。首先是贴图缩放,在这里的话,一般来说我们都使用的是一个相乘的方法,大家可以看到在这里直接改变它数值就会有所变化,而偏移使用的是相加的方法。 那这个时候我们先回到玛雅这里来,那么我在玛雅里面创建了一个立方体,然后在右边这里是它的一个这个 u v 界面,那么我们都知道所有的这个 u v 块啊,我们基本上来说都是放在第一项线里面的, 那么为了演示方便,我也要回到 ps 里面来去进行一个讲解。首先这是一个常用的坐标轴, 那么这里是它的一个第一象限,也就是我们做贴图所产生的一个这个地方,那么我们需要有一个概念,就是在镇上的 u v 空间里面,我们的贴图其实是在这个空间里面无限重复循环的, 就类似于这样子,我们会发现每一个一乘一的框里面,它其实都是一张贴图,都是一张完整的贴图。那么这个时候我们还需要再明确一点,我们所有的计算,其实计算的都不是贴图,而是计算的一个显示范围, 就是通常来说我们可能会说,哎,我把贴图缩小或者放大,那可能新手直观的理解的就是我把贴图去进行放大或者缩小,那么在这里一定要记住我的话,我们始终计算的是它的一个显示范围,那么这个怎么理解? 首先是它的一个默认的显示范围,可以看到它默认的显示范围在 x 轴上其实是一个这个零到一的一个范围,而在 y 轴上我在这里打一下 x 轴, 而在 y 轴上它其实默认来说也是一个零到一的范围, 那么也就是说它其实使用的就是一整张贴图,那么这个时候如果说我把这个范围去进行相乘,比如说我乘以了一个二, 那么现在演变出来的一个结果,那肯定就是 x 的 范围就是零零到二,而 y 轴的范围那么也会是零到二, 那么换算到我们这里的一个空间,那其实在这里是一,那么也就是说这里就是二,而这里也是一个二,那么他的空间肯定就会变成这样子, 可以看到我们的显示范围里面就变成了四张贴图,那么这个时候我们回到虚幻这里来,把这些全部删除掉, 我们换换成这个节点,按一下 u 键就会调出这个这个节点,并且按一下 m 可以 调出乘法的这个节点,那么此时我们先只让它乘一 连过来保存一下,那么现在它肯定就会只显示一张贴图,那么根据我刚才的理论,如果说这里我进行了一个相乘,我乘以了一个二,那么也就说它的显示范围 就变成了这样子,那它就会显示四张贴图,那这个时候我们点击保存一下,那这个时候你会发现它就和我们之前的理论是一模一样的了, 那当然我可以去单独的去控制 x 轴和 y 轴的一个这个计算,那么这个时候我可以去按一下我们的这个 s 键,调出一个标量的变量,那么这里我们可以把它叫做 x 的 type, 然后我们 ctrl d 复制一份,把它改成一个 y 轴的 type, 然后这个时候因为我们计算的是一个二元量,所以说我们需要 append 一下, 点击过来保存一下,那保存以后它就变成了一个黑色,那这是为什么?那这也是很明显的,现在我们设置的默认值是零,那么零到一的区间去乘以零的话,那最终它其实就是个零,那么它就不会有任何的一个显示范围了。 所以为了保持默认的显示范围,我们需要将它去乘以一,因为一乘以任何数都是它本身,所以说这样子就是它本身那个样子。保存一下, 这个时候我们创建一个材质实体,再给他丢过来,然后我们来控制材质实体,那这个时候我们去来继续去进行一个调整,这里给他二,然后这里也去给他二,你就会发现他有了一个明显的变化了。 那么现在我们就能知道通过数学的运算贴图的缩放其实就是对于我们显示范围的调整,那么在这里所以说我们使用到的是一个乘法, 那么偏移为什么使用的是加法,那么也是一样的。回到 ps 这里来,我们把它回到最默认的位置,那么还是一样的。假设现在我希望 将我的贴图显示到这样子的一个位置,那么很明显我之前的一个这个一乘一的区间,我们还是来换算一下, 之前还是 x 轴是零到一的区间, 而 y 轴也是零到一的区间,而现在我们可以看到我在这里把这个东西换成了四等分,所以说很好计算,那它现在的一个显示区间其实就是 x 为 负零点五到零点五,而 y 轴也是负零点五到零点五, 那么可以看到上下的计算其实都是去减去了一个零点五,这样子的话,我们的区间范围其实就变成了负零点五到零点五,那么这个时候虽然说我们是使用的减法,但是我们加上一个负数,其实也就是减法了,那这个时候我们来去还原一下我们的操作, 回到虚幻,在这里我们去添上一个加法,按住 a 键,再按下鼠标左键,然后这个时候就可以添加上加法,把它连接过来,连接过来,那么为了去进行一个这个偏移, 所以说我在这里去使用到一个这个还是一样的,我们这里 ctrl d 复制一份,然后把这里叫做 offset, 然后 y 轴也是 offset, 那么为了让保,让它保持是个原来的样子,所以说我们应该是给它变成零,因为任何数加上零都是它本身,所以说这样子就保持它一个默认的状态。保存一下, 我们把它还原一下,把这个 type 值还原一下,然后单独的去调整这个 offset 值。那么根据刚才我们的理论,其实如果说我们全部相减零点五的话,那我们显示的贴图应该是中间一个横杠,然后右边是没有的,我们也可以来看一下, 在这里我减去零点五,然后复制一下,给到 y 轴也去减去零点五,那么这个时候我们就会发现我们中间是有横杠的,而两周边是没有的,因为我整个贴图其实就是这样子的,我的周边有横杠, 那么这个时候其实我们也就验证了一个乘除法,一个加减法,分别对应了它的一个贴图的缩放以及贴图的平移,那么这个时候你们就可以根据这个理论来去往下面去进行学习了。

我们已经掌握了材质制作的基础知识以及相关原理,今天我们来深入探讨其中涉及的大量数学知识。因为尽管我们在此创作的是视觉艺术作品,但其中蕴涵着相当多的数学原理。毕竟归根结底,我们是在与计算机进行交互, 而计算机的语言就是数学,这是无法回避的。让我们开始吧,我要创建一个全新的材质。 大家可以看到,我已经导入了两张纹理贴图,其实不需要,但我觉得这能更直观地展示接下来要做的操作。今天我们要讨论的是 u v 坐标和颜色相关,这两张纹理贴图就是为了辅助演示准备的。现在我们从创建材质开始, 我们给它命名为 u v 数学运算之类的名称,然后打开材质编辑器。首先我先导入这张贴图,并将其设置为基础颜色, 我们切换到平面试图查看,这样能最直观地显示纹理效果。 接下来要讲解一些重要的概念。如果你还不了解 u v 坐标是什么,简单来说, u v 坐标就是将三 d 网格展开后映射到二 d 平面的坐标系统。 就像小时候玩的纸模,手工先在纸上打印出展开图, 然后裁剪下来拼接粘贴,最终形成三 d 模型。而 u v 展开则是相反的过程,它是为最终的三 d 模型创建展开图。只不过数字三 d 模型的 u v 展开比给孩子玩的纸模要复杂得多, 而且 u v 坐标的单位不是像素。当然,你导入的纹理贴图本身是按像素计量的, 我这里导入的纹理分辨率是一千零二十四乘一千零二十四但 uv 空间本身,如果你想在 uv 空间中定位某个点,其实并不依赖像素, 它采用的是零到一的数值范围,这是一个可以无限缩放的简单坐标系统,本身没有分辨率限制。 再次强调,其中的纹理贴图必然有分辨率,因为图像本身就是像素构成的。为什么要解释这些呢?因为在开始任何数学运算之前,你需要先理解这些基础概念。 因为我们接下来对 u v 坐标进行的数学运算,会直接影响纹理的显示效果。 u v 坐标本质上就是 u v 空间中的 x 轴和 y 轴坐标,也就是 u 轴和 v 轴,至于哪个对应哪个,我总是忌讳。 对我来说, u v 坐标就像大多数人用 u 盘一样,插一次不行,翻个面再插还是不行,再翻回原来的方向,突然就能用了 u v 坐标。就是这种感觉, 神奇又让人摸不着头脑。我们可以对 uv 坐标进行各种数学运算,如果我们要获取纹理坐标,可以直接输入纹理坐标 texture coordinate, 或者输入世界坐标 world coordinate, 结果是一样的,将其直接连接到 uv 输入节点,实际上不会有任何变化, 因为这给出的是未重复平铺的原始纹理元素 taxo 坐标,也就是 u 轴对应 x 轴和 v 轴对应 y 轴的数值范围都是零到一。我之所以用 u v 来表述,是因为这是三 d 艺术的工作流程。 在三 d 艺术中,我们用 x、 y、 z 表示模型的空间维度, 而 u 和 v 则专门用于二 d 纹理的维度空间。我们可以按特定方式重复平铺纹理,大家可以看到,现在纹理被压缩在一起了,之前的线条现在变成了五条。这是因为我们将 u 轴方向平铺了五次, 如果将 v 轴也平铺五次,总共就会有二十五个重复的纹理,如果都平铺两次,看起来会更清晰。 现在数值范围变成了零零点五 e u 轴和零零点五 e v 轴。也就是同意张文理在平面上重复平铺向量坐标节点本身就能实现这个功能,但我觉得通过手动数学运算来实现,能让大家更好地理解原理。 首先,我们将向量拆分,把 u、 v 坐标拆成两个分量, 这样我们得到 r 分 量和 g 分 量,这里的 r 和 g 就 对应 u、 v 坐标的 u 和 v 也等同于 x 和 y 轴,它们只是不同场景下的命名方式。 r、 g 通常用于 rgb 颜色通道, x、 y、 z 用于空间位置坐标, 而 u、 v 则用于材质的纹理空间。在材质工作流程中,当我们在材质蓝图中拆分向量时,会使用 r、 g、 b 命名,但这并不意味着它们一定代表颜色通道。我们可以用拼接向量 open vector 节点将它们重新组合, 这个节点可以将两个单独的数值,也就是标量值或浮点值重新组合成一个二维向量,这正是 u、 v 坐标的形式。 为什么要这么做呢?因为这样看似没什么用,但实际上我们可以对 u 通道和 v 通道分别进行独立的数学运算。比如我们可以给其中一个通道添加数值, 比如给 u 通道添加数值,一开始可能看不出明显变化,因为如果我们给零加上一,结果还是一,所以整个纹理会偏移一个完整的平铺单位,最终看起来和原来一样。这就是为什么添加一的时候没有明显变化。 但如果我们添加零点五,那么原本的零点五位置会移动到左侧,然后数值继续增加到一,接着回到零,最后在终点又回到零点五,这样纹理就会向左偏移一小段距离, 如果添加零点二五,偏移距离会更小,以此类推。这就是如何实现纹理的平移效果。 如果你想制作滚动的纹理效果,只需要给 u v 坐标的 u 轴、 v 轴或两者同时添加数值,并乘以时间 time 节点。我们之后会更多地使用时间节点。现在先简单演示一下, 如果我们将时间节点连接到加法节点,大家可以看到纹理正在不断滚动,而且因为这张贴图的平铺效果很好,所以滚动起来非常流畅自然,这正是利用了 u v 空间的特性。 当然,除了加法,我们也可以使用减法。减法会让纹理向相反方向移动,有时候就是这么简单直接,所以减法本质上就是让纹理向反方向滚动。加法和减法主要用于实现纹理在网格上的滚动效果, 但除了加减运算,我们还可以进行乘法和除法运算,这部分才是真正有趣的内容,因为平铺效果主要靠它们实现。如果乘以一,结果不会有任何变化,因为任何数乘以一都保持不变。 在实际操作之前,我们先简单思考一下,如果零乘以二,结果还是零,零点五乘以二等于一, 一乘以二等于二, 那么如果我们将这个通道乘以二,会发生什么呢?答案是,纹理会开始平铺。为什么会这样呢? 因为被乘以的不是纹理上显示的像素值,那些只是纹理中的像素点,这里只是为了视频演示更直观。实际发生的是, u v 空间本身被扩展了, 也就是说,原本的零、零点五一,现在变成了零,零点五一一点五,最后到二, 数值范围被扩展了。如果乘以五,平铺次数会更多,数值范围会从零一直到五,中间包括零点五一一点五等所有增量。 这就是如何通过乘法实现纹理平铺的原理。理解了乘法,除法的效果就很容易预测了。 因为除法是乘法的逆运算,所以除法会实现纹理的放大效果。零除以任何数,非零,仍然是零。 当然,零不能作为除数,但乘以或除以零的情况,结果都是固定的零。当我们使用除法时, u v 空间的终点会变成零点五,所以文理会在零点五的位置就结束。我们再回到乘法的例子, 如果乘以五后再除以二, 数值范围会变成零到二点五, 大家可以亲自尝试一下。 u 轴方向的 u v 空间会放大到二点五的位置, 数值范围就是零,零点五一一点五二二点五。 这就是使用乘法和除法操作 u v 坐标的基础知识,这些运算非常重要,还有加法和减法。说实话,减法其实有点多余, 因为我通常的做法是,如果想实现减法效果,就添加一个负值,这样对我来说更直观。但你也可以直接使用减法,有时候直接用减法确实比添加负值更方便。乘法和除法在某种程度上也有类似的对应关系,它们只是实现相反方向的效果, 但在实际应用中非常实用。比如,如果你想添加一个参数来控制纹理放大,我们之后会详细讲解参数的使用,就可以使用除法。 如果想通过参数控制纹理,缩小平铺,就使用乘法。好了,这部分内容就讲到这里,我们先删除这些节点,已经解释了 u v 坐标以及如何对其进行加减乘除运算。现在我们来讲解颜色的相同运算。 我要把这张贴图换成渐变纹理。顺便说一下,我之前说不一定需要这张贴图,是因为虚幻引擎本身就有限性,渐变节点 功能类似,它有从左到右的 u 轴渐变和从上到下的微轴渐变。我自己制作这张渐变图只是为了让演示效果更直观。 现在我想先回到刚才的纹理坐标节点,用一张平铺效果不好的纹理来演示平铺和移动,这样更明显。 我们选择微通道,然后结合时间节点让它上下滚动。大家可以清楚地看到纹理,所以有明显的截断点。 我只是想快速演示一下这个效果。现在这些节点都不需要了,只保留渐变纹理。接下来我们讲解颜色的加减乘除运算, 这部分内容会非常有趣,而且实用性很强。首先从简单的加减运算开始,如果不添加任何数值,颜色不会有任何变化。如果添加零点五,整个颜色会变得亮一些, 因为颜色的数值范围也是零到一。比如渐变的最底部数值是零, 如果给整个渐变添加零点五, 原本零到一的渐变范围就变成了零点五到一点五。但正如我们上节课所说,基础颜色无法显示大于一的数值,所以实际显示的是零点五到一的渐变,超过一的部分会被截断。 减法运算也是类似的道理, 比如我们减去零点五,渐变范围会变成负零点五到零点五,零点在中间位置, 但和大于一的数值一样,颜色也无法显示比黑色更暗的数值及小于零的数值。零就是黑色,任何小于零的数值都会显示为零,所以减法运算实际上是让渐变的明暗分界线向上移动。 只用渐变纹理可能大家理解的不够透彻, 我们添加一个常亮节点 constant, 设置成漂亮的蓝色,连接到基础颜色。然后我们不用渐变纹理, 而是用上次用过的破零噪声纹理 pulling noise, 将这张贴图与蓝色进行加法运算,这才是真正实用的操作。如果我们在这里添加纹理运算,会作用于每个像素的数值。 之前我们都是给整个材质添加统一的数值,而用纹理进行运算时,会对每个像素分别执行加法操作,基于输入的纹理像素值,这样基础颜色是蓝色, 然后根据造生纹理的像素值添加相应的数值,最终会得到类似蓝色大理石的纹理效果,非常实用。 这里没有纯黑色的区域,因为噪声纹理中纯黑色的像素不会给基础颜色添加任何数值,所以这些区域会保留原本的蓝色,而数值越接近白色的像素,添加的数值越多, 最终颜色会逐渐接近白色,形成这种漂亮的蓝色大理石纹理。 减法运算也是同理,造声纹理中白色的区域会让蓝色变得更暗。接近黑色, 黑色的区域则会保留原本的蓝色。我觉得这个效果不如加法运算好看,你们觉得呢?反正我不太喜欢。接下来是尘除运算,我认为这是最重要的两种运算, 尤其是乘法,因为乘法可以用作蒙版 mask。 什么意思呢?如果我们直接将蓝色连接到基础颜色,显示的就是纯蓝色。添加造生纹理后,会得到刚才的蓝色大理石效果。 但如果我们使用乘法运算,造生纹理的每个像素会与蓝色的数值相乘。 也就是说,噪声纹理中黑色的像素会将蓝色数值乘以零或接近零的值,使该区域变成深色,而白色的像素会乘以一保留蓝色原本的颜色。 这就是如何用乘法制作蒙版效果。最终效果就是这样,如果我们将材质设置为半透明 translucent, 并将其连接到不透明度, opacity 会更容易理解蒙版的作用,因为蒙版常用于控制不透明度。这种情况下,蒙版纹理应该是纯白色的。 现在我们添加另一个节点,连接到基础颜色,再次设置为蓝色,这样就得到了一个不透明度蒙版。我们将纹理与纯白色相衬,必须是纯黑色和纯白色的蒙版。 这就是乘法运算的应用。乘法也可以用于基础颜色,比如我们用之前的两张纹理快速复制一下节点,使用刚才的渐变纹理将两者相乘后连接到基础颜色, 不透明度设置为百分之一百,材质类型恢复为不透明 o p a x, 因为我们不再控制不透明度。现在大家可以看到,这不是简单的蒙版效果,而是两者的像素值相成的结果。任何一张纹理中,深色的像素在输出结果中都会是深色, 只有当两张纹理的像素都是亮色时,输出才是亮色, 这就是噪声纹理与渐变纹理相乘后的效果。 我们还可以结合刚才学到的纹理坐标知识,还有一个重要知识点,二维向量 vector 二和三维向量 vector 三可以与标量参数 scale parameter 相乘, 输出结果仍然是二维向量或三维向量。就像我上节课演示的那样,当我们用一个标量值乘以颜色,三维向量会整体改变颜色的亮度。纹理坐标也可以这样操作,比如纹理坐标有 u 和 v 两个分量, 我们可以用一个标量值乘以它,两个分量都会被相乘,比如乘以五后连接到 u v 输入。 现在造声纹理的平铺次数变多了,这样可以制作出很多有趣的效果。最后来说除法运算,说实话,我觉得除法在颜色运算中不是特别实用, 不过还是给大家演示一下,虽然我通常不太会用到它,可能你们也一样。我们来尝试除法。除法运算中,被除数和除数的顺序很重要, 乘法则不需要考虑顺序,但除法的顺序会直接影响结果。大家可以看到除法的效果。这里我们用渐变纹理除以一的话,结果和原始值一样, 随着除数逐渐接近零,黑色的数值是零,除以零会得到无穷大, 所以这个渐变的效果是从正常颜色逐渐变得越来越亮,直至无穷大。 当然,我们知道颜色数值会被限制在一以内,因为普通材质无法显示大于一的数值。 但如果我们交换被除数,和除数的顺序,效果会完全不同。这个效果其实还挺有趣的,我挺喜欢的,因为现在是用另一个纹理除以渐变纹理得到了不同的效果, 顺序不同,结果完全不同。我们可以将其连接到自发光颜色 emissif color, 这样能更明显地看到确实产生了大于一的数值。因为出现了发光效果, 我再加点有趣的效果。现在这本质上是一张灰度图,没什么特别的。但如果我们将这个标量值与一种颜色相乘, 比如红色, 结果会变成桃红色,不过图案保持不变,只是颜色变成了我们设置的颜色。这样是不是非常酷? 尤其是在这里可以看到有些区域出现了过铺效果,尽管我们没有直接输入白色。好了,关于数学运算, u v 坐标和颜色的知识就讲这么多, 这些都是材质制作课程中必须掌握的基础。如果之后有任何疑问,欢迎随时回顾这个视频。 尤其是 u v 坐标的存储运算,用于纹理的放大和缩小。在习惯之前确实很反直觉。说实话,我有时候也会搞混,因为确实不太直观。 好了,这些理论知识讲完之后,我们就可以开始制作一些酷炫的材质了。