Version:

调试 UI 画布

您可以使用以下控制台命令和控制台变量在游戏运行时显示 UI 的调试信息。

ui_DisplayCanvasData

显示已启用或已加载的画布的画布数据。

描述
0关闭。
1显示每个加载的画布的一行信息。
2仅显示已启用的画布的信息。

以下示例显示 5 个已加载 UI 画布的数据。

Canvas data for five loaded UI canvases.

下表描述了每列。

说明
NN画布在列表中的索引号。画布将按其绘制顺序列出。
Name叶画布名称。
En画布是否已启用。
Po画布是否接受位置输入 (例如,鼠标输入)。
Na画布是否启用了导航。
DrawOrder绘制顺序,用于对加载的画布列表进行排序。
nElem画布中的 UI 元素数。
nEnab画布中已启用的 UI 元素的数量。如果未启用父级,则不会对元素进行计数。
nRend画布中已启用的可渲染元素的数量(正在渲染的图像、文本和粒子效果的数量)。
nRCtl画布中启用的“渲染控制”元素(蒙版和推子)的数量。
nImg具有 UiImageComponents 的已启用 UI 元素的数量。
nText使用 UiTextComponents 启用的 UI 元素的数量。
nMask具有 UiMaskComponents 的已启用 UI 元素的数量。
nFadr使用 UiFaderComponents 启用的 UI 元素的数量。
nIntr具有可交互组件(Button、Slider、TextInput 等)的已启用 UI 元素的数量。
nUpdt具有侦听更新(即可能每帧执行某项操作)的组件的已启用 UI 元素的数量。
ActiveInt此画布上活动可交互对象的名称(如果有)。
HoverInt此画布上当前悬停可交互对象的名称(如果有)。

ui_DisplayDrawCallData

显示用于渲染 UI 画布的绘制调用数。此变量对于性能优化和调试非常有用。

价值描述
0关闭显示。
1打开显示屏。

以下示例数据显示了四个 UI 画布的绘制调用信息。

Draw call information for four UI canvases.

下表描述了每列。

说明
NN画布在列表中的索引号。画布将按其绘制顺序列出。
Canvas name叶画布名称。
nDraw绘制调用的数量。
nPrim基元 (例如,图像和文本字符串) 的数量。
nTris为 UI 渲染的三角形数。
nMask渲染图中蒙版渲染节点的数量。
nRTs渲染图中渲染目标渲染节点的数量。
nUTex此帧中画布中渲染的唯一纹理的数量。
XMask使用遮罩导致的绘制调用数。 一个遮罩可能会导致最多四个额外的绘制调用。
XRT呈现目标导致的绘制调用数。
XBlnd混合模式更改导致的绘制调用数。
XSrgb由 Srgb 写入更改引起的绘制调用数。此数据点仅针对呈现目标(例如,播放视频)显示。
XMaxV由需要超过 65536 个顶点或 16384 个四边形的渲染节点引起的绘制调用数。这种情况并不常见。例如,显示值需要超过 16000 个字符的文本。
XTex达到着色器支持的最多 16 个纹理时发生的绘制调用数。要减少这些调用的数量,您可以使用纹理贴图集。有关详细信息,请参阅 使用纹理图集.

ui_DisplayElemBounds

此控制台命令在屏幕上显示一个覆盖层,该覆盖层显示元素的矩形。默认情况下,它显示每个已启用的 UI 画布的每个 UI 元素的矩形边界。

如果您有多个已启用的 UI 画布,并且只想查看一个画布的矩形边界,请使用ui_DisplayElemBoundsCanvasIndex控制台变量。要使用ui_DisplayElemBoundsCanvasIndex控制台变量,请指定要显示其边界的画布的索引。要查找已启用画布的索引,请使用 ui_DisplayCanvasData 2 设置。

下面的示例演示嵌套滚动框的矩形边界。

Rectangular bounds displayed for nested scrollboxes.

ui_DisplayTextureData

显示 UI 正在使用的纹理。

显示屏显示 UI 系统在当前帧中使用的每个纹理的尺寸、数据大小、纹理格式和路径名。纹理按它们使用的内存量降序排序。

以下示例显示了当前帧中 13 个唯一纹理的数据。

Data for 13 unique textures in the current frame.

ui_ReportDrawCalls

将绘制调用的报告写入日志文件。

命令输出显示日志文件的位置,如以下示例所示。

Entering the ui_ReportDrawCalls command.

日志文件将写入日志目录中的 drawcallreport.txt 中。

日志文件列出了每个已启用画布的所有绘制调用。该报告可用于确定如何减少绘制调用的数量。

有关详细信息,请参阅 使用纹理图集减少 UI 绘制调用.