Mad Max 3D Vision
  16 / 27    
OK, double checked these. 1) Decal on ground- fixed with another PS below. 2) Blue light from sniper+bloom on tail lights of car. Same shader, but it's notable that it varies with convergence. I can dial it up to match at 3.0 convergence. e9849e745227d124-vs_replace.txt 3) Lights on desert. Can't find it, might have been a night-time water thing. Fixed another decal shader, 40ee678464eb9621-ps_replace.txt: [code]// Decal near a transfer tank fortress -bo3b cbuffer GlobalConstants : register(b0) { float4 Globals[17] : packoffset(c0); float4 LightPositions[65] : packoffset(c17); float4 LightColors[65] : packoffset(c82); } cbuffer cbInstanceConsts : register(b1) { float4 InstanceConsts[15] : packoffset(c0); } SamplerState DepthMap_s : register(s0); SamplerState DiffuseAlpha_s : register(s1); SamplerState NormalMap_s : register(s2); SamplerState MPM_s : register(s3); SamplerState ExtraMask_s : register(s4); SamplerState SandColorMap_s : register(s6); Texture2D<float4> DepthMap : register(t0); Texture2D<float4> DiffuseAlpha : register(t1); Texture2D<float4> NormalMap : register(t2); Texture2D<float4> MPM : register(t3); Texture2D<float4> ExtraMask : register(t4); Texture2D<float4> SandColorMap : register(t6); Texture2D<float4> StereoParams : register(t125); Texture1D<float4> IniParams : register(t120); void main( float4 v0 : SV_Position0, float4 v1 : TEXCOORD0, noperspective float3 v2 : TEXCOORD1, // Decompiler bug out float4 o0 : SV_Target0, out float4 o1 : SV_Target1, out float4 o2 : SV_Target2, // Extra inputs from VS: matrix m : TEXCOORD2, matrix im : TEXCOORD6 ) { float4 r0,r1,r2,r3; uint4 bitmask, uiDest; float4 fDest; r0.xy = v1.xy / v1.ww; r0.x = DepthMap.Sample(DepthMap_s, r0.xy).x; r0.x = r0.x * InstanceConsts[8].z + InstanceConsts[8].w; r0.x = 1 / r0.x; // Multiplying by depth for view space coords? // Need to adjust before subtracting InstanceConsts[4] // r0.xyz = v2.xyz * r0.xxx + -InstanceConsts[4].xyz; r0.xyz = v2.xyz * r0.xxx; // Correct decal placement: float4 stereo = StereoParams.Load(0); float4 tmp = mul(float4(r0.xyz, 1), im); tmp.x -= stereo.x * (tmp.w - stereo.y); r0.xyz = mul(tmp, m) - InstanceConsts[4].xyz; r1.xy = v2.xz * r0.xx + Globals[4].xz; r1.xy = r1.xy * float2(3.05175781e-005,3.05175781e-005) + float2(0.5,0.5); r1.xyz = SandColorMap.Sample(SandColorMap_s, r1.xy).xyz; r1.xyz = r1.xyz * float3(4.69999981,4.69999981,4.69999981) + float3(-1,-1,-1); r1.xyz = InstanceConsts[5].www * r1.xyz + float3(1,1,1); r2.x = dot(InstanceConsts[13].xyz, r0.yzw); r2.y = dot(-InstanceConsts[11].xyz, r0.yzw); r2.z = dot(InstanceConsts[12].xyz, r0.yzw); r0.xyz = r2.xyz * InstanceConsts[5].yxz + float3(0.5,0.5,0.5); r2.xyz = r0.xyz < float3(0,0,0); r0.w = (int)r2.y | (int)r2.x; r0.w = (int)r2.z | (int)r0.w; if (r0.w != 0) discard; r2.xyz = float3(1,1,1) + -r0.xyz; r2.xyz = r2.xyz < float3(0,0,0); r0.w = (int)r2.y | (int)r2.x; r0.w = (int)r2.z | (int)r0.w; if (r0.w != 0) discard; r0.w = InstanceConsts[6].y * r0.z; r0.z = -InstanceConsts[6].x + r0.z; r1.w = 0 < r0.z; r0.z = -r0.z * InstanceConsts[6].z + 1; r0.z = saturate(r1.w ? r0.z : r0.w); r2.xy = r0.xy * InstanceConsts[14].zw + InstanceConsts[14].xy; r0.xy = r0.xy * InstanceConsts[7].xy + InstanceConsts[7].zw; r2.xyzw = ExtraMask.Sample(ExtraMask_s, r2.xy).xyzw; r0.w = 1 + -InstanceConsts[6].w; r0.w = r2.y * r0.w; r0.w = r2.w * InstanceConsts[6].w + r0.w; r3.xyzw = DiffuseAlpha.Sample(DiffuseAlpha_s, r0.xy).wxyz; r3.yzw = InstanceConsts[9].xyz * r3.yzw; r1.xyz = r3.yzw * r1.xyz; r0.w = r3.x * r0.w; r1.w = saturate(InstanceConsts[4].w); r0.w = r1.w * r0.w; r0.z = r0.w * r0.z; r0.z = InstanceConsts[9].w * r0.z; r3.xyz = saturate(InstanceConsts[10].xyz * r0.zzz); o0.w = r3.x; r2.xyz = r1.xyz * r2.xyz + -r1.xyz; o0.xyz = InstanceConsts[6].www * r2.xyz + r1.xyz; r1.xyz = NormalMap.Sample(NormalMap_s, r0.xy).xyz; r0.xy = MPM.Sample(MPM_s, r0.xy).yz; o2.yz = r0.xy; r0.xyz = r1.xyz * float3(2,2,2) + float3(-1,-1,-1); r1.xyz = InstanceConsts[11].xyz * r0.yyy; r0.xyw = r0.xxx * InstanceConsts[13].xyz + r1.xyz; r0.xyz = r0.zzz * InstanceConsts[12].xyz + r0.xyw; o1.xyz = r0.xyz * float3(0.5,0.5,0.5) + float3(0.5,0.5,0.5); o1.w = r3.y; o2.w = r3.z; o2.x = 0; return; } /*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // // Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111 // // using 3Dmigoto v1.2.1 on Wed Oct 07 23:34:05 2015 // // // Buffer Definitions: // // cbuffer GlobalConstants // { // // float4 Globals[17]; // Offset: 0 Size: 272 // float4 LightPositions[65]; // Offset: 272 Size: 1040 [unused] // float4 LightColors[65]; // Offset: 1312 Size: 1040 [unused] // // } // // cbuffer cbInstanceConsts // { // // float4 InstanceConsts[15]; // Offset: 0 Size: 240 // // } // // // Resource Bindings: // // Name Type Format Dim Slot Elements // ------------------------------ ---------- ------- ----------- ---- -------- // DepthMap sampler NA NA 0 1 // DiffuseAlpha sampler NA NA 1 1 // NormalMap sampler NA NA 2 1 // MPM sampler NA NA 3 1 // ExtraMask sampler NA NA 4 1 // SandColorMap sampler NA NA 6 1 // DepthMap texture float4 2d 0 1 // DiffuseAlpha texture float4 2d 1 1 // NormalMap texture float4 2d 2 1 // MPM texture float4 2d 3 1 // ExtraMask texture float4 2d 4 1 // SandColorMap texture float4 2d 6 1 // GlobalConstants cbuffer NA NA 0 1 // cbInstanceConsts cbuffer NA NA 1 1 // // // // Input signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Position 0 xyzw 0 POS float // TEXCOORD 0 xyzw 1 NONE float xy w // TEXCOORD 1 xyz 2 NONE float xyz // // // Output signature: // // Name Index Mask Register SysValue Format Used // -------------------- ----- ------ -------- -------- ------- ------ // SV_Target 0 xyzw 0 TARGET float xyzw // SV_Target 1 xyzw 1 TARGET float xyzw // SV_Target 2 xyzw 2 TARGET float xyzw // ps_5_0 dcl_globalFlags refactoringAllowed dcl_constantbuffer cb0[5], immediateIndexed dcl_constantbuffer cb1[15], immediateIndexed dcl_sampler s0, mode_default dcl_sampler s1, mode_default dcl_sampler s2, mode_default dcl_sampler s3, mode_default dcl_sampler s4, mode_default dcl_sampler s6, mode_default dcl_resource_texture2d (float,float,float,float) t0 dcl_resource_texture2d (float,float,float,float) t1 dcl_resource_texture2d (float,float,float,float) t2 dcl_resource_texture2d (float,float,float,float) t3 dcl_resource_texture2d (float,float,float,float) t4 dcl_resource_texture2d (float,float,float,float) t6 dcl_input_ps linear v1.xyw dcl_input_ps linear noperspective v2.xyz dcl_output o0.xyzw dcl_output o1.xyzw dcl_output o2.xyzw dcl_temps 4 div r0.xy, v1.xyxx, v1.wwww sample_indexable(texture2d)(float,float,float,float) r0.x, r0.xyxx, t0.xyzw, s0 mad r0.x, r0.x, cb1[8].z, cb1[8].w div r0.x, l(1.000000, 1.000000, 1.000000, 1.000000), r0.x mad r0.yzw, v2.xxyz, r0.xxxx, -cb1[4].xxyz mad r1.xy, v2.xzxx, r0.xxxx, cb0[4].xzxx mad r1.xy, r1.xyxx, l(0.000031, 0.000031, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000) sample_indexable(texture2d)(float,float,float,float) r1.xyz, r1.xyxx, t6.xyzw, s6 mad r1.xyz, r1.xyzx, l(4.700000, 4.700000, 4.700000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000) mad r1.xyz, cb1[5].wwww, r1.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000) dp3 r2.x, cb1[13].xyzx, r0.yzwy dp3 r2.y, -cb1[11].xyzx, r0.yzwy dp3 r2.z, cb1[12].xyzx, r0.yzwy mad r0.xyz, r2.xyzx, cb1[5].yxzy, l(0.500000, 0.500000, 0.500000, 0.000000) lt r2.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000) or r0.w, r2.y, r2.x or r0.w, r2.z, r0.w discard_nz r0.w add r2.xyz, -r0.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000) lt r2.xyz, r2.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000) or r0.w, r2.y, r2.x or r0.w, r2.z, r0.w discard_nz r0.w mul r0.w, r0.z, cb1[6].y add r0.z, r0.z, -cb1[6].x lt r1.w, l(0.000000), r0.z mad r0.z, -r0.z, cb1[6].z, l(1.000000) movc_sat r0.z, r1.w, r0.z, r0.w mad r2.xy, r0.xyxx, cb1[14].zwzz, cb1[14].xyxx mad r0.xy, r0.xyxx, cb1[7].xyxx, cb1[7].zwzz sample_indexable(texture2d)(float,float,float,float) r2.xyzw, r2.xyxx, t4.xyzw, s4 add r0.w, -cb1[6].w, l(1.000000) mul r0.w, r0.w, r2.y mad r0.w, r2.w, cb1[6].w, r0.w sample_indexable(texture2d)(float,float,float,float) r3.xyzw, r0.xyxx, t1.wxyz, s1 mul r3.yzw, r3.yyzw, cb1[9].xxyz mul r1.xyz, r1.xyzx, r3.yzwy mul r0.w, r0.w, r3.x mov_sat r1.w, cb1[4].w mul r0.w, r0.w, r1.w mul r0.z, r0.z, r0.w mul r0.z, r0.z, cb1[9].w mul_sat r3.xyz, r0.zzzz, cb1[10].xyzx mov o0.w, r3.x mad r2.xyz, r1.xyzx, r2.xyzx, -r1.xyzx mad o0.xyz, cb1[6].wwww, r2.xyzx, r1.xyzx sample_indexable(texture2d)(float,float,float,float) r1.xyz, r0.xyxx, t2.xyzw, s2 sample_indexable(texture2d)(float,float,float,float) r0.xy, r0.xyxx, t3.yzxw, s3 mov o2.yz, r0.xxyx mad r0.xyz, r1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000) mul r1.xyz, r0.yyyy, cb1[11].xyzx mad r0.xyw, r0.xxxx, cb1[13].xyxz, r1.xyxz mad r0.xyz, r0.zzzz, cb1[12].xyzx, r0.xywx mad o1.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000) mov o1.w, r3.y mov o2.w, r3.z mov o2.x, l(0) ret // Approximately 58 instruction slots used ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/ [/code]
OK, double checked these.

