我用的是unity5.xunity animationn.time为什么不能用了

程序写累了,就来玩玩酷跑小游戏吧,嘿嘿。
雨松MOMO送你一首歌曲,嘿嘿。
Unity3D研究院之使用Animation编辑器编辑动画(五十四)
Unity3D研究院之使用Animation编辑器编辑动画(五十四)
围观90585次
编辑日期: 字体:
Unity提供了Animation编辑器,它可以为我们编辑物理动画。举个例子比如场景中有一个来回摇动的秋千,这个秋千在项目中完全只起到衬托作用,它不会与别的游戏对象有任何交互。如果这个秋千也用代码来写控制它来回摇动,会感觉小题大做。此时完全可以使用Animation编辑器来完成。但是它目前还不能编辑 FK 和 IK动画,所以编辑器中编辑动画的种类还是有限的,如果有一天FK 和 IK动画都可以在Unity中编辑了 那就给力了嚯嚯。。。如下图所示,首先在Hierarchy视图中创建一个游戏对象,这里我就创建一个立方体Cube对象。鼠标保持选中状态,然后在Unity导航菜单栏中选择Window-&Animation将呼出动画编辑窗口。
如下图所示,Animation窗口弹出后,点击左上角那个“小红点”按钮。因为默认新建的Cube对象是没有动画的,所以这里将弹出创建动画窗口。在窗口中点击Save,此时一个名叫New Animation的动画文件将被保存在Project视图中。
如下图所示,此时动画将处于编辑中模式, 在右上方空白处点击鼠标右键,即可添加一个Frame , 点击Frame就会出现一道竖向的红线,上面对应着Frame的时间,这时候在左侧Transform中可以修改每一帧模型的位置,或者在编辑器中也可以修改,数值同样会被保存在每一帧的Transform中。
当你的帧编辑完成后,点击上图左上角那个运行的按钮。你可以在游戏视图中看到这个立方体对象已经按照我们设定的每帧的位置在播放动画了。图中左下角Show:all右侧可以设置动画的播放类型。为了看的清楚,这里我选择PING PONG让动画来回一直播放。动画编辑完成后,点击图中左上角“小红点”按钮 退出动画编辑模式。
退出动画编辑模式后,如下图所示,将刚刚编辑完的动画剪辑拖拽至立方体对象的Animation中,勾选Play Automatically自动播放。此时运行游戏你会发现立方体对象已经按照之前编辑的方式播放动画。
上面介绍的方式我没有写任何一行代码,如果你想动态的***一些播放事件, 比如当播放几秒的时候执行几行代码。此时你可以使用动画的事件来完成。先创建一条普通的脚本。把它绑定在Cube对象身上。在脚本中我写了两个方法 Event0()和Event1()。
123456789101112131415
using UnityEngine;using System.Collections;&public class NewBehaviourScript : MonoBehaviour{ void Event0() {
Debug.Log("Event0"); }& void Event1() {
Debug.Log("Event1"); }}
我们继续呼出Animation编辑窗口,如下图所示,在时间轴的空白处单机鼠标右键可以添加一个动画事件。 然后会弹出Edit Animation Event窗口,中间有一个Function的选项,Event0()就会对应到上面代码中 Event0的方法。你还可以在脚本中继续添加方法,在Function:的下拉菜单中都会看到。图中我在0:10处添加了一个动画事件,对应在Event0方法中,那么当动画播放0.10s的时候程序将会进入Event0方法中。
怎么样?动画事件还是比较好理解吧。讲到这里你是不是想问我?能不能让美术把动画都在Unity中来完成。***是否定的,因为它不支持FK 和IK动画,骨骼连带动画还是得在3DMAX 或maya中来完成。如下图所示你也可以打开一个美术在3DMAX 或者 maya中做的动画,这里会显示Read-only表示只读,你不能继续修改它。
Animation编辑器只能修改当前节点的动画,如果你想编辑它的子节点动画的话。只需现在父节点中找到某个子节点对象,然后在window-&Animation中呼出编辑器窗口即可开始编辑。
一口气写了这么多,最后祝大家学习愉快。哇咔咔。
本文固定链接:
转载请注明:
雨松MOMO提醒您:亲,如果您觉得本文不错,快快将这篇文章分享出去吧 。另外请点击网站顶部彩色广告或者捐赠支持本站发展,谢谢!
作者:雨松MOMO
专注移动互联网,Unity3D游戏开发
如果您愿意花10块钱请我喝一杯咖啡的话,请用手机扫描二维码即可通过支付宝直接向我捐款哦。
您可能还会对这些文章感兴趣!unity 动画系统是如何用的 - 移动开发当前位置:& &&&unity 动画系统是如何用的unity 动画系统是如何用的&&网友分享于:&&浏览:0次unity 动画系统是怎么用的?
问:unity动画系统是怎么用的?
答:你先要确定你unity绑定的动画组件是animation 还是animator, 前者是经典的动画系统,后者是4.x版本加入的新动画系统 Mecanim。
Animation 组件直接在unity脚本中使用animation.Stop()就是停止当前所有动画,Play()就是播放当前默认动画。 animation["你的动画 clip名称"]可访问clip的各种参数(可详见unity
脚本参考AnimationState类),speed动画速度(0表示静止), time动画当前时间轴位置, normalizedTime 规格化时间轴(从0到1.0代表时间轴位置),等等还有许多其它参数。比如,你有3个clip,a1,a2,a3加入了动画序列,当前你只想播放2, 从中间以速度0.5播放,你可以:
animation[“a2”].normalizedTime =
animation["a2"].speed = 0.5;
animation.Play("a2"); // 如果你想动作融合,就换成 animation.Blend("a2");
Mecanim的动画你要unity通过animator访问。
unity用animator.Play(动画状态名或编号,动画层,动画规划化时间)播放你一个动画状态。
animator.speed 调整animator的播放速度,0为静止。
兄弟连IT教育与全球移动游戏联盟(GMGC)共同设立中国首家基于高端游戏开发的兄弟连&GMGC手游学院!高薪就业,就学手游开发,详情咨询官网***:http://game.lampbrother.net/
高薪就业,就学手游开发!联系Q
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 1234567891011 Copyright & &&版权所有爬坑向(1)
unity3D(17)
写在前面:账号被盗,博客被封,直到今天才动手找回,没想到还挺顺利。刚好手头上碰到一个坑,记录一下。
如图,我在动画的末尾添加了一个AnimationEvent,我希望达到的效果。
if(动画拨到最后一帧时(情况一))
通知我,这里输出一个字符串,表示技能完整施放;
播放另一个动画;
else if(动画播放一半切换到另一个动画(情况二))
那么不触发这个AnimationEvent;
问题出现了,我发现无论我是中途切换动画或者让动画播完,AnimationEvent都会被调用。(此刻我的心情是崩溃的)。
。。。(查代码逻辑,过程略,其中并没有什么问题,耗费生命1 h)
于是我觉得问题出在动画系统。
。。。(百度,谷歌,没有。。耗费生命0.5f h)
自动(自己动手)修复吧。
。。。(把动画系统的参数改来改去,耗费生命1.5f h)
问题出在这!
我吧LoopTime取消掉,就可以了,也就是说动画如果是LoopTime的状态,无论如何都会触发AnimationEvent,以我的观点来看,这明显不是我想要的,所以我认为这是个BUG。
以上,BUG_1。
----------------------------------------------------------------------------
BUG_2是在调BUG_1的时候发现的。
如图,当LoopTime设置为true,这里我只调用一次动画,结束时却同时出现两条OutHitHeavy。这就表示AnimationEvent被调用两次,WHY?(这比上面那个BUG给我造成的阴影面价还大)
。。。。(各种无语)
自动修复。
细心的同学可能发现这张图和BUG_1的图的区别在:
& & & & & & & & & & & & & & & & & &&& & & & &和&
& & & & & &
没错,我的AnimationEvent向后移了一帧,超出了动作帧。
卧槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽槽!!
这尼玛求解释啊,玩人那吧!
同样,我取消掉LoopTime之后,这个问题就不存在了。
好吧,因为这个问题调了一下午,心情烦躁。。
列出这两个问题想听听各位的看法
就此搁笔了,如果文章对您有帮助,我深感荣幸
大四了,现在正在实习,同样,除工作以外也想做些有趣的游戏,个人更希望是娱乐式的游戏项目,如果有意的话请与我联系。
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:8095次
排名:千里之外
原创:17篇
(1)(1)(14)(2)(2)(2)(3)后使用快捷导航没有帐号?
只需一步,快速开始
查看: 386|回复: 1
为什么用particle and Animation脚本不能播放K帧的动画
TA的其他好贴
马上注册,加入CGJOY,享用更多功能,让你轻松玩转CGJOY。
才可以下载或查看,没有帐号?
怎么个不能放法,有提示吗,是不是版本太高不兼容啊
侯老师正版课程!100多学员亲历验证,真实用!
Powered by

参考资料

 

随机推荐