游戏中,经常会有这样的需求,即播放一段电影,给玩家更好的体验。比如摄像机朝向某两个NPC,两个NPC在那里交谈之类的。 在用Unity3D制作游戏的过程中,也经常会遇到这样的需求,所以在此花时间搭建了一个简单的电影模式框架,目的在于较方便的构建游戏中需要的电影模式需求。 此框架的构想是这样的:电影由一个个关键帧组成,每个关键帧代表一种电影模式功能,如摄像机的动画,角色的动画等等。此框架中提供了简单的摄像机关键帧。我们在Unity3D中完成所有关键帧的编辑,并且存为电影文件,然后在游戏中就可以直接读取文件进行播放了。下面就简单的介绍一下。 首先打开编辑器,从Movie菜单中选择Create: [/url] 随后在Hierarchy中便会出现所创建的Movie对象,并且在此对象上添加了Movie脚本组件: [url=http://unity3d.9ria.com/?attachment_id=271]
该脚本有一个Total Time变量和一个Save按钮,Save按钮就是用来保存电影文件的,稍后会说。Total Time就是需要指定的电影的总时长,单位为秒,该变量是用来控制电影的播放结束的。 随后我们就可以添加各种关键帧,此框架中提供了摄像机关键帧,我们就来添加一个摄像机关键帧。首先在场景中创建一个对象,该对象是用来添加关键帧的: [/url]
接着选中刚创建的对象,从Movie菜单中选择Add Key Frame -> Camera: [url=http://unity3d.9ria.com/?attachment_id=274]
此时选中的对象中就会包含CameraKeyFrame脚本组件: [/url]
CameraKeyFrame脚本组件的可编辑功能如下: Start Time是每个关键帧都会有的数据,指定该关键帧开始执行的时间,单位为秒。 Signature用于标识该关键帧将控制的场景中的对象,当勾选Is Tag时,表示的是给予将控制的场景中的对象的标签,而没有勾选Is Tag时,表示的是将控制的场景中的对象的名称。 Is Draw Path表示是否需要绘制关键中包含的路径点 Path Point Size表示绘制的路径点的大小 Editor按钮也是每个关键帧都会有的,用来打开关键帧编辑窗口 AddPathPointInfo按钮用于添加路径点信息 首先我们要做的就是设置Signature变量,由于我打算控制场景中的MainCamera,所以我设置如下: [url=http://unity3d.9ria.com/?attachment_id=273] [/url]
然后就可以使用AddPathPointInfo按钮来添加路径点信息了,添加路径点信息实际的工作步骤是这样的: 首先会根据Signature和Is Tag变量来查找相应的GameObject,然后就读取该GameObject的localPosition和localRotation作为路径点信息,这里我们直接添加2个路径点信息。添加完路径点信息后,可以通过Editor按钮打开编辑窗口进行查看和修改: [url=http://unity3d.9ria.com/?attachment_id=280] 可以发现,记录的就是指定的GameObject的信息。 这里还有一个Time变量,用于指定变换到该路径点所需的时间,单位为秒。 这里我们为了看效果,把第二个路径点信息修改下: [/url] 它代表的含义是当电影开始播放时,当此关键帧执行之后,将消耗0秒从指定的GameObject的位置变换到(0, 0, -3.48),接着将消耗5秒从(0, 0, -3.48)变换到(3.37, 0, -3.48)。旋转量没变化。 由于我们的摄像机关键帧的Start Time为0,也就是当电影一播放就将执行,而我们的摄像机关键帧的数据执行需要消耗5秒,所以电影总时间我们设定为6秒: [url=http://unity3d.9ria.com/?attachment_id=282] 然后我们就可以保存我们编辑完的电影了,选择刚刚创建的Movie对象,有一个Start按钮,点击后,选择保存路径文件就可以了: [/url] 接着我们可以选择看效果,首先必须进入运行模式,接着就可以单击Movie菜单中的Play项,此时会需要选取要播放的电影文件,选中文件后就可以看效果啦,我们会发现指定的GameObject对象发生了我们先前说明的操作: [url=http://unity3d.9ria.com/?attachment_id=284] 除了播放之外,我们也可以载入电影文件进行编辑,选择Movie菜单中的Load项,打开需要编辑的电影文件即可: [/url] 我们选择刚才保存的文件,就可以看到所有刚才完成的数据了,就可以在此基础上继续编辑修改: [url=http://unity3d.9ria.com/?attachment_id=281] 好了,框架以及摄像机关键帧的使用就是这样,有兴趣的朋友可以去下载源代码查看^-^:http://115.com/file/anju9qse#MovieEditor.rar
转自:http://www.cnblogs.com/twjcnblog/archive/2012/03/21/2409749.html
|