3Dmigoto now open-source...
  71 / 143    
Thanks for the build bo3b. Good news is the game doesn't crash with it ;), bad news is that unfortunately it doesn't resolve the issue and the DX11 option isn't present with it. Interestingly, when the game loads there are two quick low toned beeps, which sound a little bit different from other shader/ini error warnings I've heard before. I also don't see any warnings in the log file. I'll attach that in case anything different/useful can be determined from it: [url]http://www.mediafire.com/download/bpg4svdap69okay/d3d11_log.txt[/url] Also, in the off chance that anything useful can be found here, here's the nvapi log as well [url]http://www.mediafire.com/download/tylai9cj2tukinh/nvapi_log.txt[/url] If it would be better to take up DSS on his offer to take a look this weekend, I can certainly wait until then. I can provide you with a link to my fix for you to test with if you like. Or, if this turns out to be too much trouble, I'm willing to let it go and perhaps look at adapting the fix to DX9. Don't want to take too much of you guys' time away from where you intend to focus on.
Thanks for the build bo3b. Good news is the game doesn't crash with it ;), bad news is that unfortunately it doesn't resolve the issue and the DX11 option isn't present with it.

Interestingly, when the game loads there are two quick low toned beeps, which sound a little bit different from other shader/ini error warnings I've heard before. I also don't see any warnings in the log file. I'll attach that in case anything different/useful can be determined from it:

http://www.mediafire.com/download/bpg4svdap69okay/d3d11_log.txt

Also, in the off chance that anything useful can be found here, here's the nvapi log as well

http://www.mediafire.com/download/tylai9cj2tukinh/nvapi_log.txt

If it would be better to take up DSS on his offer to take a look this weekend, I can certainly wait until then. I can provide you with a link to my fix for you to test with if you like.

Or, if this turns out to be too much trouble, I'm willing to let it go and perhaps look at adapting the fix to DX9. Don't want to take too much of you guys' time away from where you intend to focus on.

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

Posted 05/17/2016 12:06 PM   
Looking at the log, I also see it do the CheckInterfaceSupport, and getting the returned error. Doesn't look like this has anything to do with the IDXGIFactory2. Let me work out how to allow that CheckInterfaceSupport to go through. Seems like we have some games that will crash if we let it through, and some games that will fail to launch if we don't. Seems like making it selectable will be the best choice. I'll take a look later today I expect. The double-beep is happening because the TB and SBS shaders are not part of the default package. It's only a warning.
Looking at the log, I also see it do the CheckInterfaceSupport, and getting the returned error. Doesn't look like this has anything to do with the IDXGIFactory2.

Let me work out how to allow that CheckInterfaceSupport to go through. Seems like we have some games that will crash if we let it through, and some games that will fail to launch if we don't. Seems like making it selectable will be the best choice.

I'll take a look later today I expect.


The double-beep is happening because the TB and SBS shaders are not part of the default package. It's only a warning.

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

Posted 05/17/2016 01:03 PM   
Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.
Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.

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

