[quote="DarkStarSword"][quote="bo3b"]Of note, DXGI is fully alive again, and fully wrapped.[/quote]Sweet :) No Win 8 / evil update stability issues this time?
[quote]Also includes a new hunting on/off toggle key to allow you to play at full speed, then enable the hunting+overlay when you like.[/quote]I'd been thinking about adding the same thing :) Are there any problems with shaders created during play mode not being dumpable/replaceable after switching to hunting mode?[/quote]
Don't know about Win8 or 8.1 yet. Others will have to try it. I think this approach no longer makes the DXGI call that was questionable, but to be honest, I can't remember the details of that crash. I do know that I have the evil KB installed here and it's working correctly, whereas before it would crash.
I expect that we might see some problems with misloaded shaders, I haven't quite finished that update. My plan is to always load the shaders and remove the need for partial loading, as the memory usage is really minimal for all this stuff- it's the CPU usage that causes us problems.
So unless you think it would be bad, I think we can simplify this path to always have shaders loaded and available for replacement, so sort of a hybrid always-on model.
bo3b said:Of note, DXGI is fully alive again, and fully wrapped.
Sweet :) No Win 8 / evil update stability issues this time?
Also includes a new hunting on/off toggle key to allow you to play at full speed, then enable the hunting+overlay when you like.
I'd been thinking about adding the same thing :) Are there any problems with shaders created during play mode not being dumpable/replaceable after switching to hunting mode?
Don't know about Win8 or 8.1 yet. Others will have to try it. I think this approach no longer makes the DXGI call that was questionable, but to be honest, I can't remember the details of that crash. I do know that I have the evil KB installed here and it's working correctly, whereas before it would crash.
I expect that we might see some problems with misloaded shaders, I haven't quite finished that update. My plan is to always load the shaders and remove the need for partial loading, as the memory usage is really minimal for all this stuff- it's the CPU usage that causes us problems.
So unless you think it would be bad, I think we can simplify this path to always have shaders loaded and available for replacement, so sort of a hybrid always-on model.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607 Latest 3Dmigoto Release Bo3b's School for ShaderHackers
[quote="bo3b"]I expect that we might see some problems with misloaded shaders, I haven't quite finished that update. My plan is to always load the shaders and remove the need for partial loading, as the memory usage is really minimal for all this stuff- it's the CPU usage that causes us problems.
So unless you think it would be bad, I think we can simplify this path to always have shaders loaded and available for replacement, so sort of a hybrid always-on model.[/quote]
Sounds good to me :)
bo3b said:I expect that we might see some problems with misloaded shaders, I haven't quite finished that update. My plan is to always load the shaders and remove the need for partial loading, as the memory usage is really minimal for all this stuff- it's the CPU usage that causes us problems.
So unless you think it would be bad, I think we can simplify this path to always have shaders loaded and available for replacement, so sort of a hybrid always-on model.
Sounds good to me :)
2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit
OK, I'm having some trouble with GTA5 crashing w5th 3Dmigoto, but fixed a few problems, and now it's mostly working here too. We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.
Running now with an overlay. Pretty experimental version with restructured code base, and overlay:
[url]https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.1.zip[/url]
Please feel free to give it a try, and let me know if it works or does not. I also tried it on Mordor and Alien and it's working smoothly there.
Looks like this in GTA5, where I've found the sky and turned it off, and found Franklin's body and turned it off.
[img]http://sg.bo3b.net/gtav/GTA557_85.jps[/img]
OK, I'm having some trouble with GTA5 crashing w5th 3Dmigoto, but fixed a few problems, and now it's mostly working here too. We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.
Running now with an overlay. Pretty experimental version with restructured code base, and overlay:
[quote="bo3b"]We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.[/quote]
This is where a toggle on/off function would be very handy, then you could create HUD toggles for games with 3Dmigoto.
Do you think that would be possible somehow?
bo3b said:We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.
This is where a toggle on/off function would be very handy, then you could create HUD toggles for games with 3Dmigoto.
Do you think that would be possible somehow?
1080 Ti - i7 5820k - 16Gb RAM - Win 10 version 1607 - ASUS VG236H (1920x1080@120Hz)
[quote="Jan-Itor"][quote="bo3b"]We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.[/quote]
This is where a toggle on/off function would be very handy, then you could create HUD toggles for games with 3Dmigoto.
Do you think that would be possible somehow?[/quote]
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
For examples of these in use, look at the FC4 shaders here: [url]https://github.com/bo3b/3Dmigoto/tree/master/FC4/ShaderFixes[/url] Not specifically for HUD toggle, but you'll see how to use x,y,z,w and set up key overrides.
I'm also going to tweak Mordor as I'm playing it now, and I think I'll make HUDless option there, as it's got waaay too much onscreen.
bo3b said:We don't presently have anything specific we need to fix I think, but a different modder (Voodooman) wanted to make a no-UI version using 3Dmigoto, so it was worth taking a look.
This is where a toggle on/off function would be very handy, then you could create HUD toggles for games with 3Dmigoto.
Do you think that would be possible somehow?
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
[quote="bo3b"]
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
For examples of these in use, look at the FC4 shaders here: [url]https://github.com/bo3b/3Dmigoto/tree/master/FC4/ShaderFixes[/url] Not specifically for HUD toggle, but you'll see how to use x,y,z,w and set up key overrides.
I'm also going to tweak Mordor as I'm playing it now, and I think I'll make HUDless option there, as it's got waaay too much onscreen.[/quote]
Oh cool. But I am more of a "monkey see, monkey do" type of guy so I don't really understand what you mean there :P
Could you give me a quick tutorial of how exactly you set would this up? For example with helixmod I used [url=https://forums.geforce.com/default/topic/513190/3d-vision/how-to-fix-disable-shaders-in-games-dll-guide-and-fixes-/post/3944519/#3944519]this[/url] method
bo3b said:
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
[quote="Jan-Itor"][quote="bo3b"]
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
For examples of these in use, look at the FC4 shaders here: [url]https://github.com/bo3b/3Dmigoto/tree/master/FC4/ShaderFixes[/url] Not specifically for HUD toggle, but you'll see how to use x,y,z,w and set up key overrides.
I'm also going to tweak Mordor as I'm playing it now, and I think I'll make HUDless option there, as it's got waaay too much onscreen.[/quote]
Oh cool. But I am more of a "monkey see, monkey do" type of guy so I don't really understand what you mean there :P
Could you give me a quick tutorial of how exactly you set would this up? For example with helixmod I used [url=https://forums.geforce.com/default/topic/513190/3d-vision/how-to-fix-disable-shaders-in-games-dll-guide-and-fixes-/post/3944519/#3944519]this[/url] method [/quote]
Ah, but I'm more of a "teach a man to fish" guy, not do his fishing for him. ;->
If you haven't done Bo3b's School for ShaderHackers, [url]http://wiki.bo3b.net[/url], it's worth the time.
Once you have, then making this work in 3Dmigoto is a slam dunk.
bo3b said:
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
[quote="bo3b"]
If you haven't done Bo3b's School for ShaderHackers, [url]http://wiki.bo3b.net[/url], it's worth the time.
Once you have, then making this work in 3Dmigoto is a slam dunk.[/quote]
So I should be looking at this?
[img]http://i.imgur.com/nopFYAD.png[/img]
I would do some testing, but my gaming PC broke :S
[quote="Jan-Itor"][quote="bo3b"]
If you haven't done Bo3b's School for ShaderHackers, [url]http://wiki.bo3b.net[/url], it's worth the time.
Once you have, then making this work in 3Dmigoto is a slam dunk.[/quote]
So I should be looking at this?
[img]http://i.imgur.com/nopFYAD.png[/img]
I would do some testing, but my gaming PC broke :S
[/quote]
Yep, exactly. That's the basic premise behind making a toggle operation of any form in the shaders. Can be a HUD toggle with the right shaders. For a HUD toggle, you'd target the PixelShaders.
That code is the DX9/Helix way of doing things, which is worth learning for any game you'd want to hit in that category. In the DX11/3Dmigoto way, the same basic strategy is true, the code is different and a bit easier.
Here's a rough example (may not compile, just off top of my head):
[code]...
In the d3dx.ini file:
[Constants]
x=1 // on by default
...
[Key1]
Key=F2
x=0 // hide HUD
type=toggle
In every shader file:
...
Texture1D<float4> IniParams : register(t120);
...
params = IniParams.Load(0);
...
if (params.x == 0)
{
o0 = 0;
return;
}
[/code]
bo3b said:
If you haven't done Bo3b's School for ShaderHackers, http://wiki.bo3b.net, it's worth the time.
Once you have, then making this work in 3Dmigoto is a slam dunk.
So I should be looking at this?
I would do some testing, but my gaming PC broke :S
Yep, exactly. That's the basic premise behind making a toggle operation of any form in the shaders. Can be a HUD toggle with the right shaders. For a HUD toggle, you'd target the PixelShaders.
That code is the DX9/Helix way of doing things, which is worth learning for any game you'd want to hit in that category. In the DX11/3Dmigoto way, the same basic strategy is true, the code is different and a bit easier.
Here's a rough example (may not compile, just off top of my head):
...
In the d3dx.ini file:
[Constants]
x=1 // on by default
...
[Key1]
Key=F2
x=0 // hide HUD
type=toggle
In every shader file:
...
Texture1D<float4> IniParams : register(t120);
...
params = IniParams.Load(0);
...
if (params.x == 0)
{
o0 = 0;
return;
}
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607 Latest 3Dmigoto Release Bo3b's School for ShaderHackers
Perfect timing. I had spent some time last night figuring this out on my own, adapting the code from Helix mod, and figuring it out with the help of DHR's fix on Dying Light, and came up with something almost similar.
I have run into a little bit of a snag, though. I'm able to disable/reenable the shaders perfectly fine using this, problem is that once I have marked the shaders, it changes them to being white. At first I thought it was of my own doing from modifying the code to disable it, but after coming back to this tonight and seeing your post, I decided to delete the marked files from last night and redo them, and that's when I noticed that the issue occurred pretty much as soon as I mark them.
Are you familiar at all with this issue? If need be I can put up some pics.
Also, to save a little bit of future frustration and heartache, could you advise on how to go about adapting the prime directive from your lesson on Helix mod to using it in 3Dmigoto? If it's been explained anywhere else in this thread else a link to it would suffice, and I'll also try combing through the thread tomorrow, if I have the time, to save you the hassle.
Last question (for now) is it possible to get text on screen, similar to Helix debug dll, while shader hunting? I assuming not, otherwise it probably would be on by default... but better to ask and find out.
Perfect timing. I had spent some time last night figuring this out on my own, adapting the code from Helix mod, and figuring it out with the help of DHR's fix on Dying Light, and came up with something almost similar.
I have run into a little bit of a snag, though. I'm able to disable/reenable the shaders perfectly fine using this, problem is that once I have marked the shaders, it changes them to being white. At first I thought it was of my own doing from modifying the code to disable it, but after coming back to this tonight and seeing your post, I decided to delete the marked files from last night and redo them, and that's when I noticed that the issue occurred pretty much as soon as I mark them.
Are you familiar at all with this issue? If need be I can put up some pics.
Also, to save a little bit of future frustration and heartache, could you advise on how to go about adapting the prime directive from your lesson on Helix mod to using it in 3Dmigoto? If it's been explained anywhere else in this thread else a link to it would suffice, and I'll also try combing through the thread tomorrow, if I have the time, to save you the hassle.
Last question (for now) is it possible to get text on screen, similar to Helix debug dll, while shader hunting? I assuming not, otherwise it probably would be on by default... but better to ask and find out.
3D Gaming Rig: CPU: i7 7700K @ 4.9Ghz | Mobo: Asus Maximus Hero VIII | RAM: Corsair Dominator 16GB | GPU: 2 x GTX 1080 Ti SLI | 3xSSDs for OS and Apps, 2 x HDD's for 11GB storage | PSU: Seasonic X-1250 M2| Case: Corsair C70 | Cooling: Corsair H115i Hydro cooler | Displays: Asus PG278QR, BenQ XL2420TX & BenQ HT1075 | OS: Windows 10 Pro + Windows 7 dual boot
For an Overlay, I've got just the ticket for you- hot off the presses, only used by one person I think. Highly experimental, but worth a try:
[url]https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.1.zip[/url]
You can see it in action a few page back here.
For the shader going white after being marked, that is probably a bug in the Decompiler that I should look at. The goal of Mark is to just Decompile it, then recompile it and then make it active, so we can see if it changes. Goal is- no changes, should look the same until we hack around in it.
Since it's going white but not giving you the low boop sound, that probably means the Decompile succeeds, but it blows it somehow and damages the output.
Please post the shader in question, and I'll take a look.
For the prime directive in 3Dmigoto, I added a basic code sample on the wiki at the bottom of the Canonical code:
[url]http://wiki.bo3b.net/index.php?title=Canonical_Stereo_Code[/url]
You can also see multiple examples in use in different games, use the search feature on Github and you can find fixes that we've checked in before:
[url]https://github.com/bo3b/3Dmigoto/search?utf8=%E2%9C%93&q=stereo+%3D+[/url]
The FC4 fix is one of the best reference examples.
For the shader going white after being marked, that is probably a bug in the Decompiler that I should look at. The goal of Mark is to just Decompile it, then recompile it and then make it active, so we can see if it changes. Goal is- no changes, should look the same until we hack around in it.
Since it's going white but not giving you the low boop sound, that probably means the Decompile succeeds, but it blows it somehow and damages the output.
Please post the shader in question, and I'll take a look.
For the prime directive in 3Dmigoto, I added a basic code sample on the wiki at the bottom of the Canonical code:
New alpha caliber release of 3Dmigoto with Overlay feature, Force full screen feature, and Force automatic mode feature.
[url]https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.4.zip[/url]
Your mileage will most assuredly vary. Works pretty well here with a clean Win7 x64 system. Worth experimenting with.
It's been a little busy lately, but hoping to get to spend a bit of time on this again soon enough.
bo3b said:For an Overlay, I've got just the ticket for you- hot off the presses, only used by one person I think. Highly experimental, but worth a try:
That's too awesome on the timing, however unfortunately I have to report the overlay did not work for me on Killing Floor 2 using version 1.1.1. I saw just now that you also released 1.1.4, however when I click on the link I'm getting an error 404 for the site.
bo3b said:
For the shader going white after being marked, that is probably a bug in the Decompiler that I should look at. The goal of Mark is to just Decompile it, then recompile it and then make it active, so we can see if it changes. Goal is- no changes, should look the same until we hack around in it.
Since it's going white but not giving you the low boop sound, that probably means the Decompile succeeds, but it blows it somehow and damages the output.
Please post the shader in question, and I'll take a look.
So, for starters, here are 4 of the pixel shaders for the HUD that I'd like to be able to disable/reenable on command due to them obstructing the view while game is paused.
And in case it'll help, here's the log from the dumps: (Edit: removed, too long for post)
3D Gaming Rig: CPU: i7 7700K @ 4.9Ghz | Mobo: Asus Maximus Hero VIII | RAM: Corsair Dominator 16GB | GPU: 2 x GTX 1080 Ti SLI | 3xSSDs for OS and Apps, 2 x HDD's for 11GB storage | PSU: Seasonic X-1250 M2| Case: Corsair C70 | Cooling: Corsair H115i Hydro cooler | Displays: Asus PG278QR, BenQ XL2420TX & BenQ HT1075 | OS: Windows 10 Pro + Windows 7 dual boot
OK, good, we just made another breakthrough which will probably help here.
Use the latest version from the 1.1 branch as 1.1.8:
[url]https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.8.zip[/url]
You will also need the evil-KB installed for this version to work. Evil update KB2670838. I have somehow accidentally added a dependency upon that update, but this fixed the crashing problem for Mike's system. I'll see if I can remove that dependency later.
For the first shader here, I'll give an example of things to try. This will be rough, and might have errors, I'm not compiling these to check.
Change the bottom of the code to have the output set to 0, so for example:
[code]// Make HUD disappear.
o0 = 0;
[/code]
Test that. You can edit the files while the game is running, and then hit F10 to reload them live. If this works, you should see that part of the HUD blink out.
If that works, you can add a check for the iniParams variables, which we can set by keys.
Up top, there should be a line like:
[code]Texture1D<float4> IniParams : register(t120);[/code]
Add it before 'main' if it's missing, but all recent versions generate this line automatically.
Next up, add the iniParams load and if check to decide whether to run the blanking code or not.
[code]// Loads current active params into x,y,z,w
float4 params = IniParams.Load(0);
if (params.x == 0)
{
o0 = 0;
}
[/code]
In the d3dx.ini file, you would add a key handler, and set default constants.
[code][Constants]
x = 1.0 // HUD: ON by default.
; y = 1.0
; z = 1.2
; w = 2.0
...
[Key HUD]
Key = q
type = toggle
x = 0.0
[/code]
With that sequence, you should have the 'q' key toggle the HUD on/off, that you fixed earlier.
You need to relaunch the game after editing the d3dx.ini file.
That's the basic premise, so give that a try and let us know how you get on.
You will also need the evil-KB installed for this version to work. Evil update KB2670838. I have somehow accidentally added a dependency upon that update, but this fixed the crashing problem for Mike's system. I'll see if I can remove that dependency later.
For the first shader here, I'll give an example of things to try. This will be rough, and might have errors, I'm not compiling these to check.
Change the bottom of the code to have the output set to 0, so for example:
// Make HUD disappear.
o0 = 0;
Test that. You can edit the files while the game is running, and then hit F10 to reload them live. If this works, you should see that part of the HUD blink out.
If that works, you can add a check for the iniParams variables, which we can set by keys.
Up top, there should be a line like:
Texture1D<float4> IniParams : register(t120);
Add it before 'main' if it's missing, but all recent versions generate this line automatically.
Next up, add the iniParams load and if check to decide whether to run the blanking code or not.
// Loads current active params into x,y,z,w
float4 params = IniParams.Load(0);
if (params.x == 0)
{
o0 = 0;
}
In the d3dx.ini file, you would add a key handler, and set default constants.
[Constants]
x = 1.0 // HUD: ON by default.
; y = 1.0
; z = 1.2
; w = 2.0
...
[Key HUD]
Key = q
type = toggle
x = 0.0
With that sequence, you should have the 'q' key toggle the HUD on/off, that you fixed earlier.
You need to relaunch the game after editing the d3dx.ini file.
That's the basic premise, so give that a try and let us know how you get on.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607 Latest 3Dmigoto Release Bo3b's School for ShaderHackers
Don't know about Win8 or 8.1 yet. Others will have to try it. I think this approach no longer makes the DXGI call that was questionable, but to be honest, I can't remember the details of that crash. I do know that I have the evil KB installed here and it's working correctly, whereas before it would crash.
I expect that we might see some problems with misloaded shaders, I haven't quite finished that update. My plan is to always load the shaders and remove the need for partial loading, as the memory usage is really minimal for all this stuff- it's the CPU usage that causes us problems.
So unless you think it would be bad, I think we can simplify this path to always have shaders loaded and available for replacement, so sort of a hybrid always-on model.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
Sounds good to me :)
2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit
Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD
Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword
Running now with an overlay. Pretty experimental version with restructured code base, and overlay:
https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.1.zip
Please feel free to give it a try, and let me know if it works or does not. I also tried it on Mordor and Alien and it's working smoothly there.
Looks like this in GTA5, where I've found the sky and turned it off, and found Franklin's body and turned it off.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
This is where a toggle on/off function would be very handy, then you could create HUD toggles for games with 3Dmigoto.
Do you think that would be possible somehow?
1080 Ti - i7 5820k - 16Gb RAM - Win 10 version 1607 - ASUS VG236H (1920x1080@120Hz)
Yes, already possible. :-> We have full key support for any key you like, including XBox controllers, and any mouse buttons.
Look in the d3dx.ini file, and find the section for [Key*], and you can get a good idea. In the shaders themselves, it's fairly easy to look for a given x,y,z,w constant param and change behavior.
For examples of these in use, look at the FC4 shaders here: https://github.com/bo3b/3Dmigoto/tree/master/FC4/ShaderFixes Not specifically for HUD toggle, but you'll see how to use x,y,z,w and set up key overrides.
I'm also going to tweak Mordor as I'm playing it now, and I think I'll make HUDless option there, as it's got waaay too much onscreen.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
Oh cool. But I am more of a "monkey see, monkey do" type of guy so I don't really understand what you mean there :P
Could you give me a quick tutorial of how exactly you set would this up? For example with helixmod I used this method
1080 Ti - i7 5820k - 16Gb RAM - Win 10 version 1607 - ASUS VG236H (1920x1080@120Hz)
Ah, but I'm more of a "teach a man to fish" guy, not do his fishing for him. ;->
If you haven't done Bo3b's School for ShaderHackers, http://wiki.bo3b.net, it's worth the time.
Once you have, then making this work in 3Dmigoto is a slam dunk.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
So I should be looking at this?
I would do some testing, but my gaming PC broke :S
1080 Ti - i7 5820k - 16Gb RAM - Win 10 version 1607 - ASUS VG236H (1920x1080@120Hz)
Yep, exactly. That's the basic premise behind making a toggle operation of any form in the shaders. Can be a HUD toggle with the right shaders. For a HUD toggle, you'd target the PixelShaders.
That code is the DX9/Helix way of doing things, which is worth learning for any game you'd want to hit in that category. In the DX11/3Dmigoto way, the same basic strategy is true, the code is different and a bit easier.
Here's a rough example (may not compile, just off top of my head):
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
I have run into a little bit of a snag, though. I'm able to disable/reenable the shaders perfectly fine using this, problem is that once I have marked the shaders, it changes them to being white. At first I thought it was of my own doing from modifying the code to disable it, but after coming back to this tonight and seeing your post, I decided to delete the marked files from last night and redo them, and that's when I noticed that the issue occurred pretty much as soon as I mark them.
Are you familiar at all with this issue? If need be I can put up some pics.
Also, to save a little bit of future frustration and heartache, could you advise on how to go about adapting the prime directive from your lesson on Helix mod to using it in 3Dmigoto? If it's been explained anywhere else in this thread else a link to it would suffice, and I'll also try combing through the thread tomorrow, if I have the time, to save you the hassle.
Last question (for now) is it possible to get text on screen, similar to Helix debug dll, while shader hunting? I assuming not, otherwise it probably would be on by default... but better to ask and find out.
3D Gaming Rig: CPU: i7 7700K @ 4.9Ghz | Mobo: Asus Maximus Hero VIII | RAM: Corsair Dominator 16GB | GPU: 2 x GTX 1080 Ti SLI | 3xSSDs for OS and Apps, 2 x HDD's for 11GB storage | PSU: Seasonic X-1250 M2| Case: Corsair C70 | Cooling: Corsair H115i Hydro cooler | Displays: Asus PG278QR, BenQ XL2420TX & BenQ HT1075 | OS: Windows 10 Pro + Windows 7 dual boot
Like my fixes? Dontations can be made to: www.paypal.me/DShanz or rshannonca@gmail.com
Like electronic music? Check out: www.soundcloud.com/dj-ryan-king
https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.1.zip
You can see it in action a few page back here.
For the shader going white after being marked, that is probably a bug in the Decompiler that I should look at. The goal of Mark is to just Decompile it, then recompile it and then make it active, so we can see if it changes. Goal is- no changes, should look the same until we hack around in it.
Since it's going white but not giving you the low boop sound, that probably means the Decompile succeeds, but it blows it somehow and damages the output.
Please post the shader in question, and I'll take a look.
For the prime directive in 3Dmigoto, I added a basic code sample on the wiki at the bottom of the Canonical code:
http://wiki.bo3b.net/index.php?title=Canonical_Stereo_Code
You can also see multiple examples in use in different games, use the search feature on Github and you can find fixes that we've checked in before:
https://github.com/bo3b/3Dmigoto/search?utf8=%E2%9C%93&q=stereo+%3D+
The FC4 fix is one of the best reference examples.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
Also the hunting on/off toggle will be very usefull.
MY WEB
Helix Mod - Making 3D Better
My 3D Screenshot Gallery
Like my fixes? you can donate to Paypal: dhr.donation@gmail.com
https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.4.zip
Your mileage will most assuredly vary. Works pretty well here with a clean Win7 x64 system. Worth experimenting with.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers
That's too awesome on the timing, however unfortunately I have to report the overlay did not work for me on Killing Floor 2 using version 1.1.1. I saw just now that you also released 1.1.4, however when I click on the link I'm getting an error 404 for the site.
So, for starters, here are 4 of the pixel shaders for the HUD that I'd like to be able to disable/reenable on command due to them obstructing the view while game is paused.
Shader 1
Shader 2
Shader 3
Shader 4
And in case it'll help, here's the log from the dumps: (Edit: removed, too long for post)
3D Gaming Rig: CPU: i7 7700K @ 4.9Ghz | Mobo: Asus Maximus Hero VIII | RAM: Corsair Dominator 16GB | GPU: 2 x GTX 1080 Ti SLI | 3xSSDs for OS and Apps, 2 x HDD's for 11GB storage | PSU: Seasonic X-1250 M2| Case: Corsair C70 | Cooling: Corsair H115i Hydro cooler | Displays: Asus PG278QR, BenQ XL2420TX & BenQ HT1075 | OS: Windows 10 Pro + Windows 7 dual boot
Like my fixes? Dontations can be made to: www.paypal.me/DShanz or rshannonca@gmail.com
Like electronic music? Check out: www.soundcloud.com/dj-ryan-king
Use the latest version from the 1.1 branch as 1.1.8:
https://github.com/bo3b/3Dmigoto/releases/download/0.99.50-alpha/3Dmigoto-1.1.8.zip
You will also need the evil-KB installed for this version to work. Evil update KB2670838. I have somehow accidentally added a dependency upon that update, but this fixed the crashing problem for Mike's system. I'll see if I can remove that dependency later.
For the first shader here, I'll give an example of things to try. This will be rough, and might have errors, I'm not compiling these to check.
Change the bottom of the code to have the output set to 0, so for example:
Test that. You can edit the files while the game is running, and then hit F10 to reload them live. If this works, you should see that part of the HUD blink out.
If that works, you can add a check for the iniParams variables, which we can set by keys.
Up top, there should be a line like:
Add it before 'main' if it's missing, but all recent versions generate this line automatically.
Next up, add the iniParams load and if check to decide whether to run the blanking code or not.
In the d3dx.ini file, you would add a key handler, and set default constants.
With that sequence, you should have the 'q' key toggle the HUD on/off, that you fixed earlier.
You need to relaunch the game after editing the d3dx.ini file.
That's the basic premise, so give that a try and let us know how you get on.
Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers