Giana Sisters Twisted Dreams
  2 / 4    
I played this some time ago, 3D seemed flawless; except underwater you see a double (you can disable 3D in underwater parts).
I played this some time ago, 3D seemed flawless; except underwater you see a double (you can disable 3D in underwater parts).

#16
Posted 12/07/2014 06:41 AM   
sorry had the wrong screeny attached
sorry had the wrong screeny attached

OS --------- Win 7 64Bit Home Premium
CPU -------- i7 920 OC as needed
COOLER --- NOC NH-U12P SE
MOBO ----- ASUS Rampage 2 Extreme
RAM -------- 6GB Corsair Triple Channel 1333
POWER ---- Corsair 1000hx
GPU -------- Windforce 4GB GTX 770 SLI
CASE ------- NZXT Tempest
HD ---------- Samsung 840 Pro 256GB(OS), 840 Pro 250GB Game Drive, 250GB Velociraptor Game Drive, WD Green 1TB, WD Green 2TB
MONITOR -- ROG SWIFT(2560x1440 to 144hz) and 3DTV PN58C7000(1080 Checkerboard)
3D ---------- 3D Vision V1, Tridef, IZ3D

#17
Posted 12/07/2014 02:25 PM   
Looking at my backlog, this game caught my interest again (I completed three or four levels years ago, before having 3D Vision). But it isn't perfect. DX9: - Water refracion is wrong (double depth). - It looks like it's running at an internal resolution lower than native. Not related to 3D. - Seems perfect otherwise. DX11: - Water refraction is wrong. - Lighting is wrong. Looking at the lighting shaders, it reminds me of Dark Souls 2 SOTFS. They are similar in structure. - Better image quality. I would like to fix both versions if possible. The easier one should be DX9 because it only has one problem. But the bigger problem is with me, because I have fixed the water in DX11 in a pair of minutes but I couldn't to do the same in DX9 (my ASM incompetence, yeeeah). Those vertex shaders are extremely similar. d253686a39d67f0b-vs_replace.txt (DX11, fixed): [code]//Water. // ---- Created with 3Dmigoto v1.2.27 on Wed Feb 03 20:45:03 2016 cbuffer g_GlobalConstantBufferFrame : register(b0) { float4x4 g_MatProj : packoffset(c0); float4x4 g_MatView : packoffset(c4); float4x4 g_MatInvView : packoffset(c8); float4 g_ClipPlanes : packoffset(c12); float4 g_ProjectionPlaneRight : packoffset(c13); float4 g_ProjectionPlaneUp : packoffset(c14); float4 g_ProjectionPlaneDirection : packoffset(c15); float4 g_Time : packoffset(c16); float4 g_EyePosition : packoffset(c17); float4 g_EyeDirection : packoffset(c18); float4 g_LinearDepthFogParams : packoffset(c19); float4 g_LinearDepthFogColor : packoffset(c20); float4 g_AmbientColor : packoffset(c21); float4 g_LightMapMultiplier : packoffset(c22); float4 g_LightColorForStaticLightShadows : packoffset(c23); float4 g_vMainLightDir : packoffset(c24); float4 g_vMainLightColor : packoffset(c25); float4 g_CustomGradient : packoffset(c26); float4 g_IndirectionTableInfo : packoffset(c27); float4 g_VTTextureType : packoffset(c28); } cbuffer g_GlobalConstantBufferObject : register(b1) { float4x4 g_MatWorldView : packoffset(c0); float4x4 g_MatWorldViewProj : packoffset(c4); float4x4 g_MatWorld : packoffset(c8); float4 g_LightMapToShadowMapScaleOffset : packoffset(c12); float4 g_ModelUVToLightMap : packoffset(c13); float4 g_Lightmap_Info : packoffset(c14); float4 g_Lightmap_Info2 : packoffset(c15); float g_AlphaTestThreshold : packoffset(c16); float4 g_Light0 : packoffset(c17); float4 g_Light1 : packoffset(c18); float4 g_Light2 : packoffset(c19); float4 g_Light3 : packoffset(c20); float4 g_Light4 : packoffset(c21); float4 g_Light5 : packoffset(c22); } cbuffer g_ConstantBufferGame : register(b5) { float4 GSMorphOrigin : packoffset(c0); float4 GSMorphExpanses : packoffset(c1); float4 MorphMainLightColor : packoffset(c2); float4 MorphFogColor : packoffset(c3); float3 MorphFogParam : packoffset(c4); float4 MorphCuteAmbientColor : packoffset(c5); float4 MorphDarkAmbientColor : packoffset(c6); float4 GradientDepthLimits : packoffset(c7); float ShadowDebug : packoffset(c8); } cbuffer g_ConstantBufferCustom : register(b2) { float MorphBlendTime : packoffset(c0); float4 BumpScroll : packoffset(c1); float4 Tiling : packoffset(c2); float3 RimLightColor : packoffset(c3); float3 RimLightColor2 : packoffset(c4); } // 3Dmigoto declarations #define cmp - Texture1D<float4> IniParams : register(t120); Texture2D<float4> StereoParams : register(t125); void main( float3 v0 : POSITION0, float4 v1 : TEXCOORD0, float2 v2 : TEXCOORD1, float3 v3 : NORMAL0, float3 v4 : TEXCOORD2, out float4 o0 : SV_Position0, out float4 o1 : TEXCOORD0, out float4 o2 : TEXCOORD1, out float4 o3 : TEXCOORD2, out float4 o4 : TEXCOORD3, out float4 o5 : TEXCOORD4, out float4 o6 : TEXCOORD5, out float4 o7 : TEXCOORD6, out float4 o8 : TEXCOORD7, out float4 o9 : TEXCOORD8, out float4 o10 : TEXCOORD9, out float3 o11 : COLOR0) { float4 r0,r1,r2,r3,r4; uint4 bitmask, uiDest; float4 fDest; float4 stereo = StereoParams.Load(0); float separation = stereo.x; float convergence = stereo.y; r0.xyz = g_MatWorld._m01_m11_m21 * v0.yyy; r0.xyz = g_MatWorld._m00_m10_m20 * v0.xxx + r0.xyz; r0.xyz = g_MatWorld._m02_m12_m22 * v0.zzz + r0.xyz; r0.xyz = g_MatWorld._m03_m13_m23 + r0.xyz; r1.xy = float2(0.400000006,0.200000003) * r0.xx; r1.xy = g_Time.xx * float2(15,5) + r1.xy; r1.xy = sin(r1.xy); r1.xy = abs(v3.zz) * r1.xy; r0.z = r1.x * 3 + r0.z; r0.w = -r1.y * 3 + r0.z; r1.xyzw = g_MatView._m01_m11_m21_m31 * r0.yyyy; r1.xyzw = g_MatView._m00_m10_m20_m30 * r0.xxxx + r1.xyzw; r1.xyzw = g_MatView._m02_m12_m22_m32 * r0.wwww + r1.xyzw; r1.xyzw = g_MatView._m03_m13_m23_m33 + r1.xyzw; r2.xyzw = g_MatProj._m01_m11_m21_m31 * r1.yyyy; r2.xyzw = g_MatProj._m00_m10_m20_m30 * r1.xxxx + r2.xyzw; r2.xyzw = g_MatProj._m02_m12_m22_m32 * r1.zzzz + r2.xyzw; r1.xyzw = g_MatProj._m03_m13_m23_m33 * r1.wwww + r2.xyzw; o0.xyzw = r1.xyzw; o9.xyzw = r1.xyzw; //Fixed refraction. o9.x+=separation*(o9.w-convergence); o1.xy = v1.xy; o1.zw = v2.xy; r1.xyz = g_MatWorld._m01_m11_m21 * v3.yyy; r1.xyz = g_MatWorld._m00_m10_m20 * v3.xxx + r1.xyz; r1.xyz = g_MatWorld._m02_m12_m22 * v3.zzz + r1.xyz; r0.z = dot(r1.xyz, r1.xyz); r0.z = rsqrt(r0.z); o2.xyz = r1.xyz * r0.zzz; r1.xyz = g_MatWorld._m01_m11_m21 * v4.yyy; r1.xyz = g_MatWorld._m00_m10_m20 * v4.xxx + r1.xyz; r1.xyz = g_MatWorld._m02_m12_m22 * v4.zzz + r1.xyz; r0.z = dot(r1.xyz, r1.xyz); r0.z = rsqrt(r0.z); o3.xyz = r1.xyz * r0.zzz; r1.xyz = v4.zxy * v3.yzx; r1.xyz = v4.yzx * v3.zxy + -r1.xyz; r0.z = dot(v4.xyz, v4.xyz); r0.z = -2 + r0.z; r1.xyz = r1.xyz * r0.zzz; r0.z = dot(r1.xyz, r1.xyz); r0.z = rsqrt(r0.z); r1.xyz = r1.xyz * r0.zzz; r2.xyz = g_MatWorld._m01_m11_m21 * r1.yyy; r1.xyw = g_MatWorld._m00_m10_m20 * r1.xxx + r2.xyz; r1.xyz = g_MatWorld._m02_m12_m22 * r1.zzz + r1.xyw; r0.z = dot(r1.xyz, r1.xyz); r0.z = rsqrt(r0.z); o4.xyz = r1.xyz * r0.zzz; o5.xyz = g_EyePosition.xyz + -r0.xyw; r1.xyz = -GSMorphOrigin.xyz + r0.xyw; o8.xyz = r0.xyw; //Don't uncomment this one. Gives depth to shadows and fake lights on the surface of water. //o8.x-=separation*(o0.w-convergence); r0.x = dot(r1.xyz, r1.xyz); r0.x = sqrt(r0.x); r1.xyzw = GSMorphExpanses.xyzw + -r0.xxxx; r2.xyzw = cmp(float4(0,0,0,0) < r1.xyzw); r3.xyzw = cmp(r1.xyzw < float4(0,0,0,0)); r2.xyzw = (int4)r3.xyzw + (int4)-r2.xyzw; r2.xyzw = (int4)r2.xyzw; r2.xyzw = saturate(float4(1,1,1,1) + r2.xyzw); r3.xyzw = r2.wzyx * r1.wzyx; r4.xyzw = float4(-1,-1,-1,-1) + r2.wzyx; r3.xyzw = r4.xyzw * float4(-1e+009,-1e+009,-1e+009,-1e+009) + r3.xyzw; r4.xyzw = cmp(r3.zwxy >= r3.wzyx); r4.xyzw = r4.xyzw ? 1.000000 : 0; r2.xyzw = r4.xyzw * r2.xyzw; r4.xyzw = cmp(r3.yxwx >= r3.wzyx); r3.xyzw = cmp(r3.xyzw >= r3.wzyx); r3.xyzw = r3.xyzw ? 1.000000 : 0; r4.xyzw = r4.xyzw ? 1.000000 : 0; r2.xyzw = r4.xyzw * r2.xyzw; r2.xyzw = r2.xyzw * r3.xyzw; r0.x = MorphBlendTime * GSMorphOrigin.w; r1.xyzw = saturate(r1.xyzw / r0.xxxx); r1.xyzw = float4(1,0,1,0) + -r1.xyzw; r0.x = dot(abs(r1.xyzw), r2.xyzw); r0.z = -MorphFogParam.x + r0.y; r0.y = -g_LinearDepthFogParams.x + r0.y; r0.y = saturate(g_LinearDepthFogParams.z * r0.y); r0.z = saturate(MorphFogParam.z * r0.z); r0.z = r0.z + -r0.y; o6.w = r0.x * r0.z + r0.y; r0.yzw = MorphFogColor.xyz + -g_LinearDepthFogColor.xyz; o6.xyz = r0.xxx * r0.yzw + g_LinearDepthFogColor.xyz; r0.yzw = MorphMainLightColor.xyz + -g_vMainLightColor.xyz; o7.xyz = r0.xxx * r0.yzw + g_vMainLightColor.xyz; o7.w = r0.x; r1.xyzw = g_Time.xxxx * BumpScroll.xyzw + v1.xyxy; o10.xyzw = Tiling.xyzw * r1.xyzw; r0.yzw = RimLightColor2.xyz + -RimLightColor.xyz; o11.xyz = r0.xxx * r0.yzw + RimLightColor.xyz; return; } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // using 3Dmigoto v1.2.27 on Wed Feb 03 20:45:02 2016 // // // Buffer Definitions: // // cbuffer g_GlobalConstantBufferFrame // { // // float4x4 g_MatProj; // Offset: 0 Size: 64 // float4x4 g_MatView; // Offset: 64 Size: 64 // float4x4 g_MatInvView; // Offset: 128 Size: 64 [unused] // float4 g_ClipPlanes; // Offset: 192 Size: 16 [unused] // float4 g_ProjectionPlaneRight; // Offset: 208 Size: 16 [unused] // float4 g_ProjectionPlaneUp; // Offset: 224 Size: 16 [unused] // float4 g_ProjectionPlaneDirection; // Offset: 240 Size: 16 [unused] // float4 g_Time; // Offset: 256 Size: 16 // float4 g_EyePosition; // Offset: 272 Size: 16 // float4 g_EyeDirection; // Offset: 288 Size: 16 [unused] // float4 g_LinearDepthFogParams; // Offset: 304 Size: 16 // float4 g_LinearDepthFogColor; // Offset: 320 Size: 16 // float4 g_AmbientColor; // Offset: 336 Size: 16 [unused] // float4 g_LightMapMultiplier; // Offset: 352 Size: 16 [unused] // float4 g_LightColorForStaticLightShadows;// Offset: 368 Size: 16 [unused] // float4 g_vMainLightDir; // Offset: 384 Size: 16 [unused] // float4 g_vMainLightColor; // Offset: 400 Size: 16 // float4 g_CustomGradient; // Offset: 416 Size: 16 [unused] // float4 g_IndirectionTableInfo; // Offset: 432 Size: 16 [unused] // float4 g_VTTextureType; // Offset: 448 Size: 16 [unused] // // } // // cbuffer g_GlobalConstantBufferObject // { // // float4x4 g_MatWorldView; // Offset: 0 Size: 64 [unused] // float4x4 g_MatWorldViewProj; // Offset: 64 Size: 64 [unused] // float4x4 g_MatWorld; // Offset: 128 Size: 64 // float4 g_LightMapToShadowMapScaleOffset;// Offset: 192 Size: 16 [unused] // float4 g_ModelUVToLightMap; // Offset: 208 Size: 16 [unused] // float4 g_Lightmap_Info; // Offset: 224 Size: 16 [unused] // float4 g_Lightmap_Info2; // Offset: 240 Size: 16 [unused] // float g_AlphaTestThreshold; // Offset: 256 Size: 4 [unused] // float4 g_Light0; // Offset: 272 Size: 16 [unused] // float4 g_Light1; // Offset: 288 Size: 16 [unused] // float4 g_Light2; // Offset: 304 Size: 16 [unused] // float4 g_Light3; // Offset: 320 Size: 16 [unused] // float4 g_Light4; // Offset: 336 Size: 16 [unused] // float4 g_Light5; // Offset: 352 Size: 16 [unused] // // } // // cbuffer g_ConstantBufferGame // { // // float4 GSMorphOrigin; // Offset: 0 Size: 16 // float4 GSMorphExpanses; // Offset: 16 Size: 16 // float4 MorphMainLightColor; // Offset: 32 Size: 16 // float4 MorphFogColor; // Offset: 48 Size: 16 // float3 MorphFogParam; // Offset: 64 Size: 12 // float4 MorphCuteAmbientColor; // Offset: 80 Size: 16 [unused] // float4 MorphDarkAmbientColor; // Offset: 96 Size: 16 [unused] // float4 GradientDepthLimits; // Offset: 112 Size: 16 [unused] // float ShadowDebug; // Offset: 128 Size: 4 [unused] // // } // // cbuffer g_ConstantBufferCustom // { // // float MorphBlendTime; // Offset: 0 Size: 4 // float4 BumpScroll; // Offset: 16 Size: 16 // float4 Tiling; // Offset: 32 Size: 16 // float3 RimLightColor; // Offset: 48 Size: 12 // float3 RimLightColor2; // Offset: 64 Size: 12 // // } // // // Resource Bindings: // // Name Type Format Dim Slot Elements // ------------------------------ ---------- ------- ----------- ---- -------- // g_GlobalConstantBufferFrame cbuffer NA NA 0 1 // g_GlobalConstantBufferObject cbuffer NA NA 1 1 // g_ConstantBufferCustom cbuffer NA NA 2 1 // g_ConstantBufferGame cbuffer NA NA 5 1 // // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // POSITION 0 xyz 0 NONE float xyz // TEXCOORD 0 xy 1 NONE float xy // TEXCOORD 1 xy 2 NONE float xy // NORMAL 0 xyz 3 NONE float xyz // TEXCOORD 2 xyz 4 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 xyz 2 NONE float xyz // TEXCOORD 2 xyz 3 NONE float xyz // TEXCOORD 3 xyz 4 NONE float xyz // TEXCOORD 4 xyz 5 NONE float xyz // TEXCOORD 5 xyzw 6 NONE float xyzw // TEXCOORD 6 xyzw 7 NONE float xyzw // TEXCOORD 7 xyz 8 NONE float xyz // TEXCOORD 8 xyzw 9 NONE float xyzw // TEXCOORD 9 xyzw 10 NONE float xyzw // COLOR 0 xyz 11 NONE float xyz // vs_4_0 dcl_constantbuffer cb0[26], immediateIndexed dcl_constantbuffer cb1[12], immediateIndexed dcl_constantbuffer cb5[5], immediateIndexed dcl_constantbuffer cb2[5], immediateIndexed dcl_input v0.xyz dcl_input v1.xy dcl_input v2.xy dcl_input v3.xyz dcl_input v4.xyz dcl_output_siv o0.xyzw, position dcl_output o1.xyzw dcl_output o2.xyz dcl_output o3.xyz dcl_output o4.xyz dcl_output o5.xyz dcl_output o6.xyzw dcl_output o7.xyzw dcl_output o8.xyz dcl_output o9.xyzw dcl_output o10.xyzw dcl_output o11.xyz dcl_temps 5 mul r0.xyz, v0.yyyy, cb1[9].xyzx mad r0.xyz, cb1[8].xyzx, v0.xxxx, r0.xyzx mad r0.xyz, cb1[10].xyzx, v0.zzzz, r0.xyzx add r0.xyz, r0.xyzx, cb1[11].xyzx mul r1.xy, r0.xxxx, l(0.400000, 0.200000, 0.000000, 0.000000) mad r1.xy, cb0[16].xxxx, l(15.000000, 5.000000, 0.000000, 0.000000), r1.xyxx sincos r1.xy, null, r1.xyxx mul r1.xy, r1.xyxx, |v3.zzzz| mad r0.z, r1.x, l(3.000000), r0.z mad r0.w, -r1.y, l(3.000000), r0.z mul r1.xyzw, r0.yyyy, cb0[5].xyzw mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw mad r1.xyzw, cb0[6].xyzw, r0.wwww, r1.xyzw add r1.xyzw, r1.xyzw, cb0[7].xyzw mul r2.xyzw, r1.yyyy, cb0[1].xyzw mad r2.xyzw, cb0[0].xyzw, r1.xxxx, r2.xyzw mad r2.xyzw, cb0[2].xyzw, r1.zzzz, r2.xyzw mad r1.xyzw, cb0[3].xyzw, r1.wwww, r2.xyzw mov o0.xyzw, r1.xyzw mov o9.xyzw, r1.xyzw mov o1.xy, v1.xyxx mov o1.zw, v2.xxxy mul r1.xyz, v3.yyyy, cb1[9].xyzx mad r1.xyz, cb1[8].xyzx, v3.xxxx, r1.xyzx mad r1.xyz, cb1[10].xyzx, v3.zzzz, r1.xyzx dp3 r0.z, r1.xyzx, r1.xyzx rsq r0.z, r0.z mul o2.xyz, r0.zzzz, r1.xyzx mul r1.xyz, v4.yyyy, cb1[9].xyzx mad r1.xyz, cb1[8].xyzx, v4.xxxx, r1.xyzx mad r1.xyz, cb1[10].xyzx, v4.zzzz, r1.xyzx dp3 r0.z, r1.xyzx, r1.xyzx rsq r0.z, r0.z mul o3.xyz, r0.zzzz, r1.xyzx mul r1.xyz, v3.yzxy, v4.zxyz mad r1.xyz, v4.yzxy, v3.zxyz, -r1.xyzx dp3 r0.z, v4.xyzx, v4.xyzx add r0.z, r0.z, l(-2.000000) mul r1.xyz, r0.zzzz, r1.xyzx dp3 r0.z, r1.xyzx, r1.xyzx rsq r0.z, r0.z mul r1.xyz, r0.zzzz, r1.xyzx mul r2.xyz, r1.yyyy, cb1[9].xyzx mad r1.xyw, cb1[8].xyxz, r1.xxxx, r2.xyxz mad r1.xyz, cb1[10].xyzx, r1.zzzz, r1.xywx dp3 r0.z, r1.xyzx, r1.xyzx rsq r0.z, r0.z mul o4.xyz, r0.zzzz, r1.xyzx add o5.xyz, -r0.xywx, cb0[17].xyzx add r1.xyz, r0.xywx, -cb5[0].xyzx mov o8.xyz, r0.xywx dp3 r0.x, r1.xyzx, r1.xyzx sqrt r0.x, r0.x add r1.xyzw, -r0.xxxx, cb5[1].xyzw lt r2.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000), r1.xyzw lt r3.xyzw, r1.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000) iadd r2.xyzw, r3.xyzw, -r2.xyzw itof r2.xyzw, r2.xyzw add_sat r2.xyzw, r2.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000) mul r3.xyzw, r1.wzyx, r2.wzyx add r4.xyzw, r2.wzyx, l(-1.000000, -1.000000, -1.000000, -1.000000) mad r3.xyzw, r4.xyzw, l(-1000000000.000000, -1000000000.000000, -1000000000.000000, -1000000000.000000), r3.xyzw ge r4.xyzw, r3.zwxy, r3.wzyx and r4.xyzw, r4.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000) mul r2.xyzw, r2.xyzw, r4.xyzw ge r4.xyzw, r3.yxwx, r3.wzyx ge r3.xyzw, r3.xyzw, r3.wzyx and r3.xyzw, r3.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000) and r4.xyzw, r4.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000) mul r2.xyzw, r2.xyzw, r4.xyzw mul r2.xyzw, r3.xyzw, r2.xyzw mul r0.x, cb5[0].w, cb2[0].x div_sat r1.xyzw, r1.xyzw, r0.xxxx add r1.xyzw, -r1.xyzw, l(1.000000, 0.000000, 1.000000, 0.000000) dp4 r0.x, |r1.xyzw|, r2.xyzw add r0.z, r0.y, -cb5[4].x add r0.y, r0.y, -cb0[19].x mul_sat r0.y, r0.y, cb0[19].z mul_sat r0.z, r0.z, cb5[4].z add r0.z, -r0.y, r0.z mad o6.w, r0.x, r0.z, r0.y add r0.yzw, -cb0[20].xxyz, cb5[3].xxyz mad o6.xyz, r0.xxxx, r0.yzwy, cb0[20].xyzx add r0.yzw, -cb0[25].xxyz, cb5[2].xxyz mad o7.xyz, r0.xxxx, r0.yzwy, cb0[25].xyzx mov o7.w, r0.x mad r1.xyzw, cb0[16].xxxx, cb2[1].xyzw, v1.xyxy mul o10.xyzw, r1.xyzw, cb2[2].xyzw add r0.yzw, -cb2[3].xxyz, cb2[4].xxyz mad o11.xyz, r0.xxxx, r0.yzwy, cb2[3].xyzx ret // Approximately 91 instruction slots used ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ [/code] 1A3B9092.txt (DX9, unmodified): [code]// // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // Parameters: // // float4 BumpScroll; // float4 GSMorphExpanses; // float4 GSMorphOrigin; // float MorphBlendTime; // float4 MorphFogColor; // float3 MorphFogParam; // float4 MorphMainLightColor; // float4 Tiling; // float4 g_EyePosition; // float4 g_LinearDepthFogColor; // float4 g_LinearDepthFogParams; // float4x4 g_MatProj; // float4x4 g_MatView; // float4x4 g_MatWorld; // float4 g_Time; // float4 g_vMainLightColor; // // // Registers: // // Name Reg Size // ---------------------- ----- ---- // g_MatProj c0 4 // g_MatView c4 4 // g_Time c16 1 // g_EyePosition c17 1 // g_LinearDepthFogParams c19 1 // g_LinearDepthFogColor c20 1 // g_vMainLightColor c25 1 // g_MatWorld c40 4 // MorphBlendTime c55 1 // BumpScroll c56 1 // Tiling c57 1 // GSMorphOrigin c180 1 // GSMorphExpanses c181 1 // MorphMainLightColor c182 1 // MorphFogColor c183 1 // MorphFogParam c184 1 // vs_3_0 def c8, 0.400000006, 0.200000003, 15, 5 def c9, 0.159154937, 0.25, 6.28318548, -3.14159274 def c10, -2.52398507e-007, 2.47609005e-005, -0.00138883968, 0.0416666418 def c11, -0.5, 1, 3, -1 def c12, -1e+009, 1, 0, 0 dcl_position v0 dcl_texcoord v1 dcl_texcoord1 v2 dcl_normal v3 dcl_texcoord2 v4 dcl_position o0 dcl_texcoord o1 dcl_texcoord1 o2.xyz dcl_texcoord2 o3.xyz dcl_texcoord3 o4 dcl_texcoord4 o5.xyz dcl_texcoord5 o6 dcl_texcoord6 o7 dcl_texcoord7 o8.xyz dcl_texcoord9 o9 mul r0.xyz, c41, v3.y mad r0.xyz, c40, v3.x, r0 mad r0.xyz, c42, v3.z, r0 dp3 r0.w, r0, r0 rsq r0.w, r0.w mul o2.xyz, r0.w, r0 mul r0.xyz, c41, v4.y mad r0.xyz, c40, v4.x, r0 mad r0.xyz, c42, v4.z, r0 dp3 r0.w, r0, r0 rsq r0.w, r0.w mul o3.xyz, r0.w, r0 mov r0.x, c16.x mad r1, r0.x, c56, v1.xyxy mul o9, r1, c57 mul r0.yzw, c41.xxyz, v0.y mad r0.yzw, c40.xxyz, v0.x, r0 mad r0.yzw, c42.xxyz, v0.z, r0 add r1.xyz, r0.yzww, c43 mul r0.yz, r1.x, c8.xxyw mad r0.xy, r0.x, c8.zwzw, r0.yzzw mad r0.xy, r0, c9.x, c9.y frc r0.xy, r0 mad r0.xy, r0, c9.z, c9.w mul r0.xy, r0, r0 mad r0.zw, r0.xyxy, c10.x, c10.y mad r0.zw, r0.xyxy, r0, c10.z mad r0.zw, r0.xyxy, r0, c10.w mad r0.zw, r0.xyxy, r0, c11.x mad r0.xy, r0, r0.zwzw, c11.y mul r0.xy, r0, v3_abs.z mad r0.x, r0.x, c11.z, r1.z mad r1.w, r0.y, -c11.z, r0.x add o5.xyz, -r1.xyww, c17 add r0.xyz, r1.xyww, -c180 dp3 r0.x, r0, r0 rsq r0.x, r0.x rcp r0.x, r0.x add r0, -r0.x, c181 slt r2, -r0, r0 slt r3, r0, -r0 add r2, r2, -r3 add r2, r2, c11.y min r2, r2, c11.y mul r3, r0.wzyx, r2.wzyx add r4, r2.wzyx, c11.w mad r3, r4, c12.x, r3 sge r4, r3.zwxy, r3.wzyx mul r2, r2, r4 sge r4, r3.yxwx, r3.wzyx sge r3, r3, r3.wzyx mul r2, r2, r4 mul r2, r3, r2 mov r3.w, c180.w mul r1.z, r3.w, c55.x rcp r1.z, r1.z mul_sat r0, r0, r1.z add r0, -r0, c12.yzyz dp4 r0.x, r0_abs, r2 mov r2.xyz, c25 add r0.yzw, -r2.xxyz, c182.xxyz mad o7.xyz, r0.x, r0.yzww, c25 mov r2.xyz, c20 add r0.yzw, -r2.xxyz, c183.xxyz mad o6.xyz, r0.x, r0.yzww, c20 add r0.y, r1.y, -c184.x mul_sat r0.y, r0.y, c184.z add r0.z, r1.y, -c19.x mul_sat r0.z, r0.z, c19.z add r0.y, -r0.z, r0.y mad o6.w, r0.x, r0.y, r0.z mov o7.w, r0.x mul r0, r1.y, c5 mad r0, c4, r1.x, r0 mov o8.xyz, r1.xyww mad r0, c6, r1.w, r0 add r0, r0, c7 mul r1, r0.y, c1 mad r1, c0, r0.x, r1 mad r1, c2, r0.z, r1 mad r0, c3, r0.w, r1 mov o0, r0 mov o4, r0 mov o1.xy, v1 mov o1.zw, v2.xyxy // approximately 85 instruction slots used [/code] I tried to follow the guide here: https://forums.geforce.com/default/topic/513190/3d-vision/how-to-fix-disable-shaders-in-games-dll-guide-and-fixes-/post/3653617/#3653617 The most I could do in DX9 was disabling one of the effects of the surface by mistake when I tried to modify "o9". It's very possible that I attacked the incorrect texcoord. So... a little help, please? If I get the idea, I would be able to apply the same concept to Ys Origin (same water problem).
Looking at my backlog, this game caught my interest again (I completed three or four levels years ago, before having 3D Vision). But it isn't perfect.

DX9:

- Water refracion is wrong (double depth).
- It looks like it's running at an internal resolution lower than native. Not related to 3D.
- Seems perfect otherwise.

DX11:

- Water refraction is wrong.
- Lighting is wrong. Looking at the lighting shaders, it reminds me of Dark Souls 2 SOTFS. They are similar in structure.
- Better image quality.


I would like to fix both versions if possible. The easier one should be DX9 because it only has one problem. But the bigger problem is with me, because I have fixed the water in DX11 in a pair of minutes but I couldn't to do the same in DX9 (my ASM incompetence, yeeeah). Those vertex shaders are extremely similar.

d253686a39d67f0b-vs_replace.txt (DX11, fixed):

//Water.
// ---- Created with 3Dmigoto v1.2.27 on Wed Feb 03 20:45:03 2016

cbuffer g_GlobalConstantBufferFrame : register(b0)
{
float4x4 g_MatProj : packoffset(c0);
float4x4 g_MatView : packoffset(c4);
float4x4 g_MatInvView : packoffset(c8);
float4 g_ClipPlanes : packoffset(c12);
float4 g_ProjectionPlaneRight : packoffset(c13);
float4 g_ProjectionPlaneUp : packoffset(c14);
float4 g_ProjectionPlaneDirection : packoffset(c15);
float4 g_Time : packoffset(c16);
float4 g_EyePosition : packoffset(c17);
float4 g_EyeDirection : packoffset(c18);
float4 g_LinearDepthFogParams : packoffset(c19);
float4 g_LinearDepthFogColor : packoffset(c20);
float4 g_AmbientColor : packoffset(c21);
float4 g_LightMapMultiplier : packoffset(c22);
float4 g_LightColorForStaticLightShadows : packoffset(c23);
float4 g_vMainLightDir : packoffset(c24);
float4 g_vMainLightColor : packoffset(c25);
float4 g_CustomGradient : packoffset(c26);
float4 g_IndirectionTableInfo : packoffset(c27);
float4 g_VTTextureType : packoffset(c28);
}

