AutoCAD 3DMAX C语言 Pro/E UG JAVA编程 PHP编程 Maya动画 Matlab应用 Android
Photoshop Word Excel flash VB编程 VC编程 Coreldraw SolidWorks A Designer Unity3D
 首页 > Unity3D

Unity4.3 2D教程:动画控制器(5)

51自学网 2014-05-24 http://www.51zixue.net

动画事件

游戏逻辑与动画的同步有些棘手,还好,uniy提供的内置事件系统是绑定到动画剪辑中的。

动画剪辑可以通过调用脚本上的函数启动事件,这一脚本附在与动画关联的游戏对象上。比如,动画剪辑时,给猫添加脚本,并在特定时间内回调函数.

在分级结构选中小猫,增添一种称为猫控制器的新脚本C#。这一操作与第一部分的步骤有些相似,但接下来的剧透包含新的东西。

打开MonoDevelop中的猫控制器(CatController),若不确定如何操作,只需要双击项目浏览器中的猫控制器。

在MonoDevelop中删去CatController.cs里的两个空程序StartUpdate

现在将下列程序添加到猫控制器:

1
2
3
4
void GrantCatTheSweetReleaseOfDeath()
{
DestroyObject( gameObject );
}

剪辑完成时,调用这一函数CatDisappear,使猫消失。正如其名称所,这一程序就是破坏游戏对象的脚本,使僵尸猫回到其死后该去的地方。可能佛罗里达州?

备注:冷静,佛罗里达州。

将文件存档,返回Unity。

选中分层结构中的猫,选中动画预览栏剪辑下拉菜单中的CatDisappear。

将滑杆移动到120帧,然后单击动画视图的控制条里的添加事件按钮,如下图所示:

add_event_button

接着会弹出一个对话框,记住要选择组合框中的功能框。从下方截图可以看出,组合框的默认值是(No Function Selected)。如果不改动,这一事件将无效。

event_dialog_none

组合框中包含添加脚本到游戏对象的所有函数。也就是说,组合框不包含来自于单一动作的程序,比如StartUpdate

此时,只需要添加 GrantCatTheSweetReleaseOfDeath() ,所以选中然后关闭对话框。

event_dialog_selected

时间轴包含制作新事件,如下图所示:

event_in_timeline

将光标在时间轴里绕事件旋转,就会发现tooltip控件提示,表明函数会回调,如下图所示:

event_tooltip

右击事件弹出一个菜单,可添加,编辑或删除事件。

备注:你可以为动画事件函数设定零或任意参考值。如果需要调用的函数有参数值,那么供选择事件功能的对话框会显现一个定义域,用来设定发挥功能的参数值。

例如,下面的图片展示了int函数功能:

event_int_example

事件可以容纳以下几种类型:浮动,string函数,int函数对象参数或是动画事件对象。

动画事件可用来上述每种类型。下面的图片展示了编辑参数为动画事件时的程序对话框。

event_event_example

让屏幕动起来。单击动画预览中的InConga复选框使小猫钝化,接着再点击InConga复选框,取消复选框。小猫消失在沙堆时,仔细观察。

更为重要的是,小猫在分层结构中不在出现,如下图所示:

cat_removed_from_scene

真正玩游戏时,你可能会想循环使用小猫对象,而不是不停地创建和销毁。但对Zombie Conga.工具来说这一点是可以接受的。另外,你真想生活在一个循坏使用猫咪的世界吗?

福利:支招动画预览

本教程不可能囊括Unity中动画的方方面面。Unity动画系统-Mecanim,极其复杂。并且这一系统最初是为3D动画量身制作的。然而,大家都知道,现在这一系统同样适用于2D动画。

这部分的一些备注在本教程中不会再出现,但却有益于你的动画制作。

any_state

Any State

除了动画预览用到的state之外,还有另外一种蓝绿色矩形标签Any State,如下图所示:

事实上,这并不是标签,而是图案片切换的一个特殊端点,可随时出现。

例如,假设你在编这样一个游戏:游戏中玩家可以发射武器。不管哪种动画,选手都在试图开火。这种发射动画叫作火力武器。

你可以从Any State为FireWeapon创建一个图片切换,而不用从所有状态中去创建。

接下来,如果图片切换的条件满足了----在这一假设情况下,FirePressed布尔型变量的参数值可能为真----那么不论此时动画控制器处于什么状态,图片切换都会启动。

原文链接:Unity 4.3 2D Tutorial: Animation Controllers


建议使用电驴(eMule)下载分享的资源。

说明
:本教程来源互联网或网友分享或出版商宣传分享,仅为学习研究或媒体推广,51zixue.net不保证资料的完整性。
 
上一篇:Unity4.3 2D教程:动画控制器(6)  下一篇:Unity4.3 2D教程:动画控制器(4)