BigWorld engine (World of Tanks, World of Warships, World of Warplanes)
  1 / 4    
I began playing World of Warhips but never tried Tanks. They both use [url=https://en.wikipedia.org/wiki/BigWorld]BigWorld engine[/url] I never hreard of but not sure if same version so was wondering if fixing one would fix them all? All [b]Free to Play[/b] so hopefully one of our beloved shaderhacker will have interest in one title? ;-)
I began playing World of Warhips but never tried Tanks. They both use BigWorld engine I never hreard of but not sure if same version so was wondering if fixing one would fix them all?

All Free to Play so hopefully one of our beloved shaderhacker will have interest in one title? ;-)

3D Vision must live! NVIDIA, don't let us down!

#1
Posted 06/12/2018 03:10 AM   
Well unless someone made a universal fix I doubt fixing one will fix all.. Maybe free to play but I did not see any of these on the Blog for fixes.. I am currently managing Fractured Space and trying to fix DCS World so I have not much time and other shaderhackers dont like when I try and fix more then 1 title at a time ;) Sorry but I don't think I will be looking into fix altho it would have been rudimentry..
Well unless someone made a universal fix I doubt fixing one will fix all.. Maybe free to play but I did not see any of these on the Blog for fixes..

I am currently managing Fractured Space and trying to fix DCS World so I have not much time and other shaderhackers dont like when I try and fix more then 1 title at a time ;)

Sorry but I don't think I will be looking into fix altho it would have been rudimentry..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#2
Posted 06/12/2018 03:33 AM   
No problem... DCS have it's owen EDGE engine, no idea if serve for other games too. BigWorld is used for many games listed in the link in my original post. DHR just did it again, another Universal fix this time for Unity 5.6!
No problem... DCS have it's owen EDGE engine, no idea if serve for other games too.
BigWorld is used for many games listed in the link in my original post.

DHR just did it again, another Universal fix this time for Unity 5.6!

3D Vision must live! NVIDIA, don't let us down!

#3
Posted 06/13/2018 04:53 PM   
Well maybe DHR will look into the World of .. series and make a universal fix for these games as well who knows.. Yes it has that Edge engine and I do not know how to fix the shadows. I borrowed my current fix from Lufneste work on the older fix he did for v1.5 of DCS World which works to some extent still.. Maybe I can try and look into this seires should not be to hard to get something going I imagine but who knows. Whenn I did War Thunndder that turned out to be more problematic fix but thnx to those shader hackers that helped me on that one we had a pretty decent fix for that.. I wonder if the War Thunder fix still works or not..
Well maybe DHR will look into the World of .. series and make a universal fix for these games as well who knows..

Yes it has that Edge engine and I do not know how to fix the shadows. I borrowed my current fix from Lufneste work on the older fix he did for v1.5 of DCS World which works to some extent still..

Maybe I can try and look into this seires should not be to hard to get something going I imagine but who knows. Whenn I did War Thunndder that turned out to be more problematic fix but thnx to those shader hackers that helped me on that one we had a pretty decent fix for that..

I wonder if the War Thunder fix still works or not..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#4
Posted 06/13/2018 06:28 PM   
OK I have begun to make a fix for WoW.. Now so far I fixed most things in the main menu and UI.. The one problem I ran into is the Ocean. IT was not stereoized and I input the code and the Ocean went correct but now I have Halos around objects in the Ocean like Ships and Buoys.. I was wondering what is the solution for fixing Halos, I ask but I am going to look at some other fixes and see If I can determine what to do on my own.. I had a look at a fix forWar Thunder and I found the one shadder that had a halo but I put it in and it did nothing.. Right now if you set the convergance a bit off it takes it away but I would like to eliminate the Halos all together.. I will post a pic of what it currently looks like now with the code I used.. I set the Convergance to 2.0 and it is barely noticeable.. In the Picture with the Halo look at the ship and to the left of the waterline.. EDIT: Here is the current fix LEt me know if anything else is broke or needs a fix.. There is a Hotkey to set the UI into depth it is the NumPad Minus key.. there are some halos around objects in the water. https://s3.amazonaws.com/nephilim3d/World+of+Warships+fix.7z I added a picture of my current settings adjust like I did besides the Resolution.. some things like shadows needed to be disabled..
OK I have begun to make a fix for WoW.. Now so far I fixed most things in the main menu and UI.. The one problem I ran into is the Ocean. IT was not stereoized and I input the code and the Ocean went correct but now I have Halos around objects in the Ocean like Ships and Buoys..

I was wondering what is the solution for fixing Halos, I ask but I am going to look at some other fixes and see If I can determine what to do on my own.. I had a look at a fix forWar Thunder and I found the one shadder that had a halo but I put it in and it did nothing..

Right now if you set the convergance a bit off it takes it away but I would like to eliminate the Halos all together.. I will post a pic of what it currently looks like now with the code I used..

I set the Convergance to 2.0 and it is barely noticeable.. In the Picture with the Halo look at the ship and to the left of the waterline..


EDIT: Here is the current fix LEt me know if anything else is broke or needs a fix.. There is a Hotkey to set the UI into depth it is the NumPad Minus key.. there are some halos around objects in the water.

https://s3.amazonaws.com/nephilim3d/World+of+Warships+fix.7z