cbuffer g_GlobalConstantBufferObject : register(b1)
{
float4x4 g_MatWorldView : packoffset(c0);
float4x4 g_MatWorldViewProj : packoffset(c4);
float4x4 g_MatWorld : packoffset(c8);
float4 g_LightMapToShadowMapScaleOffset : packoffset(c12);
float4 g_ModelUVToLightMap : packoffset(c13);
float4 g_Lightmap_Info : packoffset(c14);
float4 g_Lightmap_Info2 : packoffset(c15);
float g_AlphaTestThreshold : packoffset(c16);
float4 g_Light0 : packoffset(c17);
float4 g_Light1 : packoffset(c18);
float4 g_Light2 : packoffset(c19);
float4 g_Light3 : packoffset(c20);
float4 g_Light4 : packoffset(c21);
float4 g_Light5 : packoffset(c22);
}

cbuffer g_ConstantBufferGame : register(b5)
{
float4 GSMorphOrigin : packoffset(c0);
float4 GSMorphExpanses : packoffset(c1);
float4 MorphMainLightColor : packoffset(c2);
float4 MorphFogColor : packoffset(c3);
float3 MorphFogParam : packoffset(c4);
float4 MorphCuteAmbientColor : packoffset(c5);
float4 MorphDarkAmbientColor : packoffset(c6);
float4 GradientDepthLimits : packoffset(c7);
float ShadowDebug : packoffset(c8);
}

