Repository navigation
Conversation
…stream-gen2-palette-clock
…nto codex/upstream-gen2-palette-register
…ck real SDK entry
…assic and wide battle owners
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The GSC VM registers battler head/feet texture descriptors, but the native OAM renderer rejects entries carrying
battler. Actual animation objects therefore have no pixels despite correct command/object state. The OAM palette pass also mutates outer indexed shader uniforms that graphics push/pop cannot restore.Snapshot the existing screen-owned picture at the actual
battlergfxcommand and render the copied one/two-row cells with genuine OAM coordinates, flips and palettes. Keep OBJ color-zero transparency separate from BG remapping; preserve custom RGB alpha, crop selection, pending Transform and replacement picture ownership. Retained runners keep their own copied art. Restore the caller's indexed palette uniforms, including draw failure. Drawing adds no image decode, upload, GPU readback or animation tick.Builds cumulatively on #202/#356/#357/#358/#359/#360; the new change starts after
80a33201e6d4e7f08366970912a870fe7ca2c708. No API aliases or second combat/animation owner, no mod edits, no ROM pixels committed. Fork review: Roxas2712#266.Validation:
74be6ecd25ed77eefda9fb94fabd0d3e74a7ed24: 66178 checks in 18 groups, including 16907 native row-copy/draw checks across Gold/Silver/Crystal. The stronger palette fixture reproduces 96 mismatches before the scope fix and passes afterward.40a28903ab371816c608889eb0e9759a73c28eb4: 182049 checks in 34 groups passed.aed24a60: 2804 cases /355718 steps plus 10880 replacement-picture and 512 doll-sheet pixels. The two known pinned-reference Transform/Minimize picture-state errors use the primary ASM oracle; other command/object/OAM/BG state remains compared. This does not qualify GPU output of copied battler rows.No new GPU, full unchanged-client, Windows or packaged-release qualification. Primary sources and limits:
docs/native-gen2-battler-rows.md.Contributions by Roxas2712. Existing Cedric and Gen1Recomp interpreter/object-drawing licences and attribution remain intact. Original contributions are offered to Cedric / UNDERdecoded under
LICENSE-ROXAS2712.md, including its visible-credit conditions; that permission does not narrow earlier grants or license third-party work. SeeNOTICE.mdandcompat/gen1-gsc/.Versioned GPU pixel fixture added at final adapted head
0626de1c. The fork fixture at2aa97dddpassed72 real native BattleState/VM/OAM GPU cases and6637212 pixel/state checks on each of Metal2.1 andOpenGL4.1 (AppleM3). This GPU run is on the fork source, not an independent adapted-upstream GPU qualification. Only GPU test sources changed after the CPU-qualified engine heads40/74; no new runtime delta. Unchanged-mod/OS-window/Windows/release acceptance remains open.