Skip to content

Add experimental PS4/PS5 texture swizzle and deswizzle support - #169

Draft
mandel99 wants to merge 8 commits into
nesrak1:mainfrom
mandel99:feature/ps4-ps5-textures
Draft

mandel99 wants to merge 8 commits into
nesrak1:mainfrom
mandel99:feature/ps4-ps5-textures

Conversation

@mandel99

Copy link
Copy Markdown

Adds experimental PS4 Morton 8x8 and PS5 GFX10 standard texture swizzle/deswizzle through the existing ISwizzler API. Includes complete mip chains, PS5 mip tails, RGB24 storage handling, additional fixed-size pixel/block formats and preservation of original padding during image replacement. Unsupported image imports are rejected before modifying texture data.

Synced with upstream main. Validation: Windows UABEANext Release build, 191 format checks and 115 PS4/PS5/Switch regression checks. Real console assets were also used during development; additional formats use synthetic fixtures. Display/XOR modes, arrays, cubemaps and streaming mip chains remain outside the supported scope. No in-game validation; game data and local test harnesses are not included.

Companion UABEANext integration: nesrak1/UABEANext#19

Simplify console texture code and comments, move the PS5 resource workaround beside the swizzler, and support padded PS4 mip chains.
@mandel99
mandel99 marked this pull request as draft October 1, 2026 20:21
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