cbuffer g_ConstantBufferCustom : register(b2)
{
float MorphBlendTime : packoffset(c0);
float4 BumpScroll : packoffset(c1);
float4 Tiling : packoffset(c2);
float3 RimLightColor : packoffset(c3);
float3 RimLightColor2 : packoffset(c4);
}



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


void main(
float3 v0 : POSITION0,
float4 v1 : TEXCOORD0,
float2 v2 : TEXCOORD1,
float3 v3 : NORMAL0,
float3 v4 : TEXCOORD2,
out float4 o0 : SV_Position0,
out float4 o1 : TEXCOORD0,
out float4 o2 : TEXCOORD1,
out float4 o3 : TEXCOORD2,
out float4 o4 : TEXCOORD3,
out float4 o5 : TEXCOORD4,
out float4 o6 : TEXCOORD5,
out float4 o7 : TEXCOORD6,
out float4 o8 : TEXCOORD7,
out float4 o9 : TEXCOORD8,
out float4 o10 : TEXCOORD9,
out float3 o11 : COLOR0)
{
float4 r0,r1,r2,r3,r4;
uint4 bitmask, uiDest;
float4 fDest;

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

r0.xyz = g_MatWorld._m01_m11_m21 * v0.yyy;
r0.xyz = g_MatWorld._m00_m10_m20 * v0.xxx + r0.xyz;
r0.xyz = g_MatWorld._m02_m12_m22 * v0.zzz + r0.xyz;
r0.xyz = g_MatWorld._m03_m13_m23 + r0.xyz;
r1.xy = float2(0.400000006,0.200000003) * r0.xx;
r1.xy = g_Time.xx * float2(15,5) + r1.xy;
r1.xy = sin(r1.xy);
r1.xy = abs(v3.zz) * r1.xy;
r0.z = r1.x * 3 + r0.z;
r0.w = -r1.y * 3 + r0.z;
r1.xyzw = g_MatView._m01_m11_m21_m31 * r0.yyyy;
r1.xyzw = g_MatView._m00_m10_m20_m30 * r0.xxxx + r1.xyzw;
r1.xyzw = g_MatView._m02_m12_m22_m32 * r0.wwww + r1.xyzw;
r1.xyzw = g_MatView._m03_m13_m23_m33 + r1.xyzw;
r2.xyzw = g_MatProj._m01_m11_m21_m31 * r1.yyyy;
r2.xyzw = g_MatProj._m00_m10_m20_m30 * r1.xxxx + r2.xyzw;
r2.xyzw = g_MatProj._m02_m12_m22_m32 * r1.zzzz + r2.xyzw;
r1.xyzw = g_MatProj._m03_m13_m23_m33 * r1.wwww + r2.xyzw;
o0.xyzw = r1.xyzw;
o9.xyzw = r1.xyzw;
//Fixed refraction.
o9.x+=separation*(o9.w-convergence);
o1.xy = v1.xy;
o1.zw = v2.xy;
r1.xyz = g_MatWorld._m01_m11_m21 * v3.yyy;
r1.xyz = g_MatWorld._m00_m10_m20 * v3.xxx + r1.xyz;
r1.xyz = g_MatWorld._m02_m12_m22 * v3.zzz + r1.xyz;
r0.z = dot(r1.xyz, r1.xyz);
r0.z = rsqrt(r0.z);
o2.xyz = r1.xyz * r0.zzz;
r1.xyz = g_MatWorld._m01_m11_m21 * v4.yyy;
r1.xyz = g_MatWorld._m00_m10_m20 * v4.xxx + r1.xyz;
r1.xyz = g_MatWorld._m02_m12_m22 * v4.zzz + r1.xyz;
r0.z = dot(r1.xyz, r1.xyz);
r0.z = rsqrt(r0.z);
o3.xyz = r1.xyz * r0.zzz;
r1.xyz = v4.zxy * v3.yzx;
r1.xyz = v4.yzx * v3.zxy + -r1.xyz;
r0.z = dot(v4.xyz, v4.xyz);
r0.z = -2 + r0.z;
r1.xyz = r1.xyz * r0.zzz;
r0.z = dot(r1.xyz, r1.xyz);
r0.z = rsqrt(r0.z);
r1.xyz = r1.xyz * r0.zzz;
r2.xyz = g_MatWorld._m01_m11_m21 * r1.yyy;
r1.xyw = g_MatWorld._m00_m10_m20 * r1.xxx + r2.xyz;
r1.xyz = g_MatWorld._m02_m12_m22 * r1.zzz + r1.xyw;
r0.z = dot(r1.xyz, r1.xyz);
r0.z = rsqrt(r0.z);
o4.xyz = r1.xyz * r0.zzz;
o5.xyz = g_EyePosition.xyz + -r0.xyw;
r1.xyz = -GSMorphOrigin.xyz + r0.xyw;
o8.xyz = r0.xyw;
//Don't uncomment this one. Gives depth to shadows and fake lights on the surface of water.
//o8.x-=separation*(o0.w-convergence);
r0.x = dot(r1.xyz, r1.xyz);
r0.x = sqrt(r0.x);
r1.xyzw = GSMorphExpanses.xyzw + -r0.xxxx;
r2.xyzw = cmp(float4(0,0,0,0) < r1.xyzw);
r3.xyzw = cmp(r1.xyzw < float4(0,0,0,0));
r2.xyzw = (int4)r3.xyzw + (int4)-r2.xyzw;
r2.xyzw = (int4)r2.xyzw;
r2.xyzw = saturate(float4(1,1,1,1) + r2.xyzw);
r3.xyzw = r2.wzyx * r1.wzyx;
r4.xyzw = float4(-1,-1,-1,-1) + r2.wzyx;
r3.xyzw = r4.xyzw * float4(-1e+009,-1e+009,-1e+009,-1e+009) + r3.xyzw;
r4.xyzw = cmp(r3.zwxy >= r3.wzyx);
r4.xyzw = r4.xyzw ? 1.000000 : 0;
r2.xyzw = r4.xyzw * r2.xyzw;
r4.xyzw = cmp(r3.yxwx >= r3.wzyx);
r3.xyzw = cmp(r3.xyzw >= r3.wzyx);
r3.xyzw = r3.xyzw ? 1.000000 : 0;
r4.xyzw = r4.xyzw ? 1.000000 : 0;
r2.xyzw = r4.xyzw * r2.xyzw;
r2.xyzw = r2.xyzw * r3.xyzw;
r0.x = MorphBlendTime * GSMorphOrigin.w;
r1.xyzw = saturate(r1.xyzw / r0.xxxx);
r1.xyzw = float4(1,0,1,0) + -r1.xyzw;
r0.x = dot(abs(r1.xyzw), r2.xyzw);
r0.z = -MorphFogParam.x + r0.y;
r0.y = -g_LinearDepthFogParams.x + r0.y;
r0.y = saturate(g_LinearDepthFogParams.z * r0.y);
r0.z = saturate(MorphFogParam.z * r0.z);
r0.z = r0.z + -r0.y;
o6.w = r0.x * r0.z + r0.y;
r0.yzw = MorphFogColor.xyz + -g_LinearDepthFogColor.xyz;
o6.xyz = r0.xxx * r0.yzw + g_LinearDepthFogColor.xyz;
r0.yzw = MorphMainLightColor.xyz + -g_vMainLightColor.xyz;
o7.xyz = r0.xxx * r0.yzw + g_vMainLightColor.xyz;
o7.w = r0.x;
r1.xyzw = g_Time.xxxx * BumpScroll.xyzw + v1.xyxy;
o10.xyzw = Tiling.xyzw * r1.xyzw;
r0.yzw = RimLightColor2.xyz + -RimLightColor.xyz;
o11.xyz = r0.xxx * r0.yzw + RimLightColor.xyz;
return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// using 3Dmigoto v1.2.27 on Wed Feb 03 20:45:02 2016
//
//
// Buffer Definitions:
//
// cbuffer g_GlobalConstantBufferFrame
// {
//
// float4x4 g_MatProj; // Offset: 0 Size: 64
// float4x4 g_MatView; // Offset: 64 Size: 64
// float4x4 g_MatInvView; // Offset: 128 Size: 64 [unused]
// float4 g_ClipPlanes; // Offset: 192 Size: 16 [unused]
// float4 g_ProjectionPlaneRight; // Offset: 208 Size: 16 [unused]
// float4 g_ProjectionPlaneUp; // Offset: 224 Size: 16 [unused]
// float4 g_ProjectionPlaneDirection; // Offset: 240 Size: 16 [unused]
// float4 g_Time; // Offset: 256 Size: 16
// float4 g_EyePosition; // Offset: 272 Size: 16
// float4 g_EyeDirection; // Offset: 288 Size: 16 [unused]
// float4 g_LinearDepthFogParams; // Offset: 304 Size: 16
// float4 g_LinearDepthFogColor; // Offset: 320 Size: 16
// float4 g_AmbientColor; // Offset: 336 Size: 16 [unused]
// float4 g_LightMapMultiplier; // Offset: 352 Size: 16 [unused]
// float4 g_LightColorForStaticLightShadows;// Offset: 368 Size: 16 [unused]
// float4 g_vMainLightDir; // Offset: 384 Size: 16 [unused]
// float4 g_vMainLightColor; // Offset: 400 Size: 16
// float4 g_CustomGradient; // Offset: 416 Size: 16 [unused]
// float4 g_IndirectionTableInfo; // Offset: 432 Size: 16 [unused]
// float4 g_VTTextureType; // Offset: 448 Size: 16 [unused]
//
// }
//
// cbuffer g_GlobalConstantBufferObject
// {
//
// float4x4 g_MatWorldView; // Offset: 0 Size: 64 [unused]
// float4x4 g_MatWorldViewProj; // Offset: 64 Size: 64 [unused]
// float4x4 g_MatWorld; // Offset: 128 Size: 64
// float4 g_LightMapToShadowMapScaleOffset;// Offset: 192 Size: 16 [unused]
// float4 g_ModelUVToLightMap; // Offset: 208 Size: 16 [unused]
// float4 g_Lightmap_Info; // Offset: 224 Size: 16 [unused]
// float4 g_Lightmap_Info2; // Offset: 240 Size: 16 [unused]
// float g_AlphaTestThreshold; // Offset: 256 Size: 4 [unused]
// float4 g_Light0; // Offset: 272 Size: 16 [unused]
// float4 g_Light1; // Offset: 288 Size: 16 [unused]
// float4 g_Light2; // Offset: 304 Size: 16 [unused]
// float4 g_Light3; // Offset: 320 Size: 16 [unused]
// float4 g_Light4; // Offset: 336 Size: 16 [unused]
// float4 g_Light5; // Offset: 352 Size: 16 [unused]
//
// }
//
// cbuffer g_ConstantBufferGame
// {
//
// float4 GSMorphOrigin; // Offset: 0 Size: 16
// float4 GSMorphExpanses; // Offset: 16 Size: 16
// float4 MorphMainLightColor; // Offset: 32 Size: 16
// float4 MorphFogColor; // Offset: 48 Size: 16
// float3 MorphFogParam; // Offset: 64 Size: 12
// float4 MorphCuteAmbientColor; // Offset: 80 Size: 16 [unused]
// float4 MorphDarkAmbientColor; // Offset: 96 Size: 16 [unused]
// float4 GradientDepthLimits; // Offset: 112 Size: 16 [unused]
// float ShadowDebug; // Offset: 128 Size: 4 [unused]
//
// }
//
// cbuffer g_ConstantBufferCustom
// {
//
// float MorphBlendTime; // Offset: 0 Size: 4
// float4 BumpScroll; // Offset: 16 Size: 16
// float4 Tiling; // Offset: 32 Size: 16
// float3 RimLightColor; // Offset: 48 Size: 12
// float3 RimLightColor2; // Offset: 64 Size: 12
//
// }
//
//
// Resource Bindings:
//
// Name Type Format Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// g_GlobalConstantBufferFrame cbuffer NA NA 0 1
// g_GlobalConstantBufferObject cbuffer NA NA 1 1
// g_ConstantBufferCustom cbuffer NA NA 2 1
// g_ConstantBufferGame cbuffer NA NA 5 1
//
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// POSITION 0 xyz 0 NONE float xyz
// TEXCOORD 0 xy 1 NONE float xy
// TEXCOORD 1 xy 2 NONE float xy
// NORMAL 0 xyz 3 NONE float xyz
// TEXCOORD 2 xyz 4 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 xyz 2 NONE float xyz
// TEXCOORD 2 xyz 3 NONE float xyz
// TEXCOORD 3 xyz 4 NONE float xyz
// TEXCOORD 4 xyz 5 NONE float xyz
// TEXCOORD 5 xyzw 6 NONE float xyzw
// TEXCOORD 6 xyzw 7 NONE float xyzw
// TEXCOORD 7 xyz 8 NONE float xyz
// TEXCOORD 8 xyzw 9 NONE float xyzw
// TEXCOORD 9 xyzw 10 NONE float xyzw
// COLOR 0 xyz 11 NONE float xyz
//
vs_4_0
dcl_constantbuffer cb0[26], immediateIndexed
dcl_constantbuffer cb1[12], immediateIndexed
dcl_constantbuffer cb5[5], immediateIndexed
dcl_constantbuffer cb2[5], immediateIndexed
dcl_input v0.xyz
dcl_input v1.xy
dcl_input v2.xy
dcl_input v3.xyz
dcl_input v4.xyz
dcl_output_siv o0.xyzw, position
dcl_output o1.xyzw
dcl_output o2.xyz
dcl_output o3.xyz
dcl_output o4.xyz
dcl_output o5.xyz
dcl_output o6.xyzw
dcl_output o7.xyzw
dcl_output o8.xyz
dcl_output o9.xyzw
dcl_output o10.xyzw
dcl_output o11.xyz
dcl_temps 5
mul r0.xyz, v0.yyyy, cb1[9].xyzx
mad r0.xyz, cb1[8].xyzx, v0.xxxx, r0.xyzx
mad r0.xyz, cb1[10].xyzx, v0.zzzz, r0.xyzx
add r0.xyz, r0.xyzx, cb1[11].xyzx
mul r1.xy, r0.xxxx, l(0.400000, 0.200000, 0.000000, 0.000000)
mad r1.xy, cb0[16].xxxx, l(15.000000, 5.000000, 0.000000, 0.000000), r1.xyxx
sincos r1.xy, null, r1.xyxx
mul r1.xy, r1.xyxx, |v3.zzzz|
mad r0.z, r1.x, l(3.000000), r0.z
mad r0.w, -r1.y, l(3.000000), r0.z
mul r1.xyzw, r0.yyyy, cb0[5].xyzw
mad r1.xyzw, cb0[4].xyzw, r0.xxxx, r1.xyzw
mad r1.xyzw, cb0[6].xyzw, r0.wwww, r1.xyzw
add r1.xyzw, r1.xyzw, cb0[7].xyzw
mul r2.xyzw, r1.yyyy, cb0[1].xyzw
mad r2.xyzw, cb0[0].xyzw, r1.xxxx, r2.xyzw
mad r2.xyzw, cb0[2].xyzw, r1.zzzz, r2.xyzw
mad r1.xyzw, cb0[3].xyzw, r1.wwww, r2.xyzw
mov o0.xyzw, r1.xyzw
mov o9.xyzw, r1.xyzw
mov o1.xy, v1.xyxx
mov o1.zw, v2.xxxy
mul r1.xyz, v3.yyyy, cb1[9].xyzx
mad r1.xyz, cb1[8].xyzx, v3.xxxx, r1.xyzx
mad r1.xyz, cb1[10].xyzx, v3.zzzz, r1.xyzx
dp3 r0.z, r1.xyzx, r1.xyzx
rsq r0.z, r0.z
mul o2.xyz, r0.zzzz, r1.xyzx
mul r1.xyz, v4.yyyy, cb1[9].xyzx
mad r1.xyz, cb1[8].xyzx, v4.xxxx, r1.xyzx
mad r1.xyz, cb1[10].xyzx, v4.zzzz, r1.xyzx
dp3 r0.z, r1.xyzx, r1.xyzx
rsq r0.z, r0.z
mul o3.xyz, r0.zzzz, r1.xyzx
mul r1.xyz, v3.yzxy, v4.zxyz
mad r1.xyz, v4.yzxy, v3.zxyz, -r1.xyzx
dp3 r0.z, v4.xyzx, v4.xyzx
add r0.z, r0.z, l(-2.000000)
mul r1.xyz, r0.zzzz, r1.xyzx
dp3 r0.z, r1.xyzx, r1.xyzx
rsq r0.z, r0.z
mul r1.xyz, r0.zzzz, r1.xyzx
mul r2.xyz, r1.yyyy, cb1[9].xyzx
mad r1.xyw, cb1[8].xyxz, r1.xxxx, r2.xyxz
mad r1.xyz, cb1[10].xyzx, r1.zzzz, r1.xywx
dp3 r0.z, r1.xyzx, r1.xyzx
rsq r0.z, r0.z
mul o4.xyz, r0.zzzz, r1.xyzx
add o5.xyz, -r0.xywx, cb0[17].xyzx
add r1.xyz, r0.xywx, -cb5[0].xyzx
mov o8.xyz, r0.xywx
dp3 r0.x, r1.xyzx, r1.xyzx
sqrt r0.x, r0.x
add r1.xyzw, -r0.xxxx, cb5[1].xyzw
lt r2.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000), r1.xyzw
lt r3.xyzw, r1.xyzw, l(0.000000, 0.000000, 0.000000, 0.000000)
iadd r2.xyzw, r3.xyzw, -r2.xyzw
itof r2.xyzw, r2.xyzw
add_sat r2.xyzw, r2.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
mul r3.xyzw, r1.wzyx, r2.wzyx
add r4.xyzw, r2.wzyx, l(-1.000000, -1.000000, -1.000000, -1.000000)
mad r3.xyzw, r4.xyzw, l(-1000000000.000000, -1000000000.000000, -1000000000.000000, -1000000000.000000), r3.xyzw
ge r4.xyzw, r3.zwxy, r3.wzyx
and r4.xyzw, r4.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
mul r2.xyzw, r2.xyzw, r4.xyzw
ge r4.xyzw, r3.yxwx, r3.wzyx
ge r3.xyzw, r3.xyzw, r3.wzyx
and r3.xyzw, r3.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
and r4.xyzw, r4.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
mul r2.xyzw, r2.xyzw, r4.xyzw
mul r2.xyzw, r3.xyzw, r2.xyzw
mul r0.x, cb5[0].w, cb2[0].x
div_sat r1.xyzw, r1.xyzw, r0.xxxx
add r1.xyzw, -r1.xyzw, l(1.000000, 0.000000, 1.000000, 0.000000)
dp4 r0.x, |r1.xyzw|, r2.xyzw
add r0.z, r0.y, -cb5[4].x
add r0.y, r0.y, -cb0[19].x
mul_sat r0.y, r0.y, cb0[19].z
mul_sat r0.z, r0.z, cb5[4].z
add r0.z, -r0.y, r0.z
mad o6.w, r0.x, r0.z, r0.y
add r0.yzw, -cb0[20].xxyz, cb5[3].xxyz
mad o6.xyz, r0.xxxx, r0.yzwy, cb0[20].xyzx
add r0.yzw, -cb0[25].xxyz, cb5[2].xxyz
mad o7.xyz, r0.xxxx, r0.yzwy, cb0[25].xyzx
mov o7.w, r0.x
mad r1.xyzw, cb0[16].xxxx, cb2[1].xyzw, v1.xyxy
mul o10.xyzw, r1.xyzw, cb2[2].xyzw
add r0.yzw, -cb2[3].xxyz, cb2[4].xxyz
mad o11.xyz, r0.xxxx, r0.yzwy, cb2[3].xyzx
ret
// Approximately 91 instruction slots used

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


