G1T.h update
π ProjectG1M v1.9 β PR Candidate
This plugin update adds support for the full index of texture formats within the G1T file format for decoding in Noesis. It also includes a host of new supporting features.
β Key Features Updates
- β Expanded texture types to include 3D textures (cube, volumes and arrays)
- β Support for PS4 plane decoding
- β
Unswizzle support for:
- D3D12 64KB layout
- PS4/PSVita tile modes
- Wii U GX2 tiling
- β
Added format color conversions for:
- RGB10_A2 ->RGBA32_FLOAT
- R11F_G11F_B10F -> RGB32_FLOAT
- DEPTH32 -> RGB32_FLOAT
- DEPTH24_STENCIL8 -> RGB24_A8
- DEPTH16 ->RGB16
- DEPTH32F_STENCIL8 -> RGBA32_FLOAT
- Linear -> sRGB
- β
Added new dropdown items:
- Load all animations in same folder
- Load matching g1t file with g1m (by file name)
- Generate all texture planes
- Flip image vertically
- Flip image horizontally
- Enable debug log (pop out window)
- β
Added support for Nintendo & Sony platform texture formats (samples needed):
- GX_TF_CI4 / CI8 / CI14 (Wii / GC)
- GXM P4/P8 (PS Vita)
- β Massive new debug logging support
- β "Panic mode" on header read issues
π§ Updates & Improvements
- Updated enums to known formats types
- Fully documented and parsed headers, extra headers and texture headers
- Byte-accurate buffer size estimation
- Refactored deswizzle logic for GX2 / D12 formats
- Massive debug texture parsing
π Notes
- This is an early release, so please report bugs!
- Due to the texture format index being pulled from game libraries (not from samples themselves) there may be incorrect formats.
- Most of these new features need testing or samples to test them.
- All formats end up as RGBA32 display.
β οΈ Known Issues
- CI4 / CI8 / CI14 code written but not yet implemented (need samples).
- No mip generation β only creates first full mip.
- Float data support may be sub parse due to RGBA32 conversion.
- Enabling texture planes arrays may be unstable. It splits the textures increasing the amount within the index and throws off the original order. Would use for preview and exports only.
β¨Wishlist
- Add loading of .gz and .dz files without having to unzip first.
βοΈInstall
- Unzip and place in plugins folder in Noesis install directory. Place the x64 one in the x64 folder if you use the x64 version.
π Credits / Thanks
- Piken (DwayneR) for the swizzle code
- KillzXGaming for the Switch-Toolbox Wii U swizzle code
- G1T file reseach for parsed indexes
- Everyone who tested and sent texture dumps β€οΈ