位置: 编程技术 - 正文

【猫猫的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特色)

  • 增值税进项税抵扣时间
  • 生产企业出口货物劳务免抵退税申报明细表
  • 预付款类发票可抵扣吗
  • 收据四联分别叫什么
  • 发票勾选后什么时候可以抵扣税
  • 利润表中财务费用为负数是什么意思
  • 去年的进项发票今年还能抵扣吗
  • 企业支付投资者股利属于什么引起的财务活动
  • 延期缴纳税款的审批机关是
  • 基金申购费有下限吗
  • 出差住宿普通发票进项税可以抵扣吗
  • 房屋租赁合同印花税租赁双方各自要交多少
  • 出售全资子公司合并报表怎么做
  • 投资支付的现金增加说明什么
  • 备品的定义
  • 增值税发票抵扣联丢失怎么办
  • 总分机构如何做账
  • 个人劳务费怎么开票
  • 增值税怎么补提
  • 企业合同约定调岗不接受辞退没赔偿成立吗
  • 电子承兑都是银行承兑吗
  • 银行摘要冲账是什么意思
  • 应付账款周转天数上升的原因
  • 收入可以用收据入账吗
  • 三证合一之后的税务登记
  • 收到的支票背书怎么写
  • 进项税和销项税借贷方向
  • 过桥资金法律规定
  • 样品送出,不收款怎么做账?
  • 出租固定资产收取租金
  • 疫情期间企业贷款利率多少
  • 核准类减免税有哪些项目
  • 公司年终奖怎么缴税
  • 常用的3个第三方类库
  • php事务特性
  • thinkphp框架怎么用
  • 离职之后个税
  • vue项目如何启动运行
  • win11电源高性能模式代码
  • printfi
  • 命令行文本编辑
  • 间接费用计算
  • 新准则公允价值变动科目余额为负数
  • 财政拨入的科技费是什么
  • 织梦添加文章如何修改高级参数
  • 借受托代销商品贷受托代销商品款
  • 印花税是按照开票金额还是当月收入
  • 库存商品出库分类
  • 库存现金总分类账
  • 费用的分摊要注意什么
  • 混合销售行为的例子
  • 城市维护建设税属于中央还是地方
  • 通行费发票增值税申报怎么填写
  • 广告设计要交文化事业建设
  • 加油卡充值可以开增值税专用发票吗
  • 资本公积溢价转增
  • 应收账款的注意要点
  • 研发支出是什么性质的科目
  • 机票差额发票和全额发票的区别
  • 研发费用按50%的预算
  • 境外中资企业再投资
  • 运输服务和运输费有什么区别
  • 提交免税申请
  • 软件生产企业培训内容
  • 企业租个人房屋个税代扣代缴
  • 会计基本前提包括会计主体货币计量资料完整和经济效益
  • Win9传闻汇总:通知中心+免费下载+手势功能等
  • solaris 2020
  • windows7安装后正常使用的安装方法
  • 配置windows server 2008
  • win7如何创建一个新用户
  • dwm22.exe病毒
  • ghost到一半报错
  • linux抓包语句
  • windows10总是出现打印机错误
  • linux vi中查找内容
  • WIN10更新失败
  • shell脚本的实现
  • javascript nextSibling 与 getNextElement(node) 使用介绍
  • 主要领导负责人
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设