1A3B9092.txt (DX9, unmodified):

//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
// float4 BumpScroll;
// float4 GSMorphExpanses;
// float4 GSMorphOrigin;
// float MorphBlendTime;
// float4 MorphFogColor;
// float3 MorphFogParam;
// float4 MorphMainLightColor;
// float4 Tiling;
// float4 g_EyePosition;
// float4 g_LinearDepthFogColor;
// float4 g_LinearDepthFogParams;
// float4x4 g_MatProj;
// float4x4 g_MatView;
// float4x4 g_MatWorld;
// float4 g_Time;
// float4 g_vMainLightColor;
//
//
// Registers:
//
// Name Reg Size
// ---------------------- ----- ----
// g_MatProj c0 4
// g_MatView c4 4
// g_Time c16 1
// g_EyePosition c17 1
// g_LinearDepthFogParams c19 1
// g_LinearDepthFogColor c20 1
// g_vMainLightColor c25 1
// g_MatWorld c40 4
// MorphBlendTime c55 1
// BumpScroll c56 1
// Tiling c57 1
// GSMorphOrigin c180 1
// GSMorphExpanses c181 1
// MorphMainLightColor c182 1
// MorphFogColor c183 1
// MorphFogParam c184 1
//

vs_3_0
def c8, 0.400000006, 0.200000003, 15, 5
def c9, 0.159154937, 0.25, 6.28318548, -3.14159274
def c10, -2.52398507e-007, 2.47609005e-005, -0.00138883968, 0.0416666418
def c11, -0.5, 1, 3, -1
def c12, -1e+009, 1, 0, 0
dcl_position v0
dcl_texcoord v1
dcl_texcoord1 v2
dcl_normal v3
dcl_texcoord2 v4
dcl_position o0
dcl_texcoord o1
dcl_texcoord1 o2.xyz
dcl_texcoord2 o3.xyz
dcl_texcoord3 o4
dcl_texcoord4 o5.xyz
dcl_texcoord5 o6
dcl_texcoord6 o7
dcl_texcoord7 o8.xyz
dcl_texcoord9 o9
mul r0.xyz, c41, v3.y
mad r0.xyz, c40, v3.x, r0
mad r0.xyz, c42, v3.z, r0
dp3 r0.w, r0, r0
rsq r0.w, r0.w
mul o2.xyz, r0.w, r0
mul r0.xyz, c41, v4.y
mad r0.xyz, c40, v4.x, r0
mad r0.xyz, c42, v4.z, r0
dp3 r0.w, r0, r0
rsq r0.w, r0.w
mul o3.xyz, r0.w, r0
mov r0.x, c16.x
mad r1, r0.x, c56, v1.xyxy
mul o9, r1, c57
mul r0.yzw, c41.xxyz, v0.y
mad r0.yzw, c40.xxyz, v0.x, r0
mad r0.yzw, c42.xxyz, v0.z, r0
add r1.xyz, r0.yzww, c43
mul r0.yz, r1.x, c8.xxyw
mad r0.xy, r0.x, c8.zwzw, r0.yzzw
mad r0.xy, r0, c9.x, c9.y
frc r0.xy, r0
mad r0.xy, r0, c9.z, c9.w
mul r0.xy, r0, r0
mad r0.zw, r0.xyxy, c10.x, c10.y
mad r0.zw, r0.xyxy, r0, c10.z
mad r0.zw, r0.xyxy, r0, c10.w
mad r0.zw, r0.xyxy, r0, c11.x
mad r0.xy, r0, r0.zwzw, c11.y
mul r0.xy, r0, v3_abs.z
mad r0.x, r0.x, c11.z, r1.z
mad r1.w, r0.y, -c11.z, r0.x
add o5.xyz, -r1.xyww, c17
add r0.xyz, r1.xyww, -c180
dp3 r0.x, r0, r0
rsq r0.x, r0.x
rcp r0.x, r0.x
add r0, -r0.x, c181
slt r2, -r0, r0
slt r3, r0, -r0
add r2, r2, -r3
add r2, r2, c11.y
min r2, r2, c11.y
mul r3, r0.wzyx, r2.wzyx
add r4, r2.wzyx, c11.w
mad r3, r4, c12.x, r3
sge r4, r3.zwxy, r3.wzyx
mul r2, r2, r4
sge r4, r3.yxwx, r3.wzyx
sge r3, r3, r3.wzyx
mul r2, r2, r4
mul r2, r3, r2
mov r3.w, c180.w
mul r1.z, r3.w, c55.x
rcp r1.z, r1.z
mul_sat r0, r0, r1.z
add r0, -r0, c12.yzyz
dp4 r0.x, r0_abs, r2
mov r2.xyz, c25
add r0.yzw, -r2.xxyz, c182.xxyz
mad o7.xyz, r0.x, r0.yzww, c25
mov r2.xyz, c20
add r0.yzw, -r2.xxyz, c183.xxyz
mad o6.xyz, r0.x, r0.yzww, c20
add r0.y, r1.y, -c184.x
mul_sat r0.y, r0.y, c184.z
add r0.z, r1.y, -c19.x
mul_sat r0.z, r0.z, c19.z
add r0.y, -r0.z, r0.y
mad o6.w, r0.x, r0.y, r0.z
mov o7.w, r0.x
mul r0, r1.y, c5
mad r0, c4, r1.x, r0
mov o8.xyz, r1.xyww
mad r0, c6, r1.w, r0
add r0, r0, c7
mul r1, r0.y, c1
mad r1, c0, r0.x, r1
mad r1, c2, r0.z, r1
mad r0, c3, r0.w, r1
mov o0, r0
mov o4, r0
mov o1.xy, v1
mov o1.zw, v2.xyxy