Posted 05/17/2016 06:45 PM   
bo3b, I managed to get "Untitled" Project X (https://github.com/Kaldaien/UnX/releases) to work sometimes in Final Fantasy X. It sometimes crashes at the start, and sometimes it doesn't. I have enabled the "allow_dxgi1_2=1" and added these lines in the dxgi.ini: [code] [Import.d3d11] Architecture=Win32 Filename=d3d11.dll Role=PlugIn [/code] That mod and 3Dmigoto kind of tolerate each other now, but not correctly. 3D is enabled because that mod now supports fullscreen when you press alt+enter, and the 3Dmigoto hunting overlay is available, as well as the F10 "beep". However, shader fixes are not applied (edit: not 100% sure now. When I tried, I forgot to rewrite the hotkeys and disable scissoring in d3dx.ini), and when I start skipping shaders in hunting mode, the screen goes black. Is this mod totally related to the new functionality of the latest 3Dmigoto build, or am I mistaken? Getting that mod to work with 3Dmigoto is a bit essential for FFX and FFX-2, because it now supports custom textures loading and other cool features :). Edit: by the way, can I automatize a different convergence or separation setting if a specific shader is present? Maybe this was a planned future feature. Separation and Convergence in the ShaderOverride section are only for that specific shader and not the complete scene, for example (IIRC).
bo3b, I managed to get "Untitled" Project X (https://github.com/Kaldaien/UnX/releases) to work sometimes in Final Fantasy X. It sometimes crashes at the start, and sometimes it doesn't.

I have enabled the "allow_dxgi1_2=1" and added these lines in the dxgi.ini:

[Import.d3d11]
Architecture=Win32
Filename=d3d11.dll
Role=PlugIn



That mod and 3Dmigoto kind of tolerate each other now, but not correctly. 3D is enabled because that mod now supports fullscreen when you press alt+enter, and the 3Dmigoto hunting overlay is available, as well as the F10 "beep". However, shader fixes are not applied (edit: not 100% sure now. When I tried, I forgot to rewrite the hotkeys and disable scissoring in d3dx.ini), and when I start skipping shaders in hunting mode, the screen goes black.

Is this mod totally related to the new functionality of the latest 3Dmigoto build, or am I mistaken?

Getting that mod to work with 3Dmigoto is a bit essential for FFX and FFX-2, because it now supports custom textures loading and other cool features :).

Edit: by the way, can I automatize a different convergence or separation setting if a specific shader is present? Maybe this was a planned future feature. Separation and Convergence in the ShaderOverride section are only for that specific shader and not the complete scene, for example (IIRC).

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: MSI GeForce RTX 2080Ti Gaming X Trio
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

Posted 05/17/2016 08:07 PM   
[quote="masterotaku"] by the way, can I automatize a different convergence or separation setting if a specific shader is present? Maybe this was a planned future feature. Separation and Convergence in the ShaderOverride section are only for that specific shader and not the complete scene, for example (IIRC).[/quote] I can answer this question, because I asked it not too long ago, so I'll 'pay it forward' and provide the answer. What we're looking for is 'scene detection', which is not quite implemented yet, but getting close with the addition of the custom shader injection feature in 3DM some time ago. You're correct about the usage of the Separation/Convergence settings in the ShaderOverride section... or at least I believe so, as I've tried and not had that work successfully in that fashion either. Best solution for now is to use preset keys to set or change the separation/convergence on the fly.
masterotaku said: by the way, can I automatize a different convergence or separation setting if a specific shader is present? Maybe this was a planned future feature. Separation and Convergence in the ShaderOverride section are only for that specific shader and not the complete scene, for example (IIRC).


I can answer this question, because I asked it not too long ago, so I'll 'pay it forward' and provide the answer. What we're looking for is 'scene detection', which is not quite implemented yet, but getting close with the addition of the custom shader injection feature in 3DM some time ago. You're correct about the usage of the Separation/Convergence settings in the ShaderOverride section... or at least I believe so, as I've tried and not had that work successfully in that fashion either. Best solution for now is to use preset keys to set or change the separation/convergence on the fly.

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

Posted 05/17/2016 08:37 PM   
[quote="DJ-RK"] I can answer this question, because I asked it not too long ago, so I'll 'pay it forward' and provide the answer. What we're looking for is 'scene detection', which is not quite implemented yet, but getting close with the addition of the custom shader injection feature in 3DM some time ago. You're correct about the usage of the Separation/Convergence settings in the ShaderOverride section... or at least I believe so, as I've tried and not had that work successfully in that fashion either. Best solution for now is to use preset keys to set or change the separation/convergence on the fly.[/quote] Thanks for the information. I'll wait :p. It's just as I thought. Like you, I also couldn't get that to work applied to a shader. But well, the same can be done inside the shader.
DJ-RK said:
I can answer this question, because I asked it not too long ago, so I'll 'pay it forward' and provide the answer. What we're looking for is 'scene detection', which is not quite implemented yet, but getting close with the addition of the custom shader injection feature in 3DM some time ago. You're correct about the usage of the Separation/Convergence settings in the ShaderOverride section... or at least I believe so, as I've tried and not had that work successfully in that fashion either. Best solution for now is to use preset keys to set or change the separation/convergence on the fly.


Thanks for the information. I'll wait :p. It's just as I thought. Like you, I also couldn't get that to work applied to a shader. But well, the same can be done inside the shader.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: MSI GeForce RTX 2080Ti Gaming X Trio
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

Posted 05/17/2016 08:54 PM   
[quote="DJ-RK"]Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.[/quote] OK, new build is up, 1.2.39. https://github.com/bo3b/3Dmigoto/releases This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor. Not a problem to add this workaround, we've been needing something like this for awhile. Anything like this that is more general purpose has a higher priority. Plus, I've never played any of the Stalker games, and I really need to. :->
DJ-RK said:Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.

OK, new build is up, 1.2.39. https://github.com/bo3b/3Dmigoto/releases


This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor.


Not a problem to add this workaround, we've been needing something like this for awhile. Anything like this that is more general purpose has a higher priority. Plus, I've never played any of the Stalker games, and I really need to. :->

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

Posted 05/18/2016 10:42 AM   
Thanks Bo3b! I'm still don't finish Shadows of Mordor.....and want to finish in TB mode sometime. I will test later.
Thanks Bo3b!

I'm still don't finish Shadows of Mordor.....and want to finish in TB mode sometime. I will test later.

MY WEB

Helix Mod - Making 3D Better

My 3D Screenshot Gallery

Like my fixes? you can donate to Paypal: dhr.donation@gmail.com

Posted 05/18/2016 12:32 PM   
[quote="bo3b"][quote="DJ-RK"]Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.[/quote] OK, new build is up, 1.2.39. https://github.com/bo3b/3Dmigoto/releases This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor. Not a problem to add this workaround, we've been needing something like this for awhile. Anything like this that is more general purpose has a higher priority. Plus, I've never played any of the Stalker games, and I really need to. :->[/quote] Well, then play a STALKER game you shall, my good man: we got a winner! That option did get the DX11 options available and 3DM working. I still ran into the troubling issue again, but through enough perseverance I managed to finally track down the root cause of it and got my fix working perfectly once again (and a few additions/improvements while I was at it! :D). Can't tell you how glad I am to see this come to a resolution. You definitely have my thanks, and will be getting a deserving mention in the credits when I post it.
bo3b said:
DJ-RK said:Ok, thanks again. I really hope all this trouble I'm putting you through will end up being worth it.

OK, new build is up, 1.2.39. https://github.com/bo3b/3Dmigoto/releases

This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor.


Not a problem to add this workaround, we've been needing something like this for awhile. Anything like this that is more general purpose has a higher priority. Plus, I've never played any of the Stalker games, and I really need to. :->


Well, then play a STALKER game you shall, my good man: we got a winner!

That option did get the DX11 options available and 3DM working. I still ran into the troubling issue again, but through enough perseverance I managed to finally track down the root cause of it and got my fix working perfectly once again (and a few additions/improvements while I was at it! :D).

Can't tell you how glad I am to see this come to a resolution. You definitely have my thanks, and will be getting a deserving mention in the credits when I post it.

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

Posted 05/18/2016 03:42 PM   
[quote="bo3b"] This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor.[/quote] With that option, now shader hunting works with the latest version of Untitled Project X (https://github.com/Kaldaien/UnX/releases/tag/unx_012). That mod now has and exclusive fullscreen mode, so the "full_screen" option in "d3dx.ini" isn't needed. The game works now around 1/3 of the times I launch it (I think it boots when I select Final Fantasy X fast in the launcher, but using the exe directly doesn't work, hmmm). Hotkeys are working, "rasterizer_disable_scissor=0" works, shader hunting works (even dumping, and the hunting OSD knows the name of the shaders and everything).... but shader fixes aren't applied, somehow, even if the OSD shows that the custom shader is there. Here are the 3Dmigoto logs and the dxgi logs from that mod: https://www.dropbox.com/s/5oebwpqwhp7xv1y/logs3DmigotoandUNX.7z?dl=0 Edit: I was incorrectly importing d3d11.dll in dxgi.ini, but after doing it, fixes still don't work. Or even worse, there are more crashes and hunting makes the screen black until I quit the game :p.
bo3b said:
This has a d3dx.ini option of allow_check_interfaces=1. I expect that this will fix the problem for Call of Pripyat. It worked to fix the problem for Shadow of Mordor.


With that option, now shader hunting works with the latest version of Untitled Project X (https://github.com/Kaldaien/UnX/releases/tag/unx_012). That mod now has and exclusive fullscreen mode, so the "full_screen" option in "d3dx.ini" isn't needed.

The game works now around 1/3 of the times I launch it (I think it boots when I select Final Fantasy X fast in the launcher, but using the exe directly doesn't work, hmmm). Hotkeys are working, "rasterizer_disable_scissor=0" works, shader hunting works (even dumping, and the hunting OSD knows the name of the shaders and everything).... but shader fixes aren't applied, somehow, even if the OSD shows that the custom shader is there.

Here are the 3Dmigoto logs and the dxgi logs from that mod: https://www.dropbox.com/s/5oebwpqwhp7xv1y/logs3DmigotoandUNX.7z?dl=0

Edit: I was incorrectly importing d3d11.dll in dxgi.ini, but after doing it, fixes still don't work. Or even worse, there are more crashes and hunting makes the screen black until I quit the game :p.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: MSI GeForce RTX 2080Ti Gaming X Trio
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

Posted 05/18/2016 07:58 PM   
Just a heads up that the next 3DMigoto release will drop support for fake_o0. This feature is used to influence driver heuristics to stereoise a shader that has a depth target assigned, but no render targets. It was originally added to fix MSAA hairworks in The Witcher 3, and turns out to be useful for UE4 as well (used in The Park), but in some cases may cause excessive VRAM & RAM consumption and severe framerate hits. If you are currently using this feature, please switch to using arbitrary resource copying in the latest 3DMigoto instead. The following example is equivelent to fake_o0, but does not suffer the same problems: [code] [ResourceDummyRenderTarget] ; Make the format compatible with render targets: Format = R8G8B8A8_UNORM [ShaderOverrideHasNoRenderTarget] Hash = ... ResourceDummyRenderTarget = copy_desc oD o0 = ResourceDummyRenderTarget [/code]
Just a heads up that the next 3DMigoto release will drop support for fake_o0. This feature is used to influence driver heuristics to stereoise a shader that has a depth target assigned, but no render targets. It was originally added to fix MSAA hairworks in The Witcher 3, and turns out to be useful for UE4 as well (used in The Park), but in some cases may cause excessive VRAM & RAM consumption and severe framerate hits. If you are currently using this feature, please switch to using arbitrary resource copying in the latest 3DMigoto instead.

The following example is equivelent to fake_o0, but does not suffer the same problems:

[ResourceDummyRenderTarget]
; Make the format compatible with render targets:
Format = R8G8B8A8_UNORM

[ShaderOverrideHasNoRenderTarget]
Hash = ...
ResourceDummyRenderTarget = copy_desc oD
o0 = ResourceDummyRenderTarget

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

Posted 05/23/2016 04:29 AM   
[quote="masterotaku"]I have a problem in Final Fantasy X, with an effect that is used for multiple effects. Basically, I need to apply the typical correction formula to a TEXCOORD, buuuuut.... it only has 2 dimensions. [code]//Gravity. // ---- Created with 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016 cbuffer _Globals : register(b0) { float4 globalColorMask : packoffset(c0) = {1,1,1,1}; float4 globalColorMaskN : packoffset(c1) = {0,0,0,0}; float softParticleScale : packoffset(c2); float softParticleContrast : packoffset(c2.y); float softParticleEnabled : packoffset(c2.z); float doCameraFadeout : packoffset(c2.w); float cameraFadeoutFactor : packoffset(c3); float4x4 World : packoffset(c4); float4x4 WorldView : packoffset(c8); float4x4 WorldViewProjection : packoffset(c12); } // 3Dmigoto declarations #define cmp - Texture1D<float4> IniParams : register(t120); Texture2D<float4> StereoParams : register(t125); void main( float3 v0 : POSITION0, float3 v1 : NORMAL0, float4 v2 : COLOR0, float2 v3 : TEXCOORD0, out float4 o0 : SV_POSITION0, out float4 o1 : TEXCOORD1, out float4 o2 : TEXCOORD0, out float3 o3 : TEXCOORD2) { float4 r0; uint4 bitmask, uiDest; float4 fDest; float4 stereo = StereoParams.Load(0); float separation = stereo.x; float convergence = stereo.y; r0.xyz = v0.xyz; r0.w = 1; o0.x = dot(r0.xyzw, WorldViewProjection._m00_m10_m20_m30); o0.y = dot(r0.xyzw, WorldViewProjection._m01_m11_m21_m31); o0.z = dot(r0.xyzw, WorldViewProjection._m02_m12_m22_m32); o0.w = dot(r0.xyzw, WorldViewProjection._m03_m13_m23_m33); o1.xyzw = v2.xyzw; o2.xy = v3.xy; //o2.x+=separation*(1-convergence*0.02); o3.xyz = v1.xyz; return; } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // using 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016 // // // Buffer Definitions: // // cbuffer $Globals // { // // float4 globalColorMask; // Offset: 0 Size: 16 [unused] // = 0x3f800000 0x3f800000 0x3f800000 0x3f800000 // float4 globalColorMaskN; // Offset: 16 Size: 16 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // float softParticleScale; // Offset: 32 Size: 4 [unused] // float softParticleContrast; // Offset: 36 Size: 4 [unused] // float softParticleEnabled; // Offset: 40 Size: 4 [unused] // float doCameraFadeout; // Offset: 44 Size: 4 [unused] // float cameraFadeoutFactor; // Offset: 48 Size: 4 [unused] // float4x4 World; // Offset: 64 Size: 64 [unused] // float4x4 WorldView; // Offset: 128 Size: 64 [unused] // float4x4 WorldViewProjection; // Offset: 192 Size: 64 // // } // // // Resource Bindings: // // Name Type Format Dim Slot Elements // ------------------------------ ---------- ------- ----------- ---- -------- // $Globals cbuffer NA NA 0 1 // // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyz 0 NONE float xyz // NORMAL 0 xyz 1 NONE float xyz // COLOR 0 xyzw 2 NONE float xyzw // TEXCOORD 0 xy 3 NONE float xy // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_POSITION 0 xyzw 0 POS float xyzw // TEXCOORD 1 xyzw 1 NONE float xyzw // TEXCOORD 0 xy 2 NONE float xy // TEXCOORD 2 xyz 3 NONE float xyz // vs_4_0 dcl_constantbuffer cb0[16], immediateIndexed dcl_input v0.xyz dcl_input v1.xyz dcl_input v2.xyzw dcl_input v3.xy dcl_output_siv o0.xyzw, position dcl_output o1.xyzw dcl_output o2.xy dcl_output o3.xyz dcl_temps 1 mov r0.xyz, v0.xyzx mov r0.w, l(1.000000) dp4 o0.x, r0.xyzw, cb0[12].xyzw dp4 o0.y, r0.xyzw, cb0[13].xyzw dp4 o0.z, r0.xyzw, cb0[14].xyzw dp4 o0.w, r0.xyzw, cb0[15].xyzw mov o1.xyzw, v2.xyzw mov o2.xy, v3.xyxx mov o3.xyz, v1.xyzx ret // Approximately 10 instruction slots used ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/[/code][/quote] I'm not sure, but try this and let me know if it makes a difference: [code]//Gravity VS. // ---- Created with 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016 cbuffer _Globals : register(b0) { float4 globalColorMask : packoffset(c0) = {1,1,1,1}; float4 globalColorMaskN : packoffset(c1) = {0,0,0,0}; float softParticleScale : packoffset(c2); float softParticleContrast : packoffset(c2.y); float softParticleEnabled : packoffset(c2.z); float doCameraFadeout : packoffset(c2.w); float cameraFadeoutFactor : packoffset(c3); float4x4 World : packoffset(c4); float4x4 WorldView : packoffset(c8); float4x4 WorldViewProjection : packoffset(c12); } //-----------------------------------NEW----------- cbuffer NVStereoCB : register(b12) { float nv_negative_separation_convergence; float nv_separation; float nv_unused; float nv_stereo_enabled; } //---------------------------END NEW--------------- // 3Dmigoto declarations #define cmp - Texture1D<float4> IniParams : register(t120); Texture2D<float4> StereoParams : register(t125); void main( float3 v0 : POSITION0, float3 v1 : NORMAL0, float4 v2 : COLOR0, float2 v3 : TEXCOORD0, out float4 o0 : SV_POSITION0, out float4 o1 : TEXCOORD1, out float4 o2 : TEXCOORD0, out float3 o3 : TEXCOORD2) { float4 r0; uint4 bitmask, uiDest; float4 fDest; float4 stereo = StereoParams.Load(0); float separation = stereo.x; float convergence = stereo.y; r0.xyz = v0.xyz; r0.w = 1; o0.x = dot(r0.xyzw, WorldViewProjection._m00_m10_m20_m30); o0.y = dot(r0.xyzw, WorldViewProjection._m01_m11_m21_m31); o0.z = dot(r0.xyzw, WorldViewProjection._m02_m12_m22_m32); o0.w = dot(r0.xyzw, WorldViewProjection._m03_m13_m23_m33); o1.xyzw = v2.xyzw; o2.xy = v3.xy; //o2.x+=separation*(1-convergence*0.02); o3.xyz = v1.xyz; //-----------------------------------NEW----------- if(nv_stereo_enabled > 1){ o0.x += nv_separation * o0.w + nv_negative_separation_convergence; } //---------------------------END NEW--------------- return; }[/code]
masterotaku said:I have a problem in Final Fantasy X, with an effect that is used for multiple effects. Basically, I need to apply the typical correction formula to a TEXCOORD, buuuuut.... it only has 2 dimensions.

//Gravity.
// ---- Created with 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016

cbuffer _Globals : register(b0)
{
float4 globalColorMask : packoffset(c0) = {1,1,1,1};
float4 globalColorMaskN : packoffset(c1) = {0,0,0,0};
float softParticleScale : packoffset(c2);
float softParticleContrast : packoffset(c2.y);
float softParticleEnabled : packoffset(c2.z);
float doCameraFadeout : packoffset(c2.w);
float cameraFadeoutFactor : packoffset(c3);
float4x4 World : packoffset(c4);
float4x4 WorldView : packoffset(c8);
float4x4 WorldViewProjection : packoffset(c12);
}



// 3Dmigoto declarations
#define cmp -
Texture1D<float4> IniParams : register(t120);
Texture2D<float4> StereoParams : register(t125);


void main(
float3 v0 : POSITION0,
float3 v1 : NORMAL0,
float4 v2 : COLOR0,
float2 v3 : TEXCOORD0,
out float4 o0 : SV_POSITION0,
out float4 o1 : TEXCOORD1,
out float4 o2 : TEXCOORD0,
out float3 o3 : TEXCOORD2)
{
float4 r0;
uint4 bitmask, uiDest;
float4 fDest;

float4 stereo = StereoParams.Load(0);
float separation = stereo.x;
float convergence = stereo.y;

r0.xyz = v0.xyz;
r0.w = 1;
o0.x = dot(r0.xyzw, WorldViewProjection._m00_m10_m20_m30);
o0.y = dot(r0.xyzw, WorldViewProjection._m01_m11_m21_m31);
o0.z = dot(r0.xyzw, WorldViewProjection._m02_m12_m22_m32);
o0.w = dot(r0.xyzw, WorldViewProjection._m03_m13_m23_m33);
o1.xyzw = v2.xyzw;
o2.xy = v3.xy;
//o2.x+=separation*(1-convergence*0.02);
o3.xyz = v1.xyz;
return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// using 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016
//
//
// Buffer Definitions:
//
// cbuffer $Globals
// {
//
// float4 globalColorMask; // Offset: 0 Size: 16 [unused]
// = 0x3f800000 0x3f800000 0x3f800000 0x3f800000
// float4 globalColorMaskN; // Offset: 16 Size: 16 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// float softParticleScale; // Offset: 32 Size: 4 [unused]
// float softParticleContrast; // Offset: 36 Size: 4 [unused]
// float softParticleEnabled; // Offset: 40 Size: 4 [unused]
// float doCameraFadeout; // Offset: 44 Size: 4 [unused]
// float cameraFadeoutFactor; // Offset: 48 Size: 4 [unused]
// float4x4 World; // Offset: 64 Size: 64 [unused]
// float4x4 WorldView; // Offset: 128 Size: 64 [unused]
// float4x4 WorldViewProjection; // Offset: 192 Size: 64
//
// }
//
//
// Resource Bindings:
//
// Name Type Format Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// $Globals cbuffer NA NA 0 1
//
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION 0 xyz 0 NONE float xyz
// NORMAL 0 xyz 1 NONE float xyz
// COLOR 0 xyzw 2 NONE float xyzw
// TEXCOORD 0 xy 3 NONE float xy
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_POSITION 0 xyzw 0 POS float xyzw
// TEXCOORD 1 xyzw 1 NONE float xyzw
// TEXCOORD 0 xy 2 NONE float xy
// TEXCOORD 2 xyz 3 NONE float xyz
//
vs_4_0
dcl_constantbuffer cb0[16], immediateIndexed
dcl_input v0.xyz
dcl_input v1.xyz
dcl_input v2.xyzw
dcl_input v3.xy
dcl_output_siv o0.xyzw, position
dcl_output o1.xyzw
dcl_output o2.xy
dcl_output o3.xyz
dcl_temps 1
mov r0.xyz, v0.xyzx
mov r0.w, l(1.000000)
dp4 o0.x, r0.xyzw, cb0[12].xyzw
dp4 o0.y, r0.xyzw, cb0[13].xyzw
dp4 o0.z, r0.xyzw, cb0[14].xyzw
dp4 o0.w, r0.xyzw, cb0[15].xyzw
mov o1.xyzw, v2.xyzw
mov o2.xy, v3.xyxx
mov o3.xyz, v1.xyzx
ret
// Approximately 10 instruction slots used

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


I'm not sure, but try this and let me know if it makes a difference:

//Gravity VS.
// ---- Created with 3Dmigoto v1.2.37 on Sun May 15 15:03:15 2016

cbuffer _Globals : register(b0)
{
float4 globalColorMask : packoffset(c0) = {1,1,1,1};
float4 globalColorMaskN : packoffset(c1) = {0,0,0,0};
float softParticleScale : packoffset(c2);
float softParticleContrast : packoffset(c2.y);
float softParticleEnabled : packoffset(c2.z);
float doCameraFadeout : packoffset(c2.w);
float cameraFadeoutFactor : packoffset(c3);
float4x4 World : packoffset(c4);
float4x4 WorldView : packoffset(c8);
float4x4 WorldViewProjection : packoffset(c12);
}

//-----------------------------------NEW-----------
cbuffer NVStereoCB : register(b12)
{
float nv_negative_separation_convergence;
float nv_separation;
float nv_unused;
float nv_stereo_enabled;
}
//---------------------------END NEW---------------

// 3Dmigoto declarations
#define cmp -
Texture1D<float4> IniParams : register(t120);
Texture2D<float4> StereoParams : register(t125);


void main(
float3 v0 : POSITION0,
float3 v1 : NORMAL0,
float4 v2 : COLOR0,
float2 v3 : TEXCOORD0,
out float4 o0 : SV_POSITION0,
out float4 o1 : TEXCOORD1,
out float4 o2 : TEXCOORD0,
out float3 o3 : TEXCOORD2)
{
float4 r0;
uint4 bitmask, uiDest;
float4 fDest;

float4 stereo = StereoParams.Load(0);
float separation = stereo.x;
float convergence = stereo.y;

r0.xyz = v0.xyz;
r0.w = 1;
o0.x = dot(r0.xyzw, WorldViewProjection._m00_m10_m20_m30);
o0.y = dot(r0.xyzw, WorldViewProjection._m01_m11_m21_m31);
o0.z = dot(r0.xyzw, WorldViewProjection._m02_m12_m22_m32);
o0.w = dot(r0.xyzw, WorldViewProjection._m03_m13_m23_m33);
o1.xyzw = v2.xyzw;
o2.xy = v3.xy;
//o2.x+=separation*(1-convergence*0.02);
o3.xyz = v1.xyz;

//-----------------------------------NEW-----------
if(nv_stereo_enabled > 1){
o0.x += nv_separation * o0.w + nv_negative_separation_convergence;
}
//---------------------------END NEW---------------
return;
}

Dual boot Win 7 x64 & Win 10 (1809) | Geforce Drivers 417.35

Posted 05/24/2016 01:50 PM   
OK, I'll try that. I'm going to be at home in almost 4 hours. That's something I have never seen.
OK, I'll try that. I'm going to be at home in almost 4 hours. That's something I have never seen.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: MSI GeForce RTX 2080Ti Gaming X Trio
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

Posted 05/24/2016 02:56 PM   
I just wanted to say a public thankyou to Oomek, who I see has been updating the 3DMigoto wiki :) Thanks Oomek!
I just wanted to say a public thankyou to Oomek, who I see has been updating the 3DMigoto wiki :)

Thanks Oomek!

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

Posted 05/24/2016 05:54 PM   
[quote="4everAwake"] I'm not sure, but try this and let me know if it makes a difference: [/quote] Sadly, no. It's exactly the same as the original unmodified shader (even if I comment the condition). Things are OK when they are at screen depth, but wrong at any other depth.
4everAwake said:
I'm not sure, but try this and let me know if it makes a difference:


Sadly, no. It's exactly the same as the original unmodified shader (even if I comment the condition). Things are OK when they are at screen depth, but wrong at any other depth.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: MSI GeForce RTX 2080Ti Gaming X Trio
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

Posted 05/24/2016 07:42 PM   
  71 / 143    
Scroll To Top