I added a picture of my current settings adjust like I did besides the Resolution.. some things like shadows needed to be disabled..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#5
Posted 06/15/2018 06:23 AM   
OK I foundd some other code where they fixed Halos this code is from BattleBorn (DX11): [code] // Halo yellow // Generated by Microsoft (R) D3D Shader Disassembler // // using 3Dmigoto v1.2.37 on Sat May 14 22:39:55 2016 // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyz 0 NONE float xyz // NORMAL 0 xyz 1 NONE float xyz // TANGENT 0 xyz 2 NONE float xy // BLENDWEIGHT 0 x 3 NONE float x // BLENDWEIGHT 1 xyz 4 NONE float xyz // TEXCOORD 0 xyzw 5 NONE float xyzw // TEXCOORD 5 xyz 6 NONE float xyz // TEXCOORD 6 xyz 7 NONE float xy // TEXCOORD 4 xyzw 8 NONE float xyzw // SV_VERTEXID 0 x 9 VERTID uint x // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // NORMAL 0 xyzw 0 NONE float xyzw // NORMAL 2 xyzw 1 NONE float xyzw // PARTICLESPRITEVF_VERTEXCOLOR 0 xyzw 2 NONE float xyzw // PARTICLESPRITEVF_ARG 2 xy 3 NONE float xy // PARTICLESPRITEVF_ARG 3 xyzw 4 NONE float xyzw // PARTICLESPRITEVF_ARG 4 xyz 5 NONE float xyz // SHADER_VERTEXFOG 0 xyzw 6 NONE float xyzw // SHADER_PIXELPOSITION 0 xyzw 7 NONE float xyzw // SHADER_VIEWPOSITION 0 xyz 8 NONE float xyz // SV_POSITION 0 xyzw 9 POS float xyzw // vs_5_0 dcl_globalFlags refactoringAllowed dcl_constantbuffer cb0[63], immediateIndexed dcl_constantbuffer cb1[27], immediateIndexed dcl_constantbuffer cb2[20], dynamicIndexed dcl_input v0.xyz dcl_input v1.xyz dcl_input v2.xy dcl_input v3.x dcl_input v4.xyz dcl_input v5.xyzw dcl_input v6.xyz dcl_input v7.xy dcl_input v8.xyzw dcl_input_sgv v9.x, vertex_id dcl_output o0.xyzw dcl_output o1.xyzw dcl_output o2.xyzw dcl_output o3.xy dcl_output o4.xyzw dcl_output o5.xyz dcl_output o6.xyzw dcl_output o7.xyzw dcl_output o8.xyz dcl_output_siv o9.xyzw, position //dcl_temps 12 dcl_temps 15 dcl_resource_texture2d (float,float,float,float) t125 ld_indexable(texture2d)(float,float,float,float) r14.xyzw, l(0, 0, 0, 0), t125.xyzw and r0.x, v9.x, l(3) switch r0.x case l(0) mov r0.yz, l(0,0,0,0) break case l(1) mov r0.yz, l(0,0,1.000000,0) break case l(2) mov r0.yz, l(0,1.000000,0,0) break case l(3) mov r0.yz, l(0,1.000000,1.000000,0) break endswitch mov o3.xy, r0.yzyy sincos r1.x, r2.x, v3.x dp3 r3.x, v0.xyzx, cb2[2].xyzx dp3 r3.y, v0.xyzx, cb2[3].xyzx dp3 r3.z, v0.xyzx, cb2[4].xyzx add r0.yzw, -r3.zzxy, cb0[38].zzxy mov r4.x, cb2[2].w mov r4.y, cb2[3].w mov r4.z, cb2[4].w add r0.yzw, r0.yyzw, -r4.zzxy dp3 r1.y, r0.yzwy, r0.yzwy max r1.y, r1.y, l(0.010000) sqrt r1.y, r1.y div r0.yzw, r0.yyzw, r1.yyyy dp3 r1.y, v1.xyzx, v1.xyzx max r1.y, r1.y, l(0.010000) sqrt r1.y, r1.y div r1.yzw, v1.xxyz, r1.yyyy movc r2.yzw, cb2[12].wwww, cb2[8].yyzw, cb0[61].xxyz movc r5.xyz, cb2[12].wwww, cb2[9].xyzx, cb0[62].xyzx mul r6.xyz, r1.xxxx, r2.yzwy mad r6.xyz, -r2.xxxx, r5.xyzx, r6.xyzx mul r2.xyz, r2.yzwy, r2.xxxx mad r2.xyz, r1.xxxx, r5.xyzx, r2.xyzx mul r5.xyz, r0.yzwy, r1.zwyz mad r5.xyz, r0.wyzw, r1.wyzw, -r5.xyzx dp3 r1.x, r5.xyzx, r5.xyzx max r1.x, r1.x, l(0.010000) sqrt r1.x, r1.x div r5.xyz, r5.xyzx, r1.xxxx mov r1.x, cb2[18].x mul r7.xyz, r0.yzwy, cb2[r1.x + 16].yzxy mad r0.yzw, r0.wwyz, cb2[r1.x + 16].zzxy, -r7.xxyz dp3 r2.w, r0.yzwy, r0.yzwy max r2.w, r2.w, l(0.010000) sqrt r2.w, r2.w div r0.yzw, r0.yyzw, r2.wwww mul r0.yzw, r0.yyzw, cb2[r1.x + 16].wwww swapc r7.xyz, r8.xyz, cb2[18].xxxx, r0.yzwy, cb2[r1.x + 16].xyzx dp3 r0.y, v4.xyzx, v4.xyzx max r0.y, r0.y, l(0.010000) sqrt r0.y, r0.y div r0.yzw, v4.zzxy, r0.yyyy mul r9.xyz, r6.yzxy, r0.yzwy mad r9.xyz, r0.wyzw, r6.zxyz, -r9.xyzx dp3 r1.x, r9.xyzx, r9.xyzx max r1.x, r1.x, l(0.010000) sqrt r1.x, r1.x div r9.xyz, r9.xyzx, r1.xxxx mul r10.xyz, r0.yzwy, r9.yzxy mad r0.yzw, r0.wwyz, r9.zzxy, -r10.xxyz dp3 r1.x, r0.yzwy, r0.yzwy max r1.x, r1.x, l(0.010000) sqrt r1.x, r1.x div r0.yzw, r0.yyzw, r1.xxxx mul r5.xyz, r5.xyzx, cb2[19].yyyy mad r5.xyz, r6.xyzx, cb2[19].xxxx, r5.xyzx mad r5.xyz, r8.xyzx, cb2[19].zzzz, r5.xyzx mad r0.yzw, r0.yyzw, cb2[19].wwww, r5.xxyz mul r1.xyz, -r1.yzwy, cb2[19].yyyy mad r1.xyz, r2.xyzx, cb2[19].xxxx, r1.xyzx mad r1.xyz, r7.xyzx, cb2[19].zzzz, r1.xyzx mad r1.xyz, r9.xyzx, cb2[19].wwww, r1.xyzx mul r2.xyz, r0.yzwy, r1.zxyz mad r2.xyz, r0.wyzw, r1.xyzx, -r2.xyzx dp3 r1.w, r2.xyzx, r2.xyzx rsq r1.w, r1.w mul r2.xyz, r1.wwww, r2.xyzx mul r5.xy, r0.zzzz, cb2[6].xzxx mad r5.xy, cb2[5].xzxx, r0.yyyy, r5.xyxx mad r5.xy, cb2[7].xzxx, r0.wwww, r5.xyxx mul r5.zw, r1.yyyy, cb2[6].xxxz mad r5.zw, cb2[5].xxxz, r1.xxxx, r5.zzzw mad r5.zw, cb2[7].xxxz, r1.zzzz, r5.zzzw mul r6.xy, r2.xxxx, cb2[6].xzxx mad r6.xy, cb2[5].xzxx, r2.zzzz, r6.xyxx mad r6.xy, cb2[7].xzxx, r2.yyyy, r6.xyxx mul r7.xyz, r1.zxyz, r2.xyzx mad r2.xyz, r1.yzxy, r2.yzxy, -r7.xyzx dp3 r1.w, r2.xyzx, r0.yzwy lt r2.x, l(0.000000), r1.w lt r1.w, r1.w, l(0.000000) iadd r1.w, -r2.x, r1.w itof r1.w, r1.w add r2.xyz, r4.xyzx, cb0[40].xyzx add r2.xyz, r2.xyzx, r3.xyzx mad r2.xyz, -v6.xxxx, cb0[62].xyzx, r2.xyzx mad r2.xyz, v6.yyyy, cb0[61].xyzx, r2.xyzx dp3 r2.w, -r2.xyzx, -r2.xyzx max r2.w, r2.w, l(0.010000) sqrt r2.w, r2.w div r3.xyz, -r2.xyzx, r2.wwww mad r2.xyz, v6.zzzz, r3.xyzx, r2.xyzx switch r0.x case l(0) mov r3.xy, l(-0.500000,-0.500000,0,0) break case l(1) mov r3.xy, l(-0.500000,0.500000,0,0) break case l(2) mov r3.xy, l(0.500000,-0.500000,0,0) break case l(3) mov r3.xy, l(0.500000,0.500000,0,0) break endswitch mad r3.xy, v7.xyxx, l(-1.000000, 1.000000, 0.000000, 0.000000), r3.xyxx mul r3.xy, r3.xyxx, v2.xyxx mad r0.xyz, r3.xxxx, r0.yzwy, r2.xyzx mad r0.xyz, r3.yyyy, r1.xyzx, r0.xyzx mov r0.w, l(1.000000) dp4 r2.x, r0.xyzw, cb0[8].xyzw dp4 r2.y, r0.xyzw, cb0[9].xyzw dp4 r2.z, r0.xyzw, cb0[10].xyzw dp4 r2.w, r0.xyzw, cb0[11].xyzw if_nz cb1[26].w add r1.xyz, r0.xyzx, -cb0[39].xyzx dp3 r3.x, r1.xyzx, r1.xyzx sqrt r3.y, r3.x add r3.z, r3.y, -cb1[23].w max r3.z, r3.z, l(0.100000) mul r3.w, r3.y, -cb1[23].y exp r3.w, r3.w add r3.w, -r3.w, l(1.000000) mul r3.yz, r3.yyzy, cb1[23].yyxy div r3.y, r3.w, r3.y mul r3.y, r3.y, r3.z rsq r3.x, r3.x mul r1.xyz, r1.xyzx, r3.xxxx dp3 r1.x, cb1[26].xyzx, r1.xyzx mad_sat r1.x, -r1.x, l(0.499000), l(0.500000) log r1.x, r1.x mul r1.x, r1.x, cb1[23].z exp r1.x, r1.x add r3.xzw, cb1[24].xxyz, -cb1[25].xxyz mad r1.xyz, r1.xxxx, r3.xzwx, cb1[25].xyzx exp r3.x, -r3.y min r3.x, r3.x, l(1.000000) max r3.x, r3.x, cb1[24].w add r4.x, -r3.x, l(1.000000) mul r1.xyz, r1.xyzx, r4.xxxx else add r4.xyz, r0.xyzx, -cb0[39].xyzx dp3 r4.x, r4.xyzx, r4.xyzx sqrt r4.x, r4.x add r7.xyzw, -cb0[39].zzzz, cb1[20].xyzw ge r4.y, l(0.001000), |r4.z| movc r4.y, r4.y, l(0.001000), r4.z div_sat r7.xyzw, r7.xyzw, r4.yyyy add r8.xyzw, -cb0[39].zzzz, cb1[21].xyzw div_sat r8.xyzw, r8.xyzw, r4.yyyy add r4.xyzw, r4.xxxx, -cb1[19].xyzw max r4.xyzw, r4.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000) add r7.xyzw, -r7.xyzw, r8.xyzw mul r4.xyzw, r4.xyzw, |r7.xyzw| lt r7.xyzw, r4.xyzw, cb1[14].xyzw mul r4.xyzw, r4.xyzw, cb1[13].xyzw exp r4.xyzw, r4.xyzw and r4.xyzw, r4.xyzw, r7.xyzw add r7.xyzw, r4.xyzw, l(-1.000000, -1.000000, -1.000000, -1.000000) mul r8.xyz, r7.xxxx, cb1[15].xyzx mov r8.w, r4.x mul r8.xyzw, r4.yyyy, r8.xyzw mad r8.xyz, r7.yyyy, cb1[16].xyzx, r8.xyzx mul r8.xyzw, r4.zzzz, r8.xyzw mad r8.xyz, r7.zzzz, cb1[17].xyzx, r8.xyzx mul r3.xyzw, r4.wwww, r8.wxyz mad r1.xyz, r7.wwww, cb1[18].xyzx, r3.yzwy endif switch cb1[3].w case l(1) add r4.yzw, -r0.xxyz, cb0[39].xxyz div r7.xyz, l(1.000000, 1.000000, 1.000000, 1.000000), r4.yzwy add r8.xyz, -r0.xyzx, cb1[3].xyzx mul r8.xyz, r7.xyzx, r8.xyzx add r9.xyz, -r0.xyzx, cb1[4].xyzx mul r7.xyz, r7.xyzx, r9.xyzx min r9.xyz, r7.xyzx, r8.xyzx max r7.xyz, r7.xyzx, r8.xyzx max r6.z, r9.z, r9.y max_sat r6.z, r6.z, r9.x min r6.w, r7.z, r7.y min_sat r6.w, r6.w, r7.x dp3 r4.y, r4.yzwy, r4.yzwy sqrt r4.y, r4.y add r4.y, r4.y, -cb1[2].w add r4.z, -r6.z, r6.w max r4.yz, r4.yyzy, l(0.000000, 0.000000, 0.000000, 0.000000) mul r4.y, r4.z, r4.y mul r4.y, r4.y, cb1[0].x exp r4.x, -r4.y add r4.y, -r4.x, l(1.000000) mul r3.yzw, r4.yyyy, cb1[2].xxyz break case l(2) add r4.yzw, -r0.xxyz, cb0[39].xxyz div r7.xyz, l(1.000000, 1.000000, 1.000000, 1.000000), r4.yzwy add r8.xyz, -r0.xyzx, cb1[3].xyzx mul r8.xyz, r7.xyzx, r8.xyzx add r9.xyz, -r0.xyzx, cb1[4].xyzx mul r7.xyz, r7.xyzx, r9.xyzx min r9.xyz, r7.xyzx, r8.xyzx max r7.xyz, r7.xyzx, r8.xyzx max r6.z, r9.z, r9.y max_sat r6.z, r6.z, r9.x min r6.w, r7.z, r7.y min_sat r6.w, r6.w, r7.x dp3 r7.x, r4.yzwy, r4.yzwy sqrt r7.x, r7.x dp4 r8.x, cb1[1].xyzw, r0.xyzw mov r9.xyz, cb0[39].xyzx mov r9.w, l(1.000000) dp4 r8.y, cb1[1].xyzw, r9.xyzw dp3 r0.w, cb1[1].xyzx, r4.yzwy add r4.y, r0.w, l(0.000100) div r4.y, -r8.x, r4.y lt r4.zw, r8.xxxy, l(0.000000, 0.000000, 0.000000, 0.000000) and r4.zw, r4.zzzw, l(0, 0, 0x3f800000, 0x3f800000) add r7.yz, -r4.yyyy, l(0.000000, 0.000000, 1.000000, 0.000000) mad r4.yz, r4.zzwz, r7.yyzy, r4.yyyy max r9.x, r6.z, r4.y min r4.y, r6.w, r4.z div r4.z, cb1[2].w, r7.x add r4.z, -r4.z, l(1.000000) min r9.y, r4.y, r4.z ge r4.y, r9.x, r9.y movc r4.yz, r4.yyyy, l(0,0,0,0), r9.xxyx mul r6.zw, r4.yyyz, r4.yyyz mul r6.zw, r0.wwww, r6.zzzw mul r6.zw, r6.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000) mad r4.yz, r4.yyzy, r8.xxxx, r6.zzwz add r0.w, -r4.y, r4.z mul r0.w, r7.x, -r0.w mul r0.w, r0.w, cb1[0].x mul r0.w, r0.w, l(0.000100) exp r4.x, -r0.w add r0.w, -r4.x, l(1.000000) mul r3.yzw, r0.wwww, cb1[2].xxyz break case l(3) add r4.yzw, -r0.xxyz, cb0[39].xxyz dp3 r7.x, r4.yzwy, r4.yzwy mul r0.w, cb1[1].w, cb1[1].w add r8.xyz, r0.xyzx, -cb1[1].xyzx dp3 r7.z, r8.xyzx, r8.xyzx dp3 r7.y, r4.yzwy, r8.xyzx add r4.y, r7.y, r7.y mul r4.z, r7.x, l(4.000000) mad r4.w, -cb1[1].w, cb1[1].w, r7.z mul r4.z, r4.w, r4.z mad r4.y, r4.y, r4.y, -r4.z ge r4.z, r4.y, l(0.000000) if_nz r4.z sqrt r4.z, r7.x add r4.w, r7.x, l(0.000100) div r4.w, l(0.500000), r4.w sqrt r8.x, r4.y mov r8.y, -r8.x mad r6.zw, r7.yyyy, l(0.000000, 0.000000, 2.000000, 2.000000), r8.xxxy mul_sat r8.xy, r4.wwww, -r6.zwzz div r4.y, cb1[2].w, r4.z add r4.y, -r4.y, l(1.000000) min r4.y, r8.y, r4.y max r8.z, r8.x, r4.y mul r7.xyz, r7.xyzx, l(0.333333343, 1.000000, 1.000000, 0.000000) mul r9.xy, r8.xzxx, r8.xzxx mul r10.xy, r8.xzxx, r9.xyxx mov r10.z, r9.x mov r10.w, r8.x dp3 r11.x, r7.xyzx, r10.xzwx mov r9.z, r10.y mov r9.w, r8.z dp3 r11.y, r7.yxzy, r9.yzwy div r4.yw, r11.xxxy, r0.wwww add r4.yw, -r4.yyyw, r8.xxxz mul r0.w, r4.y, cb1[0].x mad r0.w, cb1[0].x, r4.w, -r0.w mul r0.w, r4.z, r0.w else mov r0.w, l(0) endif exp r4.x, -r0.w add r0.w, -r4.x, l(1.000000) mul r3.yzw, r0.wwww, cb1[2].xxyz break case l(4) mov r3.yzw, l(0,0,0,0) mov r4.x, l(1.000000) break default mov r3.yzw, l(0,0,0,0) mov r4.x, l(1.000000) break endswitch mad o6.xyz, r3.yzwy, r3.xxxx, r1.xyzx mul o6.w, r3.x, r4.x mov o0.xy, r5.xzxx mov o0.z, r6.x mov o0.w, r1.w mov o1.xy, r5.ywyy mov o1.z, r6.y mov o1.w, r1.w mov o2.xyzw, v5.xyzw mov o4.xyzw, v8.xyzw //Fix mov r15.xyzw, r2.xyzw add r14.w, r2.w, -r14.y mad r2.x, r14.w, r14.x, r2.x mov o7.xyzw, r2.xyzw //mov o9.xyzw, r2.xyzw mov o9.xyzw, r15.xyzw mov o5.xyz, v1.xyzx mov o8.xyz, r0.xyzx ret // Approximately 0 instruction slots used [/code] Now I believe I seen what was added to this shader. I think the following lines where added: [code] //dcl_temps 11 dcl_temps 15 dcl_resource_texture2d (float,float,float,float) t125 ld_indexable(texture2d)(float,float,float,float) r14.xyzw, l(0, 0, 0, 0), t125.xyzw //Fix mov r15.xyzw, r1.xyzw add r14.w, r1.w, -r14.y mad r1.x, r14.w, r14.x, r1.x mov o6.xyzw, r1.xyzw //mov o8.xyzw, r1.xyzw mov o8.xyzw, r15.xyzw [/code] Now I tried injecting that code into the Shader for the Ocean and the Ocean dissappears?? Here is the entire shader code for the ocean: [code] // ---- Created with 3Dmigoto v1.3.11 on Fri Jun 15 17:11:07 2018 cbuffer PerView : register(b0) { row_major float4x4 g_viewProj : packoffset(c0) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_invViewProj : packoffset(c4) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_view : packoffset(c8) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_invView : packoffset(c12) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_proj : packoffset(c16) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_invProj : packoffset(c20) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; row_major float4x4 g_cameraDirs : packoffset(c24) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; float4 g_cameraPos : packoffset(c28) = {0,0,0,0}; float g_zoomFactor : packoffset(c29) = {0}; float g_nearPlane : packoffset(c29.y) = {0}; float4 g_farPlane : packoffset(c30) = {0,0,0,0}; bool g_clipPlaneEnable : packoffset(c31) = false; float4 g_clipPlane : packoffset(c32) = {0,0,0,0}; } // 3Dmigoto declarations #define cmp - Texture1D<float4> IniParams : register(t120); Texture2D<float4> StereoParams : register(t125); void main( float3 v0 : POSITION0, out float4 o0 : SV_Position0, out float4 o1 : TEXCOORD0, out float2 o2 : TEXCOORD1) { float4 r0,r1,r2; uint4 bitmask, uiDest; float4 fDest; o0.xyz = v0.xyz; o0.w = 1; r0.xyz = g_cameraDirs._m30_m31_m32 + -g_cameraDirs._m20_m21_m22; r1.xy = v0.xy * float2(0.5,-0.5) + float2(0.5,0.5); r0.xyz = r1.yyy * r0.xyz + g_cameraDirs._m20_m21_m22; r2.xyz = g_cameraDirs._m10_m11_m12 + -g_cameraDirs._m00_m01_m02; r2.xyz = r1.yyy * r2.xyz + g_cameraDirs._m00_m01_m02; r0.xyz = -r2.xyz + r0.xyz; o1.xyz = r1.xxx * r0.xyz + r2.xyz; o2.xy = r1.xy; o1.w = 0; float separation = StereoParams.Load(0).x; float convergence = StereoParams.Load(0).y; o0.x += separation * convergence * 0.99; return; } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // // Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384 // // using 3Dmigoto v1.3.11 on Fri Jun 15 17:11:07 2018 // // // Buffer Definitions: // // cbuffer PerView // { // // row_major float4x4 g_viewProj; // Offset: 0 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_invViewProj; // Offset: 64 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_view; // Offset: 128 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_invView; // Offset: 192 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_proj; // Offset: 256 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_invProj; // Offset: 320 Size: 64 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // row_major float4x4 g_cameraDirs; // Offset: 384 Size: 64 // = 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // 0x00000000 0x00000000 0x00000000 0x00000000 // float4 g_cameraPos; // Offset: 448 Size: 16 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // float g_zoomFactor; // Offset: 464 Size: 4 [unused] // = 0x00000000 // float g_nearPlane; // Offset: 468 Size: 4 [unused] // = 0x00000000 // float4 g_farPlane; // Offset: 480 Size: 16 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // bool g_clipPlaneEnable; // Offset: 496 Size: 4 [unused] // = 0x00000000 // float4 g_clipPlane; // Offset: 512 Size: 16 [unused] // = 0x00000000 0x00000000 0x00000000 0x00000000 // // } // // // Resource Bindings: // // Name Type Format Dim Slot Elements // ------------------------------ ---------- ------- ----------- ---- -------- // PerView cbuffer NA NA 0 1 // // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyz 0 NONE float xyz // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Position 0 xyzw 0 POS float xyzw // TEXCOORD 0 xyzw 1 NONE float xyzw // TEXCOORD 1 xy 2 NONE float xy // vs_4_0 dcl_constantbuffer cb0[28], immediateIndexed dcl_input v0.xyz dcl_output_siv o0.xyzw, position dcl_output o1.xyzw dcl_output o2.xy dcl_temps 3 mov o0.xyz, v0.xyzx mov o0.w, l(1.000000) add r0.xyz, -cb0[26].xyzx, cb0[27].xyzx mad r1.xy, v0.xyxx, l(0.500000, -0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000) mad r0.xyz, r1.yyyy, r0.xyzx, cb0[26].xyzx add r2.xyz, -cb0[24].xyzx, cb0[25].xyzx mad r2.xyz, r1.yyyy, r2.xyzx, cb0[24].xyzx add r0.xyz, r0.xyzx, -r2.xyzx mad o1.xyz, r1.xxxx, r0.xyzx, r2.xyzx mov o2.xy, r1.xyxx mov o1.w, l(0) ret // Approximately 12 instruction slots used ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ [/code] Now when I do this the Ocean goes into stereo but then I get halos around the objects in the water.. I will post a screenshot of what it looks like.. I know I am close but something eludes me..
OK I foundd some other code where they fixed Halos this code is from BattleBorn (DX11):


