UE Sequence学习

news2024/9/26 1:27:22

UE4中的动画编辑器 —— Sequencer in UE4 - 知乎 (zhihu.com)

UE4 LevelSequence源码解析 - 知乎 (zhihu.com)

C++模块

对ue4 sequence的学习和理解 - 知乎 (zhihu.com)

必须要先在你项目工程的.build.cs里加入 MoviePlayer, LevelSequence, MovieScene.

 引入头文件

#include "MovieSceneSequencePlayer.h"
#include "LevelSequence/Public/LevelSequencePlayer.h"
#include "LevelSequence/Public/LevelSequence.h"
#include "LevelSequence/Public/LevelSeuqenceActor.h"

在c++开发中,我们一般访问sequence需要定义两个最基本的类.

这分别代表一个一个actor的类和一个实际播放控制的类.我们在代码中这么控制获取他们.

假定我先定义个sequence的引用。

然后使用它来构造.

当构建成功,我们则可以使用下面一些常用函数来控制和访问它们.

 

UE4 Sequencer 源码分析 - 知乎 (zhihu.com) 

ALevelSequenceActor:是一个Actor,由它来负责加载、初始化、Tick 等操作。

ULevelSequencePlayer:运行时的主要接口,可通过这个来控制Sequence 的播放、暂停、跳转、循环控制等等。

ULevelSequence:Sequence 所对应的UAsset。

UMovieSceneTrack:序列化的Track 基类。

UMovieSceneSection:序列化的Section 基类。

FMovieSceneRootEvaluationTemplateInstance:运行时用于评估/采样的工具类。核心是Evaluate 方法。

FMovieSceneEvaluationTrack:通过UMovieSceneTrack 的Compile 后创建的运行时轨道类。

FMovieSceneEvalTemplate:Compile 后生成的Section 评估/采样工具基类。关联到序列化的UMovieSceneSction。

初始化流程

ALevelSequenceActor::PostLoad -> ULevelSequencePlayer::Initialize 和Lazy Initialize 的SetupFrame。

更新流程

ALevelSequenceActor::Tick -> UMovieSceneSequencePlayer::Update -> FMovieSceneRootEvaluationTemplateInstance::Evaluate -> FMovieSceneEvaluationTrack::Evaluate -> 具体某种Section 类的Evaluate。

 Sequencer 文件结构

Sequencer文件 拥有可自包含的特性。具体说来,其可以在 LevelSequence文件 中嵌入 LevelSequence文件。

                                                      有自包含特性的 LevelSequence

        通过编辑器 Toolsbar 创建 Sequencer文件 时,我们可以创建两种文件,一种是 Level Sequence,一种是 Master Sequence。这两种文件都是 Level Sequence,Master Sequence 是已经预包含了数个 LevelSequence文件 的 LevelSequence文件。

重要术语

Shot:镜头/场景/子序列。用一个SubSequence 去实现,可以包含多段Track(轨道)。

Take:镜次。某Shot(镜头)重复拍摄的次数。最后用的镜头通常在许多镜次内选择。

Camera cut:镜头切换。一种Track(轨道),用来切换镜头。

Track:轨道。拥有一条独占的时间轴轨道,能在上面加入Section(片段)。

Section:片段/段落。针对某种特定类型的属性,在时间轴上加入确定的关键帧。

Key:关键帧。针对某种特定类型的属性,在某个特定的时间,对应某个特定的值。

Sequencer Track(轨道)

Sequencer 允许创建多种轨道,除了有具体对象的轨道之外,还能够创建一些功能性轨道,下表对 Sequencer 中能够创建的轨道进行了分类:

轨道翻译类型
Actor To Sequencer演员对象
Audio Track音频对象
Event Track事件对象
Camera Cut Track相机切换对象
Shot Track镜头轨道对象
Time Dilation Track时间膨胀功能性
Subscenes Track子场景对象
Fade Track渐变功能性
Level Visibility Track关卡可见性功能性
Material Parameter Collection Track材质参数集对象
Media Track媒体对象

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1981278.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

我所理解的sprd-camera摄像头框架流程分析

摄像头的图像格式:RGB24,RGB565,RGB444,YUV4:2:2 RGB24 表示R、G、B ,3种基色都用8个二进制位表示,那么红色、绿色、蓝色各有256种,那么由这三种基色构成的颜色就是256X256X256=16,777,216种,约等于1677万。UV 和我们熟知的 RGB 类似,是一种颜色编码格式。 YUV 包含三…

sonatype私服配置与下载

文章目录 私服下载地址setting.xml配置java中pom.xml配置上传 私服 下载地址 地址:https://help.sonatype.com/en/download.html 百度网盘地址链接: https://pan.baidu.com/s/1_sjjHbXs27ya49SEcN9XNw 提取码: g56i 1.下载后解压得到两个文件 2.进入到nexus-3.…

揭秘脑囊肿:了解那些不容忽视的症状

脑囊肿,作为颅内的一种良性占位性病变,虽然不常见,但其潜在的症状却可能对患者的生活质量产生显著影响。了解脑囊肿的症状,对于及时诊断和治疗至关重要。 头痛:脑囊肿最常见的症状之一是头痛,这通常是由于囊…

【海贼王航海日志:前端技术探索】CSS你了解多少?(一)

目录 1 -> CSS是什么 2 -> 基本语法规范 3 -> 引入方式 3.1 -> 内部样式表 3.2 -> 行内样式表 3.3 -> 外部样式 4 -> 代码风格 4.1 -> 样式格式 5 -> 选择器 5.1 -> 选择器的功能 5.2 -> 选择器的种类 5.3 -> 基础选择器 5.3…