// approximately 85 instruction slots used


I tried to follow the guide here: https://forums.geforce.com/default/topic/513190/3d-vision/how-to-fix-disable-shaders-in-games-dll-guide-and-fixes-/post/3653617/#3653617

The most I could do in DX9 was disabling one of the effects of the surface by mistake when I tried to modify "o9". It's very possible that I attacked the incorrect texcoord. So... a little help, please? If I get the idea, I would be able to apply the same concept to Ys Origin (same water problem).

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#18
Posted 02/03/2016 10:14 PM   
Thanks for taking a look at this game. Try this: 1A3B9092.txt (DX9, edited)-- [code]// // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // Parameters: // // float4 BumpScroll; // float4 GSMorphExpanses; // float4 GSMorphOrigin; // float MorphBlendTime; // float4 MorphFogColor; // float3 MorphFogParam; // float4 MorphMainLightColor; // float4 Tiling; // float4 g_EyePosition; // float4 g_LinearDepthFogColor; // float4 g_LinearDepthFogParams; // float4x4 g_MatProj; // float4x4 g_MatView; // float4x4 g_MatWorld; // float4 g_Time; // float4 g_vMainLightColor; // // // Registers: // // Name Reg Size // ---------------------- ----- ---- // g_MatProj c0 4 // g_MatView c4 4 // g_Time c16 1 // g_EyePosition c17 1 // g_LinearDepthFogParams c19 1 // g_LinearDepthFogColor c20 1 // g_vMainLightColor c25 1 // g_MatWorld c40 4 // MorphBlendTime c55 1 // BumpScroll c56 1 // Tiling c57 1 // GSMorphOrigin c180 1 // GSMorphExpanses c181 1 // MorphMainLightColor c182 1 // MorphFogColor c183 1 // MorphFogParam c184 1 // vs_3_0 def c8, 0.400000006, 0.200000003, 15, 5 def c9, 0.159154937, 0.25, 6.28318548, -3.14159274 def c10, -2.52398507e-007, 2.47609005e-005, -0.00138883968, 0.0416666418 def c11, -0.5, 1, 3, -1 def c12, -1e+009, 1, 0, 0 def c247, 0, 0, 0.0625, 0 dcl_2d s0 dcl_position v0 dcl_texcoord v1 dcl_texcoord1 v2 dcl_normal v3 dcl_texcoord2 v4 dcl_position o0 dcl_texcoord o1 dcl_texcoord1 o2.xyz dcl_texcoord2 o3.xyz dcl_texcoord3 o4 dcl_texcoord4 o5.xyz dcl_texcoord5 o6 dcl_texcoord6 o7 dcl_texcoord7 o8.xyz dcl_texcoord9 o9 mul r0.xyz, c41, v3.y mad r0.xyz, c40, v3.x, r0 mad r0.xyz, c42, v3.z, r0 dp3 r0.w, r0, r0 rsq r0.w, r0.w mul o2.xyz, r0.w, r0 mul r0.xyz, c41, v4.y mad r0.xyz, c40, v4.x, r0 mad r0.xyz, c42, v4.z, r0 dp3 r0.w, r0, r0 rsq r0.w, r0.w mul o3.xyz, r0.w, r0 mov r0.x, c16.x mad r1, r0.x, c56, v1.xyxy mul o9, r1, c57 mul r0.yzw, c41.xxyz, v0.y mad r0.yzw, c40.xxyz, v0.x, r0 mad r0.yzw, c42.xxyz, v0.z, r0 add r1.xyz, r0.yzww, c43 mul r0.yz, r1.x, c8.xxyw mad r0.xy, r0.x, c8.zwzw, r0.yzzw mad r0.xy, r0, c9.x, c9.y frc r0.xy, r0 mad r0.xy, r0, c9.z, c9.w mul r0.xy, r0, r0 mad r0.zw, r0.xyxy, c10.x, c10.y mad r0.zw, r0.xyxy, r0, c10.z mad r0.zw, r0.xyxy, r0, c10.w mad r0.zw, r0.xyxy, r0, c11.x mad r0.xy, r0, r0.zwzw, c11.y mul r0.xy, r0, v3_abs.z mad r0.x, r0.x, c11.z, r1.z mad r1.w, r0.y, -c11.z, r0.x add o5.xyz, -r1.xyww, c17 add r0.xyz, r1.xyww, -c180 dp3 r0.x, r0, r0 rsq r0.x, r0.x rcp r0.x, r0.x add r0, -r0.x, c181 slt r2, -r0, r0 slt r3, r0, -r0 add r2, r2, -r3 add r2, r2, c11.y min r2, r2, c11.y mul r3, r0.wzyx, r2.wzyx add r4, r2.wzyx, c11.w mad r3, r4, c12.x, r3 sge r4, r3.zwxy, r3.wzyx mul r2, r2, r4 sge r4, r3.yxwx, r3.wzyx sge r3, r3, r3.wzyx mul r2, r2, r4 mul r2, r3, r2 mov r3.w, c180.w mul r1.z, r3.w, c55.x rcp r1.z, r1.z mul_sat r0, r0, r1.z add r0, -r0, c12.yzyz dp4 r0.x, r0_abs, r2 mov r2.xyz, c25 add r0.yzw, -r2.xxyz, c182.xxyz mad o7.xyz, r0.x, r0.yzww, c25 mov r2.xyz, c20 add r0.yzw, -r2.xxyz, c183.xxyz mad o6.xyz, r0.x, r0.yzww, c20 add r0.y, r1.y, -c184.x mul_sat r0.y, r0.y, c184.z add r0.z, r1.y, -c19.x mul_sat r0.z, r0.z, c19.z add r0.y, -r0.z, r0.y mad o6.w, r0.x, r0.y, r0.z mov o7.w, r0.x mul r0, r1.y, c5 mad r0, c4, r1.x, r0 mov o8.xyz, r1.xyww mad r0, c6, r1.w, r0 add r0, r0, c7 //g_MatProj-- c0 to c3 mul r1, r0.y, c1 mad r1, c0, r0.x, r1 mad r1, c2, r0.z, r1 mad r0, c3, r0.w, r1 mov o0, r0 //output position texldl r24, c247.z, s0 add r24.w, r0.w, -r24.y mad r0.x, r24.w, r24.x, r0.x mov o4, r0 //stereoized texcoord3 mov o1.xy, v1 mov o1.zw, v2.xyxy // approximately 85 instruction slots used [/code]
Thanks for taking a look at this game. Try this:

1A3B9092.txt (DX9, edited)--

//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// Parameters:
//
// float4 BumpScroll;
// float4 GSMorphExpanses;
// float4 GSMorphOrigin;
// float MorphBlendTime;
// float4 MorphFogColor;
// float3 MorphFogParam;
// float4 MorphMainLightColor;
// float4 Tiling;
// float4 g_EyePosition;
// float4 g_LinearDepthFogColor;
// float4 g_LinearDepthFogParams;
// float4x4 g_MatProj;
// float4x4 g_MatView;
// float4x4 g_MatWorld;
// float4 g_Time;
// float4 g_vMainLightColor;
//
//
// Registers:
//
// Name Reg Size
// ---------------------- ----- ----
// g_MatProj c0 4
// g_MatView c4 4
// g_Time c16 1
// g_EyePosition c17 1
// g_LinearDepthFogParams c19 1
// g_LinearDepthFogColor c20 1
// g_vMainLightColor c25 1
// g_MatWorld c40 4
// MorphBlendTime c55 1
// BumpScroll c56 1
// Tiling c57 1
// GSMorphOrigin c180 1
// GSMorphExpanses c181 1
// MorphMainLightColor c182 1
// MorphFogColor c183 1
// MorphFogParam c184 1
//

vs_3_0
def c8, 0.400000006, 0.200000003, 15, 5
def c9, 0.159154937, 0.25, 6.28318548, -3.14159274
def c10, -2.52398507e-007, 2.47609005e-005, -0.00138883968, 0.0416666418
def c11, -0.5, 1, 3, -1
def c12, -1e+009, 1, 0, 0
def c247, 0, 0, 0.0625, 0
dcl_2d s0
dcl_position v0
dcl_texcoord v1
dcl_texcoord1 v2
dcl_normal v3
dcl_texcoord2 v4
dcl_position o0
dcl_texcoord o1
dcl_texcoord1 o2.xyz
dcl_texcoord2 o3.xyz
dcl_texcoord3 o4
dcl_texcoord4 o5.xyz
dcl_texcoord5 o6
dcl_texcoord6 o7
dcl_texcoord7 o8.xyz
dcl_texcoord9 o9
mul r0.xyz, c41, v3.y
mad r0.xyz, c40, v3.x, r0
mad r0.xyz, c42, v3.z, r0
dp3 r0.w, r0, r0
rsq r0.w, r0.w
mul o2.xyz, r0.w, r0
mul r0.xyz, c41, v4.y
mad r0.xyz, c40, v4.x, r0
mad r0.xyz, c42, v4.z, r0
dp3 r0.w, r0, r0
rsq r0.w, r0.w
mul o3.xyz, r0.w, r0
mov r0.x, c16.x
mad r1, r0.x, c56, v1.xyxy
mul o9, r1, c57
mul r0.yzw, c41.xxyz, v0.y
mad r0.yzw, c40.xxyz, v0.x, r0
mad r0.yzw, c42.xxyz, v0.z, r0
add r1.xyz, r0.yzww, c43
mul r0.yz, r1.x, c8.xxyw
mad r0.xy, r0.x, c8.zwzw, r0.yzzw
mad r0.xy, r0, c9.x, c9.y
frc r0.xy, r0
mad r0.xy, r0, c9.z, c9.w
mul r0.xy, r0, r0
mad r0.zw, r0.xyxy, c10.x, c10.y
mad r0.zw, r0.xyxy, r0, c10.z
mad r0.zw, r0.xyxy, r0, c10.w
mad r0.zw, r0.xyxy, r0, c11.x
mad r0.xy, r0, r0.zwzw, c11.y
mul r0.xy, r0, v3_abs.z
mad r0.x, r0.x, c11.z, r1.z
mad r1.w, r0.y, -c11.z, r0.x
add o5.xyz, -r1.xyww, c17
add r0.xyz, r1.xyww, -c180
dp3 r0.x, r0, r0
rsq r0.x, r0.x
rcp r0.x, r0.x
add r0, -r0.x, c181
slt r2, -r0, r0
slt r3, r0, -r0
add r2, r2, -r3
add r2, r2, c11.y
min r2, r2, c11.y
mul r3, r0.wzyx, r2.wzyx
add r4, r2.wzyx, c11.w
mad r3, r4, c12.x, r3
sge r4, r3.zwxy, r3.wzyx
mul r2, r2, r4
sge r4, r3.yxwx, r3.wzyx
sge r3, r3, r3.wzyx
mul r2, r2, r4
mul r2, r3, r2
mov r3.w, c180.w
mul r1.z, r3.w, c55.x
rcp r1.z, r1.z
mul_sat r0, r0, r1.z
add r0, -r0, c12.yzyz
dp4 r0.x, r0_abs, r2
mov r2.xyz, c25
add r0.yzw, -r2.xxyz, c182.xxyz
mad o7.xyz, r0.x, r0.yzww, c25
mov r2.xyz, c20
add r0.yzw, -r2.xxyz, c183.xxyz
mad o6.xyz, r0.x, r0.yzww, c20
add r0.y, r1.y, -c184.x
mul_sat r0.y, r0.y, c184.z
add r0.z, r1.y, -c19.x
mul_sat r0.z, r0.z, c19.z
add r0.y, -r0.z, r0.y
mad o6.w, r0.x, r0.y, r0.z
mov o7.w, r0.x
mul r0, r1.y, c5
mad r0, c4, r1.x, r0
mov o8.xyz, r1.xyww
mad r0, c6, r1.w, r0
add r0, r0, c7

//g_MatProj-- c0 to c3
mul r1, r0.y, c1
mad r1, c0, r0.x, r1
mad r1, c2, r0.z, r1
mad r0, c3, r0.w, r1
mov o0, r0 //output position
texldl r24, c247.z, s0
add r24.w, r0.w, -r24.y
mad r0.x, r24.w, r24.x, r0.x
mov o4, r0 //stereoized texcoord3
mov o1.xy, v1
mov o1.zw, v2.xyxy

// approximately 85 instruction slots used

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