1) Decal on ground- fixed with another PS below.
2) Blue light from sniper+bloom on tail lights of car. Same shader, but it's notable that it varies with convergence. I can dial it up to match at 3.0 convergence. e9849e745227d124-vs_replace.txt
3) Lights on desert. Can't find it, might have been a night-time water thing.


Fixed another decal shader, 40ee678464eb9621-ps_replace.txt:

// Decal near a transfer tank fortress -bo3b

cbuffer GlobalConstants : register(b0)
{
float4 Globals[17] : packoffset(c0);
float4 LightPositions[65] : packoffset(c17);
float4 LightColors[65] : packoffset(c82);
}

cbuffer cbInstanceConsts : register(b1)
{
float4 InstanceConsts[15] : packoffset(c0);
}
SamplerState DepthMap_s : register(s0);
SamplerState DiffuseAlpha_s : register(s1);
SamplerState NormalMap_s : register(s2);
SamplerState MPM_s : register(s3);
SamplerState ExtraMask_s : register(s4);
SamplerState SandColorMap_s : register(s6);
Texture2D<float4> DepthMap : register(t0);
Texture2D<float4> DiffuseAlpha : register(t1);
Texture2D<float4> NormalMap : register(t2);
Texture2D<float4> MPM : register(t3);
Texture2D<float4> ExtraMask : register(t4);
Texture2D<float4> SandColorMap : register(t6);

