GTA 5 Shader Unpacker and Repacker 1.1.1
1.459
27
1.459
27
This tool is designed to batch unpack shaders in ".fxc" files located in "update/update.rpf/common/shaders".
This tool can help you view the .o shaders details:
https://github.com/tgjones/slimshader
This tool can help you decompile the .o shaders:
https://github.com/etnlGD/HLSLDecompiler
Change Log
1.1.1
1.1
Requirements:
.NET 4.5
Usage:
See readme.
Note: the file extension is .o followed by a number, this number represents the offset the shader came from.
This tool can help you view the .o shaders details:
https://github.com/tgjones/slimshader
This tool can help you decompile the .o shaders:
https://github.com/etnlGD/HLSLDecompiler
Change Log
1.1.1
- Fixed decompile argument (woops)
- Removed old version from converted folder.
1.1
- Added the ability to repack shaders into the fxc files with the -P argument.
- Moved the unpack functionality to the -D argument.
Requirements:
.NET 4.5
Usage:
See readme.
Note: the file extension is .o followed by a number, this number represents the offset the shader came from.
First Uploaded: 16. jun 2020
Last Updated: 30. jul 2020
Last Downloaded: 25 minut
23 Comments
This tool is designed to batch unpack shaders in ".fxc" files located in "update/update.rpf/common/shaders".
This tool can help you view the .o shaders details:
https://github.com/tgjones/slimshader
This tool can help you decompile the .o shaders:
https://github.com/etnlGD/HLSLDecompiler
Change Log
1.1.1
1.1
Requirements:
.NET 4.5
Usage:
See readme.
Note: the file extension is .o followed by a number, this number represents the offset the shader came from.
This tool can help you view the .o shaders details:
https://github.com/tgjones/slimshader
This tool can help you decompile the .o shaders:
https://github.com/etnlGD/HLSLDecompiler
Change Log
1.1.1
- Fixed decompile argument (woops)
- Removed old version from converted folder.
1.1
- Added the ability to repack shaders into the fxc files with the -P argument.
- Moved the unpack functionality to the -D argument.
Requirements:
.NET 4.5
Usage:
See readme.
Note: the file extension is .o followed by a number, this number represents the offset the shader came from.
First Uploaded: 16. jun 2020
Last Updated: 30. jul 2020
Last Downloaded: 25 minut
These unpacked shaders can be decompiled with the following tool:
https://github.com/etnlGD/HLSLDecompiler
Warning: It doesn't handle samplers correctly, so any shader with a decompiled sampler will not repack correctly.
@Alweul ok thank you I understand
So it is possible now to make custom shaders the same way like R*?
@DayL Yes it is possible to make new custom shaders, however there isn't a way to install/repack them yet.
@Alweul you are late codewalker had this shader decompiling feature since 2017
@FakePewDiePie I wasn't aware, thanks for letting me know, Ill keep this up just in case someone else doesn't find that one.
@Alweul ye keep it up homie just don't give we need this to be able to compile asap maybe we'll see a DX12 with DXR enabled in the near future lol
Hi, I've been wanting a tool like this for a long time. Unfortunately, after unpacking the shaders, no matter which of the unpacked shaders I open in NotePad++, none of them are anymore readable than before, they look like they're encrypted or something. Am I using the wrong program to open the shaders?
@whocares See the description for which program is capable of opening these shaders for viewing. This tool specifically unpacks them so they can be decompiled. (A quick google search should put you in the right direction). The github project has a nuget package so VS2017 nuget manager should help install dependencies quickly.
@Alweul Sorry for the dumb comment, I'll do that, thanks.
@Alweul If you find a way to repack/recompile them, that would be stunning.
I have successfully decompiled the source of the first water vertex shader, recompiled it with visual studio 2019, and patched it back into the game. I was able to then load that shader in game without crashing. (First successful shader replacement?)
Unfortunately patching is messy and replacing the shaders requires the same exact bindings being recreated from the original. With this water shader there was no sampler, so it was easy. For that reason I can't release a tool to patch shaders in just yet, because it wouldn't support most of them.
I don't understand HLSL code very well (how each function actually contributes to the end product really) so I may be missing something simple.
@Alweul Please add a Changelog in the description so we may approve your file.
@InfamousSabre Sorry updated. :)
Well this thing is gonna take graphics modding to an entirely new level after this new update.
Awesome @Alweul
Good Job
Excellent work.
Haha, I knew you do it buddy, Great work.
Rated a 5 as I know this is a very useful tool. Unfortunately, I'm too dumb/lazy to get SlimShader to compile and work. If anyone is willing to extract the shaders from update.rpf\common\shaders\win32_40_final\ in readable format (as in, use this tool to extract the .o files, then use SlimShader to parse them into readable format), I'd be willing to paypal/vemo someone a few bucks for the assist. The re-compiling part I can do on my own just fine.
@whocares Message me on discord: Genesis#1753