#19
Posted 02/04/2016 04:32 AM   
Thank you. I'll report back when I try it. 11 hours from now.
Thank you. I'll report back when I try it. 11 hours from now.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#20
Posted 02/04/2016 07:12 AM   
Yes, it works! Thank you so much, 4everAwake. I tried it in two levels that have water, and it's fixed. However, I don't know if the game needs anything else in DX9, because I have only played a few levels. Or if the sequel needs it too (even then, it may need a different shader name or content). So as I play the game and try to fix it in DX11, I'll be unlocking levels and will take a quick look in DX9 too just in case. I guess that in a few weeks I'll have everything figured out (but I can't promise anything). I'll ask for help in the 3Dmigoto thread if I need help with the DX11 version. Edit: I have uploaded here the DX9 fix, if someone wants to play it and/or check if everything is OK: https://www.dropbox.com/s/4g8paa4r9k4rzm5/Giana_Sisters_3DV_Fix.7z?dl=0
Yes, it works! Thank you so much, 4everAwake. I tried it in two levels that have water, and it's fixed. However, I don't know if the game needs anything else in DX9, because I have only played a few levels. Or if the sequel needs it too (even then, it may need a different shader name or content).

So as I play the game and try to fix it in DX11, I'll be unlocking levels and will take a quick look in DX9 too just in case.

I guess that in a few weeks I'll have everything figured out (but I can't promise anything). I'll ask for help in the 3Dmigoto thread if I need help with the DX11 version.

Edit: I have uploaded here the DX9 fix, if someone wants to play it and/or check if everything is OK:

https://www.dropbox.com/s/4g8paa4r9k4rzm5/Giana_Sisters_3DV_Fix.7z?dl=0

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#21
Posted 02/04/2016 06:23 PM   
Just got in mind that I had this one in my backlog, never tried it before though, Waauu what a great looking game, with really cool gameplay, it's easely compared to the Trine games !! So far just finished first level, your fix seemed flawless to me. Thanks a lot masterotaku :)
Just got in mind that I had this one in my backlog, never tried it before though,

Waauu what a great looking game, with really cool gameplay, it's easely compared to the Trine games !!

So far just finished first level, your fix seemed flawless to me.

Thanks a lot masterotaku :)

Win7 64bit Pro
CPU: 4790K 4.8 GHZ
GPU: Aurus 1080 TI 2.08 GHZ - 100% Watercooled !
Monitor: Asus PG278QR
And lots of ram and HD's ;)

#22
Posted 02/04/2016 07:32 PM   
Yah, if I ever get surround, I'm definitely going for another play through and using your fixes. It's crazy how much of the level that you can see. Thanks for looking at this masterotaku, this is one of the games I use to Demo 3D to friends. [quote="helifax"] Screenies (2D): [url=http://www.iforce.co.nz/View.aspx?i=wqcsl12v.2df.jpg][img]http://iforce.co.nz/i/wqcsl12v.2df.jpg[/img][/url] [url=http://www.iforce.co.nz/View.aspx?i=1zxekhvq.rwm.jpg][img]http://iforce.co.nz/i/1zxekhvq.rwm.jpg[/img][/url] [url=http://www.iforce.co.nz/View.aspx?i=dny2pph3.szs.jpg][img]http://iforce.co.nz/i/dny2pph3.szs.jpg[/img][/url] I hope you enjoy the screenshots;)) Best Regards, Helifax[/quote] [quote="helifax"]Finally had the time to finish the plugins for both games. You can download them at: [url=http://3dsurroundgaming.com/WSF.html]3D Surround Gallery -> My WSF Mods[/url] Happy gaming;)[/quote]
Yah, if I ever get surround, I'm definitely going for another play through and using your fixes. It's crazy how much of the level that you can see.

Thanks for looking at this masterotaku, this is one of the games I use to Demo 3D to friends.


helifax said:

Screenies (2D):

Image

Image

Image

I hope you enjoy the screenshots;))

Best Regards,
Helifax


helifax said:Finally had the time to finish the plugins for both games.
You can download them at: 3D Surround Gallery -> My WSF Mods

Happy gaming;)

#23
Posted 02/04/2016 07:56 PM   
[quote="Blacksmith56"]So far just finished first level, your fix seemed flawless to me. Thanks a lot masterotaku :) [/quote] The fix for DX9 (just one shader) is only for the water (the only thing needing a fix). And it's thanks to 4everAwake. I just dumped the shader and made the comparison with the fixed shader in DX11, and he did the fixing work. The difficult part comes now, in DX11.
Blacksmith56 said:So far just finished first level, your fix seemed flawless to me.

Thanks a lot masterotaku :)



The fix for DX9 (just one shader) is only for the water (the only thing needing a fix). And it's thanks to 4everAwake. I just dumped the shader and made the comparison with the fixed shader in DX11, and he did the fixing work.

The difficult part comes now, in DX11.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#24
Posted 02/04/2016 08:23 PM   
Sorry for the double post. There is a lot more water in the game than I expected (I'm at level 3-5. I have been playing it in DX9 first). I'm happy that 4everAwake fixed it. Here are some screenshots of the DX9 version (I'm not embedding them here because of the size): http://u.cubeupload.com/masterotaku/GSGameExeDX9001.jpg http://u.cubeupload.com/masterotaku/GSGameExeDX9002.jpg http://u.cubeupload.com/masterotaku/GSGameExeDX9005.jpg http://u.cubeupload.com/masterotaku/GSGameExeDX9012.jpg http://u.cubeupload.com/masterotaku/GSGameExeDX9005.jpg I can't imagine playing those sections of the game with the unfixed water. For now I haven't seen a single stereoscopic issue in DX9, and I'm near the end of the game.
Sorry for the double post. There is a lot more water in the game than I expected (I'm at level 3-5. I have been playing it in DX9 first). I'm happy that 4everAwake fixed it. Here are some screenshots of the DX9 version (I'm not embedding them here because of the size):


http://u.cubeupload.com/masterotaku/GSGameExeDX9001.jpg

http://u.cubeupload.com/masterotaku/GSGameExeDX9002.jpg

http://u.cubeupload.com/masterotaku/GSGameExeDX9005.jpg

http://u.cubeupload.com/masterotaku/GSGameExeDX9012.jpg

http://u.cubeupload.com/masterotaku/GSGameExeDX9005.jpg


I can't imagine playing those sections of the game with the unfixed water. For now I haven't seen a single stereoscopic issue in DX9, and I'm near the end of the game.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#25
Posted 02/05/2016 04:48 PM   
is there a way to move the HUD to 0 depth? Also, sometimes when the game character is in water, I get this kind of black outline around them. Often happens in unity engine games for me. Other than that, it looks great.
is there a way to move the HUD to 0 depth?

Also, sometimes when the game character is in water, I get this kind of black outline around them. Often happens in unity engine games for me. Other than that, it looks great.

#26
Posted 06/04/2016 02:16 AM   
[quote="ummester"]is there a way to move the HUD to 0 depth?[/quote] For the DX9 version, not right now. But it should be possible to do if I come back to modifying it. [quote="ummester"]Also, sometimes when the game character is in water, I get this kind of black outline around them. Often happens in unity engine games for me. Other than that, it looks great.[/quote] Screenshot, please. That didn't happen to me.
ummester said:is there a way to move the HUD to 0 depth?


For the DX9 version, not right now. But it should be possible to do if I come back to modifying it.

ummester said:Also, sometimes when the game character is in water, I get this kind of black outline around them. Often happens in unity engine games for me. Other than that, it looks great.


Screenshot, please. That didn't happen to me.

CPU: Intel Core i7 7700K @ 4.9GHz
Motherboard: Gigabyte Aorus GA-Z270X-Gaming 5
RAM: GSKILL Ripjaws Z 16GB 3866MHz CL18
GPU: Gainward Phoenix 1080 GLH
Monitor: Asus PG278QR
Speakers: Logitech Z506
Donations account: masterotakusuko@gmail.com

#27
Posted 06/12/2016 09:51 AM   
for some bizzare reason, I can't take screenshots - ALT-F1 does nothing for me. I have advanced ingame shortcuts enabled - perhaps it is because I am using an EDID override and displaying on 60Hz passive? The outline thing only happens in the area where the water is foggy (you know has some kind of smoke or fog effect in it) and by playing with depth and convergence I can make it almost impossible to see, so it's no biggy. It happened with a game called Rochard also but I found the Tridef profile for that one worked better, whereas Giana Sisters looks horrible with Tridef.
for some bizzare reason, I can't take screenshots - ALT-F1 does nothing for me. I have advanced ingame shortcuts enabled - perhaps it is because I am using an EDID override and displaying on 60Hz passive?

The outline thing only happens in the area where the water is foggy (you know has some kind of smoke or fog effect in it) and by playing with depth and convergence I can make it almost impossible to see, so it's no biggy. It happened with a game called Rochard also but I found the Tridef profile for that one worked better, whereas Giana Sisters looks horrible with Tridef.

#28
Posted 06/12/2016 11:01 AM   
I think that if you lock the registry for eye reversal, it disables the screenshot ability. Try this method. [quote="whyme466"]With respect to L/R eye swapping, I suggest using 3DVisionEyeSwapper app (Drejzik posting, see [url]http://www.3dvision-blog.com/forum/viewtopic.php?t=2206[/url]). Note that the eye swapping Registry mods also disable saving of 3D Vision convergence changes, while this small program supports normal 3D Vision convergence changes and saving.[/quote]
I think that if you lock the registry for eye reversal, it disables the screenshot ability.

Try this method.

whyme466 said:With respect to L/R eye swapping, I suggest using 3DVisionEyeSwapper app (Drejzik posting, see http://www.3dvision-blog.com/forum/viewtopic.php?t=2206). Note that the eye swapping Registry mods also disable saving of 3D Vision convergence changes, while this small program supports normal 3D Vision convergence changes and saving.

#29
Posted 06/12/2016 11:04 AM   
[quote="D-Man11"]Yes, if you lock the registry for eye reversal, it disables the screenshot ability.[/quote] Ah, well that explains it then. And if I unlock it, my screenshots will have that funny inside out look. I use 3DVisionEyeSwapper but I still have to lock system out of the registry because I've found the later Nvidia drivers cause 3dvisionEyeSwapper to crash for me. I'm on driver 365.19 ATM. I'll give it a shot - hang on.
D-Man11 said:Yes, if you lock the registry for eye reversal, it disables the screenshot ability.


Ah, well that explains it then. And if I unlock it, my screenshots will have that funny inside out look.

I use 3DVisionEyeSwapper but I still have to lock system out of the registry because I've found the later Nvidia drivers cause 3dvisionEyeSwapper to crash for me.

I'm on driver 365.19 ATM. I'll give it a shot - hang on.

#30
Posted 06/12/2016 11:08 AM   
  2 / 4    
Scroll To Top