Chaos可视调试器(CVD)是一款用于录制物理模拟的工具。 你可以利用CVD录制在本地机器上运行的游戏和应用程序,也可以从远程机器或连接到本地机器的平台进行录制。
你还可以在CVD中播放录制内容,从而检查数据以供调试。 这些录制内容独立于项目,也就是说,即使无法访问虚幻引擎(UE)的项目文件,你也可以加载这些录制内容,从而实现跨团队协作或远程调试。
CVD录制的数据包括:
粒子(包括速度、加速度、质量属性和对象状态)
碰撞几何体(包括碰撞通道)
碰撞约束(接触对及其状态)
关节约束(状态和关节设置)
角色地面约束(基于物理的角色运动)
场景查询(包括线迹、扫描和重叠)
刚体动画节点(RBAN)
在CVD的语境中,粒子通常指刚体。
启动Chaos可视调试器
从虚幻编辑器启动
要在虚幻编辑器中打开Chaos可视调试器,请转到菜单栏,点击工具(Tools) > 调试(Debug) > Chaos可视调试器(Chaos Visual Debugger)。 选择CVD后,该工具将在新窗口中打开。
作为独立程序启动
要将CVD作为独立程序运行,你必须使用虚幻引擎的源代码构建。 你可以从GitHub下载源代码构建。 如需了解详情,请参阅从源代码编译虚幻引擎。
要将CVD作为独立程序编译并运行,你可以使用可执行文件(不可移植),或者批处理文件(可移植)。 下表介绍了各选项的文件位置和编译步骤。
| 编译流程 | 说明 |
|---|---|
CVD可执行文件 | 可执行文件的路径如下: 要编译并运行CVD,请执行以下步骤:
编译完成后,你可以创建一个指向该可执行文件的快捷方式,然后一键运行该工具。 |
CVD批处理文件 | 批处理文件的路径如下: 要编译并运行CVD,请执行以下步骤:
|
探索CVD的用户界面
本节将介绍Chaos可视调试器中最常用的按钮、面板和工具栏。 其中某些元素与虚幻编辑器的界面类似,但由于CVD与某些虚幻编辑器版本在视觉上存在差异,你还是应该先熟悉CVD。
以下小节分别介绍了各用户界面(UI)元素的位置,并提供了简单的用例。 如需深入了解,请点击本页提供的链接。
| 编号 | 名称 | 概述 |
|---|---|---|
1 | 菜单栏 | 加载最近的录制内容和修改CVD布局等一系列选项。 |
2 | 主工具栏 | 开始或停止录制、加载录制内容、自定义录制数据的类别等一系列选项。 |
3 | 视口工具栏 | 用于修改视口所显示的数据和数据的视觉区分方式的一系列选项。 |
4 | 场景大纲视图 | 列出了录制内容中包含的场景组件。 |
5 | 视口 | 显示已加载的录制内容或实时录制,类似于虚幻编辑器视口。 这可能包括:
|
6 | 播放功能按钮 | 显示一系列播放时间轴和日志,包括: |
7 | 细节面板 | 显示在视口中没有专用数据检视器的所选项(例如粒子)的信息。 |
8 | 数据检视器 | 提供以下项目的详情: |
菜单栏
主工具栏
| 编号 | 名称 | 说明 |
|---|---|---|
1 | 打开文件(Open File) | 加载现存的 |
2 | 连接到会话(Connect to Session) | (旧有)连接远程机器以供远程调试。 现仅在通过命令行录制远程会话时使用。 详情请参阅(旧有)使用命令行界面录制实时会话。 |
3 | 合并(Combine) | 将CVD中打开的多个录制内容合并为单个 |
4 | 场景查询浏览器(Scene Query Browser) | 检查针对单个帧进行的所有场景查询。 详情请参阅数据检视器。 |
5 | 会话目标 | 选择要录制的目标。 |
6 | 加载模式 | 加载单个或多个录制文件(这将合并数据)。 |
7 | 录制到文件(Record to File) | 开始录制并将其保存到文件。 |
8 | 录制实时会话(Record Live Session) | 开始录制并实时渲染可视化效果。 |
9 | 数据通道(Data Channels) | 自定义录制期间捕获的数据,例如: |
10 | 设置(Settings) | 自定义CVD的UI和性能。 |
视口工具栏
汉堡菜单
| 名称 | 说明 | 图像 |
|---|---|---|
以录制帧率播放(Play at Recorded Framerate) | 将录制帧率重载为固定帧率。 | |
对外追踪(Object Tracking)(F8) | 将摄像机锁定到视口中的对象。 | |
视野选项 | 调整视口的视野(FOV)以及最远渲染距离。 | |
允许选择半透明(Allow Translucent Selection)(T) | 切换穿过半透明对象进行点击的能力。 | |
前往位置(Go to Location) | 将摄像机传送至此字段中输入的指定位置(XYZ格式)。 |
视图模式
视口的视图模式可在透视(Perspective)、顶视图(Top)、底视图(Bottom)、左视图(Left)、右视图(Right)、前视图(Front)以及后视图(Back)之间切换。
光照模式
视口的光照模式可在光照(Lit)、无光照(Unlit)、光照线框(LitWireframe)以及线框(Wireframe)之间切换。
光照模式
显示按钮
显示(Show)按钮可修改现存录制内容的哪些可视化标记和调试文本在视口中可见。 如需详细了解数据标记,请参阅数据可视化标记。
除非被重置为默认值,否则此菜单中的设置在CVD会话之间保持不变。
变换和对齐工具栏
变换和对齐工具栏与旧版虚幻编辑器中的视口工具栏类似。 你通常会使用这些工具来操控光源Actor。
| 图标 | 名称 | 说明 |
|---|---|---|
选择对象 | 选择视口内的对象。 | |
选择并平移对象 | 沿单轴、双轴或三轴在世界中移动光源Actor。 | |
选择并旋转对象 | 沿单轴旋转光源Actor。 | |
选择并缩放对象 | 使用缩放小工具缩放光源Actor。 使用小工具即可沿单轴、双轴或三轴统一缩放对象。 | |
坐标系 | 在世界(World)坐标系和本地(Local)坐标系之间循环切换。 | |
与表面对齐 | 设置将光源Actor拖拽到另一对象的表面时,该光源Actor的对齐行为。 | |
与网格对齐 | 切换光源Actor是否与网格对齐,并设置增量。 | |
旋转增量 | 切换光源Actor是否以增量旋转,并设置角度。 | |
缩放增量 | 切换光源Actor是否以增量缩放,并设置增量。 | |
摄像机速度 | 影响摄像机在世界中的移动速度。 |
场景大纲视图
场景大纲视图列出了录制内容中包含的场景组件。 由于录制内容可能包含多个解算器,因此各解算器的粒子都会被放置在一个文件夹中,该文件夹的名称和ID与其所属的解算器相同。 在该文件夹中,所有粒子都标有其Chaos端的调试名称。
在CVD中,物理解算器是物理模拟(通常来自游戏世界)的一个实例,由Chaos物理系统引擎处理。
播放功能按钮
Chaos可视调试器包含基于游戏线程帧、物理解算器帧或模拟阶段播放和倒回现有录制内容的功能按钮。 这最大限度地提高了你对使用网络物理、异步物理或多个游戏世界(例如多人游戏)的情况进行检查的能力。
游戏帧时间轴
游戏帧时间轴代表了录制内容的各个游戏线程帧。
当你使用此时间轴播放录制内容时,你会注意到解算器时间轴也会播放。 这是因为,对于每个播放的游戏线程帧,CVD都会搜索该时间戳上可用的最接近的物理解算器帧。
游戏帧时间轴的帧编号有时可能与解算器时间轴不匹配。 这是因为游戏线程帧可能对应多个物理解算器帧。 访问这两个时间轴意味着你可以检查发生这种情况的场景,例如在使用异步物理时。
如需详细了解CVD如何可视化同步和异步物理、来自多个游戏世界的数据以及重新模拟的帧,请参阅在虚幻引擎中调试Chaos物理系统的第16:05分钟处。
解算器时间轴
解算器时间轴代表了录制内容的各个物理解算器帧。 每个解算器都有一条专用轨道。 使用此时间轴,你可以播放任何解算器轨道的数据,并查看哪个解算器帧对应特定的游戏线程帧。
| 设置 | 说明 | 图像 |
|---|---|---|
时间轴同步模式(Timeline Sync Mode) | 控制各个解算器轨道的同步方式。
| |
重新模拟徽章 | 若解算器轨道中包含的帧属于网络不同步校正过程中进行的重新模拟,则此徽章将出现在该轨道上。 | |
可视性功能按钮 | 显示或隐藏特定解算器轨道中的可视化数据。 |
解算器阶段时间轴
你可以使用解算器阶段时间轴跳转到物理模拟的特定阶段。 阶段是单个物理帧内不同时间点拍摄的模拟快照。
以粒子模拟为例,你可以将以下阶段可视化:
| 阶段 | 说明 |
|---|---|
演变开始(Evolution Start) | 在解算器步骤开始时,对所有粒子拍摄快照。 |
合并后(Post-Integrate) | 对粒子执行 |
碰撞检测粗略阶段 | 在运行碰撞检测过程的粗略阶段后,对所有中间阶段(为每个边界重叠的粒子对创建对象)拍摄快照。 |
碰撞检测精确阶段 | 在运行碰撞检测过程的精确阶段后,对所有中间阶段拍摄快照。 |
约束前解算(Pre Constraint Solve) | 在解算可用约束之前,对所有粒子拍摄快照。 |
约束后解算(Post Constraint Solve) | 在解算约束之后,对所有粒子拍摄快照。 |
演变结束(Evolution End) | 在解算器步骤结束时,对所有粒子拍摄快照。 |
解算器阶段时间轴适合用于检查单个帧内的异常行为,例如对象在帧开头时出现在正确位置,但在帧结尾时出现在错误位置。
录制的输出日志
录制的输出日志(Recorded Output Log)选项卡位于解算器时间轴轨道选项卡的旁边,CVD会在其中录制应用程序的日志流以供追溯检查。
输出日志
输出日志(Output Log)是活动的实时监控日志。 此选项卡会显示当前CVD实例的活动日志,并显示CVD本身的错误或警告。
细节面板
细节(Details)面板将显示视口中所选项的信息。
细节面板同时还充当了粒子数据的数据检视器。 详情请参阅粒子数据(细节面板)。
下一步
数据检视器
了解Chaos可视调试器中的数据检视器。
数据可视化标记
了解Chaos可视调试器中的数据可视化标记。
使用Chaos可视调试器捕获数据
使用Chaos可视调试器捕获并播放录制内容。