// Halo yellow
// Generated by Microsoft (R) D3D Shader Disassembler
//
// using 3Dmigoto v1.2.37 on Sat May 14 22:39:55 2016
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION 0 xyz 0 NONE float xyz
// NORMAL 0 xyz 1 NONE float xyz
// TANGENT 0 xyz 2 NONE float xy
// BLENDWEIGHT 0 x 3 NONE float x
// BLENDWEIGHT 1 xyz 4 NONE float xyz
// TEXCOORD 0 xyzw 5 NONE float xyzw
// TEXCOORD 5 xyz 6 NONE float xyz
// TEXCOORD 6 xyz 7 NONE float xy
// TEXCOORD 4 xyzw 8 NONE float xyzw
// SV_VERTEXID 0 x 9 VERTID uint x
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// NORMAL 0 xyzw 0 NONE float xyzw
// NORMAL 2 xyzw 1 NONE float xyzw
// PARTICLESPRITEVF_VERTEXCOLOR 0 xyzw 2 NONE float xyzw
// PARTICLESPRITEVF_ARG 2 xy 3 NONE float xy
// PARTICLESPRITEVF_ARG 3 xyzw 4 NONE float xyzw
// PARTICLESPRITEVF_ARG 4 xyz 5 NONE float xyz
// SHADER_VERTEXFOG 0 xyzw 6 NONE float xyzw
// SHADER_PIXELPOSITION 0 xyzw 7 NONE float xyzw
// SHADER_VIEWPOSITION 0 xyz 8 NONE float xyz
// SV_POSITION 0 xyzw 9 POS float xyzw
//
vs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[63], immediateIndexed
dcl_constantbuffer cb1[27], immediateIndexed
dcl_constantbuffer cb2[20], dynamicIndexed
dcl_input v0.xyz
dcl_input v1.xyz
dcl_input v2.xy
dcl_input v3.x
dcl_input v4.xyz
dcl_input v5.xyzw
dcl_input v6.xyz
dcl_input v7.xy
dcl_input v8.xyzw
dcl_input_sgv v9.x, vertex_id
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_output o3.xy
dcl_output o4.xyzw
dcl_output o5.xyz
dcl_output o6.xyzw
dcl_output o7.xyzw
dcl_output o8.xyz
dcl_output_siv o9.xyzw, position