SQL进阶技巧:数据预处理如何对数据进行分桶【分箱】?

目录 0 引言 1 数据准备 2 数据分桶SQL实现 2 1.基于规则的分桶 2.2 等距分桶 2.3等频分桶 3 小结 0 引言 数据分桶(Bucket)作为数据预处理的一部分,是进行数据模型建设的前提,是构建特征工程的重要手段。也被称为离散分箱或…

【算法】KMP算法

应用场景 有一个字符串 str1 "BBA ABCA ABCDAB ABCDABD",和一个子串 str2 "ABCDABD"现在要判断 str1 是否含有 str2,如果含有,就返回第一次出现的位置,如果不含有,则返回 -1 我们很容易想到暴力…

The Llama 3 Herd of Models 第8部分语音实验部分全文

第1,2,3部分,介绍、概览、预训练 第4部分,后训练 第5部分,结果 第6部分,推理 第7部分,视觉实验 8 Speech Experiments 我们进行了实验来研究将语音功能集成到Llama 3中的组合方法,类似于我们用于视觉识别的方法。在输入端,一个编码器,连同一个适配器,被并入处理语…

低代码开发是什么意思?低代码是开发的未来吗?

在数字化转型的浪潮中,低代码平台是一股不可忽视的力量,它正在以前所未有的速度改变着软件开发的格局。低代码不仅极大地简化了开发流程,降低了技术门槛,还通过高效、灵活的特性,为企业和开发者带来了前所未有的创新机…

页面弹窗中英文切换

一、遇到的问题 页面右上角弹窗如下 二、解决 去掉 lang"en"即可。

SVPWM5段式7段式差异分析和关键代码基于TI F28035

SVPWM5段式7段式差异分析和关键代码基于TI F28035 5段式有一相占空比始终为0或者1 扇区判断的扇区号和实际扇区不是一一对应,直接使用,而是映射关系 扇区判断变量 7段式和5段式在基本矢量作用顺序上的差异 SVPWM算法详解(已标注重点) 来自这篇文章,但经过实际测试,发现是…

计算机和医学领域成重灾区!5本TOP刊也位列其中,请大家谨慎投稿!

【SciencePub学术】自从Hindawi一年撤稿多达一万多篇的事件以来,官方对期刊质量的管控就越来越严格了。更有很多学校和单位都频频更新自己的风险期刊名单,其中,Hindawi、Frontiers、MDPI甚至都被直接打包拉黑! 更有On Hold 期刊现…

ios上音频需要点击两次才播放

问题 用H5标签audio渲染音频,测试PC和安卓都没有问题,点击一次就播放,并且可以在播放之前正常显示音频时长 但是在iOS系统上没有播放之前,不仅时长显示为0,并且播放还需要点击2次才正常播放 原因 debug之后发现是因为…

计算机毕业设计选题推荐-遥感影像共享系统-Java/Python项目实战

✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

GaussDB关键技术原理|高可用:两地三中心跨Region容灾

接上篇GaussDB关键技术原理|高可用:逻辑复制从逻辑复制方面对GaussDB的高可用能力进行了介绍,本篇将从两地三中心跨Region容灾方面继续解读GaussDB高可用技术。 目录 4 两地三中心跨Region容灾 4.1 概述 4.2 异地容灾部署示例 集中式 分布式&#x…

sheng的学习笔记-AI-层次聚类

AI目录:sheng的学习笔记-AI目录-CSDN博客 需要学习的前置知识:聚类,可参考:sheng的学习笔记-AI-聚类(Clustering)-CSDN博客 什么是层次聚类 层次聚类(hierarchical clustering)试图在不同层次对数据集进行划分,从而形…

2024年第五届华数杯全国大学生数学建模竞赛【C题】完整版代码+结果 分享

问题1的设问虽然不涉及到数学模型,只需要统计题目所给附件数据,但在做题之前可以先整理思路: ①统计景点评分最高分;②统计最高分在所有文件中出现的总次数;③统计出现高分次数最多的csv文件;④统计出现最…

js前端展示ppt【插件:PPTXJS】

前端展示PPT 使用插件: 官方网址: https://pptx.js.org/index.html github网址: https://github.com/meshesha/PPTXjs/releases 实例网址: https://pptx.js.org/pages/demos.html通过下载官方demo可以获得完整的实例

MySQL简介 数据库管理与表管理

文章目录 1 MySQL的优势2 MySQL数据类型1 数字类型2 日期和时间类型3 字符串类型 3 数据库管理4 数据表管理参考 1 MySQL的优势 性能优化:通过优化存储引擎(InnoDB,MyISAM)和查询优化。解决大规模数据处理和查询优化开源&#xf…

孩子被确诊为自闭症怎么办?

当家庭收到孩子被确诊为自闭症的消息时,这无疑是一次巨大的心理冲击和挑战。面对这一突如其来的诊断,许多家长会感到无助、焦虑甚至绝望。然而,重要的是要认识到,自闭症并非不可逾越的障碍,通过科学、专业的干预和治疗…

调度中心控制台:智慧运营的心脏,引领高效管理的未来

在当今这个信息化、智能化发展的时代,各行各业的运营管理都面临着前所未有的挑战与机遇。作为协调资源、指挥调度的核心枢纽,调度中心控制台不仅是信息汇聚的窗口,更是智慧决策与高效执行的起点。接下来就由嘉德立给大家深入探讨一下调度中心…