位置: 编程技术 - 正文

Strumpy Shader Editor入门教程

编辑:rootadmin
对于3D游戏来说,有很多绚丽的效果,都是靠shader(着色器)来实现的。不过很多朋友估计都不会编写shader,阿赵我自己也只是看了个入门,明白了它的原理,很多具体的效果都写不出来的。这次来介绍一个Unity3D的第三方shader编辑器:Strumpy。这个编辑器是完全可视化编辑,使用起来相对简单一点。先来看看我们这次需要做的例子:

推荐整理分享Strumpy Shader Editor入门教程,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

我们需要使用Strumpy,编辑出这样一个shader:包括了漫反射通道、法线通道、高光通道,以及在模型的边缘运动的光效。很显然,Unity3D自带的shader没有能直接实现这样的功能的,最多也只能使用法线和高光通道而已。由于这个例子稍微复杂,所以我们先来做一个更简单的例子,来熟悉一下strumpy的界面和基本操作。首先肯定是要先下载Strumpy插件了。在Asset Store里面有,免费下载的。我这里使用的是4.0a版本。下载完之后导入,会看到多了一个选项:

选择之后打开了Strumpy的编辑窗口:

Flie的功能很直观,新建,读取,保存和导出的功能,我们可以先看看读取功能

插件自带了一些已经编辑好的范例,有兴趣的朋友可以逐个看看,会有很大的收益。

然后我们来正式开始做这个简单的例子,我们准备了一张带有透明通道的贴图(拿斩首大刀的阿赵),接下来我们做一个shader,把这张贴图显示在一个面片上面,使它实现漫反射通道和透明通道的显示。我们新建一个着色器编辑:

注意看,新建时,在Settings的标签是红色的,然后Shader Name也是红色的,这是提醒我们,每一个shader必须要先有一个名称,而这个名称就是以后你在材质栏里面选择的材质名称了。比如你可以用“myshader/test”,这样test材质会出现在myshader下面。输入材质名词之后,我们先来Inputs里面,新建一个输入。这个输入,就是我们平常在Unity自带的材质球里面看到的输入通道了。假如我们需要它能调节颜色,那么就要新建一个颜色的输入,假如需要调用贴图,就要新建一个贴图的输入。这里我们新建一个Unity预设的MainTexture。熟悉用脚本替换材质贴图的朋友估计很熟悉这个标签的含义了。

新建之后,我们可以看到,出现了一个贴图选择的通道,就像我们平常操作的自带材质球一样。接下来我们会新建一些节点,然后对他们进行编辑。创建节点的方式有两种:第一种是在Nodes里面选择相应的节点:

第二种是在节点编辑的窗口鼠标右键单击,选择相应的节点。

我个人比较习惯第二种方法。我们选择了一个Sampler2D的输入

刚生成的时候,这个节点是红色的,因为我们没有指定输入的来源。想起刚才我们新建的Input了吧?那个MainTexture指定在这里。

在选中该节点的情况下,来到Node的标签,会看到提示错误了

我们选择_MainTex

这时候,节点就不再是红色了,而是出现了两项输出,分别是2D采样和UV信息。节点名称里面,也会相应的显示出_MainTex,也就是我们刚才新建的Input的名称。

接下来我们新建一个Tex2D方法节点。

然后像上图一样,用鼠标把他们之间连起来。这时候,把我们预先准备好的贴图指定在贴图通道里面

点击预览窗口的Update Preview,会看到预览的物体上面出现了我们的贴图

为了便于观察,我们选择一个片面模型。这时候,漫反射通道已经完成了,接下来我们继续做透明通道。

如上图一样,把A连接到Alpha通道。

然后来到Settings,按上图设置一下。Strumpy Shader Editor入门教程

打开背景显示,会看到透明通道已经生效了。在完成了以上的小例子之后,我们正式来解释一下Strumpy各个部分的意思吧。

在master里面,分别是各个通道的最终输出。