//dcl_temps 12
dcl_temps 15

dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r14.xyzw, l(0, 0, 0, 0), t125.xyzw

and r0.x, v9.x, l(3)
switch r0.x
case l(0)
mov r0.yz, l(0,0,0,0)
break
case l(1)
mov r0.yz, l(0,0,1.000000,0)
break
case l(2)
mov r0.yz, l(0,1.000000,0,0)
break
case l(3)
mov r0.yz, l(0,1.000000,1.000000,0)
break
endswitch
mov o3.xy, r0.yzyy
sincos r1.x, r2.x, v3.x
dp3 r3.x, v0.xyzx, cb2[2].xyzx
dp3 r3.y, v0.xyzx, cb2[3].xyzx
dp3 r3.z, v0.xyzx, cb2[4].xyzx
add r0.yzw, -r3.zzxy, cb0[38].zzxy
mov r4.x, cb2[2].w
mov r4.y, cb2[3].w
mov r4.z, cb2[4].w
add r0.yzw, r0.yyzw, -r4.zzxy
dp3 r1.y, r0.yzwy, r0.yzwy
max r1.y, r1.y, l(0.010000)
sqrt r1.y, r1.y
div r0.yzw, r0.yyzw, r1.yyyy
dp3 r1.y, v1.xyzx, v1.xyzx
max r1.y, r1.y, l(0.010000)
sqrt r1.y, r1.y
div r1.yzw, v1.xxyz, r1.yyyy
movc r2.yzw, cb2[12].wwww, cb2[8].yyzw, cb0[61].xxyz
movc r5.xyz, cb2[12].wwww, cb2[9].xyzx, cb0[62].xyzx
mul r6.xyz, r1.xxxx, r2.yzwy
mad r6.xyz, -r2.xxxx, r5.xyzx, r6.xyzx
mul r2.xyz, r2.yzwy, r2.xxxx
mad r2.xyz, r1.xxxx, r5.xyzx, r2.xyzx
mul r5.xyz, r0.yzwy, r1.zwyz
mad r5.xyz, r0.wyzw, r1.wyzw, -r5.xyzx
dp3 r1.x, r5.xyzx, r5.xyzx
max r1.x, r1.x, l(0.010000)
sqrt r1.x, r1.x
div r5.xyz, r5.xyzx, r1.xxxx
mov r1.x, cb2[18].x
mul r7.xyz, r0.yzwy, cb2[r1.x + 16].yzxy
mad r0.yzw, r0.wwyz, cb2[r1.x + 16].zzxy, -r7.xxyz
dp3 r2.w, r0.yzwy, r0.yzwy
max r2.w, r2.w, l(0.010000)
sqrt r2.w, r2.w
div r0.yzw, r0.yyzw, r2.wwww
mul r0.yzw, r0.yyzw, cb2[r1.x + 16].wwww
swapc r7.xyz, r8.xyz, cb2[18].xxxx, r0.yzwy, cb2[r1.x + 16].xyzx
dp3 r0.y, v4.xyzx, v4.xyzx
max r0.y, r0.y, l(0.010000)
sqrt r0.y, r0.y
div r0.yzw, v4.zzxy, r0.yyyy
mul r9.xyz, r6.yzxy, r0.yzwy
mad r9.xyz, r0.wyzw, r6.zxyz, -r9.xyzx
dp3 r1.x, r9.xyzx, r9.xyzx
max r1.x, r1.x, l(0.010000)
sqrt r1.x, r1.x
div r9.xyz, r9.xyzx, r1.xxxx
mul r10.xyz, r0.yzwy, r9.yzxy
mad r0.yzw, r0.wwyz, r9.zzxy, -r10.xxyz
dp3 r1.x, r0.yzwy, r0.yzwy
max r1.x, r1.x, l(0.010000)
sqrt r1.x, r1.x
div r0.yzw, r0.yyzw, r1.xxxx
mul r5.xyz, r5.xyzx, cb2[19].yyyy
mad r5.xyz, r6.xyzx, cb2[19].xxxx, r5.xyzx
mad r5.xyz, r8.xyzx, cb2[19].zzzz, r5.xyzx
mad r0.yzw, r0.yyzw, cb2[19].wwww, r5.xxyz
mul r1.xyz, -r1.yzwy, cb2[19].yyyy
mad r1.xyz, r2.xyzx, cb2[19].xxxx, r1.xyzx
mad r1.xyz, r7.xyzx, cb2[19].zzzz, r1.xyzx
mad r1.xyz, r9.xyzx, cb2[19].wwww, r1.xyzx
mul r2.xyz, r0.yzwy, r1.zxyz
mad r2.xyz, r0.wyzw, r1.xyzx, -r2.xyzx
dp3 r1.w, r2.xyzx, r2.xyzx
rsq r1.w, r1.w
mul r2.xyz, r1.wwww, r2.xyzx
mul r5.xy, r0.zzzz, cb2[6].xzxx
mad r5.xy, cb2[5].xzxx, r0.yyyy, r5.xyxx
mad r5.xy, cb2[7].xzxx, r0.wwww, r5.xyxx
mul r5.zw, r1.yyyy, cb2[6].xxxz
mad r5.zw, cb2[5].xxxz, r1.xxxx, r5.zzzw
mad r5.zw, cb2[7].xxxz, r1.zzzz, r5.zzzw
mul r6.xy, r2.xxxx, cb2[6].xzxx
mad r6.xy, cb2[5].xzxx, r2.zzzz, r6.xyxx
mad r6.xy, cb2[7].xzxx, r2.yyyy, r6.xyxx
mul r7.xyz, r1.zxyz, r2.xyzx
mad r2.xyz, r1.yzxy, r2.yzxy, -r7.xyzx
dp3 r1.w, r2.xyzx, r0.yzwy
lt r2.x, l(0.000000), r1.w
lt r1.w, r1.w, l(0.000000)
iadd r1.w, -r2.x, r1.w
itof r1.w, r1.w
add r2.xyz, r4.xyzx, cb0[40].xyzx
add r2.xyz, r2.xyzx, r3.xyzx
mad r2.xyz, -v6.xxxx, cb0[62].xyzx, r2.xyzx
mad r2.xyz, v6.yyyy, cb0[61].xyzx, r2.xyzx
dp3 r2.w, -r2.xyzx, -r2.xyzx
max r2.w, r2.w, l(0.010000)
sqrt r2.w, r2.w
div r3.xyz, -r2.xyzx, r2.wwww
mad r2.xyz, v6.zzzz, r3.xyzx, r2.xyzx
switch r0.x
case l(0)
mov r3.xy, l(-0.500000,-0.500000,0,0)
break
case l(1)
mov r3.xy, l(-0.500000,0.500000,0,0)
break
case l(2)
mov r3.xy, l(0.500000,-0.500000,0,0)
break
case l(3)
mov r3.xy, l(0.500000,0.500000,0,0)
break
endswitch
mad r3.xy, v7.xyxx, l(-1.000000, 1.000000, 0.000000, 0.000000), r3.xyxx
mul r3.xy, r3.xyxx, v2.xyxx
mad r0.xyz, r3.xxxx, r0.yzwy, r2.xyzx
mad r0.xyz, r3.yyyy, r1.xyzx, r0.xyzx
mov r0.w, l(1.000000)
dp4 r2.x, r0.xyzw, cb0[8].xyzw
dp4 r2.y, r0.xyzw, cb0[9].xyzw
dp4 r2.z, r0.xyzw, cb0[10].xyzw
dp4 r2.w, r0.xyzw, cb0[11].xyzw
if_nz cb1[26].w
add r1.xyz, r0.xyzx, -cb0[39].xyzx
dp3 r3.x, r1.xyzx, r1.xyzx
sqrt r3.y, r3.x
add r3.z, r3.y, -cb1[23].w
max r3.z, r3.z, l(0.100000)
mul r3.w, r3.y, -cb1[23].y
exp r3.w, r3.w
add r3.w, -r3.w, l(1.000000)
mul r3.yz, r3.yyzy, cb1[23].yyxy
div r3.y, r3.w, r3.y
mul r3.y, r3.y, r3.z
rsq r3.x, r3.x
mul r1.xyz, r1.xyzx, r3.xxxx
dp3 r1.x, cb1[26].xyzx, r1.xyzx
mad_sat r1.x, -r1.x, l(0.499000), l(0.500000)
log r1.x, r1.x
mul r1.x, r1.x, cb1[23].z
exp r1.x, r1.x
add r3.xzw, cb1[24].xxyz, -cb1[25].xxyz
mad r1.xyz, r1.xxxx, r3.xzwx, cb1[25].xyzx
exp r3.x, -r3.y
min r3.x, r3.x, l(1.000000)
max r3.x, r3.x, cb1[24].w
add r4.x, -r3.x, l(1.000000)
mul r1.xyz, r1.xyzx, r4.xxxx
else
add r4.xyz, r0.xyzx, -cb0[39].xyzx
dp3 r4.x, r4.xyzx, r4.xyzx
sqrt r4.x, r4.x
add r7.xyzw, -cb0[39].zzzz, cb1[20].xyzw
ge r4.y, l(0.001000), |r4.z|
movc r4.y, r4.y, l(0.001000), r4.z
div_sat r7.xyzw, r7.xyzw, r4.yyyy
add r8.xyzw, -cb0[39].zzzz, cb1[21].xyzw
div_sat r8.xyzw, r8.xyzw, r4.yyyy
add r4.xyzw, r4.xxxx, -cb1[19].xyzw
max r4.xyzw, r4.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
add r7.xyzw, -r7.xyzw, r8.xyzw
mul r4.xyzw, r4.xyzw, |r7.xyzw|
lt r7.xyzw, r4.xyzw, cb1[14].xyzw
mul r4.xyzw, r4.xyzw, cb1[13].xyzw
exp r4.xyzw, r4.xyzw
and r4.xyzw, r4.xyzw, r7.xyzw
add r7.xyzw, r4.xyzw, l(-1.000000, -1.000000, -1.000000, -1.000000)
mul r8.xyz, r7.xxxx, cb1[15].xyzx
mov r8.w, r4.x
mul r8.xyzw, r4.yyyy, r8.xyzw
mad r8.xyz, r7.yyyy, cb1[16].xyzx, r8.xyzx
mul r8.xyzw, r4.zzzz, r8.xyzw
mad r8.xyz, r7.zzzz, cb1[17].xyzx, r8.xyzx
mul r3.xyzw, r4.wwww, r8.wxyz
mad r1.xyz, r7.wwww, cb1[18].xyzx, r3.yzwy
endif
switch cb1[3].w
case l(1)
add r4.yzw, -r0.xxyz, cb0[39].xxyz
div r7.xyz, l(1.000000, 1.000000, 1.000000, 1.000000), r4.yzwy
add r8.xyz, -r0.xyzx, cb1[3].xyzx
mul r8.xyz, r7.xyzx, r8.xyzx
add r9.xyz, -r0.xyzx, cb1[4].xyzx
mul r7.xyz, r7.xyzx, r9.xyzx
min r9.xyz, r7.xyzx, r8.xyzx
max r7.xyz, r7.xyzx, r8.xyzx
max r6.z, r9.z, r9.y
max_sat r6.z, r6.z, r9.x
min r6.w, r7.z, r7.y
min_sat r6.w, r6.w, r7.x
dp3 r4.y, r4.yzwy, r4.yzwy
sqrt r4.y, r4.y
add r4.y, r4.y, -cb1[2].w
add r4.z, -r6.z, r6.w
max r4.yz, r4.yyzy, l(0.000000, 0.000000, 0.000000, 0.000000)
mul r4.y, r4.z, r4.y
mul r4.y, r4.y, cb1[0].x
exp r4.x, -r4.y
add r4.y, -r4.x, l(1.000000)
mul r3.yzw, r4.yyyy, cb1[2].xxyz
break
case l(2)
add r4.yzw, -r0.xxyz, cb0[39].xxyz
div r7.xyz, l(1.000000, 1.000000, 1.000000, 1.000000), r4.yzwy
add r8.xyz, -r0.xyzx, cb1[3].xyzx
mul r8.xyz, r7.xyzx, r8.xyzx
add r9.xyz, -r0.xyzx, cb1[4].xyzx
mul r7.xyz, r7.xyzx, r9.xyzx
min r9.xyz, r7.xyzx, r8.xyzx
max r7.xyz, r7.xyzx, r8.xyzx
max r6.z, r9.z, r9.y
max_sat r6.z, r6.z, r9.x
min r6.w, r7.z, r7.y
min_sat r6.w, r6.w, r7.x
dp3 r7.x, r4.yzwy, r4.yzwy
sqrt r7.x, r7.x
dp4 r8.x, cb1[1].xyzw, r0.xyzw
mov r9.xyz, cb0[39].xyzx
mov r9.w, l(1.000000)
dp4 r8.y, cb1[1].xyzw, r9.xyzw
dp3 r0.w, cb1[1].xyzx, r4.yzwy
add r4.y, r0.w, l(0.000100)
div r4.y, -r8.x, r4.y
lt r4.zw, r8.xxxy, l(0.000000, 0.000000, 0.000000, 0.000000)
and r4.zw, r4.zzzw, l(0, 0, 0x3f800000, 0x3f800000)
add r7.yz, -r4.yyyy, l(0.000000, 0.000000, 1.000000, 0.000000)
mad r4.yz, r4.zzwz, r7.yyzy, r4.yyyy
max r9.x, r6.z, r4.y
min r4.y, r6.w, r4.z
div r4.z, cb1[2].w, r7.x
add r4.z, -r4.z, l(1.000000)
min r9.y, r4.y, r4.z
ge r4.y, r9.x, r9.y
movc r4.yz, r4.yyyy, l(0,0,0,0), r9.xxyx
mul r6.zw, r4.yyyz, r4.yyyz
mul r6.zw, r0.wwww, r6.zzzw
mul r6.zw, r6.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mad r4.yz, r4.yyzy, r8.xxxx, r6.zzwz
add r0.w, -r4.y, r4.z
mul r0.w, r7.x, -r0.w
mul r0.w, r0.w, cb1[0].x
mul r0.w, r0.w, l(0.000100)
exp r4.x, -r0.w
add r0.w, -r4.x, l(1.000000)
mul r3.yzw, r0.wwww, cb1[2].xxyz
break
case l(3)
add r4.yzw, -r0.xxyz, cb0[39].xxyz
dp3 r7.x, r4.yzwy, r4.yzwy
mul r0.w, cb1[1].w, cb1[1].w
add r8.xyz, r0.xyzx, -cb1[1].xyzx
dp3 r7.z, r8.xyzx, r8.xyzx
dp3 r7.y, r4.yzwy, r8.xyzx
add r4.y, r7.y, r7.y
mul r4.z, r7.x, l(4.000000)
mad r4.w, -cb1[1].w, cb1[1].w, r7.z
mul r4.z, r4.w, r4.z
mad r4.y, r4.y, r4.y, -r4.z
ge r4.z, r4.y, l(0.000000)
if_nz r4.z
sqrt r4.z, r7.x
add r4.w, r7.x, l(0.000100)
div r4.w, l(0.500000), r4.w
sqrt r8.x, r4.y
mov r8.y, -r8.x
mad r6.zw, r7.yyyy, l(0.000000, 0.000000, 2.000000, 2.000000), r8.xxxy
mul_sat r8.xy, r4.wwww, -r6.zwzz
div r4.y, cb1[2].w, r4.z
add r4.y, -r4.y, l(1.000000)
min r4.y, r8.y, r4.y
max r8.z, r8.x, r4.y
mul r7.xyz, r7.xyzx, l(0.333333343, 1.000000, 1.000000, 0.000000)
mul r9.xy, r8.xzxx, r8.xzxx
mul r10.xy, r8.xzxx, r9.xyxx
mov r10.z, r9.x
mov r10.w, r8.x
dp3 r11.x, r7.xyzx, r10.xzwx
mov r9.z, r10.y
mov r9.w, r8.z
dp3 r11.y, r7.yxzy, r9.yzwy
div r4.yw, r11.xxxy, r0.wwww
add r4.yw, -r4.yyyw, r8.xxxz
mul r0.w, r4.y, cb1[0].x
mad r0.w, cb1[0].x, r4.w, -r0.w
mul r0.w, r4.z, r0.w
else
mov r0.w, l(0)
endif
exp r4.x, -r0.w
add r0.w, -r4.x, l(1.000000)
mul r3.yzw, r0.wwww, cb1[2].xxyz
break
case l(4)
mov r3.yzw, l(0,0,0,0)
mov r4.x, l(1.000000)
break
default
mov r3.yzw, l(0,0,0,0)
mov r4.x, l(1.000000)
break
endswitch
mad o6.xyz, r3.yzwy, r3.xxxx, r1.xyzx
mul o6.w, r3.x, r4.x
mov o0.xy, r5.xzxx
mov o0.z, r6.x
mov o0.w, r1.w
mov o1.xy, r5.ywyy
mov o1.z, r6.y
mov o1.w, r1.w
mov o2.xyzw, v5.xyzw
mov o4.xyzw, v8.xyzw

