My feeling when a couple thousand individual shaders are dumped is like hitting my head against a brick wall.
I'm completely outside my comfort zone to begin with and the task is immense.
Personally I would like to improve my shader knowledge and develop tools to improve the workflow where possible.
I'm creating a new thread because the challenges is the same regardless of wrapper used.
So basically you are dumping all the shaders?
I know Helix mod (the debug version) allows you to select what shader to dump. (the visible ones)
Regardless, all (most)shaders are manually written, I don't know any way of simplifying the process rather than manually edit each one (of those needed), or...
- you could try to replicate/extend what 3D Vision automatic is doing (automatically hook and add "depth" to the shaders)
- use a script/program to automatically try and add the "depth" to the shaders...
I still think that the best option is to manually select the shaders you want to dump, but the "dump all" shaders can provide also benefit !!!
Regardless, Is a very time consuming thing (like any reverse engineering and fixing techniques).
What does anyone else thinks?
So basically you are dumping all the shaders?
I know Helix mod (the debug version) allows you to select what shader to dump. (the visible ones)
Regardless, all (most)shaders are manually written, I don't know any way of simplifying the process rather than manually edit each one (of those needed), or...
- you could try to replicate/extend what 3D Vision automatic is doing (automatically hook and add "depth" to the shaders)
- use a script/program to automatically try and add the "depth" to the shaders...
I still think that the best option is to manually select the shaders you want to dump, but the "dump all" shaders can provide also benefit !!!
Regardless, Is a very time consuming thing (like any reverse engineering and fixing techniques).
What does anyone else thinks?
1x Palit RTX 2080Ti Pro Gaming OC(watercooled and overclocked to hell)
3x 3D Vision Ready Asus VG278HE monitors (5760x1080).
Intel i9 9900K (overclocked to 5.3 and watercooled ofc).
Asus Maximus XI Hero Mobo.
16 GB Team Group T-Force Dark Pro DDR4 @ 3600.
Lots of Disks:
- Raid 0 - 256GB Sandisk Extreme SSD.
- Raid 0 - WD Black - 2TB.
- SanDisk SSD PLUS 480 GB.
- Intel 760p 256GB M.2 PCIe NVMe SSD.
Creative Sound Blaster Z.
Windows 10 x64 Pro.
etc
I'm not sure I fully understand the issue you describe, but my experience with DX9 games when there are a large numbers of shaders is that there are usually a handful of 'patterns' that emerge whereby the 'same' fix gets applied to hundreds of shaders. In these cases it can be automated using a script - this is how Helix lua scripts work, and is how I manage to fix games now using 'offline' scripts. It still takes a bit of work and creativity to work out how to fix the first few problems in the first place, but things like shadows and lighting are often quite formulaic (once you work it out). One feature Helix implemented in his DX9 debugger was to only display on the OSD the 'currently active' shaders and this reduces the effort of stepping through problems enormously - it was a bit of a game changer really. Also, Tsaebeht has his binary search tool which cuts down searching through N shaders to Log(base2)N, so the large number of shaders is less of an issue than it seems.
Or perhaps I am mis-understanding what you mean?
I'm not sure I fully understand the issue you describe, but my experience with DX9 games when there are a large numbers of shaders is that there are usually a handful of 'patterns' that emerge whereby the 'same' fix gets applied to hundreds of shaders. In these cases it can be automated using a script - this is how Helix lua scripts work, and is how I manage to fix games now using 'offline' scripts. It still takes a bit of work and creativity to work out how to fix the first few problems in the first place, but things like shadows and lighting are often quite formulaic (once you work it out). One feature Helix implemented in his DX9 debugger was to only display on the OSD the 'currently active' shaders and this reduces the effort of stepping through problems enormously - it was a bit of a game changer really. Also, Tsaebeht has his binary search tool which cuts down searching through N shaders to Log(base2)N, so the large number of shaders is less of an issue than it seems.
Or perhaps I am mis-understanding what you mean?
A couple of thousand shaders isn't really a big deal tbh or at least used to it.
We make use of headers/comparing so we know which shaders to fix. Helix I am pretty sure rarely ever has to dump individual shaders.
Normally I fix 2 or 3 effects. Then dumpall and use dumpall to fix as many other similiar effects as possible.
----
Though its since extremely time consuming.
Flugan, like i wrote by email....the dump all function is very important... binary search + batch fixes is 90% of a game fix. Tridef use only batch fixes on the fly. Helix Lua script is batch fixes.
Well i grab the beta 3 wrapper, dump all, do a search for shadows, found 31 PS related and do a massive remove script (basically disable the output of each shader)...results in 10 minutes:
[url]https://s3.amazonaws.com/dhr/AC4BFSP01_99.jps[/url]
[url]https://s3.amazonaws.com/dhr/AC4BFSP02_99.jps[/url]
I think 98% of bad shadows are removed.....by chance (lucky me) the good shadows are not disable (i think are related to another kind of shadows), see first Screenshot around the ship.
The game looks a little to bright, but better than with 2D shadows.
**First Helix community fixes was remove bad effects. So i think this is a very important step in the DX11 fixing games.
I want to encourage to go on with this project, and any help you need i'm sure there is a lot of people here that will help.
Cheers!!!!
Flugan, like i wrote by email....the dump all function is very important... binary search + batch fixes is 90% of a game fix. Tridef use only batch fixes on the fly. Helix Lua script is batch fixes.
Well i grab the beta 3 wrapper, dump all, do a search for shadows, found 31 PS related and do a massive remove script (basically disable the output of each shader)...results in 10 minutes:
I think 98% of bad shadows are removed.....by chance (lucky me) the good shadows are not disable (i think are related to another kind of shadows), see first Screenshot around the ship.
The game looks a little to bright, but better than with 2D shadows.
**First Helix community fixes was remove bad effects. So i think this is a very important step in the DX11 fixing games.
I want to encourage to go on with this project, and any help you need i'm sure there is a lot of people here that will help.
i do more test and found the dump function is not a dump all function like helix wrapper....start to dump shaders as they appear on screen. I load others parts of the game (more shaders dumped) and do again the shadows search and now i found 53 PS.
If anyone want to try this, download this and extract....same as helix wrapper
[b]This is only a TEST, only shadows are removed[/b].....there is still some lights issues, sun is render wrong and others stuff. Use high Soft shadows and AO off.
[url]https://s3.amazonaws.com/dhr/AC4_Beta3_TESTING.zip[/url]
I will remove shadows in Assassin's Creed Liberation HD....this game crash with Tridef.
i do more test and found the dump function is not a dump all function like helix wrapper....start to dump shaders as they appear on screen. I load others parts of the game (more shaders dumped) and do again the shadows search and now i found 53 PS.
If anyone want to try this, download this and extract....same as helix wrapper
This is only a TEST, only shadows are removed.....there is still some lights issues, sun is render wrong and others stuff. Use high Soft shadows and AO off.
Pardon me for asking, but how are you able to remove effects from dx11 games? Was some kind of wrapper released, or perhaps helix's one behind closed doors?
Pardon me for asking, but how are you able to remove effects from dx11 games? Was some kind of wrapper released, or perhaps helix's one behind closed doors?
Flugan is working on a wrapper, and it looks like it's coming along really well.
DHR, that's a really impressive result. Is the wrapper currently in a state where shaders can potentially be fixed, or are we currently limited to disabling them?
Flugan is working on a wrapper, and it looks like it's coming along really well.
DHR, that's a really impressive result. Is the wrapper currently in a state where shaders can potentially be fixed, or are we currently limited to disabling them?
@sammy123....i use Flugan wrapper: [url]https://forums.geforce.com/default/topic/659645/3d-vision/the-dawn-of-project-flugan/[/url]
@Pirateguybrush, you can remove or fix shaders. DX11 games use "Shader model 5", DX9 games use "Shader Model 3". Example: AC4 use model 4 and model 5 for some shaders. Shaders in DX11 are more complex, we need programmers with the knowledge. We have only BI fixed by Helix (we need to look those fixes in more detail). The learning curve have to start from 0 for DX11 games. For DX9 happens the same btw.
More info:
[url]http://msdn.microsoft.com/en-us/library/windows/desktop/ff471356(v=vs.85).aspx[/url]
@Pirateguybrush, you can remove or fix shaders. DX11 games use "Shader model 5", DX9 games use "Shader Model 3". Example: AC4 use model 4 and model 5 for some shaders. Shaders in DX11 are more complex, we need programmers with the knowledge. We have only BI fixed by Helix (we need to look those fixes in more detail). The learning curve have to start from 0 for DX11 games. For DX9 happens the same btw.
Forgive my ignorance here but for sorting though lots of shaders have you tried TsaebehT's binary shader wass-name?
If I get TsaebehT's tool correctly, to find a single shader from 1024 should take 10 attempts, 2048 shaders = 11 attempts, 4096 shaders = 12 attempts etc.
Any use to you?
Forgive my ignorance here but for sorting though lots of shaders have you tried TsaebehT's binary shader wass-name?
If I get TsaebehT's tool correctly, to find a single shader from 1024 should take 10 attempts, 2048 shaders = 11 attempts, 4096 shaders = 12 attempts etc.
Any use to you?
Lord, grant me the serenity to accept the things I cannot change, the courage to change the things I can, and the wisdom to know the difference.
-------------------
Vitals: Windows 7 64bit, i5 2500 @ 4.4ghz, SLI GTX670, 8GB, Viewsonic VX2268WM
@andysonofbob, i just noticed i write "binary" search (sorry i write that very late yesterday...suppose i was thinking on that), i don't do a binary search......first i search in headers shaders for the word "shadow", next i edit a couple of shader (shadow related) to see the code and others variables. Grab all shaders related to a Shadow patern, in this case my key word was "tshadowmap" (53 PS...those shader are from soft Shadows) and do a massive replacement for the "dcl_output" register to disable all shaders.
Is not that complicated, you can try in others games.... if anyone know how to fix this type of shadows, how to change/modify the code to fix the shaders, instead of disable the shader, we can fix it.
@andysonofbob, i just noticed i write "binary" search (sorry i write that very late yesterday...suppose i was thinking on that), i don't do a binary search......first i search in headers shaders for the word "shadow", next i edit a couple of shader (shadow related) to see the code and others variables. Grab all shaders related to a Shadow patern, in this case my key word was "tshadowmap" (53 PS...those shader are from soft Shadows) and do a massive replacement for the "dcl_output" register to disable all shaders.
Is not that complicated, you can try in others games.... if anyone know how to fix this type of shadows, how to change/modify the code to fix the shaders, instead of disable the shader, we can fix it.
N'ah, it's my bad. I didn't read through the thread carefully to see that you had already tried it. Soz mate! :/
Lord, grant me the serenity to accept the things I cannot change, the courage to change the things I can, and the wisdom to know the difference.
-------------------
Vitals: Windows 7 64bit, i5 2500 @ 4.4ghz, SLI GTX670, 8GB, Viewsonic VX2268WM
I'm completely outside my comfort zone to begin with and the task is immense.
Personally I would like to improve my shader knowledge and develop tools to improve the workflow where possible.
I'm creating a new thread because the challenges is the same regardless of wrapper used.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
donations: ulfjalmbrant@hotmail.com
I know Helix mod (the debug version) allows you to select what shader to dump. (the visible ones)
Regardless, all (most)shaders are manually written, I don't know any way of simplifying the process rather than manually edit each one (of those needed), or...
- you could try to replicate/extend what 3D Vision automatic is doing (automatically hook and add "depth" to the shaders)
- use a script/program to automatically try and add the "depth" to the shaders...
I still think that the best option is to manually select the shaders you want to dump, but the "dump all" shaders can provide also benefit !!!
Regardless, Is a very time consuming thing (like any reverse engineering and fixing techniques).
What does anyone else thinks?
1x Palit RTX 2080Ti Pro Gaming OC(watercooled and overclocked to hell)
3x 3D Vision Ready Asus VG278HE monitors (5760x1080).
Intel i9 9900K (overclocked to 5.3 and watercooled ofc).
Asus Maximus XI Hero Mobo.
16 GB Team Group T-Force Dark Pro DDR4 @ 3600.
Lots of Disks:
- Raid 0 - 256GB Sandisk Extreme SSD.
- Raid 0 - WD Black - 2TB.
- SanDisk SSD PLUS 480 GB.
- Intel 760p 256GB M.2 PCIe NVMe SSD.
Creative Sound Blaster Z.
Windows 10 x64 Pro.
etc
My website with my fixes and OpenGL to 3D Vision wrapper:
http://3dsurroundgaming.com
(If you like some of the stuff that I've done and want to donate something, you can do it with PayPal at tavyhome@gmail.com)
Or perhaps I am mis-understanding what you mean?
Rig: Intel i7-8700K @4.7GHz, 16Gb Ram, SSD, GTX 1080Ti, Win10x64, Asus VG278
We make use of headers/comparing so we know which shaders to fix. Helix I am pretty sure rarely ever has to dump individual shaders.
Normally I fix 2 or 3 effects. Then dumpall and use dumpall to fix as many other similiar effects as possible.
----
Though its since extremely time consuming.
Co-founder of helixmod.blog.com
If you like one of my helixmod patches and want to donate. Can send to me through paypal - eqzitara@yahoo.com
Well i grab the beta 3 wrapper, dump all, do a search for shadows, found 31 PS related and do a massive remove script (basically disable the output of each shader)...results in 10 minutes:
https://s3.amazonaws.com/dhr/AC4BFSP01_99.jps
https://s3.amazonaws.com/dhr/AC4BFSP02_99.jps
I think 98% of bad shadows are removed.....by chance (lucky me) the good shadows are not disable (i think are related to another kind of shadows), see first Screenshot around the ship.
The game looks a little to bright, but better than with 2D shadows.
**First Helix community fixes was remove bad effects. So i think this is a very important step in the DX11 fixing games.
I want to encourage to go on with this project, and any help you need i'm sure there is a lot of people here that will help.
Cheers!!!!
MY WEB
Helix Mod - Making 3D Better
My 3D Screenshot Gallery
Like my fixes? you can donate to Paypal: dhr.donation@gmail.com
If anyone want to try this, download this and extract....same as helix wrapper
This is only a TEST, only shadows are removed.....there is still some lights issues, sun is render wrong and others stuff. Use high Soft shadows and AO off.
https://s3.amazonaws.com/dhr/AC4_Beta3_TESTING.zip
I will remove shadows in Assassin's Creed Liberation HD....this game crash with Tridef.
MY WEB
Helix Mod - Making 3D Better
My 3D Screenshot Gallery
Like my fixes? you can donate to Paypal: dhr.donation@gmail.com
But it appears to be working.
Thanks to everybody using my assembler it warms my heart.
To have a critical piece of code that everyone can enjoy!
What more can you ask for?
donations: ulfjalmbrant@hotmail.com
DHR, that's a really impressive result. Is the wrapper currently in a state where shaders can potentially be fixed, or are we currently limited to disabling them?
@Pirateguybrush, you can remove or fix shaders. DX11 games use "Shader model 5", DX9 games use "Shader Model 3". Example: AC4 use model 4 and model 5 for some shaders. Shaders in DX11 are more complex, we need programmers with the knowledge. We have only BI fixed by Helix (we need to look those fixes in more detail). The learning curve have to start from 0 for DX11 games. For DX9 happens the same btw.
More info:
http://msdn.microsoft.com/en-us/library/windows/desktop/ff471356(v=vs.85).aspx
MY WEB
Helix Mod - Making 3D Better
My 3D Screenshot Gallery
Like my fixes? you can donate to Paypal: dhr.donation@gmail.com
If I get TsaebehT's tool correctly, to find a single shader from 1024 should take 10 attempts, 2048 shaders = 11 attempts, 4096 shaders = 12 attempts etc.
Any use to you?
Lord, grant me the serenity to accept the things I cannot change, the courage to change the things I can, and the wisdom to know the difference.
-------------------
Vitals: Windows 7 64bit, i5 2500 @ 4.4ghz, SLI GTX670, 8GB, Viewsonic VX2268WM
Handy Driver Discussion
Helix Mod - community fixes
Bo3b's Shaderhacker School - How to fix 3D in games
3dsolutionsgaming.com - videos, reviews and 3D fixes
Is not that complicated, you can try in others games.... if anyone know how to fix this type of shadows, how to change/modify the code to fix the shaders, instead of disable the shader, we can fix it.
MY WEB
Helix Mod - Making 3D Better
My 3D Screenshot Gallery
Like my fixes? you can donate to Paypal: dhr.donation@gmail.com
Lord, grant me the serenity to accept the things I cannot change, the courage to change the things I can, and the wisdom to know the difference.
-------------------
Vitals: Windows 7 64bit, i5 2500 @ 4.4ghz, SLI GTX670, 8GB, Viewsonic VX2268WM
Handy Driver Discussion
Helix Mod - community fixes
Bo3b's Shaderhacker School - How to fix 3D in games
3dsolutionsgaming.com - videos, reviews and 3D fixes