节点是通过有方向性的线条来连接的,分为输入端和输出端,上图是一个单向输入输出的例子。

再来是一个运算的例子,Add是相加的操作,这里是两个输入端进入了相加,然后输出一个结果。在这里要说明一下的是,这些操作很大一部分都是数学运算的方法,比如加减乘除、sin、cos之类,各位在学习之前最好要先理解他们的意思。比如相加就是互相叠加,两张图相加会整张图都变得更亮。相乘是波峰波谷的叠加,两张图相乘,会使亮的地方更亮,暗的地方更暗。其他的方法请各位自行百度去查阅了,就不一一说明。再来看看设置的选项

如果曾经自己写过shader的朋友,对于这些选项应该是很熟悉的。比如很多朋友问的双面显示,其实就是把CullMode选择为Off就行。介绍完基本功能,我们正式的来做这次的目标例子了。

这里我们准备了一个模型。

模型带有了漫反射贴图和法线贴图。

首先新建一个着色器编辑,然后给shader起名为:myShader

按照第一个例子的操作,我们完成了漫反射通道。

为了应用在我们的模型上,我们需要先生成一个shader。选择导出(Export As)

给shader起一个文件名。这个名称没有太大的意义。

导出之后,我们来到材质球选择的地方,会看到了我们新建的myShader,选择它。

然后指定漫反射贴图,我们的模型变成了上图的效果。

接下来,我们在Inputs里面新建一个凹凸贴图的输入

然后完成法线通道节点的编辑。由于需要使用法线贴图,所以需要加入一个UnPackNormal的节点。

这时候,我们会发现输入通道处多了Normalmap通道,我们把法线贴图赋予上去。模型变成上图的效果。

我们再新建一个颜色输入,作为高光的颜色。

完成高光通道和光泽强度的节点编辑。这里我用了一个Multiply(相乘),目的是让光泽强度范围的对比度更大,显得高光会更尖锐一点。高光颜色直接连接到Specular通道。

现在我们的模型已经拥有了一定的质感了。由于模型原来是没有法线贴图的,我拿了漫反射贴图来直接转换,所以效果差了点,有兴趣的朋友可以自己做法线贴图增强效果。接下来做有动画效果的光。

我们新建了几个输入:发光颜色(_LightColor),一个发光颜色的遮罩贴图(_Light),一个浮点(_dir)作为光运动的方向,一个范围选择(_RimPow)作为发光强度的控制。

这张是发光遮罩贴图,是一张黑白的梯度图。

这一个步骤的节点编辑有点复杂,基本的思路是将颜色和遮罩贴图混合在一起,并用时间控制UV动画:1、遮罩贴图我用了ViewDirection和Fresnel结合控制显示方向,并用_RimPow作为显示方向的次幂控制显示强度。2、为了让光会随着时间自己做动画,我是用来Time和_dir相乘,这样可以控制动画的速度和方向。3、为了让UV移动做动画,我用了UV_Pan。记得UV_Pan需要选择输入的轴,这里我选择了Y轴。

4、最后,我把发光颜色和遮罩运算的结果相乘,达到叠加波峰改变颜色的目的。

最后,发布shader,根据需要选择相应的遮罩贴图,指定发光的颜色、强度和方向,我们的例子就完成了。更多内容请访问狗刨学习网 声明:此篇文档时来自于【狗刨学习网】社区,是网友自行发布的Unity3D学习文章,如果有什么内容侵犯了你的相关权益,请与官方沟通,我们会即时处理。

Unity3D游戏开发之动画模型导入 Unity3D游戏开发之动画模型导入导入动画文件后,在工程(Porject)面板中选中,通过Inspector面板修改参数设置。在项目视图中选中模型文件。如果想用旧

unity游戏开发之[英雄联盟]的美女设计师:Katie De Sousa 狗刨学习网报道/此前SuperData的数据透露,《英雄联盟》年的收入将突破亿美元,而作为近几年红遍全球的MOBA游戏,《英雄联盟》不仅推动了电子竞