//Fix
mov r15.xyzw, r2.xyzw
add r14.w, r2.w, -r14.y
mad r2.x, r14.w, r14.x, r2.x

mov o7.xyzw, r2.xyzw

//mov o9.xyzw, r2.xyzw
mov o9.xyzw, r15.xyzw

mov o5.xyz, v1.xyzx
mov o8.xyz, r0.xyzx
ret
// Approximately 0 instruction slots used



Now I believe I seen what was added to this shader. I think the following lines where added:


//dcl_temps 11

dcl_temps 15

dcl_resource_texture2d (float,float,float,float) t125
ld_indexable(texture2d)(float,float,float,float) r14.xyzw, l(0, 0, 0, 0), t125.xyzw

//Fix
mov r15.xyzw, r1.xyzw
add r14.w, r1.w, -r14.y
mad r1.x, r14.w, r14.x, r1.x

mov o6.xyzw, r1.xyzw
//mov o8.xyzw, r1.xyzw
mov o8.xyzw, r15.xyzw


Now I tried injecting that code into the Shader for the Ocean and the Ocean dissappears?? Here is the entire shader code for the ocean:


// ---- Created with 3Dmigoto v1.3.11 on Fri Jun 15 17:11:07 2018

cbuffer PerView : register(b0)
{
row_major float4x4 g_viewProj : packoffset(c0) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_invViewProj : packoffset(c4) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_view : packoffset(c8) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_invView : packoffset(c12) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_proj : packoffset(c16) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_invProj : packoffset(c20) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
row_major float4x4 g_cameraDirs : packoffset(c24) = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
float4 g_cameraPos : packoffset(c28) = {0,0,0,0};
float g_zoomFactor : packoffset(c29) = {0};
float g_nearPlane : packoffset(c29.y) = {0};
float4 g_farPlane : packoffset(c30) = {0,0,0,0};
bool g_clipPlaneEnable : packoffset(c31) = false;
float4 g_clipPlane : packoffset(c32) = {0,0,0,0};
}



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


