使用Animation实现摄像机动画
项目剧情模块分给了我做,其中很重要的一个功能就是摄像机旋转平移等操作,本来打算使用Camera Path这个插件制作的,但是鉴于项目Unity版本还停留在4.3,低于插件要求版本,另外编辑器做出来是交由策划进行编辑的,而他们的权限只能看到场景,代码部分很少,因此只能寻求另外的解决方案。
选择Animation组件实现功能有两点好处:
1.Animation是Unity自带组件,不需要任何其他代码支持,方便策划编辑。
2.直观,所见即所得,操作较为简单,功能强大。
实现过程中需要注意三个方面。首先,需要在摄像机挂在一个Animation组件,用于播放摄像机动画。
其次,需要教给策划如何去创建编辑一个动画文件。打开Animation窗口,选中摄像机,新建一个Animation文件,左侧是组件列表,通常只会用到Postion和Rotation两种,红线表示当前选中的帧,可以看到摄像机此时Position参数和Rotation参数,在场景中拖动摄像机编辑每一帧摄像机的状态,记录于每个帧。右侧横轴表示动画时间轴,图中的单位是秒,滑动滑轮可以进行缩放,两个帧点之间的距离与动画速度成反比。
最后,完成一个动画的编辑后需要修改动画文件Type,选中文件,将Inspector窗口改为Debug模式,修改Animation Type参数2为1。这个问题主要是由于新的Mecanim动画系统出现后,动画文件默认的类型会被改为适合Animator的Type,这里需要将之修改回来,否则会报The AnimationClip 'xxx' used by the Animation component 'xxx' must be marked as Legacy.错误。完成这些后将动画文件挂载于Prefab上,打包成AssetBundles,在游戏中加载完成根据需要将Animation挂载于摄像机播放,摄像机动画即会呈现出来。
其实并不推荐大家使用以上解决方案,如果版本支持,使用上文中提到的Camera Path插件是个非常不错的选择,插件是使用新版动画Animator来实现的。经过几个版本的完善,新版Mecanim动画已经比较可靠了,功能强大、所见即所得。这里分享出来主要是因为项目版本较低,记录一下这个自创的山寨解决方案。
使用Animation实现摄像机动画的更多相关文章
- Android动画效果之初识Property Animation(属性动画)
前言: 前面两篇介绍了Android的Tween Animation(补间动画) Android动画效果之Tween Animation(补间动画).Frame Animation(逐帧动画)Andr ...
- 3DS MAX调慢摄像机动画
在3ds max的右下角找到时间配置,然后出现该对话框,然后调整结束时间,将原来的时间翻倍,就能够是摄像机动画变慢. 下图的旋转速度比上图慢一半.
- Android动画主要包含补间动画(Tween)View Animation、帧动画(Frame)Drawable Animation、以及属性动画Property Animation
程序运行效果图: Android动画主要包含补间动画(Tween)View Animation.帧动画(Frame)Drawable Animation.以及属性动画Property Animatio ...
- jQuery Animation实现CSS3动画
jQuery Animation的工作原理是通过将元素的CSS样式从一个状态改变为另一个状态.CSS属性值是逐渐改变的,这样就可以创建动画效果.只有数字值可创建动画(比如 "margin:3 ...
- 基于animation.css实现动画旋转特效
分享一款基于animation.css实现动画旋转特效.这是一款基于CSS3实现的酷炫的动画旋转特效代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div class ...
- 示例:WPF中自定义StoryBoarService在代码中封装StoryBoard、Animation用于简化动画编写
原文:示例:WPF中自定义StoryBoarService在代码中封装StoryBoard.Animation用于简化动画编写 一.目的:通过对StoryBoard和Animation的封装来简化动画 ...
- Unity Animation System(动画系统)
动画系统: 支持:动画融合,混合,叠加动画,行走循环的时间同步,动画层,控制动画的各个方面(时间,速度,融合权重) 带有每顶点1.2或4骨骼的蒙皮网格,以及支持基于物理的布娃娃系统和程序动画. ...
- SVG Drawing Animation - SVG 绘制动画
一个小实验,探索 SVG 线图动画的使用情况,以前沿的展示形式呈现图形或网站元素的外观,模拟它们的加载.SVG 真的很强大,有许多创造性和可能性,使用 SVG 可以制作各种有趣的网站交互效果.今天这篇 ...
- Unity3D研究院之使用Animation编辑器编辑动画(五十四)
Unity提供了Animation编辑器,它可以为我们编辑物理动画.举个例子比如场景中有一个来回摇动的秋千,这个秋千在项目中完全只起到衬托作用,它不会与别的游戏对象有任何交互.如果这个秋千也用代码来 ...
随机推荐
- java.lang包的分类
提供利用 Java 编程语言进行程序设计的基础类. 1> 最重要的类是 Object(它是类层次结构的根)和 Class(它的实例表示正在运行的应用程序中的类). 2> 把基本类型 ...
- hdu 2043
Ps:自己写了以后又去看了下苏哥的....改进版的....学到东西,直接套用了. 代码: #include "stdio.h"#include "string.h&quo ...
- 2016 - 1- 14 UI阶段学习补充 transform属性详解
UIView的transform属性 transform是view的一个重要属性,它在矩阵层面上改变view的显⽰状态,能实现view的缩放.旋转.平移等功能.transform是CGAffineTr ...
- Objective-c 命名规则
1.方法名:第一个单词的首字母用小写,后面的单词首字母要大写<骆驼规则>,例如doSomething . doSomethingElse 2.类名:第一个单词的首字母要求大写,后面的单词首 ...
- N的阶乘的长度
阶乘是乘法 , 乘法的话 , 几位数*几位数的位数 就是 哪两个几位数相加 . 这个可以用log10来解决 , 所以有如下代码 . #include<stdio.h> #include& ...
- [!!!!!]Inno Setup教程-常见问题解答
[转]Inno Setup教程-常见问题解答 功能 * 翻译 Inno Setup 文字 * 它支持 MBCS (多字节字符集) 吗? * 将来会支持 Windows Installer 吗? ...
- 第一个Sprint冲刺事后诸葛报告
用户反馈:软件一般般,比较传统. 用户数量:5 团队改进建议:选择题与填空题太没有新意了,需要新的创新功能. 1.每个成员第一个sprint阶段有何需要改进? 成员 需要改进 邵家文 需要更多的技术的 ...
- OpenvSwitch架构
Openvswitch的架构 数据库结构和OVS-VSCTL # ps aux | grep openvswitch root 1117 0.0 0.0 21200 1580 ? ...
- setSelection()和requestFocusFromTouch()
昨天我遇到一个问题,点击返回的时候要在onResume()中用setSelection()定位到刚才点击的item,因为点击item进入后,我又一直点击“下一个”按钮,但是返回的时候listview不 ...
- 分享"狼用"API一個
API People that are interested in using our service for automated caching of their newly created .to ...