Skip to content

Apply native source screen-position options through the compositor - #398

Closed
Roxas2712 wants to merge 64 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-screen-position
Closed

Roxas2712 wants to merge 64 commits into
UNDERdecoded:mainfrom
Roxas2712:codex/upstream-screen-position

Conversation

@Roxas2712

Copy link
Copy Markdown

Native Gen2 menus have no source screenPos option or ScreenPosition owner. Add CENTER/UPPER/TOP through the existing native options, save and compositor paths. Use a shared whole-framebuffer-pixel lift, respect safe top insets, preserve skin/split ownership and grow the world canvas below a raised camera. Source Game2 frame queries and native chrome observe the same position. Default CENTER is preserved.

This offer is stacked on #397 and contains its already-offered viewport/chrome prerequisites (#383 and #224). It adapts the actual older Renderer:endFrame and flat options menu: no newer frameRects or grouped-menu API is fabricated.

Independent selected qualification on b83c8fa4: 1,031 screen-position checks including actual native final world/UI blits, eight editions, three positions, portrait/landscape/Retina fitting, safe insets, the real skin parser and normal menu input/save/boot application. Existing 4,454 frame-query and 116 chrome checks also pass. Managed test host cleaned after exit. Complete older-host suite, actual GPU/device/skin coverage and final release acceptance remain open. Details: docs/native-screen-position.md.

The source helper is adapted from Gen1Recomp revision 535a5ec0, copyright BOIS CLUB GAMES, LLC, with its GPLv3/Section 7 terms retained in licenses/GEN1RECOMP-TOUCH-SKINS.md. The helper and native integration retain those terms and credits. Independently owned integration/tests by Roxas2712 are offered under https://github.com/Roxas2712/Gen2Recomped/blob/main/LICENSE-ROXAS2712.md, including the specific Cedric / UNDERdecoded permission with visible credit. Existing authors' rights and earlier grants remain effective. No mod or player installation is changed.

# Conflicts:
#	src/mods/Loader.lua
# Conflicts:
#	docs/modding.md
#	src/mods/Loader.lua
#	src/world/WorldAPI.lua
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