位置: 编程技术 - 正文

【猫猫的Unity Shader之旅】之混合效果(猫的所有视频)

编辑:rootadmin

推荐整理分享【猫猫的Unity Shader之旅】之混合效果(猫的所有视频),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:猫的所有视频,猫的所有视频,猫的猫的视频,猫的好玩视频,猫的游戏解说,猫的猫的视频,猫的游戏解说,猫猫的游戏,内容如对您有帮助,希望把文章链接给更多的朋友!

  今天的好消息是,模型不再用立方体啦,也不是球和Plane,那些太土了,体现不出Shader的高大上有木有。囧了个囧,咳咳,我们是做学问,不要在意这些细节……

  好吧,我们这次的主角是Unity娘,大家到Asset Store可以免费下载到这个萌妹子~

  

勤劳的Shader君

  之前也有说过,我们的Shader最终任务是要计算颜色,但是为了最终的显示效果让老板满意,Shader君也算是煞费苦心啦。没办法,谁叫人家只是个小职员呢,工作多,没提成,额,此处省略一万字……总之,勤劳的Shader君不仅给出了PlanA,还给出了PlanB,然而,最终的颜色只有一个,怎么办,么办,办?

  不管怎样,Shader君最终还是给出了一个特定的颜色。也许是ColorA,也许是ColorB,也许两者都有。这种将多种颜色通过计算得到一种颜色的方法,就叫做混合。

萌妹的限量版马甲

  这次我们要做的是给Unity娘换一件个性的衣服,但是又不能完全去掉原来的衣服的特征,万一换个马甲不认识了呢……

  首先我们要给这件马甲一个单独的材质,叫做bodyMat,然后在新的Shader中定义两个贴图,这样就通过tex2D得到两个颜色信息。为了实现混合,最简单的方法就是把这两个颜色值相乘,代码如下:

  这就是限量款的效果:

  

  颜色在Unity中是以四元数来表示,Color(r1, g1, b1, a1)与Color(r2, g2, b2, a2)相乘的结果就是它们各自分量相乘后的颜色,即Color(r1*r2, g1*g2, b1*b2, a1*a2),这里我们只用了前三个分量,不过道理是一样的。

【猫猫的Unity Shader之旅】之混合效果(猫的所有视频)

  先来看下我们用到的第二张贴图(第一张是人家原来的衣服没啥好看的)

  

  这是一张黑白相间的图,对于白色的部分,与第一张图得到的颜色相乘后,还是原来的颜色,对于黑色的部分,相乘后变成黑色,所以第二幅图就好像盖在了第一幅图上一样。

  然而这种方式不是所有时候都能如我们所愿,比如把图中的黑色换成浅绿色:

  

  可以看到绿色和第一幅图的颜色混合后会有变化,既不是第一幅图的颜色,也不是第二幅图的颜色。这种结果并没有错,只是不一定使我们想要的,我们可能希望花纹的部分完全是第二幅的颜色。

  解决这个问题需要用到Color的第四个分量Alpha了,用Alpha值来控制哪些地方需要用第一幅图的颜色,哪些地方用第二幅图的颜色。

  修改后的效果如图:

  

  看到这里不知道大家有没有疑惑,我们用到了透明度,但是#pragma后面却没有加alpha,渲染顺序也没有改为Transparent,这是为什么呢?需要说明的是,那些透明材质中说到的内容,只是在将一个模型作为透明物体渲染时才会用到,而我们这个模型本身不是透明的,只是用了一下Alpha值而已。

  附一下用到的工程。

结束语

  今天没什么想说的啦。今天是劳动节,相传这是个需要大家更多地劳动的节日。好吧,希望大家都能像Shader君那样,做一个勤劳的人。

Unity3d中GridLayoutGroup自适应高度 呵呵,不断学习,不断进步!今天学习一下Unity3D中GridLayoutGroup根据子物体的个数自动调节高度。首先:框架得先搭好下面:进行一些必要设置最后:进

如何解决Eclipse在Ubuntu Unity下的图标显示问题 原文转自:

lua脚本入门 Lua的最大用途是在宿主程序中作为脚本使用的。Lua的语法比较简单,学习起来也比较省力,但功能却并不弱。在Lua中,一切都是变量,除了关键字!I.首

标签: 猫的所有视频

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

上一篇:Unity -2048 核心算法(unity核心模块)

下一篇:Unity3d中GridLayoutGroup自适应高度

  • 出口货物备案单证目录在哪里
  • 生产车间领用材料,用于产品生产
  • 营业成本包括三大费用如何称呼
  • 农产品计算抵扣的税务政策
  • 什么情况下要交个人所得纳税
  • 发票章没盖在盖章处
  • 环保专项资金可以转让吗
  • 存货转为公允价值怎么算
  • 联营和合营的区别
  • 劳务分包预缴税怎么算
  • 应收账款贷方余额表示什么
  • 收到股东增资款账务处理怎么做账
  • 关联企业间无偿资金的占用属于借款费用吗
  • 软件开发票入研发费用哪个明细科目?
  • 增值税开错了
  • 有形动产租赁印花税税率是多少
  • 车间扫帚存放架子
  • 工会基金是扣个人还是扣企业的
  • 研发样机转销售合法吗
  • 卫生许可证为什么需要两个健康证
  • 增值税进项税额转出的情况有哪些
  • 在windows7提供了一种什么技术
  • mac cpu
  • php tr td
  • rsync inotify sersync
  • 无线路由器温度范围
  • tdxcef.exe进程
  • PHP:iterator_to_array()的用法_spl函数
  • php基础入门教程
  • Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
  • 未按规定采取预防措施,导致发生严重突发事件的
  • 支付航天信息服务费怎么入账
  • 建信信托介绍
  • uniapp scroll-view基础用法
  • gcn时间序列
  • 什么是变动成本率
  • 非居民纳税人183天新税法
  • 座谈会费用报销明细怎么填写
  • python深拷贝与浅拷贝区别
  • 电子商务公司怎么做账比较合适
  • sql server数据库正在恢复
  • 小微企业认定需要哪些资料
  • 工会经费计税依据是应发还是实发
  • 税控盘 减免
  • 制单和审单的依据是什么
  • 交易性金融资产入账价值怎么计算
  • 事业单位应交增值税明细科目
  • 什么叫做未入账金额
  • 回收材料的好处和问题
  • 企业办公楼房产税如何征收
  • 应付利润科目
  • 小规模纳税人收入是含税还是不含税
  • 信用担保融资的缺点
  • wind如何安装
  • 邻居家的wifi隐藏后如何连接
  • 轻轻松松在树枝上摘果子用什么成语
  • linux系统怎么安装
  • 数据中心为什么要建在山洞里
  • win 10 ie8
  • linux中cat命令的用法含义
  • linux ftp服务端
  • mini programes
  • PQIBrowser.exe是什么进程 PQIBrowser进程查询
  • three.js gui
  • android如何导入文件
  • css布局的经典网站
  • OSG 砖块 shader 例子 GLSL
  • 查看系统网络连接数
  • css图片垂直居中对齐
  • 原生js实现promise
  • 下载python教程
  • centos6.9查看网卡状态
  • unity的shader在哪儿
  • Android EventBus发布/订阅事件总线
  • python中lambda怎么用
  • 国家税务12366电子税务局重庆
  • 福建电子发票开票流程?
  • 注销税务登记需要哪些材料
  • 中国税务手机版
  • 电子专用发票怎么申请领用
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设