Texture2D<float4> StereoParams : register(t125);
Texture1D<float4> IniParams : register(t120);

void main(
float4 v0 : SV_Position0,
float4 v1 : TEXCOORD0,
noperspective float3 v2 : TEXCOORD1, // Decompiler bug
out float4 o0 : SV_Target0,
out float4 o1 : SV_Target1,
out float4 o2 : SV_Target2,

// Extra inputs from VS:
matrix m : TEXCOORD2,
matrix im : TEXCOORD6

)
{
float4 r0,r1,r2,r3;
uint4 bitmask, uiDest;
float4 fDest;

r0.xy = v1.xy / v1.ww;
r0.x = DepthMap.Sample(DepthMap_s, r0.xy).x;
r0.x = r0.x * InstanceConsts[8].z + InstanceConsts[8].w;
r0.x = 1 / r0.x;

// Multiplying by depth for view space coords?
// Need to adjust before subtracting InstanceConsts[4]
// r0.xyz = v2.xyz * r0.xxx + -InstanceConsts[4].xyz;
r0.xyz = v2.xyz * r0.xxx;

// Correct decal placement:
float4 stereo = StereoParams.Load(0);
float4 tmp = mul(float4(r0.xyz, 1), im);
tmp.x -= stereo.x * (tmp.w - stereo.y);
r0.xyz = mul(tmp, m) - InstanceConsts[4].xyz;

r1.xy = v2.xz * r0.xx + Globals[4].xz;
r1.xy = r1.xy * float2(3.05175781e-005,3.05175781e-005) + float2(0.5,0.5);
r1.xyz = SandColorMap.Sample(SandColorMap_s, r1.xy).xyz;
r1.xyz = r1.xyz * float3(4.69999981,4.69999981,4.69999981) + float3(-1,-1,-1);
r1.xyz = InstanceConsts[5].www * r1.xyz + float3(1,1,1);
r2.x = dot(InstanceConsts[13].xyz, r0.yzw);
r2.y = dot(-InstanceConsts[11].xyz, r0.yzw);
r2.z = dot(InstanceConsts[12].xyz, r0.yzw);
r0.xyz = r2.xyz * InstanceConsts[5].yxz + float3(0.5,0.5,0.5);
r2.xyz = r0.xyz < float3(0,0,0);
r0.w = (int)r2.y | (int)r2.x;
r0.w = (int)r2.z | (int)r0.w;
if (r0.w != 0) discard;
r2.xyz = float3(1,1,1) + -r0.xyz;
r2.xyz = r2.xyz < float3(0,0,0);
r0.w = (int)r2.y | (int)r2.x;
r0.w = (int)r2.z | (int)r0.w;
if (r0.w != 0) discard;
r0.w = InstanceConsts[6].y * r0.z;
r0.z = -InstanceConsts[6].x + r0.z;
r1.w = 0 < r0.z;
r0.z = -r0.z * InstanceConsts[6].z + 1;
r0.z = saturate(r1.w ? r0.z : r0.w);
r2.xy = r0.xy * InstanceConsts[14].zw + InstanceConsts[14].xy;
r0.xy = r0.xy * InstanceConsts[7].xy + InstanceConsts[7].zw;
r2.xyzw = ExtraMask.Sample(ExtraMask_s, r2.xy).xyzw;
r0.w = 1 + -InstanceConsts[6].w;
r0.w = r2.y * r0.w;
r0.w = r2.w * InstanceConsts[6].w + r0.w;
r3.xyzw = DiffuseAlpha.Sample(DiffuseAlpha_s, r0.xy).wxyz;
r3.yzw = InstanceConsts[9].xyz * r3.yzw;
r1.xyz = r3.yzw * r1.xyz;
r0.w = r3.x * r0.w;
r1.w = saturate(InstanceConsts[4].w);
r0.w = r1.w * r0.w;
r0.z = r0.w * r0.z;
r0.z = InstanceConsts[9].w * r0.z;
r3.xyz = saturate(InstanceConsts[10].xyz * r0.zzz);
o0.w = r3.x;
r2.xyz = r1.xyz * r2.xyz + -r1.xyz;
o0.xyz = InstanceConsts[6].www * r2.xyz + r1.xyz;
r1.xyz = NormalMap.Sample(NormalMap_s, r0.xy).xyz;
r0.xy = MPM.Sample(MPM_s, r0.xy).yz;
o2.yz = r0.xy;
r0.xyz = r1.xyz * float3(2,2,2) + float3(-1,-1,-1);
r1.xyz = InstanceConsts[11].xyz * r0.yyy;
r0.xyw = r0.xxx * InstanceConsts[13].xyz + r1.xyz;
r0.xyz = r0.zzz * InstanceConsts[12].xyz + r0.xyw;
o1.xyz = r0.xyz * float3(0.5,0.5,0.5) + float3(0.5,0.5,0.5);
o1.w = r3.y;
o2.w = r3.z;
o2.x = 0;
return;
}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated by Microsoft (R) HLSL Shader Compiler 9.29.952.3111
//
// using 3Dmigoto v1.2.1 on Wed Oct 07 23:34:05 2015
//
//
// Buffer Definitions:
//
// cbuffer GlobalConstants
// {
//
// float4 Globals[17]; // Offset: 0 Size: 272
// float4 LightPositions[65]; // Offset: 272 Size: 1040 [unused]
// float4 LightColors[65]; // Offset: 1312 Size: 1040 [unused]
//
// }
//
// cbuffer cbInstanceConsts
// {
//
// float4 InstanceConsts[15]; // Offset: 0 Size: 240
//
// }
//
//
// Resource Bindings:
//
// Name Type Format Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// DepthMap sampler NA NA 0 1
// DiffuseAlpha sampler NA NA 1 1
// NormalMap sampler NA NA 2 1
// MPM sampler NA NA 3 1
// ExtraMask sampler NA NA 4 1
// SandColorMap sampler NA NA 6 1
// DepthMap texture float4 2d 0 1
// DiffuseAlpha texture float4 2d 1 1
// NormalMap texture float4 2d 2 1
// MPM texture float4 2d 3 1
// ExtraMask texture float4 2d 4 1
// SandColorMap texture float4 2d 6 1
// GlobalConstants cbuffer NA NA 0 1
// cbInstanceConsts cbuffer NA NA 1 1
//
//
//
// Input signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position 0 xyzw 0 POS float
// TEXCOORD 0 xyzw 1 NONE float xy w
// TEXCOORD 1 xyz 2 NONE float xyz
//
//
// Output signature:
//
// Name Index Mask Register SysValue Format Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target 0 xyzw 0 TARGET float xyzw
// SV_Target 1 xyzw 1 TARGET float xyzw
// SV_Target 2 xyzw 2 TARGET float xyzw
//
ps_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[5], immediateIndexed
dcl_constantbuffer cb1[15], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_sampler s2, mode_default
dcl_sampler s3, mode_default
dcl_sampler s4, mode_default
dcl_sampler s6, mode_default
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t1
dcl_resource_texture2d (float,float,float,float) t2
dcl_resource_texture2d (float,float,float,float) t3
dcl_resource_texture2d (float,float,float,float) t4
dcl_resource_texture2d (float,float,float,float) t6
dcl_input_ps linear v1.xyw
dcl_input_ps linear noperspective v2.xyz
dcl_output o0.xyzw
dcl_output o1.xyzw
dcl_output o2.xyzw
dcl_temps 4
div r0.xy, v1.xyxx, v1.wwww
sample_indexable(texture2d)(float,float,float,float) r0.x, r0.xyxx, t0.xyzw, s0
mad r0.x, r0.x, cb1[8].z, cb1[8].w
div r0.x, l(1.000000, 1.000000, 1.000000, 1.000000), r0.x
mad r0.yzw, v2.xxyz, r0.xxxx, -cb1[4].xxyz
mad r1.xy, v2.xzxx, r0.xxxx, cb0[4].xzxx
mad r1.xy, r1.xyxx, l(0.000031, 0.000031, 0.000000, 0.000000), l(0.500000, 0.500000, 0.000000, 0.000000)
sample_indexable(texture2d)(float,float,float,float) r1.xyz, r1.xyxx, t6.xyzw, s6
mad r1.xyz, r1.xyzx, l(4.700000, 4.700000, 4.700000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mad r1.xyz, cb1[5].wwww, r1.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
dp3 r2.x, cb1[13].xyzx, r0.yzwy
dp3 r2.y, -cb1[11].xyzx, r0.yzwy
dp3 r2.z, cb1[12].xyzx, r0.yzwy
mad r0.xyz, r2.xyzx, cb1[5].yxzy, l(0.500000, 0.500000, 0.500000, 0.000000)
lt r2.xyz, r0.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
or r0.w, r2.y, r2.x
or r0.w, r2.z, r0.w
discard_nz r0.w
add r2.xyz, -r0.xyzx, l(1.000000, 1.000000, 1.000000, 0.000000)
lt r2.xyz, r2.xyzx, l(0.000000, 0.000000, 0.000000, 0.000000)
or r0.w, r2.y, r2.x
or r0.w, r2.z, r0.w
discard_nz r0.w
mul r0.w, r0.z, cb1[6].y
add r0.z, r0.z, -cb1[6].x
lt r1.w, l(0.000000), r0.z
mad r0.z, -r0.z, cb1[6].z, l(1.000000)
movc_sat r0.z, r1.w, r0.z, r0.w
mad r2.xy, r0.xyxx, cb1[14].zwzz, cb1[14].xyxx
mad r0.xy, r0.xyxx, cb1[7].xyxx, cb1[7].zwzz
sample_indexable(texture2d)(float,float,float,float) r2.xyzw, r2.xyxx, t4.xyzw, s4
add r0.w, -cb1[6].w, l(1.000000)
mul r0.w, r0.w, r2.y
mad r0.w, r2.w, cb1[6].w, r0.w
sample_indexable(texture2d)(float,float,float,float) r3.xyzw, r0.xyxx, t1.wxyz, s1
mul r3.yzw, r3.yyzw, cb1[9].xxyz
mul r1.xyz, r1.xyzx, r3.yzwy
mul r0.w, r0.w, r3.x
mov_sat r1.w, cb1[4].w
mul r0.w, r0.w, r1.w
mul r0.z, r0.z, r0.w
mul r0.z, r0.z, cb1[9].w
mul_sat r3.xyz, r0.zzzz, cb1[10].xyzx
mov o0.w, r3.x
mad r2.xyz, r1.xyzx, r2.xyzx, -r1.xyzx
mad o0.xyz, cb1[6].wwww, r2.xyzx, r1.xyzx
sample_indexable(texture2d)(float,float,float,float) r1.xyz, r0.xyxx, t2.xyzw, s2
sample_indexable(texture2d)(float,float,float,float) r0.xy, r0.xyxx, t3.yzxw, s3
mov o2.yz, r0.xxyx
mad r0.xyz, r1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r1.xyz, r0.yyyy, cb1[11].xyzx
mad r0.xyw, r0.xxxx, cb1[13].xyxz, r1.xyxz
mad r0.xyz, r0.zzzz, cb1[12].xyzx, r0.xywx
mad o1.xyz, r0.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
mov o1.w, r3.y
mov o2.w, r3.z
mov o2.x, l(0)
ret
// Approximately 58 instruction slots used

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

Acer H5360 (1280x720@120Hz) - ASUS VG248QE with GSync mod - 3D Vision 1&2 - Driver 372.54
GTX 970 - i5-4670K@4.2GHz - 12GB RAM - Win7x64+evilKB2670838 - 4 Disk X25 RAID
SAGER NP9870-S - GTX 980 - i7-6700K - Win10 Pro 1607
Latest 3Dmigoto Release
Bo3b's School for ShaderHackers

Posted 10/08/2015 07:07 AM   
[quote="bo3b"]Fixed another decal shader, 40ee678464eb9621-ps_replace.txt:[/quote] That one didn't compile for me, I think there's a copy + paste issue, this makes it compile again: https://github.com/DarkStarSword/3d-fixes/commit/38f85226fcf86bd63201de8bd24a10cd739866ee
bo3b said:Fixed another decal shader, 40ee678464eb9621-ps_replace.txt:

That one didn't compile for me, I think there's a copy + paste issue, this makes it compile again:

https://github.com/DarkStarSword/3d-fixes/commit/38f85226fcf86bd63201de8bd24a10cd739866ee

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 10:25 AM   
I will add that decal shader. For the Blue Light from sniper, i fix that shader (works dynamics depending of the distance of the sniper)...i'm using 3.2 of convergence and is looking ok. I will double check. the fixing code is this, so this will works for any convergence value (maybe a SLI or driver issue?) [code]o0.x += stereo.x * (o0.w - stereo.y) / 2;[/code] The bloom in the same shader is render in one eye, and is not affected by the fixing code... i try a couple of things and the bloom is still render in one eye. i left that way :( The car light on desert i think i fix it in the last update (i add 4 lights shaders and one was some light in front of a car at night) Thanks!!
I will add that decal shader.

For the Blue Light from sniper, i fix that shader (works dynamics depending of the distance of the sniper)...i'm using 3.2 of convergence and is looking ok. I will double check. the fixing code is this, so this will works for any convergence value (maybe a SLI or driver issue?)

o0.x += stereo.x * (o0.w - stereo.y) / 2;


The bloom in the same shader is render in one eye, and is not affected by the fixing code... i try a couple of things and the bloom is still render in one eye. i left that way :(

The car light on desert i think i fix it in the last update (i add 4 lights shaders and one was some light in front of a car at night)

Thanks!!

MY WEB

Helix Mod - Making 3D Better

My 3D Screenshot Gallery

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

Posted 10/08/2015 10:43 AM   
I found the last point light I fixed broke several others... easily fixed again: https://github.com/DarkStarSword/3d-fixes/commit/a744bd45716309b054d812c5793c28fe73315371 I'm going to have a quick look at the bloom and see if I can make it work in both eyes.
I found the last point light I fixed broke several others... easily fixed again:

https://github.com/DarkStarSword/3d-fixes/commit/a744bd45716309b054d812c5793c28fe73315371


I'm going to have a quick look at the bloom and see if I can make it work in both eyes.

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 10:48 AM   
I used frame analysis to identify the problem with the bloom and fixed it via a TextureOverride: [code] [TextureOverrideBloom] ; Force downsampled bloom render target to stereo to fix mono bloom: ; <RenderTarget hash=b190ee3c type=Texture2D Width=90 Height=90 MipLevels=1 ArraySize=1 RawFormat=26 Format="R11G11B10_FLOAT" SampleDesc.Count=1 SampleDesc.Quality=0 Usage=0 BindFlags=40 CPUAccessFlags=0 MiscFlags=0></RenderTarget> Hash=b190ee3c StereoMode=1 [/code] [img]https://forums.geforce.com/cmd/default/download-comment-attachment/66362/[/img]
I used frame analysis to identify the problem with the bloom and fixed it via a TextureOverride:

[TextureOverrideBloom]
; Force downsampled bloom render target to stereo to fix mono bloom:
; <RenderTarget hash=b190ee3c type=Texture2D Width=90 Height=90 MipLevels=1 ArraySize=1 RawFormat=26 Format="R11G11B10_FLOAT" SampleDesc.Count=1 SampleDesc.Quality=0 Usage=0 BindFlags=40 CPUAccessFlags=0 MiscFlags=0></RenderTarget>
Hash=b190ee3c
StereoMode=1

Image

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 11:15 AM   
Anybody has the crosshair with sniper doubled?
Anybody has the crosshair with sniper doubled?

http://photos.3dvisionlive.com/chtiblue/album/530b52d4cb85770d6e000049/3Dvision with 49" Philips 49PUS7100 interlieved 3D (3840x2160) overide mode, GTX 1080 GFA2 EXOC, core i5 @4.3GHz, 16Gb@2130, windows 7&10 64bit, Dolby Atmos 5.1.4 Marantz 6010 AVR

Posted 10/08/2015 11:47 AM   
[quote="bo3b"]2) Blue light from sniper+bloom on tail lights of car. Same shader, but it's notable that it varies with convergence. I can dial it up to match at 3.0 convergence. e9849e745227d124-vs_replace.txt[/quote] I've had a bit of a look at this, and I can't find any naive way to fix it for all circumstances and have confirmed using frame analysis that it simply does not have access to the depth of the light source, nor the matrix of the light source to do the right thing. So, all we can do for now is kill it or move it to a fixed depth that looks good enough. As this is a common problem in a lot games I have been thinking about ways to solve it, and I've currently got a few ideas: 1. Inject the depth buffer into the shader, and use a variation of the experimental code I was playing with for the auto UI depth in the Witcher 3 to try to move it to roughly the correct position. This would probably work pretty well, but might cause the light to move to the wrong depth when another object is nearby on the depth buffer. This is potentially doable today, but I never resolved the reported memory leak in 3DMigoto using this feature, and have plans to scrap that code once I get the arbitrary resource copying working (which can do the same thing, but better). 2. Once I get the arbitrary resource copying working, copy the constant buffer containing the matrix of the light source to the light bloom shader and use that to determine the depth. This won't work reliably when there are multiple lights in the scene as you would get the matrix for whichever was drawn last, but might turn out to be ok. 3. ok, I have a really wacky idea I've been thinking about that has the potential to solve this 100% (maybe)... Similar to 2 in that we are copying the matrix from the shaders responsible for the light source, but collect all of them that are drawn in a frame, then in the bloom shader go through each of them and compare the X + Y coordinates to find the closest one to the bloom, then use the depth from that. I don't want to move too much of the logic to do this into 3DMigoto itself because the specifics will vary for each game, so I've been thinking about using an AppendStructuredBuffer to get the shaders to store the matrices - only problem is I'd need to do that once per instance, which would be easy from a vertex shader - but I can only use an append structured buffer from a SM5 pixel shader :( I could maybe inject a compute shader to do it though... hmmm.... For now this is just food for thought - the first one we could potentially try today (maybe, I haven't checked if the depth buffer is enabled when the bloom is drawn in this game), but was reported to have some memory leaks, so I wouldn't recommend it yet. The second will require me to finish the code I've been working on, and the third will require code I haven't started to write and am still not entirely sure how it would work.
bo3b said:2) Blue light from sniper+bloom on tail lights of car. Same shader, but it's notable that it varies with convergence. I can dial it up to match at 3.0 convergence. e9849e745227d124-vs_replace.txt

