Unity插件 - MeshEditor(七)变形动画骨骼及蒙皮
MeshAnimation在物体的顶点比较多的情况下,悲剧是显而可见的,我一个一个的点选顶点肯定得累死,而且对于形态的调控不是很方便,应该说是很麻烦,要知道,骨骼动画因为有了骨骼以及蒙皮信息而有了灵魂,所以变形动画也该有适用于他自己的骨骼才对。
所以,借用Unity本身的父子节点机制,我大概将变形动画的骨架模拟了一便,但之所以称之为变形动画,也叫顶点动画,就是因为他的形态不可控,这就是不同于骨骼动画的本质,为其指定骨骼的话其实倒显得有些不合理了。
不过这里只是模拟以及更方便变形动画的调节,类似于骨骼动画那精髓般的属性——顶点权重,就不在我的考虑范围中了。
当然,目前的限制还是太多了,由于可变性太强以至于骨骼的形状会在调节动画期间在每一帧之间都会被打乱,所以事先需要保存骨骼的原型,在调节动画期间就不用太在意骨骼的形状了,就把他当做更方便的调节动画的工具吧。
第一步:选中任意物体,添加MeshAnimation(Componemt/变形动画/MeshAnimation)
第二步:新建骨架
Skeleton Asset为当前的骨架原型,可由外部导入(当前骨架为空时导入生效,“新建骨架”按钮可见便证明当前骨架为空)
点击新建骨架,会创建一个新的骨架,并为其创建核心骨骼(RootBone),核心骨骼只能有一条,其余所有骨骼都是其子骨骼
第三步:创建子骨骼
在各块子骨骼后面点击AddSubBone,输入骨骼名称,再点击Sure可为其创建子骨骼,点击Delete可删除此骨骼及其包含的所有子骨骼(核心骨骼不能删除)
暗红色标记的骨骼为当前准备为其添加子骨骼的骨骼,点击骨骼名称左面的箭头按钮可收起此骨骼的所有子骨骼,点击骨骼名称可快速在场景中定位该骨骼的操控节点
一条骨骼显示在场景中就是一个黄色圆形加一根黄线
第四步:创建整个骨架
按照自己的想法随意添加骨骼,并在场景中调节骨骼的位置(点击骨骼名称可快速在场景中定位该骨骼的操控节点)
大概就调节成了这样一个形状,一个三只脚两只手的东西
第五步:快速蒙皮
其实蒙皮就是将顶点与骨骼建立变换关系,当然unity的父子关系本就是一种很好的变换关系,只是不能包含权重。
这里我们可以直接点击“保存为原型骨架”将骨骼信息保存出去,不带有蒙皮信息更好,每次在调节动画的时候重新蒙皮。
我们选中任意顶点,可以直接将其关联到某某骨骼,也就是蒙皮。
当然顶点太多的话,这样做又得累死,所以我们点击快速蒙皮,弹出一个快速蒙皮操作窗口,我们选中场景中任意多的顶点,再点击快速蒙皮,选择目标骨骼,那么选中的所有顶点都会被关联到该骨骼上。
第六步:保存原型骨架
将场景中的骨架形状调节到你觉得可以作为初始的状态(比如人形骨骼动画里大部分模型的初始状态都是站立并两手平伸),设置好每个顶点的蒙皮信息,然后就可以点击“保存为原型骨架”,他将作为一个Asset资源文件存在本地,相同网格间可以共用,在还未新建骨架以前,为Skeleton Asset属性选择此原型骨架文件便可以导入其中的骨骼和蒙皮等所有信息,不过切记不要轻易的保存原型,因为由于后期的调动骨骼会乱,所以原型应当是作为最初始时的状态,除非后续有改动整个骨架。
为了使骨架的位置正常,请在创建骨架的时候和添加动画帧的时候都将目标物体的位置至于世界坐标(0,0,0),当然一个你认为记得住的位置也行,目的是为了保持两者的位置相等(创建骨架时,添加动画帧时)。
第七步:调节动画
然后我们可以开始调节动画了,操作方式跟以前是一样的,只不过这次我们只用调节每块骨骼就可以了,骨骼可以随意拉伸,随意旋转(这就是为什么要保存原型骨骼的原因),我们可以发现调节动画好像是要方便了那么一点点......
第八步:导出动画,并用MeshAnimationPlayer播放
导出的动画同样可以用于MeshAnimator状态机来控制,只不过为了方便的话还是MeshAnimationPlayer更直接,我们勾选启动播放,然后运行程序。
DLL版插件链接:http://download.csdn.net/detail/qq992817263/9659011
源码请看第一篇。
-----by MeshEditor
Unity插件 - MeshEditor(七)变形动画骨骼及蒙皮的更多相关文章
- Unity插件 - MeshEditor(五) 网格顶点动画(变形动画)
源码已上传至github,并持续更新,链接请看底部.(本帖跟随github持续更新) 网格顶点动画(变形动画)是针对于物体的形状可以随意变换并记录为关键帧的动画,虽然模型的顶点数据还是应该交给GPU绘 ...
- Unity插件 - MeshEditor(六) 变形动画状态机
变形动画状态机--MeshAnimator,是针对MeshAnimation的状态管理器,有大量类似Unity animator的功能,但MeshAnimator操作会更加简便,更加直观,居家旅(zh ...
- Unity插件 - MeshEditor(三) 面片破碎&网格破碎
网上的unity破碎插件很多,不过想着可以以自己的方式实现也不失为一种乐趣,虽然整体的表现性上显得有些差,但也并不会影响最终的效果,接下来我大致讲解一下破碎一个物体的流程,因为用到了协程计算碎片的原因 ...
- Unity插件 - MeshEditor(二) 模型网格编辑器(高级)
源码已上传至github,并持续更新,链接请看底部.(本帖跟随github持续更新) 继先前的一篇MeshEditor之后,MeshEditor第二版发布,这次在先前的基础上加入了为模型新增顶点以及删 ...
- Unity插件 - MeshEditor(一) 3D线段作画 & 模型网格编辑器
之前,因为工作需要,项目中需要动态生成很多的电线,不能事先让模型做好,更不能用LineRenderer之类的,因为画出来没有3D的效果,最主要是拐角的时候还容易破面,而我们要的是真真实实纯3D的电线, ...
- Unity插件 - MeshEditor(八)模型镜像特效
将静态模型(带MeshFilter)按指定轴向.指定距离克隆一个镜像物体出来,思路很简单,将模型的顶点坐标按指定轴取反,并累加上设定的距离值,然后就完毕了!不过,因为镜像体的顶点镜像于之前模型的顶点, ...
- Unity插件 - MeshEditor(四) 模型融化特效
现在的电影里有很多妖魔在死亡后身体逐渐融化并下滑最后化为一滩黑水的情景,本次出于兴趣大致研究了这个效果,原理是控制模型的顶点向一个方向坍塌,坍塌到最低点时再根据法线方向扩散形成黑水状. 第一步: 添加 ...
- Unity插件之NGUI学习(4)—— 创建UI2DSprite动画
创建一个新的Scene.并按 Unity插件之NGUI学习(2)创建UI Root,并在UI Root的Camera下创建一个Panel. 然后在选中Panel,在菜单中选择NGUI->Crea ...
- 【Unity 3D】使用 2DToolkit 插件 制作2D精灵动画
话说博客传图也太麻烦了吧,一个一个文件一个一个传....为什么不能直接粘贴了,自动上传呢... 刚直接粘贴了,结果一张图没有,又重新截一次图,在传了一次...真是太**了 好了,吐槽完了,开始博客吧 ...
随机推荐
- hdu 5119(2014北京)
题意: 随机选择一个数,如果后面有比他小的就进行交换,直到没有为止(算一轮).求多少轮后为递增序列 思路: 倒着找,如果有比经过的最小数大的,ans+1 #include <iostream&g ...
- python2.7练习小例子(二)
2):题目:企业发放的奖金根据利润提成.利润(I)低于或等于10万元时,奖金可提10%:利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可提成7.5%:2 ...
- 在java中String类为什么要设计成final
在java中String类为什么要设计成final? - 胖胖的回答 - 知乎 https://www.zhihu.com/question/31345592/answer/114126087
- 阿里云部署Node.js项目(CentOS)
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,用来方便地搭建快速的易于扩展的网络应用.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又 ...
- 使用webpack-dev-server设置反向代理解决前端跨域问题
webpack-dev-server是一个小型的Node.js Express服务器,它使用webpack-dev-middleware来服务于webpack的包,除此自外,它还有一个通过Sock.j ...
- SpringMVC与Zookeeper、Dubbo使用示例
Dubbo整合Zookeeper和spring示例程序 1.Dubbo架构 本篇文章基于dubbox,使用dubbo应该也可以正常运行. 我认为想讲清楚一个任何一个技术框架,首先熟悉架构是非常有必要的 ...
- weblogic AND jboss 反序列化漏洞
C:\Program Files\Java\jboss-4.2.3.GA\server\default\deploy\http-invoker.sar\invoker.war\WEB-INF serv ...
- python中input()和raw_input()的区别
两者均是python的内置函数,通过读取控制台的输入与用户实现交互.raw_input:将所有输入作为字符串看待,不管用户输入什么类型的都会转变成字符串. raw的 ...
- 模仿天猫实战【SSM版】——后台开发
上一篇文章链接:模仿天猫实战[SSM版]--项目起步 后台需求分析 在开始码代码之前,还是需要先清楚自己要做什么事情,后台具体需要实现哪些功能: 注意: 订单.用户.订单.推荐链接均不提供增删的功能. ...
- 纯CSS菜单样式,及其Shadow DOM,Json接口 实现
先声明,要看懂这篇博客要求你具备少量基础CSS知识, 当然如果你只是要用的话就随便了,不用了解任何知识 完整项目github链接:https://github.com/git-Code-Shelf/M ...