首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

大神教你shader forge,赶快来围观

——讲堂第一期——

shader也能够forge

大家好,这里是完美动力小讲堂,今天谭鹏老师要给大家介绍一款超级给力的插件——unity官方出品的shader forge。(翻译过来可以理解成shader加工厂,以下简称SF)

目前,已经发布上线的手机游戏绝大多数都是基于unity这一引擎完成的,比如说神庙逃亡、炉石传说、王者荣耀、纪念碑谷,甚至很多游戏打开运行的界面上会出现unity的logo,喜欢游戏的小伙伴们一定很熟悉。

早期的unity有些不尽如人意,再加上基于各种其他引擎的大作不断出现,尤其是虚幻系列引擎带来的超强视觉震撼力,unity似乎也只能抱住移动端不放了。unity为了强化多平台实用性,提升视觉效果,一直在转型升级。作为unity5的继任者,unity2017版本不仅可以应用于原有的移动端游戏开发,还拓展到了虚拟空间展示CG短片制作等其他领域,甚至可以很好地完成动漫剧集的制作,可以说是相当强大了。在unity引擎升级完善的基础上,诸多插件也随之而生,SF插件就是其中之一。

SF是官方出品的一款可视化编程插件,可以用来制作各种shader,这个插件的出现极大提高了制作效率,强化了视觉效果,也缩短了与虚幻4之间的差距。利用SF,我们可以根据自己的需求随意制作shader,而不是像以前一样,需要特殊效果的shader还要去求程序猿爸爸,现在,妈妈再也不用担心我的shader了。

SF的操作方式属于节点式可视化编程,通过各种节点的连接,来得到我们需要的效果,操作简单,容易上手,即便是对各种程序语言一窍不通的操作者,也能在一天之内掌握其要领。每个节点代表了一个函数,一种算法,或者一个属性,而这里面大多数的内容都是我们在初高中甚至小学就接触过的,只不过它是英文而已。比如ADD节点,其实就是数学里的加法,SIN节点是正弦函数,SLIDER节点是一个可以调节数字大小的滑块,就和我们在手机或者电脑上调节声音一样。下面我们用一个最简单的例子,来初步了解一下这个强大的武器。

首先我们在unity里创建一个Plane基础模型

然后给它一个新的材质球,进入shader froge的编辑界面做下图的节点链接

这里我用的是基础光照模式,分别用到了右侧主面板上的固有色(diffuse)、高光级别(specular)、光泽度(gloss)和法线(normal)四个通道。然后给固有色通道连接一个texture节点,在这个节点上加载一个2D纹理,如图所示。在法线通道同样链接一个texture节点,加载一个与固有色贴图相关的法线贴图。还在另外两个节点添加value节点,这个节点是一维常量,简单的理解就是一个数字,可以输入自己需要的数值,加入这两个通道是为了强化质感,大家在做的时候根据需要添加。

那么我们这么做能得到什么效果呢?请看下图。

我们得到了一个很有立体感的类似水泥砖或者石材的效果,但实际上它只是一个平面。不信你们看。

上面我说了很多才得到这个效果,其实实际操作只需半分钟。在这个基础上再通过其他节点的添加还能做出很多不同的效果,比如我们可以改变颜色,改变表面的粗糙度,可以把它变成金属,变成水晶,还可以让它发光,或者在上面添加很多动态特效,这些都是可以通过SF轻易达到的。

我们再来看几个案例效果。

最上面一个白色的就是刚才我们讲到的那个做法,只不过加入了平铺的数量控制。其他几个节点的逻辑也都不难,都是在一些基础效果上衍生出来的。

我刚刚有提到逻辑,是因为毕竟再怎么可视化,它也还是属于一种编程,只是我们不用敲代码而已,但还是要通过一定的正确的逻辑运算才能得到满意的效果,有的逻辑十分简单,有的却非常复杂,但只要清楚各个节点的原理,理清逻辑思路,相信每个人都可以成为shader大师。

以上就是今天的内容,如果大家喜欢,我们会陆续推出更多更炫酷SF案例讲解。或者你有想学习的案例,也可以留言告诉我们哦。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180409G1DSD200?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券