Skip to content

Fix campaign arrow and cinematic icon centering - #578

Merged
corepunch merged 1 commit into
mainfrom
feature/campaign-icon-centering
Oct 4, 2026
Merged

corepunch merged 1 commit into
mainfrom
feature/campaign-icon-centering

Conversation

@corepunch

Copy link
Copy Markdown
Owner

Campaign arrow and cinematic camera icons were shifted within their button borders because backdrop rendering ignored the authored FDF background size and sampled only the upper-left portion of each inset texture. Carry that size through glue and retained HUD drawing, then calculate UV repeats from the authored tile span after insets so the full icon stays centered.

Add retail ROC/TFT button backdrop fixtures and regression coverage for both icons in normal, pressed, and disabled states, plus renderer coverage for resolution independence, custom spans, unequal insets, mirroring, repetition, and invalid geometry. Document the source data and verification commands.

The required full rebuild also exposed WC3 AI warnings: retain trace-only values explicitly and fix a conversion macro's self-shadowing rawcode temporary, with coverage of authored, added, and ranked abilities.

Validation:

  • Regression tests failed before the alignment fix and passed afterward.
  • make test passed, including ROC/TFT engine suites.
  • make -j4 wc3-build openwow opensc2 passed without compiler warnings.
  • Engine boundary audit and git diff --check passed.
  • Inspected ROC and TFT Human campaign framebuffer captures: arrow icons are centered. Camera templates are covered by automated tests; the local build has movie rows disabled because FFmpeg development packages are absent.

@corepunch
corepunch merged commit 1a61bd4 into main Oct 4, 2026
7 checks passed
@corepunch
corepunch deleted the feature/campaign-icon-centering branch October 4, 2026 09:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant