Skip to main content

Debug the export contract before changing the artwork

Updated 4 min readMarkdown

An asset can look correct in an art tool and still fail in the game. The useful bug report identifies the disagreement between those two environments: file dimensions, trimming, alpha, importer settings, and the way the asset is displayed.

Here is an illustrative engineering workflow for a clipped selection ring. It is a proposed reproduction, not a report of a completed studio fix.

Start with a fixture small enough to inspect

Create a 256 × 256 RGBA source canvas. Put a ring in the center, leaving a 16-pixel transparent margin on every side. Add four small colored markers inside the ring at the cardinal directions. Export one PNG without trimming and another through the suspected preset.

The markers distinguish a size or offset error from a change in the ring's appearance. The margin makes an accidental crop visible without relying on an artist's memory of the original.

Keep the fixture, the export preset, and the exported PNG together. Record the art-tool version and importer settings. A preset name alone is insufficient because two machines can have different settings under that name.

Make the acceptance contract explicit

Use a small text file beside the fixture:

asset: selection-ring.png
source_canvas_px: [256, 256]
output_canvas_px: [256, 256]
format: PNG
channels: RGBA
trim_transparent_border: false
transparent_margin_px: 16
import_scale: 1
display_checks:
  - centered at native size
  - all four colored markers visible
  - transparent corners over checkerboard
  - no clipped edge over dark or light background
reviewer: UI artist responsible for the selection state

These values are the example's requirements. They are not automatically right for every production atlas. If the engine intentionally trims sprites, replace the fixed-canvas requirement with a contract for trim offsets and pivot reconstruction.

Reproduce the path that actually failed

Export from a fresh copy of the source. Import through the same route as the reported bug. Place the asset at scale 1 before testing scaling or packing. Display the four markers and the ring over both light and dark backgrounds.

Change one variable at a time: export trimming, importer trimming, pivot, then display scaling. If disabling export trimming fixes the preview, that is a hypothesis about the boundary. Repeat from the source with the revised preset before accepting the explanation.

A local image inspector can confirm dimensions and RGBA channels. That check cannot establish that a semi-transparent edge composites correctly in the game. The visual comparison remains necessary.

Split preparation, execution, and acceptance

The reporting artist prepares the minimal fixture and describes the intended selection state. A tools engineer, or a coding agent supervised by that engineer, investigates the exporter and importer using their own authorized tools. The assigned UI artist judges the final appearance; QA checks the repeated import path.

That division gives human AI collaboration in game development a concrete boundary. An agent can narrow down a preset mismatch or draft a validation script. It should not decide that a clipped outline is visually acceptable merely because the file opens successfully.

For the wider coordination problem, the Wagglet article on an AI-native mobile game studio stack is a contextual reference. The useful handoff here is the source fixture, export contract, and acceptance owner.

Attach proof that someone else can inspect

Capture the source canvas, the failing in-game import, and the proposed correction with the same crop and scale. Put dimensions, preset version, and build identifier in the captions. Include one checkerboard view and one actual UI view. Do not label a synthetic illustration as a production screenshot.

The reviewer should be able to repeat the export, import it into a clean scene, and see the same result. A before-and-after image without the source and settings leaves the failure path ambiguous.

This method has limits. It does not prove that every asset in an atlas is safe, that all texture compression settings preserve the edge, or that a different device will render identically. It does provide a focused regression fixture: a small asset whose output contract can be checked whenever the export pipeline changes.

Disclosure: this draft was prepared with AI assistance. The example is illustrative; no export repair or visual test result is claimed.

About the author

  • Pseudo-Engineer, Full-Time Menace

No comments yet. Be the first to comment.