位置: 编程技术 - 正文

【猫猫的Unity Shader之旅】之扭曲模型(猫的所有视频)

编辑:rootadmin

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

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

  之前我们介绍的一些Shader效果都是在surf函数中做文章,也就是对渲染过程中的片段进行操作,实现的是模型表面的一些显示效果。然而,Unity Shader还提供对顶点阶段进行控制,来实现顶点的位置,颜色,法线等信息的修改。

一个简单的例子

  之前我们给过一个完整的Shader,用#pragma可以指定顶点函数。我们可以写一个简单的顶点函数,它什么也没有做:

  这时可能会出现这样的错误:

  

  这主要是Shader的默认渲染目标是DirectX ,必须手动初始化Input。我们可以在Edit->Project Setting->Player界面设置,选择Other Setting,可以找到use Direct3D 的选项。如果我们不想改或者确实需要Direct3D ,也可以直接用Unity给的方式初始化一下:

【猫猫的Unity Shader之旅】之扭曲模型(猫的所有视频)

  另一个需要注意的地方是appdata_full类型,它是在UnityCG.cginc中定义的一个结构体:

  可以看到这个结构体实际定义了许多和模型信息有关的变量,冒号后面的信息被称作语义,简单来说就是表示这个变量究竟代表什么东西。这就像大家都是人,为啥人家就是司令我们就是小兵呢,这背后的东西就是语义。

扭动吧,模型!

  顶点函数给了我们很大的自由操作的空间,appdata_full变量v被标记为inout,表示我们既可以用里面的信息也可以修改它,这里面的信息修改了,就相当于模型传进来的信息都被改掉了。我们还可以通过修改Input中的值传递给surf函数。

  上面代码实现了一个平面扭动的效果:

  

  我们首先在vert函数中修改了模型顶点的y值,实现了y值随时间变化的效果(可以回忆一下UV动画),同时将Input中的顶点颜色赋值。在surf中,对vert传入的颜色,计算出片段颜色。需要注意的是我们有一句Cull Off,它是在CGPROGRAM和CGEND外面的,也就是说它不是Cg代码。那么这句是做什么的呢?默认情况下,网格的背面是不会被绘制的(因为一般情况下看不见),但是我们这个例子中,当平面扭动的时候可以看到网格背面。如果没有Cull Off,就会看到网格背面是透明的,Cull Off就是关闭隐藏表面消除。

结束语

  在Surface Shader的使用中,很多人都只把视线集中在surf函数中。诚然,surf是很重要的,由于是逐片段的处理,效果也是比较好的。然而,代价就是会造成效率问题。很多计算,既可以放在顶点阶段,也可以放在片段阶段,效率不同,效果也有很大差异,这中间的取舍,就需要各位慢慢衡量了。

Unity工程特殊名字文件夹小结 HiddenFoldersFoldersthatstartwithadot(e.g..UnitTests/,.svn/)areignoredbyUnity.Anyassetsintherearenotimported,andanyscriptsintherearenotcompiled.TheywillnotshowupintheProjectview.以.开头(例如:.U

Unity进度条平缓Loading 在Unity中两个场景之间的过度,为了显得不唐突,常常在期间加入第三个场景,显示进度条的过度动画,如:privateAsyncOperationasync;async.progress;判定是否到

Unity中的单例模式 因为经常需要一个唯一的变量来处理数据,实现脚本之间的交互等,这时如果全部都用静态变量来存储显然是不合适的这时我们马上就会想到单例模式-

标签: 猫的所有视频

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

上一篇:使用BMFont+NGUI利用图片制作自定义字体

下一篇:Unity工程特殊名字文件夹小结(unity特色)

  • 所得税退税的会计处理方法
  • 什么情况要缴印花税
  • 税控系统的清单
  • 分支机构需要填报企业所得税纳税申报表吗
  • 个人缴纳工会会费比例
  • 税控盘忘记抄报反写怎么办
  • 原材料呆滞物料处理方法
  • 股本权益性投资是什么
  • 子公司之间固定资产转让
  • 建筑企业如何申请高新技术企业
  • 普通发票需要做分录吗?
  • 企业的停车违章怎么查
  • 填写报关单需要什么资料
  • 公司账上的钱可以转给法人账上吗
  • 定期定额怎么报税
  • 小规模可以接收专票吗现在
  • 固定资产暂估入账后续调整
  • 小规模企业记账流程
  • 研发费收入属于什么收入
  • 升级鸿蒙系统后
  • Win10 Build 19043(21H1最新版)即将推送 更新内容汇总
  • 小商业企业应交所得税
  • 最新的会计规定出台时间
  • 税盘减免税款的会计分录
  • 航天信息维护费300元能全额抵扣吗
  • win10资源管理器在哪里找
  • mac系统存储好大
  • 购入原材料所发票怎么入
  • 皮肤痒怎么回事
  • 销售费用属于损益类科目的收入还是费用
  • 如何确定销售数量
  • 建兰的养殖方法和注意事项 盆栽
  • 小规模纳税人超标认定一般纳税人
  • vue2转vue3工具
  • php中数组的常用函数及用法
  • ChatGPT全面升级,GPT4支持多模态数据。
  • 中国版ChatGPT即将来袭-国内版ChatGPT入口
  • thinkphp v5.0.24
  • 进出口会计账务处理
  • 股东分红算不算股利
  • 费用化支出期末一般转入哪个账户?
  • 采购入库单怎么生成
  • 哪些收入需要交消费税
  • 哪些合同不用计提印花税
  • 个体户取现金的几种方法
  • 向客户收取服务费会计分录
  • 单位买车和个人买车交税有何不同
  • 公积金由个人全部交,单位违法吗法吗
  • 月初包括哪几天
  • 无形资产减值准备借贷
  • 预付账款和应付账款减少
  • 网络服务费怎么入账
  • 简易征收的项目进项税可以抵扣吗
  • 什么是限售股融券
  • 公司申请土地建厂房
  • 租金是含税价还是含税金
  • 增值税其他收益包括哪些
  • 一般纳税人的发票抵扣有效期多久
  • 开来发票没有付款可以进入费用吗?
  • 进项税有什么相关要求
  • 公司注册代理费用标准
  • 食堂没发票如何记账
  • 企业失信是什么意思
  • linux查看du
  • centos5安装步骤
  • ppap是什么文件
  • win1021h2正式版
  • WIN10系统更新文件在哪里
  • 如何解决windows蓝屏问题
  • win8的开始
  • javascript居中
  • perl date
  • iframe嵌入页面出现跨域问题
  • shell脚本自动化
  • js如何修改style
  • base adk
  • android实现一个闹钟程序
  • android进阶书籍
  • 如何查询自己电子邮件地址
  • 广东省电子税务局电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设