位置: 编程技术 - 正文

Unity shader教程-第三课:实践!同一个shader,多个material。(unity shader cull off)

编辑:rootadmin

推荐整理分享Unity shader教程-第三课:实践!同一个shader,多个material。(unity shader cull off),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:《unity shader入门精要》,unity shader cull off,unity的shader用法,unity shader cull off,unityshader教程,unity shader视频教程,unity shader视频教程,unityshader教程,内容如对您有帮助,希望把文章链接给更多的朋友!

本文首发地址: surface surf Lambert这一行,回车另起一行后加入下面的三行代码

清除原来在这个地方的

找到方法 void surf(Input IN, inout SurfaceOutput o),把里面的内容改成

为保证你做成的最后内容跟我的一样,这里是最后的shader代码

到这里,我们就可以保存shader。回到Unity中。

回到Unity后,选中名字为myDiffuse的material,然后按下键盘上的Ctrl&#;D,复制出material,把它改名为myDiffuse2。同样的方式,复制出myDiffuse3, myDiffuse4。这个方式,能让我们制作出使用同一个shader的不同的四个material出来。

在Scene面板中,如果你没有加满4个sphere,可以现在添加。然后分别给这四个球拖入我们的myDiffuse、myDiffuse2、myDiffuse3、myDiffuse4这几个material。

Unity shader教程-第三课:实践!同一个shader,多个material。(unity shader cull off)

选中任意一个material,你可以在Inspector上选择Emissive Color或者Ambient Color,也可以通过拖动滑动条来改动数&#;,改动的过程中可以看到Scene中的物体会随你的改动而变化显示。同时,虽然我们只写了一个shader用到4个物体上,改动一个物体的material并不会影响到跟它使用不一样的material的物体。也就是说,我们属性里的&#;,其实是存在于material中。在我们改变相关的&#;的时候,unity会把&#;存到material对应的文件中,并在运行的时候,作为shader需要的参数送到shader中。由此,虽然我们只写了一个shader,但是因为送入的参数不同,因此物体的表现也就不同(为那些好奇的人,这节课的附录部分介绍了怎么打开material文件的方式,可以看到存储的内容)。

对于我们上面改动的代码的解释

当你在Properties块声明一个新的属性&#;的时候,你也就给shader提供了一种让用户通过Inspector面板调整内部&#;的方式。每个变量都会存储下最后用户修正的结果。但是,如果代码需要在SubShader{}这个块中用到这些&#;,必须在这个块中同时声明同样名字的变量,这个方式把我们在Inspector上的&#;和最后代码的&#;链接起来,形成一个整体。

一旦你在SubShader{}块中声明这些变量后,你就可以在surf()方法中使用到这些变量了。surf()方法中,我们用到的pow()方法是NVidia的cg语言提供的一个方法,unity shader可以用cg中的方法,这个方法跟其他语言中的pow类&#;,是“返回指定数字的指定次幂”。

附录:

Unity提供了把一些文件存成文本型的方式,我们可以利用这个方式来查看material文件的内容。

步骤:

菜单 Edit | Project Settings | Editor,会打开如下的面板

该面板的Asset Serialization中,Mode点开,选择 Force Text等进度条完成任务硬盘上找到我们的myDiffuse材质(material)文件(以.mat)结尾,用可以打开文本文件的软件打开(写字本、Ultraedit、Notepad&#;&#;都可以)查看里面的内容,我这里的如下图

图中高亮的地方可以看到我们选择的颜色&#;。

Unity 实现大转盘笔记 1、unity中要实现旋转一个gameobject,我们需要改变它的transform下对应的Rotation,由于我们的大转盘是2D的视角,所以我们首先需要明确大转盘旋转的方向是

Unity3d-反编译C#和提取资源 使用MonoDevelop查看代码1.解压缩一个Ipa文件,找到如下目录2.拖拽一个Assembly-CSharp.dll文件到MonoDevelop工具栏,即可查看C#代码其他C#反编译工具:.NETReflector

ubuntu . 重置unity桌面 今天ubuntu.发生内部错误(不知道做了什么操作,感觉应该是设置了什么快捷键导致的)然后重启后进入桌面发现侧边栏(启动器)顶部栏(面板)全

标签: unity shader cull off

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

上一篇:unity学习之摄像机的应用(unity摄像机在哪里)

下一篇:Unity 实现大转盘笔记(unity转盘游戏)

  • 小规模能否开利息专用发票?
  • 金蝶标准版如何结转到下月
  • 讲师培训费开票税点是?
  • 销售人员的工资属于什么会计科目
  • 冲红发票怎么填写信息
  • 处置可供出售金融资产取得的投资收益
  • 外购软件用于销售的会计分录
  • 科目汇总表的登记方法
  • 企业购买房产如何列入投资计划的
  • 红字冲销是加还是减
  • 代国外佣金代扣税金账务怎么处理?
  • 受托委托加工物资成本包括什么
  • 工会经费购买发的东西要算个税吗?
  • 发票销项负数的会计分录怎么做?
  • 营业资金账簿印花税减半
  • 武汉房产税多少
  • 小微企业工会经费的减免政策2023
  • 公司走税,对公司有影响吗
  • 债券的实际发行价格为什么
  • 月销售额未超过10万的免征税怎么算
  • 个体工商户申报流程图
  • 进项票与实际支出金额不符
  • 至极加速
  • win8换成win7重装系统
  • 专项资金下达期限
  • fsck是什么文件
  • PHP+HTML+JavaScript+Css实现简单爬虫开发
  • 浅谈一下新冠的好处
  • php合并字符串函数
  • 机器人折旧年限
  • java强制类型转换有哪些
  • 油票上没有公司名称可以报么
  • 企业取得政府奖励资金如何用
  • mongodb建立索引的命令
  • 跨年取得的发票金额大于暂估金额
  • 售后领料怎么做会计分录
  • 补缴印花税分录
  • 个人所得税分摊方式怎么填
  • 买新车检测
  • 建筑业 营改增
  • 对公账户一直没有对账,会有什么后果吗?
  • 使用银行汇票的结算方式
  • 保理公司的钱来自哪里
  • 民办幼儿园账务月末结转
  • 有限合伙企业的
  • 投资收益的会计科目
  • 资产减值损失的科目编码
  • 收到的出口退税款需要并入利润总额吗
  • 无发票材料可以入材料账吗
  • 非在职人员和其他人员的区别
  • 国际货运公司支付境外运费
  • 原材料入库损耗
  • 小企业会计准则和一般企业会计准则的区别
  • 支付给外包公司的工资和保险费
  • 工程与会计
  • 收到红字增值税发票哪里查
  • 商业银行的固定资产
  • mysql 5.7.5 m15 winx64安装配置图文教程
  • windows10的xbox如何录制视频
  • Ubuntu14.4下Sublime Text 3无法输入中文解决方法
  • u盘和移动硬盘和固态硬盘的区别
  • winxp文件夹选项
  • win102020h2
  • centos 安装rpm软件包的命令
  • linux去掉指定字符
  • input submit、button和回车键提交数据详解
  • 'GL_COMBINE_ARB' : undeclared 'GL_RGB_SCALE_ARB' : undeclared 问题
  • js实现倒计时60s
  • extjs DataReader、JsonReader、XmlReader的构造方法
  • python编程模拟
  • preorder遍历
  • perl-v
  • unity3d 代码
  • jquery判断控件是否存在
  • 原生js常用的方法
  • js 分页插件
  • 基层税务局长工作职责
  • 河南省地方税务局公告2017年第4号
  • 河南省优秀班主任2022
  • 哪些情况要交房租
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设