主题
GameUI.Debug
DebugOverlay 仅客户端
命名空间 GameUI.Debug
csharp
public static class DebugOverlay属性
UnitLayers 仅客户端
csharp
public static UnitDebugLayers UnitLayers { get; set; }本局托管单位的调试层,使用实际 Cache、足印和模型。仅显示当前玩家场景中已同步的单位。
方法
SetMode 仅客户端
csharp
public static bool SetMode(DebugOverlayMode mode)DebugOverlayMode 仅客户端
命名空间 GameUI.Debug
csharp
public enum DebugOverlayMode枚举值
Off = 0Nav3DMesh = 1Nav3DVoxels = 2LightmapDensity = 10LodView = 11OccludingCamera = 12PhysicsWorld = 20MotorProbe = 30
RuntimeDebugToolDescriptor 仅客户端
命名空间 GameUI.Debug
csharp
public sealed class RuntimeDebugToolDescriptorRuntime MCP 调试工具描述,供 debug.list_tools 和本地工具注册表查询使用。
属性
Name 仅客户端
csharp
public string Name { get; }Runtime 工具名,例如 debug.ping、ui.snapshot 或 material.probe。
Description 仅客户端
csharp
public string Description { get; }工具用途说明。
InputSchema 仅客户端
csharp
public JsonObject InputSchema { get; }工具输入参数 JSON Schema。
RuntimeDebugToolException 仅客户端
命名空间 GameUI.Debug
csharp
public sealed class RuntimeDebugToolException : ExceptionRuntime MCP 工具主动返回的结构化错误。
备注
抛出该异常会把 ErrorCode 和异常消息原样转成 Runtime MCP 错误响应, 比普通异常更适合表达可预期的调试状态,例如 material_not_found。
构造函数
RuntimeDebugToolException 仅客户端
csharp
public RuntimeDebugToolException(string errorCode, string message)属性
ErrorCode 仅客户端
csharp
public string ErrorCode { get; }面向 AI 助手或调试脚本的稳定错误码。
RuntimeDebugToolHandler 仅客户端
命名空间 GameUI.Debug
csharp
public delegate RuntimeDebugToolHandlerRuntime MCP 调试工具处理函数。
arguments— 调用方传入的 JSON 参数对象;没有参数时为null。
返回: 工具返回的 JSON 结果;返回 null 时会被包装为空对象。
RuntimeDebugToolRegistry 仅客户端
命名空间 GameUI.Debug
csharp
public static class RuntimeDebugToolRegistry客户端调试期 Runtime MCP 工具注册表。
备注
该能力只在编辑器调试或纯客户端调试模式下启用。内置工具包括 debug.ping、debug.capture_screenshot、ui.snapshot、 ui.click、input.pointer、input.key、scenegraph.materials、 material.probe 和 motor.snapshot。项目可以在 #if CLIENT 调试代码中注册自己的只读诊断工具。
方法
Initialize 仅客户端
csharp
public static bool Initialize()初始化 Runtime MCP 工具注册表并注册内置工具。
返回: 当前运行环境允许 Runtime MCP 时返回 true;否则返回 false。
Register 仅客户端
csharp
public static bool Register(string name, RuntimeDebugToolHandler handler)注册一个自定义 Runtime MCP 调试工具。
name— 工具名,建议使用project.xxx这类带命名空间的形式。handler— 工具处理函数。
返回: 注册成功时返回 true;当前不是调试运行环境时返回 false。
Register 仅客户端
csharp
public static bool Register(string name, string description, JsonObject? inputSchema, RuntimeDebugToolHandler handler)注册一个带描述和输入 schema 的自定义 Runtime MCP 调试工具。
name— 工具名,建议使用project.xxx这类带命名空间的形式。description— 工具用途说明,会出现在debug.list_tools返回值中。inputSchema— 工具输入参数 JSON Schema;传null时使用空对象 schema。handler— 工具处理函数。
返回: 注册成功时返回 true;当前不是调试运行环境时返回 false。
ListTools 仅客户端
csharp
public static IReadOnlyList<RuntimeDebugToolDescriptor> ListTools()列出当前客户端已注册的 Runtime MCP 工具。
CallTool 仅客户端
csharp
public static JsonNode? CallTool(string name, JsonObject? arguments)在当前客户端进程内直接调用一个 Runtime MCP 工具。
name— 工具名。arguments— 工具参数。
返回: 工具返回的 JSON 结果。
UnitDebugLayers 仅客户端
命名空间 GameUI.Debug
csharp
public enum UnitDebugLayers枚举值
None = 0AttackableRadius = 1CollisionRadius = 2ModelBounds = 4FootprintCells = 8