用法
要运行程序,请启动:program:OCAT。
覆盖层
- 启动覆盖层可捕获所有应用程序。如果选项处于活动状态,按钮将变为绿色。这意味着OCAT将尝试将其覆盖层注入之后启动的任何应用程序。注意:对于UWP应用程序,将没有覆盖层。
- 覆盖层位置 确定覆盖层的位置。在左上角、右上角、左下角和右下角之间进行选择。VR:覆盖层位于视区或世界空间的中心,具体取决于合成器。但是,覆盖层位置仍然决定了覆盖层子组件的排列方式,例如在FPS/ms数据之上或之下显示捕获信息。
- OCAT启动时启用覆盖层 如果希望OCAT在启动时立即启动其全局覆盖层注入,请激活此选项。
- 快捷键需要ALT 选项,以便在触发快捷键功能时需要与快捷键组合使用ALT。
- 覆盖层可见性快捷键 用于全局显示和隐藏游戏内覆盖层的快捷键。按此按钮可分配不同的快捷键。此设置仅在成功注入后生效。如果未注入覆盖层,则切换将不起作用。默认快捷键为F9。
- 帧图可见性快捷键 用于显示和隐藏游戏内覆盖层帧时间滚动图的快捷键。默认快捷键为F7。
- 录制时禁用覆盖层 选项,用于在捕获时禁用覆盖层以减少开销。
捕获
- 捕获快捷键 用于开始和停止捕获的快捷键。要更改快捷键,请单击“捕获快捷键”按钮,然后按新的快捷键。默认快捷键为F10。
- 捕获秒数 捕获停止之前的时长。如果此值为0,则仅通过快捷键或在捕获进程停止时停止捕获。默认捕获时长为60秒。
- 延迟秒数 确定按下捕获快捷键后捕获启动的延迟。默认值为0秒,这意味着在按下捕获快捷键后立即开始捕获。
- 捕获所有进程的性能 如果启用,按下捕获快捷键将捕获所有进程并为每个进程创建一个文件。如果禁用此选项,则在按下快捷键时仅捕获活动窗口的进程(当前处于焦点中的进程)。如果找不到活动窗口,捕获将默认捕获所有进程。
- 启用音频提示 切换以打开和关闭声音指示器。
- 选择输出文件夹 打开文件夹对话框,以选择保存捕获的文件夹。默认捕获文件夹为
Documents\OCAT\Captures。 - 捕获用户注释 可以在此处输入用户注释,该注释将保存在每个捕获的性能摘要文件
perf_summary.csv中。
延迟
- 延迟指示器快捷键 用于将延迟指示器方块的颜色从黑色更改为白色的快捷键。默认快捷键为ScrollLock。
- 延迟指示器可见性快捷键 用于显示覆盖层中延迟指示器方块的快捷键。延迟指示器方块与其他覆盖层互斥,因此在显示延迟指示器时不会渲染它们。默认快捷键为F6。
- 彩色条可见性快捷键 用于显示和隐藏游戏内覆盖层FCAT样式的每帧彩色条的快捷键。默认快捷键为F8。
启动应用
允许您将覆盖层注入单个应用程序。选择应用程序和命令行参数后,按“启动应用程序”以运行它。
- 选择目标可执行文件 打开文件对话框,以选择应使用OCAT覆盖层启动的可执行文件。可以启动UWP应用程序,但覆盖层不会响应按键输入。捕获将正常工作。
- 选择工作目录 打开文件夹对话框,以选择应作为可执行文件工作目录的文件夹。
- 命令行参数 用于启动可执行文件的其他命令行参数。
- 使用steam://run/<AppId>作为命令行参数,以防止游戏通过Steam客户端重新启动。确保Steam AppId与所选应用程序的AppId匹配,并且Steam客户端正在运行。
请注意,大多数通过Steam(或其他启动器如UPlay)运行的游戏会启动相应的启动器,然后终止。然后,启动器将调用OCAT使用此选项无法检测到的可执行文件。在这种情况下,您应该使用全局覆盖层注入(启动覆盖层)。
可视化
允许可视化以下指标的捕获:帧时间、重投影时间(仅限VR)以及总体捕获统计数据,包括丢失帧、平均FPS、平均帧时间、平均重投影时间(仅限VR)和99%分位帧时间。
- 选择要可视化的捕获文件 打开文件对话框,以选择应可视化其数据的捕获文件。
- 可视化 打开可视化窗口。可以同时打开多个可视化窗口。
可视化窗口
显示加载捕获的帧图。
主页
- 选择要添加的捕获文件 打开文件对话框,以选择应在可视化窗口中可视化的捕获文件。可以在同一窗口中可视化多个捕获,以便直接进行捕获到捕获的比较。
- 加载 加载选定的捕获文件,其数据将叠加在当前加载的捕获之上进行可视化。
- 选择捕获 打开已加载捕获的列表。单击一个捕获进行选择。
- 删除捕获文件 从可视化窗口中删除选定的捕获。
- 保存图表 将当前帧图保存为PDF文件。
- 显示帧分析 显示基于应用程序的渲染时间和合成器(仅限VR)的每帧数据。帧以大约500帧的块显示,可以通过帧图右上角的箭头在块之间切换。
- 帧时间 显示加载捕获的帧时间的帧图。
- 重投影 显示加载捕获的重投影时间的帧图(仅限VR)。
- 捕获统计数据 显示加载捕获的总体捕获统计数据。使用图表右上角的箭头在指标之间切换。可以显示以下指标
- 丢失帧
- 平均FPS
- 平均帧时间
- 平均重投影时间(仅限VR)
- 99%分位帧时间
控件
显示用于在帧图窗口中导航的控件。
通用选项
Capture
按下热键按钮后开始捕获,并在按下另一个热键或达到捕获时间后结束。如果正在进行捕获,将在OCAT配置和覆盖层(如果已启用)的版本上方显示。覆盖层显示一个红点。
- 如果未进行捕获,则在OCAT配置的版本上方显示用于开始捕获的热键(默认:
F10)。 - 捕获哪些进程取决于:guilabel:
捕获所有进程的性能选项。
捕获文件
捕获文件默认保存在Documents\OCAT\Captures文件夹中。可以通过“捕获”选项卡下的选择输出文件夹选项更改输出文件夹。对于每个受支持的提供商集,都会创建一个详细的.csv文件。支持以下提供商集
DXGI用于桌面应用程序SteamVR用于基于openvr SDK合成器的VR游戏OculusVR用于基于LibOVR SDK合成器的VR游戏WMR用于基于DWM合成器的Windows Mixed Reality VR游戏
每个捕获的摘要文件可以在perf_summary.csv文件中找到。
禁用:guilabel:捕获所有进程的性能选项并聚焦其他进程(在按下捕获快捷键时)可能导致捕获文件为空。
捕获配置
捕获配置文件captureConfig.json可以在Documents\OCAT\Config中找到。ETW提供程序集可以单独启用和禁用,还可以为每个程序集提供单独的捕获详细信息。如果指定了:kbd:Default或无效的捕获详细信息,则捕获详细信息将回退到:kbd:Verbose。如果缺少提供程序集的条目,则默认启用该条目并使用:kbd:Verbose捕获详细信息。首次运行时,OCAT将生成一个captureConfig.json文件。要恢复默认设置,请删除捕获配置文件。下次运行时将生成一个新的。捕获详细信息选项为:kbd:Simple、:kbd:Normal和:kbd:Verbose。
阻止列表
可以通过基于可执行文件名的阻止列表来排除应用程序的DLL注入。阻止列表(一个默认列表和一个用户列表)可以在Documents\OCAT\Config中找到。默认阻止列表名为defaultDenyList.txt。您可以编辑的用户阻止列表名为userDenyList.txt。阻止列表中的所有进程都不会显示覆盖层,也不会创建捕获。首次运行时,OCAT将生成或更新默认阻止列表,并为您生成一个虚拟用户阻止列表以供编辑。您应该将可执行文件添加到用户阻止列表中,以确保它们在OCAT更新时不会被覆盖。每行必须包含一个可执行文件名(不区分大小写)。
日志
日志保存在Documents\OCAT\Logs中。日志包括
PresentMonLog包含有关捕获和启动进程的信息GlobalHook32Log和GlobalHook64Log有关全局钩子进程状态的信息GameOverlayLog有关所有注入的DLL的信息
已知问题
- Windows 7:PresentMon未创建捕获。
- UWP:覆盖层的全局挂钩不起作用。
- UPlay:由于安全机制,覆盖层不适用于UPlay游戏。这适用于全局钩子和显式钩子。捕获功能运行正常。
- Steam:DOOM、Wolfenstein 2:新使命、古墓丽影:崛起(以及许多其他):只有将steam://run/<AppId>作为命令行参数解析,才能使用显式挂钩来覆盖覆盖层,以防止Steam重新启动游戏。全局挂钩和捕获功能正常工作。
- 最终幻想XV:全局钩子不起作用,请使用steam://run/<AppId>的显式钩子。
- Frostpunk:全局钩子不起作用,请使用显式钩子
- SteamVR Battlezone:HMD覆盖层不适用于全局钩子。请使用显式钩子在HMD中启用覆盖层。
- 古墓丽影:崛起,DX12:在Nvidia GPU上覆盖层可能会闪烁
- 捕获文件中的系统规格信息:目前,GPU内存时钟仅在AMD系统上报告,并且对于Intel,我们仅报告GPU系列而不是特定的GPU型号。我们检测所有供应商的GPU核心时钟和内存大小。