Conversation
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.
Mega Man X's existing widescreen renderer depends on widening the SNES PPU and repairing its rolling tilemaps. This spike adds a custom compositor that captures the native raster and submitted sprites, then renders the wider stage from retained maps and game assets.
The widescreen mod offers Adaptive, 16:9, 21:9, and 32:9, with edge or native HUD anchoring. Adaptive supports up to 1024 logical pixels. Expanded sprite capacity is a separate experimental option, off by default. Legacy widescreen remains selectable while the spike is evaluated.
Gameplay hooks extend ordinary enemy and collectible visibility while retaining native timing for encounter controllers and the shared boss family. Fixes cover resource palettes, boss doors and activation, Ride Armor, streaker entrances, death/respawn width, menu pillarboxing, and dialogue bounds. Storm Eagle's distant panorama and platforms are prefilled; Launch Octopus's water tint extends across the view, and buried submarine presentation respects the original emergence while preserving surrounding terrain.
The latest playtest fixes make pickups visible on fresh state loads, preserve Armadillo's damage flash, keep the grinder visible at a distance, and show the lower shaft before the native coordinate relocation. The weapons pause menu now has clean pillarboxing. Launch's boat renders its complete body, the next buried submarine's nose stays hidden, and the underwater background remains intact while walking across the previously malformed area.
Validation
See the playtest burndown and reproduction notes for detailed evidence and limits. Native pixel agreement does not qualify unseen margin art or complete encounter progression. Owner acceptance of the latest batch and full-game coverage remain pending.
Draft integration blockers
This branch is tested against its existing pins (
snesrecomp8d12911 andrecomp-uia7a4f30). There are no framework source changes in this PR; unrelated runtime/audio/benchmark work is excluded.Main moved to the shared desktop host in 91be5ad. A read-only merge check found conflicts in CMakeLists.txt, main.c, mmx_rtl.c, and the deleted local opengl.c. Integrating this draft requires adapting the custom capture, native PPU setup, 1024-pixel surface capacity, and aspect handling to that host.
Both branches independently used game save chunk version 2 for different layouts. Integration must distinguish the spike's 464-byte streaker-migration chunk from main's appended execution/CHR state and verify both using copied saves. This draft is for review and continued playtesting; it is not ready to merge or remove the legacy renderer.