Choose your operating system:
Windows
macOS
Linux
在为应用程序开发用户界面(UI)时,UI开发人员有时需要调试Slate,控制台Slate调试器 可以为你提供帮助。控制台Slate调试器挂接到FSlateDebugging中的可用系统,以便打印内部Slate数据。此外,随着UI焦点更改(或尝试更改),开发人员将需要知道哪个系统正在处理这类焦点更新。
在4.26中,控制台Slate调试器的扩展现在包括以下内容:
GlobalInvalidation,有助于识别负责处理高成本帧的控件。
绘制选项,显示在给定帧中绘制的控件。
附加路由选项,用于查看系统如何选择控件作为事件处理程序。
其他过滤器和事件控制台命令。
SlateDebugger
在PIE模式下运行项目时,按波浪号(〜)键打开PIE控制台,然后键入 SlateDebugger
。
SlateDebugger日志通常被写入到 [ProjectName]/Saved/Logs
下的 [ProjectName].txt
日志文件中。
事件命令
Slate调试器提供了许多不同的命令以精确定位特定信息,例如启用或禁用特定日志以及过滤事件。如果需要更多信息,CaptureStack还可以提供触发事件的调用堆栈。
SlateDebugger.Event |
命令说明 |
---|---|
Start |
|
Stop |
|
SetInputFilter |
启用或禁用特定的输入过滤器。 |
SetFocusFilter |
启用或禁用特定的焦点过滤器。 |
LogWarning |
记录警告事件。 |
LogInputEvent |
记录输入事件。 |
LogFocusEvent |
记录焦点事件。 |
LogExecuteNavigationEvent |
记录执行导航事件。 |
LogCaptureStateChangeEvent |
记录光标状态更改事件。 |
LogCursorChangeEvent |
记录光标更改事件。 |
LogAttemptNavigationEvent |
记录尝试导航事件。 |
InputRoutingModeEnabled |
如果启用,则输出输入事件采用的路由。 |
EnableAllInputFilters |
启用所有输入过滤器。 |
DisableAllInputFilters |
禁用所有输入过滤器。 |
EnableAllFocusFilters |
启用所有焦点过滤器。 |
DisableAllFocusFilters |
禁用所有焦点过滤器。 |
CaptureStack |
如果启用,则在发生事件时捕获堆栈。 |
无效命令
这些命令使你可以使用Invalidate命令显示无效的界面控件。每个失效的控件将根据失效类型以不同的颜色突出显示。
SlateDebugger.Invalidate |
命令说明 |
---|---|
Enable |
启动无效控件(Invalidation Widget)调试工具,在控件使无效控件调试工具失效或停止时显示,取决于当前状态。 |
Start |
启动无效控件调试工具,在控件失效时显示。 |
Stop |
停止无效控件调试工具。 |
SetInvalidateRootReasonFilter |
|
SetInvalidateWidgetReasonFilter |
|
ToggleLegend |
显示颜色图例。 |
ToggleLogInvalidateWidget |
将无效控件记录到控制台。 |
ToggleWidgetNameList |
显示无效控件的名称。 |
绘制命令
此命令用于突出显示在每个帧中绘制的控件。这适用于识别已绘制的控件(即使它们未更改)。请注意,易变控件每帧都会绘制。
SlateDebugger.Paint |
命令说明 |
---|---|
Enable |
启动绘制控件调试工具,在控件绘制或停止绘制控件调试工具时显示,取决于当前状态。 |
Start |
启动绘制控件调试工具,在控件绘制时显示。 |
Stop |
停止绘制控件调试工具。 |
LogOnce |
记录上一次更新期间绘制一次的控件 |
LogWarningIfWidgetIsPaintedMoreThanOnce |
如果控件在同一帧中绘制多次,则记录警告。 |
MaxNumberOfWidgetDisplayedInList |
显示 |
ToggleWidgetNameList |
显示绘制的控件名称。 |
更新命令
此命令用于突出显示更新频率超过需求的控件。由于可能在蓝图中覆盖或执行控件更新,因此,如果未正确设计控件代码,通常会导致性能降低。
SlateDebugger.Update |
命令说明 |
---|---|
Enable |
启动更新控件调试工具,在控件更新或停止更新控件调试工具时显示,取决于当前状态。 |
Start |
启动更新控件调试工具,在控件更新时显示。 |
Stop |
停止更新控件调试工具。 |
SetInvalidationRootIdFilter |
仅显示属于无效根的控件。 |
SetWidgetUpdateFlagsFilter |
|
ToggleLegend |
显示颜色图例。 |
ToggleUpdateFromPaint |
显示不具有更新标记,但仍作为另一控件的副作用而更新的控件。 |
ToggleWidgetNameList |
显示更新控件的名称。 |