虚幻4Matinee功能 基本概念及简单演示样例(Sequence编辑器)
虚幻4提供的Matinee功能十分强大,能够用来制作动画、录制视频。
它的核心想法是在Matinee编辑器内提供一套自己的时间坐标系,在这个相对时间内通过调节actor的属性来改变actor的状态,进而达到制作动画的目的。假设更加大胆一点,我们不仅能够调节actor。还能够更改相机的状态,粒子效果的实现、光照的渲染等等。
总之。Matinee就是一个控制物体状态的可视化编辑器。
上面是编辑器界面。
1. 最重要的概念是“轨迹”。
一条轨迹就是一个属性随时间的变化曲线(注意。“一条轨迹”并非指他是真正的一条曲线。
比方,物体的Transform属性变化曲线,他可能包含了好几条曲线。我们仍称他为一条轨迹)。虚幻引擎提供了常见的轨迹类型,方便用户去控制不同的属性。待会会做具体介绍。
既然轨迹表示的是属性的变化情形,而属性必定是属于某个物体的。因此。轨迹必定是属于某个物体的,也就是“组”的概念。一个组就相当于一个actor。他能够有多条轨迹。
在轨迹界面右键就可以弹出“建组”的菜单,例如以下:
新空组相应的是actor,点击就可以。建立组之后须要指定这个组相应的actor,在场景中选择actor,在组上右键选择“使用选中的actor替换组actor”就可以。
(假设在点击“加入新空组”时已选中某个actor。会默认这个actor为组actor)
上图中“Actors”下的选项,各种“Track”就是真正的“轨迹”,是Matinee的核心概念。简介一下。
MovementTrack,运动轨迹,最重要最常见的一个轨迹。
顾名思义,它控制actor的运动相关属性,比方位置、旋转。
Visibility Track,可见性轨迹,它控制actor在特定时间的 显示隐藏。
Event Track。事件轨迹。专门用来给时间轴添加事件的。它能够在蓝图上暴露Matinee进行到的时间点,方便在Matinee外得到Matinee进行到的时间点。从而运行特定的代码。
Property Track(Bool Property Track,Float Property Track,Vector Property Track等),属性轨迹(布尔属性轨迹、浮点属性轨迹、向量属性轨迹等)。它控制的是actor的某个变量随时间的变化情况。这里须要组actor含有相应的变量,而且在变量“细节”面板勾选“显示到Matinee”。
其它Animation Track(动画轨迹)、Particle Tracks(粒子轨迹)、Sound Track(音效轨迹)等可參考官方文档。
2. 轨迹的改动
轨迹有两个轴,时间轴和属性轴。时间轴是Matinee的相对坐标系。从0開始。到何时截止由用户指定。
在时间轴内能够加入关键帧,关键帧处设置轨迹的属性值,关键帧之间的属性通过插值运算得到。例如以下图所看到的。
以运动轨迹为例,拖动底部黑色条到适宜时间处,按回车就可以在此处加入关键帧,回车后默认状态是加入的关键帧为选中状态(时间条在关键帧处,关键帧高亮。左下角提示“关键帧XXX”)。此时能够直接在场景中拖动、旋转物体就可以,最后的状态就是此关键帧处轨迹属性的值。
假设对非关键帧处通过默认插值模式得到的属性值不惬意或者希望自己定义插值模式。能够调出曲线编辑器。对属性曲线进行自己定义改动。
3.在蓝图中控制Matinee的播放
对Matinee的控制主要有下面几个蓝图函数。
Change Playback Direction(改动播放方向)
Pause(暂停)
Play(播放,从Matinee当前所处时间点处開始)
Reverse(反向播放)
Set Looping State(设置循环状态)
Set Position(设置Matinee相对时间位置)
Stop(停止)
4.其它
Matinee的其它功能如录制视频、导演组等等不在详述。能够參看官方文档,这里。
5.一个演示样例
终于效果例如以下,相似一个钟摆。录的时候游戏界面在后台,有点卡,实际效果钟摆是很流畅的。
主要是加入组actor(自己设计的钟摆蓝图),加入运动轨迹。添加5个关键帧,设置关键帧处钟摆位置,在曲线编辑器调节插值(这里实际仅仅调节了RotationX的值。分离了MovementTrack的Translation和Rotation),使得曲线光滑过渡。并在中间位置增大斜率、两边位置减小斜率,模拟实际效果。
虚幻4Matinee功能 基本概念及简单演示样例(Sequence编辑器)的更多相关文章
- Thrift的安装和简单演示样例
本文仅仅是简单的解说Thrift开源框架的安装和简单使用演示样例.对于具体的解说,后面在进行阐述. Thrift简述 ...
- Android通过startService播放背景音乐简单演示样例
关于startService的基本使用概述及其生命周期可參见博客<Android中startService的使用及Service生命周期>. 本文通过播放背景音乐的简单演示样例,演示sta ...
- Introspector(内省)简单演示样例 与 简单应用
简单演示样例: package com.asdfLeftHand.test; import java.beans.BeanDescriptor; import java.beans.BeanInfo; ...
- JBoss 系列九十六:JBoss MSC - 简介及一个简单演示样例
什么是 JBoss MSC JBoss MSC 即 JBoss Modular Service Container,是第三代 JBoss 产品 JBoss 7和WildFfly的内核,JBoss MS ...
- [hadoop系列]Pig的安装和简单演示样例
inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ).(来源:http://blog.csdn.net/inkfish) Pig是Yaho ...
- 一则简单演示样例看Oracle的“无私”健壮性
Oracle的强大之处就在于他能总帮助让你选择正确的运行计划,即使你给了它错误的指示. 实验: 1. 创建測试表: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZ ...
- 百度地图 Android SDK - 检索功能使用的简单演示样例
百度地图 SDK 不仅为广大开发人员提供了炫酷的地图展示效果.丰富的覆盖物图层,更为广大开发人员提供了多种 LBS 检索的能力. 通过这些接口,开发人员能够轻松的訪问百度的 LBS 数据,丰富自己的移 ...
- [Android]RecyclerView的简单演示样例
去年google的IO上就展示了一个新的ListView.它就是RecyclerView. 下面是官方的说明,我英语能力有限,只是我大概这么理解:RecyclerView会比ListView更具有拓展 ...
- MyBatis对数据库的增删改查操作,简单演示样例
之前一直有用Hibernate进行开发.近期公司在使用Mybatis.依据网上的演示样例,做了一个简单的Demo,以便日后复习 使用XMl方式映射sql语句 整体结构例如以下图 watermark/2 ...
随机推荐
- 读懂diff(转载)
作者: 阮一峰 日期: 2012年8月29日 diff是Unix系统的一个很重要的工具程序. 它用来比较两个文本文件的差异,是代码版本管理的基石之一.你在命令行下,输入: $ diff <变动前 ...
- java面试题之select、poll和epoll的区别
消息传递方式: select:内核需要将消息传递到用户空间,需要内核的拷贝动作: poll:同上: epoll:通过内核和用户空间共享一块内存来实现,性能较高: 文件句柄剧增后带来的IO效率问题: s ...
- [转] Makefile 基础 (10) —— Makefile 后序
该篇文章为转载,是对原作者系列文章的总汇加上标注. 支持原创,请移步陈浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886 我转自 ...
- [LeetCode] Minimum Window Substring 散列映射问题
题目: Given a string S and a string T, find the minimum window in S which will contain all the charact ...
- 快充 IC BQ25896 如何判斷 手機插著 adapter 充電器時,adapter Iout 大於限制,adapter Vout 小於 限制,導致 battery 不但沒充電且還需放電。
若電池在 放電時,ICHGR 為0. 若電池在 充電時,ICHGR有變化. 下面有寫到 charge current 所以不是 discharge current 狀況: ...
- Visual Studio Code 使用教程
visual studio code以下简称vsc.vsc这个编辑器也火了一会了,最近在跟风学一波typescript,网络上很多人说vsc是最适合ts的编辑器,而且这个编辑器本身也很好用,所以学一下 ...
- Android之观察者/被观察者模式Observer/Observable
Android 本身也是有观察者模式的.虽然项目中很多需要通知数据改变的地方,用了EventBus,但是不得不说这个观察者模式还是很好用的.最近在开发新版本的时候引用了腾讯的IM,之前写直播的时候就用 ...
- React-Native解决ListView 在Android手机上无吸顶效果
stickySectionHeadersEnabled={true} stickyHeaderIndices={[0]}
- javascript总for of和for in的区别?
for in是ES5标准,for of是ES6标准; for in是遍历对象属性,for of是遍历对象元素. for of兼容性还不够,移动端安卓微信浏览器貌似不支持,苹果的可以;web端IE支持也 ...
- Codeforces Gym100735 H.Words from cubes-二分图最大匹配匈牙利
赛后补题,还是要经常回顾,以前学过的匈牙利都忘记了,“猪队友”又给我讲了一遍... 怎么感觉二分图的匈牙利算法东西好多啊,啊啊啊啊啊啊啊啊啊(吐血...) 先传送一个写的很好的博客,害怕智障找不到了. ...