I've had a bit of a look at this, and I can't find any naive way to fix it for all circumstances and have confirmed using frame analysis that it simply does not have access to the depth of the light source, nor the matrix of the light source to do the right thing.

So, all we can do for now is kill it or move it to a fixed depth that looks good enough.

As this is a common problem in a lot games I have been thinking about ways to solve it, and I've currently got a few ideas:

1. Inject the depth buffer into the shader, and use a variation of the experimental code I was playing with for the auto UI depth in the Witcher 3 to try to move it to roughly the correct position. This would probably work pretty well, but might cause the light to move to the wrong depth when another object is nearby on the depth buffer. This is potentially doable today, but I never resolved the reported memory leak in 3DMigoto using this feature, and have plans to scrap that code once I get the arbitrary resource copying working (which can do the same thing, but better).

2. Once I get the arbitrary resource copying working, copy the constant buffer containing the matrix of the light source to the light bloom shader and use that to determine the depth. This won't work reliably when there are multiple lights in the scene as you would get the matrix for whichever was drawn last, but might turn out to be ok.

3. ok, I have a really wacky idea I've been thinking about that has the potential to solve this 100% (maybe)... Similar to 2 in that we are copying the matrix from the shaders responsible for the light source, but collect all of them that are drawn in a frame, then in the bloom shader go through each of them and compare the X + Y coordinates to find the closest one to the bloom, then use the depth from that. I don't want to move too much of the logic to do this into 3DMigoto itself because the specifics will vary for each game, so I've been thinking about using an AppendStructuredBuffer to get the shaders to store the matrices - only problem is I'd need to do that once per instance, which would be easy from a vertex shader - but I can only use an append structured buffer from a SM5 pixel shader :( I could maybe inject a compute shader to do it though... hmmm....

For now this is just food for thought - the first one we could potentially try today (maybe, I haven't checked if the depth buffer is enabled when the bloom is drawn in this game), but was reported to have some memory leaks, so I wouldn't recommend it yet. The second will require me to finish the code I've been working on, and the third will require code I haven't started to write and am still not entirely sure how it would work.

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 01:00 PM   
There's something weird going on with this bloom shader in general - the effect is *far* more pronounced than it is in 2D, which becomes apparent when separation is more than a few percent. It also gets clipped out in one eye depending on the camera angle... I suspect it's using the depth buffer to determine opacity and is being thrown out based on the fact the depth buffer has moved. I'm not entirely sure what is responsible for that yet. [quote="DarkStarSword"]1. Inject the depth buffer into the shader, and use a variation of the experimental code I was playing with for the auto UI depth in the Witcher 3 to try to move it to roughly the correct position. This would probably work pretty well, but might cause the light to move to the wrong depth when another object is nearby on the depth buffer. This is potentially doable today, but I never resolved the reported memory leak in 3DMigoto using this feature, and have plans to scrap that code once I get the arbitrary resource copying working (which can do the same thing, but better).[/quote] If you wanted to see what this looks like, my first impression is that the result is alright... but not perfect: [img]https://forums.geforce.com/cmd/default/download-comment-attachment/66365/[/img] As you can see, most of the bloom is now at the correct depth, but one of the blobs is too far forward thanks to Max' head being in the way on the depth buffer. This could potentially be improved if the arbitrary resource copying is going to do what I hope and allow access to the vertex buffer as a constant buffer so that the coordinates of other vertices can be looked up allowing us to find the center of the effect from any vertex, but it still wouldn't help entirely in cases like the above. It also affects the lens flare: [img]https://forums.geforce.com/cmd/default/download-comment-attachment/66366/[/img] If you wanted to try it out I've pushed the code to an experimental branch. It's the same code I was playing with in The Witcher 3 with only the near and far clipping planes adjusted (knew those would come in handy ;-): https://github.com/DarkStarSword/3d-fixes/commit/2e92c268147dcdef8808d7738f8e5e7a095dc857
There's something weird going on with this bloom shader in general - the effect is *far* more pronounced than it is in 2D, which becomes apparent when separation is more than a few percent. It also gets clipped out in one eye depending on the camera angle... I suspect it's using the depth buffer to determine opacity and is being thrown out based on the fact the depth buffer has moved. I'm not entirely sure what is responsible for that yet.

DarkStarSword said:1. Inject the depth buffer into the shader, and use a variation of the experimental code I was playing with for the auto UI depth in the Witcher 3 to try to move it to roughly the correct position. This would probably work pretty well, but might cause the light to move to the wrong depth when another object is nearby on the depth buffer. This is potentially doable today, but I never resolved the reported memory leak in 3DMigoto using this feature, and have plans to scrap that code once I get the arbitrary resource copying working (which can do the same thing, but better).

If you wanted to see what this looks like, my first impression is that the result is alright... but not perfect:

Image

As you can see, most of the bloom is now at the correct depth, but one of the blobs is too far forward thanks to Max' head being in the way on the depth buffer. This could potentially be improved if the arbitrary resource copying is going to do what I hope and allow access to the vertex buffer as a constant buffer so that the coordinates of other vertices can be looked up allowing us to find the center of the effect from any vertex, but it still wouldn't help entirely in cases like the above.

It also affects the lens flare:

Image

If you wanted to try it out I've pushed the code to an experimental branch. It's the same code I was playing with in The Witcher 3 with only the near and far clipping planes adjusted (knew those would come in handy ;-):
https://github.com/DarkStarSword/3d-fixes/commit/2e92c268147dcdef8808d7738f8e5e7a095dc857

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 01:54 PM   
ok, the depth IS available... but it's in the pixel shader and it needs to be scaled. I should be able to fix the bloom disappearing incorrectly at least.
ok, the depth IS available... but it's in the pixel shader and it needs to be scaled. I should be able to fix the bloom disappearing incorrectly at least.

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 02:50 PM   
ok, this fixes the opacity of the bloom & lens flare, and stops them from being overly exaggerated or only showing in one eye: https://github.com/DarkStarSword/3d-fixes/commit/a0f71fccfda105ab6a4a1d9b71534c5d68ae977c [img]https://forums.geforce.com/cmd/default/download-comment-attachment/66370/[/img] Their position still needs to be corrected, either using the code I posted above, or a static adjustment. This discovery does show that it will be possible to fix these accurately once I finish that whole resource copy feature in 3DMigoto I keep talking about... I'll try to find some time to work on it this weekend, but I can't guarantee when it will be ready so for now I'd suggest getting the fix out without that and we can update it later. @bo3b there's a weird decompiler bug I hit on those shaders you might like to take a look at.
ok, this fixes the opacity of the bloom & lens flare, and stops them from being overly exaggerated or only showing in one eye:
https://github.com/DarkStarSword/3d-fixes/commit/a0f71fccfda105ab6a4a1d9b71534c5d68ae977c

Image

Their position still needs to be corrected, either using the code I posted above, or a static adjustment. This discovery does show that it will be possible to fix these accurately once I finish that whole resource copy feature in 3DMigoto I keep talking about... I'll try to find some time to work on it this weekend, but I can't guarantee when it will be ready so for now I'd suggest getting the fix out without that and we can update it later.

@bo3b there's a weird decompiler bug I hit on those shaders you might like to take a look at.

2x Geforce GTX 980 in SLI provided by NVIDIA, i7 6700K 4GHz CPU, Asus 27" VG278HE 144Hz 3D Monitor, BenQ W1070 3D Projector, 120" Elite Screens YardMaster 2, 32GB Corsair DDR4 3200MHz RAM, Samsung 850 EVO 500G SSD, 4x750GB HDD in RAID5, Gigabyte Z170X-Gaming 7 Motherboard, Corsair Obsidian 750D Airflow Edition Case, Corsair RM850i PSU, HTC Vive, Win 10 64bit

Alienware M17x R4 w/ built in 3D, Intel i7 3740QM, GTX 680m 2GB, 16GB DDR3 1600MHz RAM, Win7 64bit, 1TB SSD, 1TB HDD, 750GB HDD

Pre-release 3D fixes, shadertool.py and other goodies: http://github.com/DarkStarSword/3d-fixes
Support me on Patreon: https://www.patreon.com/DarkStarSword or PayPal: https://www.paypal.me/DarkStarSword

Posted 10/08/2015 03:23 PM   
[quote="chtiblue"]Anybody has the crosshair with sniper doubled?[/quote] yop. Same here. Use to be alright but suddenly crosshair became 2D or something.
chtiblue said:Anybody has the crosshair with sniper doubled?

yop. Same here. Use to be alright but suddenly crosshair became 2D or something.
[quote="SKAUT"][quote="chtiblue"]Anybody has the crosshair with sniper doubled?[/quote] yop. Same here. Use to be alright but suddenly crosshair became 2D or something.[/quote] Can you upload a screenshot?
SKAUT said:
chtiblue said:Anybody has the crosshair with sniper doubled?

yop. Same here. Use to be alright but suddenly crosshair became 2D or something.


Can you upload a screenshot?

MY WEB

Helix Mod - Making 3D Better

My 3D Screenshot Gallery

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

Posted 10/08/2015 04:26 PM   
Here are the screenshots of Sniper and Thunderpoon crosshair - but now I know why they are 2D. They must be the same shader group as UI. When I was using "P" to adjust target marks then I`ve been changing this to some zero point and that was like 2D. All I have to do is to adjust the Crosshair each time I`m using one of the weapons.
Here are the screenshots of Sniper and Thunderpoon crosshair - but now I know why they are 2D. They must be the same shader group as UI. When I was using "P" to adjust target marks then I`ve been changing this to some zero point and that was like 2D.
All I have to do is to adjust the Crosshair each time I`m using one of the weapons.
Nop. I`ve been able to do it in some areas, like next to Stronghold but close to camps it just doesn`t work. Stays 2D no matter what.
Nop. I`ve been able to do it in some areas, like next to Stronghold but close to camps it just doesn`t work. Stays 2D no matter what.
Attachments

MadMax14_50.jps

SKAUT...is 2D because you have Target icons in 2D, if you press "P" you will noticed that Target icons and crosshair cycle through different depth. You can see it in this picture: [img]https://forums.geforce.com/cmd/default/download-comment-attachment/66373/[/img] I can separate the target icons from crosshair in 2 different presets.... i will take a look tonight.
SKAUT...is 2D because you have Target icons in 2D, if you press "P" you will noticed that Target icons and crosshair cycle through different depth.

You can see it in this picture:
Image


I can separate the target icons from crosshair in 2 different presets.... i will take a look tonight.

MY WEB

Helix Mod - Making 3D Better

My 3D Screenshot Gallery

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

Posted 10/08/2015 05:10 PM   
  16 / 27    
Scroll To Top