位置: 编程技术 - 正文

Unity3d 人物换装之 一个Shader处理3张图片 减少DrawCall(unity2d角色换装)

编辑:rootadmin

推荐整理分享Unity3d 人物换装之 一个Shader处理3张图片 减少DrawCall(unity2d角色换装),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:unity spine换装,unity人物换肤用什么方法,unity替换人物模型,unity换装游戏设计,unity2d角色换装,unity人物换肤用什么方法,unity中2d人物换装,unity人物换肤用什么方法,内容如对您有帮助,希望把文章链接给更多的朋友!

在上一篇

Unity3d人物换装之Mesh合并(材质合并)

中,我通过一个例子,将三个带有不同颜色 RGB的立方体,合并Mesh和材质到Character这一个GameObject中。这样原本对3个GameObject的操作只需要对Character这一个GameObject进行操作就好了。但是我们的任务还没有完成。

合并之前的游戏:

合并之后的游戏:

大家注意看合并之前和合并之后,虽然GameObject数量减少了,但是DrawCall一个都没有减少哦!之前是4个,合并之后仍然是4个。

简单的来说呢,就是一个材质球,一个DrawCall。也就是说呢,一个Shader,一个DrawCall。

既然知道了一个Shader一个DrawCall,那我们就开始着手去处理,把红、绿、蓝这三张图片,在一个Shader中进行处理,只使用一个材质球,这样就只有1个DrawCall了。

Unity3d 人物换装之 一个Shader处理3张图片 减少DrawCall(unity2d角色换装)

我们来创建一个Shader,就叫CombineShader吧,在默认的Shader代码基础上,删掉MainTex这个纹理,添加我们自己的三个纹理:_Red 、_Green 、_Blue .

在上面的未完成的Shader中,我取了_Red 的纹理来做取样。我们接着修改脚本代码,使合并之后的GameObject Character使用CombineShader创建的材质。

运行之后能看到,在Character这个GameObject使用的材质球中,需要输入三张纹理图片。

现在再看,DrawCall数量已经降到2了,也就是说,合并之后 由原来的3个DrawCall 降到了 1个DrawCall。

但是还是有问题呢,为什么只显示一个立方体,哈哈,是我们代码写错了。

应该改为

好了,这次可以显示了,但是为什么没有贴图?

为什么没有贴图?因为我们只是在Unity中设置了贴图,但是在Shader中还没有去使用它们。

将Shader修改如下:

我们看到在surf 中对顶点颜色的Alpha&#;进行了判断处理,这是利用顶点色Color的属性,在代码中进行赋&#;,来区分当前顶点原来是属于哪一个立方体的。比如说color.a是0,那么原来就属于红色立方体,就给它从红色纹理来取样。

最后看运行结果,DrawCall减少到2 ,Character也完整的显示出来了。

工程示例下载:

【猫猫的Unity Shader之旅】之简述3D图形学 上次我们说到一个完整的Shader的比较完整的框架,如果大家之前没有接触过3D相关的技术的话看起来可能会比较吃力,其实这也在猫猫的意料之中的。3D

Unity3D游戏开发之在Android视图中嵌入Unity视图 转载自:

UnityRandom介绍 介绍UnityRandom是一个针对Unity3D的伪随机数库,使用C#语言开发。代码和文档都在Github上。UnityRandom采用Mersennetwister伪随机数发生算法,能够快速产生高质

标签: unity2d角色换装

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

上一篇:Unity 使用WWW类同步加载资源

下一篇:【猫猫的Unity Shader之旅】之简述3D图形学(猫的喵喵)

  • 增值税发票税控开票软件
  • 个体户定额超了怎么收费
  • 企业土地使用税征收标准
  • 私车公用是否合法
  • 固定资产盘盈为什么计入盈余公积
  • 公司之间往来款需要开收据吗
  • 个人先进奖励要缴纳个税吗
  • 社保缴费基数什么意思
  • 工资中事假扣款执行依据
  • 在企业所得税中增值税可以扣除吗
  • 营改增一般纳税人标准
  • 外汇资本金入账要求
  • 建筑业异地预缴税款怎么抵扣
  • 产品在海关发生质量问题
  • 林木育种的意义和作用
  • 收了款未开票凭证如何做
  • 物业前期介入费用测算
  • 培训费用可以开专票吗
  • 营改增后消防维保税率是多少?
  • 挂靠经营的纳税人
  • 小规模纳税人季度多少免税
  • 职工因公出差伙食补助标准
  • 减税降费新政策解读
  • 合作社未按时报税怎么处理?
  • 电子银行承兑汇票到期选择线上清算
  • 收到电子银行承兑汇票怎么做账务处理
  • 日用品 食品
  • 网页游戏玩着卡
  • 电脑台式机显卡怎么拆
  • win11系统设置快捷键
  • 补缴社保费可以投诉,也可以申请仲裁吗
  • 库存股属于什么项目
  • 招待费报账怎么查
  • 报废机器设备如何缴纳增值税
  • 只有使用权的房子能继承吗
  • 存货出入库的账务处理
  • 遥感图像超分辨率 坑
  • php怎么上传图片并保存到数据库
  • 苹果2021年在中国不能用了吗
  • 个人帮公司代持股份
  • db2udb
  • sql获取第一条记录的内容
  • php命令行模式
  • 海关进口增值税专用缴款书稽核比对可能出现哪些结果
  • 政府预算会计要素包括
  • 坏帐损失的税务处理
  • 固定资产一次性扣除后第二年账务处理
  • 高新企业研发收入占总收入比例怎么算
  • 融资租赁取得的机器设备的账务处理
  • 企业代办业务有哪些
  • 残疾人就业保障金
  • 实收资本认缴怎么做账,要做账吗
  • linux实现mysql数据库每天自动备份定时备份
  • ubuntu mysql 5.6版本的删除/安装/编码配置文件配置
  • u极速u盘启动官网
  • windows server 2008 r2开启远程访问
  • 怎么禁止p2p下载器
  • win8 开始
  • Mac OS X Mavericks的Finder打开不同标签的操作步骤
  • Ext JS 4实现带week(星期)的日期选择控件(实战一)
  • android app开发中五种常用布局的运用场合
  • ghost详细说明
  • python语言基础与应用答案
  • unity手机游戏开发教程
  • nodejs mongoose
  • vue router routes
  • 批处理是什么
  • google gsoc
  • Unity3D游戏开发标准教程
  • unity灯光闪烁效果
  • javascript视频教程推荐
  • Windows环境下搭建Python开发环境的方法
  • 如何查询以前月份发票超限量的申请
  • 汽车发票包含增值税吗
  • 税务局航天信息的操作流程
  • 重庆税筹公司
  • 个人所得税每年都可以退税吗
  • 车辆购置税怎么买
  • 亮点纷呈的意思和造句
  • 百旺税控盘口令错误被锁了怎么办
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设