Unity协程(Coroutine)原理深入剖析再续 本文主要分为三部分:1)yieldreturn,IEnumerator和UnityStartCoroutine的关系和理解2)Cortoutine扩展——ExtendingCoroutines:ReturnValuesandErrorHandling3)CortountineLocking总

标签: Strumpy Shader Editor入门教程

本文链接地址:https://www.jiuchutong.com/biancheng/372859.html 转载请保留说明!

上一篇:游戏开发之BAT涉足电视游戏:下一蓝海还在等风吹?(游戏开发吧)

下一篇:Unity3D游戏开发之动画模型导入(Unity3D游戏开发毕业论文)

  • 计提房产税要含税吗
  • 什么是商业汇票和银行汇票
  • 利润表中利息费用包括什么
  • 公司优秀党员事迹材料
  • 查验发票会显示名字吗
  • 企业的开办费
  • 减免税款会计分录
  • 小规模纳税人增值税优惠政策
  • 投资款转为借款需要哪些证据
  • 退货应入会计什么科目
  • 发行股票所支付的手续费计入
  • 开了红字发票印花税怎么处理?
  • 补充养老保险税前扣除政策
  • 建筑业异地预缴增值税
  • 小微企业所得税优惠政策
  • 受赠人个人所得税
  • 报销话费属于什么费用
  • 期望和方差的计算例题
  • 工业产值怎么计算的 统计
  • 审计费可以抵扣进项吗
  • 会议费税前扣除最新税务规定
  • 物流公司运费账务处理
  • win10蓝牙鼠标已连接不显示
  • 此windows副本不是正版影响电脑使用吗
  • 苹果电脑屏幕键盘怎么去除
  • ScanMailOutLook.exe - ScanMailOutLook是什么进程 有什么用
  • 企业长期借款的利息,有可能计入的科目有( )
  • 外购货物应抵扣的进项税额
  • 技术安装工人包食宿
  • vue组件强制刷新
  • php 注入
  • 个人所得税生产经营所得B表
  • 购置固定资产进项税率
  • 防伪税款服务费抵扣
  • sqlserver 通用存储过程分页代码(附使用ROW_NUMBER()和不使用ROW_NUMBER()两种情况性能分析)
  • 代理记账的业务规范
  • 通过法院拍卖取得的房屋需要法院下确认裁定吗
  • 金税四期介绍 王军
  • 小规模纳税人专票开1%还是3%
  • 修理费用的会计怎么做账
  • 定期定额户要交哪些税
  • 银行承兑个人可以用吗
  • 减免税款科目期末有余额吗
  • 大额装修费按几年摊销
  • 技术服务费可以开专票吗
  • 航天金税服务费发票在哪打印
  • 发票项目名称可以自定义吗
  • 采购成品油会计分录
  • 外经证是在工程所在地办理吗
  • 上次年检怎么查
  • 税审报告一定要税所主任签吗
  • sql指定字段添加数据
  • mysql无法配置
  • linux ubuntu安装教程
  • win7 64位系统无法使用银行网银怎么办? IE9浏览器无法使用农业银行网银的解决方法
  • WinXP创建一键静音快捷键(在喇叭消失的情况下实用)
  • 内存不够用如何升级系统
  • 怎么备份和恢复goodnotes中的数据
  • win 超级终端
  • mac小技巧
  • 台式装win7
  • win8.1拨号上网
  • win8 开始
  • node链接数据库
  • nodejs 模块
  • 分区表 英语
  • 基于nodejs的项目
  • linux如何创建守护进程
  • css主要解决什么问题
  • unity shader ao
  • python自动化部署k8s集群
  • js dom方法
  • javascript 语言精粹(修订版)
  • android 动态化方案
  • js 堆排序
  • 浙江银行上班时间查询
  • 2019税务系统升级
  • 买下中国需要多少钱?
  • 马来西亚到中国机票多少钱
  • 建设工程造价咨询合同需要交印花税吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设