Files
gold_dolphin/unity/.qoder/skills/profiler-capture-frame/SKILL.md
T
2026-07-05 15:33:41 +08:00

3.3 KiB

name, description
name description
profiler-capture-frame Capture the current frame's timing info (delta time, FPS, frame counts, runtime). Snapshot only — historical frames live in Unity's Profiler window.

Profiler / Capture Frame

Reads UnityEngine.Time fields and returns them in a single struct. This tool is intentionally a single-frame snapshot — Unity's runtime API does not expose historical frame-data outside the Profiler window.

Fields

  • FrameTimeMsTime.deltaTime * 1000f.
  • Fps1 / Time.deltaTime (0 when delta is zero).
  • TotalFrameCountTime.frameCount (includes skipped renders).
  • RealtimeSinceStartupTime.realtimeSinceStartup.
  • RenderedFrameCountTime.renderedFrameCount.

Behavior

Uses only built-in Unity APIs (UnityEngine.Time). No external Unity package is required.

How to Call

unity-mcp-cli run-tool profiler-capture-frame --input '{
  "nothing": "string_value"
}'

For complex input (multi-line strings, code), save the JSON to a file and use:

unity-mcp-cli run-tool profiler-capture-frame --input-file args.json

Or pipe via stdin (recommended):

unity-mcp-cli run-tool profiler-capture-frame --input-file - <<'EOF'
{"param": "value"}
EOF

Troubleshooting

If unity-mcp-cli is not found, either install it globally (npm install -g unity-mcp-cli) or use npx unity-mcp-cli instead. Read the /unity-initial-setup skill for detailed installation instructions.

Input

Name Type Required Description
nothing string No

Input JSON Schema

{
  "type": "object",
  "properties": {
    "nothing": {
      "type": "string"
    }
  }
}

Output

Output JSON Schema

{
  "type": "object",
  "properties": {
    "result": {
      "$ref": "#/$defs/com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler-FrameCaptureData",
      "description": "Single-frame snapshot of timing information from UnityEngine.Time. No historical frame data; use the Profiler window for that."
    }
  },
  "$defs": {
    "com.IvanMurzak.Unity.MCP.Editor.API.Tool_Profiler-FrameCaptureData": {
      "type": "object",
      "properties": {
        "FrameTimeMs": {
          "type": "number",
          "description": "Time.deltaTime in milliseconds at the moment of capture."
        },
        "Fps": {
          "type": "number",
          "description": "Frames per second derived from Time.deltaTime."
        },
        "TotalFrameCount": {
          "type": "integer",
          "description": "Total frame count since application start (Time.frameCount). May include skipped renders."
        },
        "RealtimeSinceStartup": {
          "type": "number",
          "description": "Time.realtimeSinceStartup, in seconds."
        },
        "RenderedFrameCount": {
          "type": "integer",
          "description": "Frames actually rendered (Time.renderedFrameCount)."
        }
      },
      "required": [
        "FrameTimeMs",
        "Fps",
        "TotalFrameCount",
        "RealtimeSinceStartup",
        "RenderedFrameCount"
      ],
      "description": "Single-frame snapshot of timing information from UnityEngine.Time. No historical frame data; use the Profiler window for that."
    }
  },
  "required": [
    "result"
  ]
}