void main(
float3 v0 : POSITION0,
out float4 o0 : SV_Position0,
out float4 o1 : TEXCOORD0,
out float2 o2 : TEXCOORD1)
{
float4 r0,r1,r2;
uint4 bitmask, uiDest;
float4 fDest;

o0.xyz = v0.xyz;
o0.w = 1;
r0.xyz = g_cameraDirs._m30_m31_m32 + -g_cameraDirs._m20_m21_m22;
r1.xy = v0.xy * float2(0.5,-0.5) + float2(0.5,0.5);
r0.xyz = r1.yyy * r0.xyz + g_cameraDirs._m20_m21_m22;
r2.xyz = g_cameraDirs._m10_m11_m12 + -g_cameraDirs._m00_m01_m02;
r2.xyz = r1.yyy * r2.xyz + g_cameraDirs._m00_m01_m02;
r0.xyz = -r2.xyz + r0.xyz;
o1.xyz = r1.xxx * r0.xyz + r2.xyz;
o2.xy = r1.xy;
o1.w = 0;

float separation = StereoParams.Load(0).x;
float convergence = StereoParams.Load(0).y;
o0.x += separation * convergence * 0.99;



return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 6.3.9600.16384
//
// using 3Dmigoto v1.3.11 on Fri Jun 15 17:11:07 2018
//
//
// Buffer Definitions:
//
// cbuffer PerView
// {
//
// row_major float4x4 g_viewProj; // Offset: 0 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_invViewProj; // Offset: 64 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_view; // Offset: 128 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_invView; // Offset: 192 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_proj; // Offset: 256 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_invProj; // Offset: 320 Size: 64 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// row_major float4x4 g_cameraDirs; // Offset: 384 Size: 64
// = 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// 0x00000000 0x00000000 0x00000000 0x00000000
// float4 g_cameraPos; // Offset: 448 Size: 16 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// float g_zoomFactor; // Offset: 464 Size: 4 [unused]
// = 0x00000000
// float g_nearPlane; // Offset: 468 Size: 4 [unused]
// = 0x00000000
// float4 g_farPlane; // Offset: 480 Size: 16 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
// bool g_clipPlaneEnable; // Offset: 496 Size: 4 [unused]
// = 0x00000000
// float4 g_clipPlane; // Offset: 512 Size: 16 [unused]
// = 0x00000000 0x00000000 0x00000000 0x00000000
//
// }
//
//
// Resource Bindings:
//
// Name Type Format Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// PerView cbuffer NA NA 0 1
//
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION 0 xyz 0 NONE float xyz
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position 0 xyzw 0 POS float xyzw
// TEXCOORD 0 xyzw 1 NONE float xyzw
// TEXCOORD 1 xy 2 NONE float xy
//
vs_4_0
dcl_constantbuffer cb0[28], immediateIndexed
dcl_input v0.xyz
dcl_output_siv o0.xyzw, position
dcl_output o1.xyzw
dcl_output o2.xy
dcl_temps 3
mov o0.xyz, v0.xyzx
mov o0.w, l(1.000000)
add r0.xyz, -cb0[26].xyzx, cb0[27].xyzx
mad r1.xy, v0.xyxx, l(0.500000, -0.500000, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
mad r0.xyz, r1.yyyy, r0.xyzx, cb0[26].xyzx
add r2.xyz, -cb0[24].xyzx, cb0[25].xyzx
mad r2.xyz, r1.yyyy, r2.xyzx, cb0[24].xyzx
add r0.xyz, r0.xyzx, -r2.xyzx
mad o1.xyz, r1.xxxx, r0.xyzx, r2.xyzx
mov o2.xy, r1.xyxx
mov o1.w, l(0)
ret
// Approximately 12 instruction slots used

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



Now when I do this the Ocean goes into stereo but then I get halos around the objects in the water.. I will post a screenshot of what it looks like.. I know I am close but something eludes me..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#6
Posted 06/15/2018 09:20 PM   
Interesting! I mean wasn't expecting you to have a look so early... where do you put the fix, in C:\Program Files (x86)\Steam\steamapps\common\World of Warships\bin\clientrunner? Usually I look for a bin64 folder but there is none. Oh and your last post is like chinese to me, sorry I can't help. Thanks for your time!
Interesting! I mean wasn't expecting you to have a look so early... where do you put the fix, in C:\Program Files (x86)\Steam\steamapps\common\World of Warships\bin\clientrunner? Usually I look for a bin64 folder but there is none.

Oh and your last post is like chinese to me, sorry I can't help.

Thanks for your time!

3D Vision must live! NVIDIA, don't let us down!

#7
Posted 06/16/2018 02:18 AM   
[quote="Th3_N3philim"]There is a Hotkey to set the UI into depth it is the NumPad Minus key..[/quote] This key is used to adjust size of minimap... does it interfere?
Th3_N3philim said:There is a Hotkey to set the UI into depth it is the NumPad Minus key..

This key is used to adjust size of minimap... does it interfere?

3D Vision must live! NVIDIA, don't let us down!

#8
Posted 06/16/2018 02:20 AM   
No you install the fix where the EXE is located and that is inside the World of Warships folder.. The Hot Key " - " is used to set the UI to depth with 4 presets to your liking..
No you install the fix where the EXE is located and that is inside the World of Warships folder..

The Hot Key " - " is used to set the UI to depth with 4 presets to your liking..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#9
Posted 06/16/2018 03:20 AM   
OK I can not figure out what to do with the shader file.. I toiled for a few hours and nothing worked, I was able to do some wierd things but not what I wanted it too do.. Best bet for now is for the setting "Sea Rendering Quality" set it too "VERY LOW..."
OK I can not figure out what to do with the shader file.. I toiled for a few hours and nothing worked, I was able to do some wierd things but not what I wanted it too do..

Best bet for now is for the setting "Sea Rendering Quality" set it too "VERY LOW..."

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#10
Posted 06/16/2018 05:44 AM   
[quote="Th3_N3philim"]No you install the fix where the EXE is located and that is inside the World of Warships folder..[/quote] I use the Steam version and there is no EXE in that folder. The one I see is World of Warships/bin/clientrunner/clientrunner.exe and it does nothing placing it there. [quote]The Hot Key " - " is used to set the UI to depth with 4 presets to your liking..[/quote] Like I said the game alreade make use of the +/- on keypad to adjust the size of the minimap so I was wondering if it would interfere.
Th3_N3philim said:No you install the fix where the EXE is located and that is inside the World of Warships folder..

I use the Steam version and there is no EXE in that folder. The one I see is World of Warships/bin/clientrunner/clientrunner.exe and it does nothing placing it there.

The Hot Key " - " is used to set the UI to depth with 4 presets to your liking..

Like I said the game alreade make use of the +/- on keypad to adjust the size of the minimap so I was wondering if it would interfere.

3D Vision must live! NVIDIA, don't let us down!

#11
Posted 06/16/2018 01:10 PM   
LEt me install the Steam version.. I'm sorry I thought you where wondering what the Hotkey did.. IF it interfears with the minimap let me know I can change the Hotkey to soemthing else..
LEt me install the Steam version..

I'm sorry I thought you where wondering what the Hotkey did.. IF it interfears with the minimap let me know I can change the Hotkey to soemthing else..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#12
Posted 06/16/2018 05:00 PM   
@Rhialto the exe is nested here on my install under Steam: C:\Program Files (x86)\Steam\steamapps\common\World of Warships\bin\344738
@Rhialto the exe is nested here on my install under Steam:


C:\Program Files (x86)\Steam\steamapps\common\World of Warships\bin\344738

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#13
Posted 06/16/2018 05:18 PM   
OK I changed the Hotkey to "Right Bracket Key" DL the new ini here and remove the JPG Extension and install over the old INI file
OK I changed the Hotkey to "Right Bracket Key" DL the new ini here and remove the JPG Extension and install over the old INI file
Attachments

d3dx.ini.jpg

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#14
Posted 06/16/2018 05:38 PM   
To any shaderhackers, I was looking again at the effect I was getting now the more I think about it I do not believe it is a Halo effect but more of a reflection of sorts.. I was looking for a Bloom setting but none exists so for nopw just setting the water to Very low seems to fix it a bit.. Not really a deal breaker but at least I dont see the double image of the reflection now.. Other then the lights on the islands this seems to be fixed pretty good so far.. I will continue Hunting..
To any shaderhackers, I was looking again at the effect I was getting now the more I think about it I do not believe it is a Halo effect but more of a reflection of sorts..

I was looking for a Bloom setting but none exists so for nopw just setting the water to Very low seems to fix it a bit.. Not really a deal breaker but at least I dont see the double image of the reflection now..

Other then the lights on the islands this seems to be fixed pretty good so far.. I will continue Hunting..

Intel i5 7600K @ 4.8ghz / MSI Z270 SLI / Asus 1080GTX - 416.16 / Optoma HD142x Projector / 1 4'x10' Curved Screen PVC / TrackIR / HOTAS Cougar / Cougar MFD's / Track IR / NVidia 3D Vision / Win 10 64bit

#15
Posted 06/16/2018 06:32 PM   
  1 / 4    
Scroll To Top