Skip to main content

Static mobile performance diagnostics for Godot 4 projects.

Project description

Godot Mobile Perf Doctor

Static mobile performance diagnostics for Godot 4 projects, with optional parsing of captured adb summary text.

The first release deliberately starts with static checks so it works in CI without an Android device.

Use it before device testing to catch obvious mobile risks: desktop renderer settings, missing stretch configuration, oversized textures, and suspicious viewport settings.

Install

python -m pip install -e .

From PyPI:

python -m pip install godot-mobile-perf-doctor

Quick Start

godot-mobile-perf-doctor C:\Projects\MyGame --static
godot-mobile-perf-doctor . --profile portrait-2d --format json --output perf-report.json
godot-mobile-perf-doctor . --adb-summary adb-summary.txt --format markdown --output mobile-perf-report.md

List the built-in mobile profiles:

godot-mobile-perf-doctor --list-profiles

Config File

Create .godot-mobile-perf-doctor.toml in the project root:

profile = "portrait-2d"
format = "markdown"
fail_on = "warning"
output = "reports/mobile-perf.md"
max_texture_dimension = 2048
max_viewport_pixels = 2073600

Profiles provide default texture and viewport budgets. CLI flags override config values, and config values override profile defaults:

godot-mobile-perf-doctor . --static --max-viewport-pixels 921600 --format json

Built-in profiles:

Profile Use When
portrait-2d Phone-first 2D projects with a portrait-oriented base viewport.
balanced-mobile General mobile projects that can tolerate a 1080p-style base viewport.
low-end-mobile Older Android devices or battery-sensitive builds need stricter budgets.
tablet-2d Larger-screen 2D projects intentionally use a bigger base viewport.

Real Workflow: Prepare An Android Test Build

Run a static mobile scan before sending a build to a phone:

godot-mobile-perf-doctor . --static --profile portrait-2d --fail-on warning --format markdown --output reports\mobile-perf.md

Use the report to check:

  • whether the renderer choice is suitable for mobile;
  • whether viewport and stretch settings are explicit;
  • which PNG textures carry the largest estimated RGBA memory cost;
  • whether a recent adb summary shows janky frames that need follow-up.

If you already captured a short device run, attach the summary:

godot-mobile-perf-doctor . --adb-summary reports\adb-summary.txt --format json --output reports\mobile-perf.json

What It Checks

  • Renderer setting and mobile risk.
  • Base viewport size against the selected mobile profile.
  • Stretch mode presence.
  • PNG texture dimensions and estimated RGBA memory.
  • Optional adb summary text for device model and janky frame counts.

JSON reports include report metadata, active budget limits, and a rules object with plain-language explanations. Text, Markdown, and SARIF output use the same rule titles so local and CI reports are easier to compare.

Documentation

CI Example

- run: python -m pip install godot-mobile-perf-doctor
- run: godot-mobile-perf-doctor . --static --profile portrait-2d --format markdown --output reports/mobile-perf.md

Development

python -m pip install -e .
python -m unittest discover -s tests -v
godot-mobile-perf-doctor examples\tiny-godot-project --static --fail-on none

Examples are generic and safe to publish.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

godot_mobile_perf_doctor-0.1.6.tar.gz (14.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

godot_mobile_perf_doctor-0.1.6-py3-none-any.whl (14.1 kB view details)

Uploaded Python 3

File details

Details for the file godot_mobile_perf_doctor-0.1.6.tar.gz.

File metadata

  • Download URL: godot_mobile_perf_doctor-0.1.6.tar.gz
  • Upload date:
  • Size: 14.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for godot_mobile_perf_doctor-0.1.6.tar.gz
Algorithm Hash digest
SHA256 e36595a7b0386ba2a7ec9d2fc98f9fdda92c54ef8f01e4102bd5e643d548e4e0
MD5 7affab6f755135e1db28d38a846f145a
BLAKE2b-256 8eb12e15841cef7c3178fe66061fb0ac5ebf8be5e44f130ada3ea42e18537808

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_mobile_perf_doctor-0.1.6.tar.gz:

Publisher: publish-mobile-perf-doctor.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file godot_mobile_perf_doctor-0.1.6-py3-none-any.whl.

File metadata

File hashes

Hashes for godot_mobile_perf_doctor-0.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 d30e218bd41565984286613825a0bf6307ed124f34fde3298fa9437010a9d97d
MD5 d8d02fda5c3e44c0845194a12f7bc80d
BLAKE2b-256 ddb4c59695c70a4644f9c636e9b34e70166870f43186d313468b074563c537d8

See more details on using hashes here.

Provenance

The following attestation bundles were made for godot_mobile_perf_doctor-0.1.6-py3-none-any.whl:

Publisher: publish-mobile-perf-doctor.yml on NonniGB/godot-production-toolkit

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page