Recent logs - D3D error in shader compilation: info: %s / code: %s

To see your stuff show here, enable Compatibility Server Reports in PPSSPP.

Click on a version, game, or report message to show similar entries. Hover over version to see platform info, and hover over a game title to see region and version info.

Game title Version Latest Report Message
Innocent Life: A Futuristic Harvest Moon® v1.10.3 2021-10-13 D3D error in shader compilation: info: C:\Games\Emulators\Sony\PSP\[email protected](113,16-57): error X4505: maximum temp register index exceeded C:\Games\Emulators\Sony\PSP\[email protected](113,12-71): error X4505: maximum temp register index exceeded C:\Games\Emulators\Sony\PSP\[email protected](135,16-57): error X4505: maximum temp register index exceeded C:\Games\Emulators\Sony\PSP\[email protected](135,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightdir3 : register(c31); float4 u_lightangle_spotCoef3 : register(c39); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.
Pursuit Force™: Extreme Justice v1.10.3 2021-10-05 D3D error in shader compilation: info: C:\Users\MARCIN\Desktop\[email protected](97,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; _col[0] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; _col[1] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; _col[2] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; _col[3] = tess_data[index].col; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; _col[4] = tess_data[index].col; index =
ぐるみん v1.4.2-425-g7a7ccee5e 2021-09-05 D3D error in shader compilation: info: C:\Program Files\5funGameHall\memory(14,55): error X3004: undeclared identifier 'u_proj_through' C:\Program Files\5funGameHall\memory(14,21): error X3013: 'mul': intrinsic function does not take 2 parameters C:\Program Files\5funGameHall\memory(14,21): error X3013: Possible intrinsic functions are: C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(float, float) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(float, floatK) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(float, floatLxK) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatM, float) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatM, floatM) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatM, floatMxK) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatNxM, float) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatNxM, floatM) C:\Program Files\5funGameHall\memory(14,21): error X3013: mul(floatNxM, floatMxK) / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); struct VS_IN { float4 position : POSITION; float4 color0 : COLOR0; }; struct VS_OUT { float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; Out.v_color0 = In.color0; Out.gl_Position = mul(float4(In.position.xyz, 1.0), u_proj_through); return Out; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(6,16): error X3018: invalid subscript 'pixelPos' / code: struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = p * t; float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = p * t; float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = p * t; float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = p * t; float z = In.pixelPos.z; z = (floor((z * 262140.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 262140.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-29 D3D error in shader compilation: info: C:\Windows\system32\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-29 D3D error in shader compilation: info: C:\Windows\system32\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-29 D3D error in shader compilation: info: C:\Windows\system32\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
FIFA STREET 2 v1.11.3 2021-08-26 D3D error in shader compilation: info: out of memory during compilation / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define uvec3 uint3 #define uvec4 uint4 #define ivec3 int3 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) float3(x, x, x) #define mix lerp #define lowp #define mediump #define highp #define mod(x, y) fmod(x, y) #define DISCARD clip(-1) #define DISCARD_BELOW(x) clip(x) sampler tex : register(s0); vec4 u_alphacolorref : register(c1); vec4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { vec3 v_texcoord: TEXCOORD0; vec4 v_color0: COLOR0; }; vec4 main( PS_IN In ) : COLOR { vec4 target; vec4 v_color0 = In.v_color0; vec3 v_texcoord = In.v_texcoord; vec4 t = tex2D(tex, v_texcoord.xy).bgra; vec4 p = v_color0; vec4 v = vec4(t.rgb * p.rgb, p.a); if (roundAndScaleTo255f(v.a) <= u_alphacolorref.a) v.a = 0.0; target = v; return target; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(14,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy).bgra; float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(6,16): error X3018: invalid subscript 'pixelPos' / code: struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(clamp(In.v_texcoord.x, u_texclamp.z, u_texclamp.x - u_texclamp.z), clamp(In.v_texcoord.y, u_texclamp.w, u_texclamp.y - u_texclamp.w)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-25 D3D error in shader compilation: info: C:\Windows\system32\memory(6,16): error X3018: invalid subscript 'pixelPos' / code: struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; float z = In.pixelPos.z; z = (1.0/65535.0) * floor(z * 65535.0); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-23 D3D error in shader compilation: info: D:\5funGameHall\memory(12,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_texclamp : register(c8); struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float2 fixedcoord = float2(fmod(In.v_texcoord.x, u_texclamp.x), fmod(In.v_texcoord.y, u_texclamp.y)); float4 t = tex2D(tex, fixedcoord.xy); float4 p = In.v_color0; float4 v = p * t; float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(14,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy).bgra; float4 p = In.v_color0; float4 v = p * t; clip(v.a - 0.002); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-08-23 D3D error in shader compilation: info: D:\5funGameHall\memory(14,16): error X3018: invalid subscript 'pixelPos' / code: sampler tex : register(s0); float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float3 v_texcoord: TEXCOORD0; float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 t = tex2D(tex, In.v_texcoord.xy).bgra; float4 p = In.v_color0; float4 v = float4(t.rgb * p.rgb, p.a); clip(v.a - 0.002); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
Zill O'll ~infinite plus~ v1.4.2-425-g7a7ccee5e 2021-09-04 D3D error in shader compilation: info: D:\5funGameHall\memory(10,16): error X3018: invalid subscript 'pixelPos' / code: float4 u_alphacolorref : register(c1); float4 u_alphacolormask : register(c2); float roundAndScaleTo255f(float x) { return floor(x * 255.0f + 0.5f); } struct PS_IN { float4 v_color0: COLOR0; }; float4 main( PS_IN In ) : COLOR { float4 v = In.v_color0 ; if (roundAndScaleTo255f(v.a) < u_alphacolorref.a) clip(-1); float z = In.pixelPos.z; z = (floor((z * 16776960.000000) - (1.0 / 2.0)) + (1.0 / 2.0)) * (1.0 / 16776960.000000); outfragment.depth = z; return v; }
GODS EATER BURST v1.10.3 2021-08-21 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data
GODS EATER BURST v1.10.3 2021-08-18 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data
GODS EATER BURST v1.10.3 2021-08-18 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data
GODS EATER BURST v1.10.3 2021-08-16 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data
GODS EATER BURST v1.10.3 2021-08-14 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](97,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_po
GODS EATER BURST v1.10.3 2021-08-14 D3D error in shader compilation: info: C:\Users\username\Documents\Emulators\[email protected](97,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z); int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; _col[0] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; _col[1] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; _col[2] = tess_data[index].col; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; _col[3] = tess_data[index].col; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; _col[4] = tess_data[inde
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-08-08 D3D error in shader compilation: info: F:\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-08-07 D3D error in shader compilation: info: F:\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-08-07 D3D error in shader compilation: info: F:\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.
EA SPORTS™ FIGHT NIGHT Round 3 v1.11.3 2021-08-07 D3D error in shader compilation: info: F:\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-08-07 D3D error in shader compilation: info: F:\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,16-55): error X4505: maximum temp register index exceeded F:\PPSSPP\[email protected](159,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-07-22 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-07-04 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-07-01 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-06-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-06-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-06-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-06-16 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-06-16 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
BOMBERMAN v1.9.3 2021-06-12 D3D error in shader compilation: info: C:\Users\yoney\Desktop\ppsspp_win\[email protected](133,16-57): error X4505: maximum temp register index exceeded C:\Users\yoney\Desktop\ppsspp_win\[email protected](133,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightdir3 : register(c31); float4 u_lightangle_spotCoef3 : register(c39); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y == 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 :
BOMBERMAN v1.9.3 2021-06-08 D3D error in shader compilation: info: C:\Users\yoney\Desktop\ppsspp_win\[email protected](133,16-57): error X4505: maximum temp register index exceeded C:\Users\yoney\Desktop\ppsspp_win\[email protected](133,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightdir3 : register(c31); float4 u_lightangle_spotCoef3 : register(c39); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y == 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 :
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-05-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](125,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](125,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-05-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](123,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](123,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /
DRAGON BALL SUPER TORNEO DEL PODER FINAL v1.10.3 2021-05-12 D3D error in shader compilation: info: C:\Users\POSITIVO\Documents\ppsspp_win\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[
グランナイツヒストリー v1.8.0 2021-05-09 D3D error in shader compilation: info: Recursos insuficientes en el sistema para completar el servicio solicitado. / code: #pragma warning( disable : 3571 ) float4x4 u_proj_through : register(c4); struct VS_IN { float4 position : POSITION; float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; Out.v_texcoord = float3(In.texcoord, 1.0); Out.v_color0 = In.color0; float4 outPos = mul(float4(In.position.xyz, 1.0), u_proj_through); Out.gl_Position = outPos; return Out; }
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-04-27 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](123,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](123,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /
Rock Band Unplugged™ v1.11.3 2021-04-20 D3D error in shader compilation: info: D:\programy\PPSSPP\[email protected](132,16-55): error X4505: maximum temp register index exceeded D:\programy\PPSSPP\[email protected](132,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot,
TEKKEN 6 v1.11.3 2021-04-20 D3D error in shader compilation: info: C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, dis
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-04-20 D3D error in shader compilation: info: C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, dis
はじめの一歩 PORTABLE VICTORIOUS SPIRITS v1.11.3 2021-04-20 D3D error in shader compilation: info: C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,16-55): error X4505: maximum temp register index exceeded C:\Users\pc\Downloads\PPSSPP\PPSSPP\[email protected](137,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightdir0 : register(c28); vec4 u_lightangle_spotCoef0 : register(c36); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir0) == 0.0 ? 0.0 : dot(normalize(u_lightdir0), toLight); if (angle >= u_lightangle_spotCoef0.x) { lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef0.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef0.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, dis
GTA: Liberty City Stories v1.11.3 2021-04-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](126,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](126,12-69): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](148,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](148,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else {
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-04-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](126,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](126,12-69): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](148,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](148,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightatt3 : register(c35); vec3 u_lightdir3 : register(c31); vec4 u_lightangle_spotCoef3 : register(c39); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else {
Resistance: Retribution™ v1.9.3 2021-04-15 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](121,16-57): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](121,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightdir3 : register(c31); float4 u_lightangle_spotCoef3 : register(c39); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, float3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecu
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-04-14 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](125,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](125,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-04-11 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-04-10 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-04-10 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-04-10 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-04-10 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](123,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](123,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-04-01 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](123,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](123,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /
Rock Band Unplugged™ v1.11.3 2021-04-01 D3D error in shader compilation: info: F:\BACK UP (2021)\eby15\Desktop\PSP EMULATOR\ppsspp_win\PSP\[email protected](120,16-55): error X4505: maximum temp register index exceeded F:\BACK UP (2021)\eby15\Desktop\PSP EMULATOR\ppsspp_win\PSP\[email protected](120,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec3 u_lightpos0 : register(c24); vec3 u_lightatt0 : register(c32); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec4 color0 : COLOR0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec4 color0 = In.color0; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt0, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient0 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * color0.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(
GTA: Liberty City Stories v1.11.3 2021-03-31 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](90,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](90,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef2.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) {
GTA: Liberty City Stories v1.11.3 2021-03-31 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](94,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](94,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-03-31 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](94,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](94,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-03-31 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](90,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](90,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef2.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef2.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) {
Grand Theft Auto: Vice City Stories v1.11.3 2021-03-29 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](125,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](125,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_
Grand Theft Auto®: Chinatown Wars™ v1.11.3 2021-03-29 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](125,16-55): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](125,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_
GODS EATER BURST v1.10.3 2021-03-25 D3D error in shader compilation: info: C:\Users\animax\Downloads\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; _tex[0] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; _tex[1] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; _tex[2] = tess_data[index].tex; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; _tex[3] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; _tex[4] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; _tex[5] = tess_data[index].tex; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; _tex[
Grand Theft Auto: Chinatown Wars v1.10.3 2021-03-21 D3D error in shader compilation: info: C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,16-57): error X4505: maximum temp register index exceeded C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightat
METAL GEAR SOLID PEACE WALKER v1.10.3 2021-03-21 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](108,16-57): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](108,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, float3(1.0,
Grand Theft Auto®: Chinatown Wars™ v1.10.3 2021-03-21 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](108,16-57): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](108,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightatt2, float3(1.0,
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-03-17 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; i
Resistance: Retribution™ v1.9.3 2021-03-14 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](121,16-57): error X4505: maximum temp register index exceeded C:\Program Files\PPSSPP\[email protected](121,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightdir3 : register(c31); float4 u_lightangle_spotCoef3 : register(c39); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); lightScale = clamp(1.0 / dot(u_lightatt2, float3(1.0, distance, distance*distance)), 0.0, 1.0); diffuse = (u_lightdiffuse2 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a == 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecu
ソードアート・オンライン -インフィニティ・モーメント- v1.11.2 2021-03-13 D3D error in shader compilation: info: out of memory during compilation / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec4 position : POSITION; vec2 texcoord : TEXCOORD0; vec4 color0 : COLOR0; vec3 color1 : COLOR1; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec4 color0 = In.color0; vec3 color1 = In.color1; vec4 position = In.position; Out.v_texcoord = vec3(texcoord, 1.0); Out.v_color0 = color0; Out.v_color1 = color1; vec4 outPos = mul(u_proj, vec4(position.xyz, 1.0)); Out.gl_Position = outPos; return Out; }
ソードアート・オンライン -インフィニティ・モーメント- v1.11.2 2021-03-13 D3D error in shader compilation: info: out of memory during compilation / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec4 u_ambient : register(c19); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec4 color0 : COLOR0; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec4 color0 = In.color0; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = vec3(0.0, 0.0, 1.0); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * color0 + vec4(u_matemissive, 0.0); mediump float ldot; Out.v_color0 = clamp(lightSum0, 0.0, 1.0); Out.v_color1 = splat3(0.0); Out.v_texcoord = vec3(texcoord.xy * u_uvscaleoffset.xy, 0.0); Out.gl_Position = outPos; return Out; }
Grand Theft Auto: Chinatown Wars v1.10.3 2021-03-12 D3D error in shader compilation: info: C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,16-57): error X4505: maximum temp register index exceeded C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightat
Grand Theft Auto: Chinatown Wars v1.10.3 2021-03-12 D3D error in shader compilation: info: C:\Users\King Saad\Downloads\ppsspp_win\[email protected](110,16-57): error X4505: maximum temp register index exceeded C:\Users\King Saad\Downloads\ppsspp_win\[email protected](110,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float2 u_fogcoef : register(c18); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lig
Grand Theft Auto: Chinatown Wars v1.10.3 2021-03-12 D3D error in shader compilation: info: C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,16-57): error X4505: maximum temp register index exceeded C:\Users\King Saad\Downloads\ppsspp_win\[email protected](108,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { lightScale = clamp(1.0 / dot(u_lightat
Grand Theft Auto: Chinatown Wars v1.10.3 2021-03-12 D3D error in shader compilation: info: C:\Users\King Saad\Downloads\ppsspp_win\[email protected](109,16-57): error X4505: maximum temp register index exceeded C:\Users\King Saad\Downloads\ppsspp_win\[email protected](109,12-71): error X4505: maximum temp register index exceeded / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float3 u_lightpos0 : register(c24); float3 u_lightambient0 : register(c48); float3 u_lightdiffuse0 : register(c40); float3 u_lightspecular0 : register(c44); float3 u_lightpos1 : register(c25); float3 u_lightatt1 : register(c33); float3 u_lightdir1 : register(c29); float4 u_lightangle_spotCoef1 : register(c37); float3 u_lightambient1 : register(c49); float3 u_lightdiffuse1 : register(c41); float3 u_lightspecular1 : register(c45); float3 u_lightpos2 : register(c26); float3 u_lightatt2 : register(c34); float3 u_lightdir2 : register(c30); float4 u_lightangle_spotCoef2 : register(c38); float3 u_lightambient2 : register(c50); float3 u_lightdiffuse2 : register(c42); float3 u_lightspecular2 : register(c46); float3 u_lightpos3 : register(c27); float3 u_lightatt3 : register(c35); float3 u_lightambient3 : register(c51); float3 u_lightdiffuse3 : register(c43); float3 u_lightspecular3 : register(c47); float4 u_ambient : register(c19); float3 u_matdiffuse : register(c21); float4 u_matspecular : register(c22); float3 u_matemissive : register(c23); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float3 v_color1 : COLOR1; float4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; float3 worldpos = mul(float4(In.position.xyz, 1.0), u_world); float3 worldnormal = normalize(mul(float4(In.normal, 0.0), u_world)); float4 viewPos = float4(mul(float4(worldpos, 1.0), u_view), 1.0); float4 outPos = mul(viewPos, u_proj); float4 lightSum0 = u_ambient * u_matambientalpha + float4(u_matemissive, 0.0); float3 lightSum1 = 0; float3 toLight; float3 diffuse; float distance; float lightScale; float ldot; float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, float3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + float3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale; toLight = u_lightpos2 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir2) == 0.0 ? 0.0 : dot(normalize(u_lightdir2), toLight); if (angle >= u_lightangle_spotCoef2.x) { li
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-03-04 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; i
DRAGON BALL Z SHIN BUDOKAI 2 v1.10.3 2021-02-28 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; i
Grand Theft Auto: Chinatown Wars v1.11.2 2021-02-27 D3D error in shader compilation: info: C:\Users\lenovo\Desktop\[email protected](125,16-55): error X4505: maximum temp register index exceeded C:\Users\lenovo\Desktop\[email protected](125,12-69): error X4505: maximum temp register index exceeded / code: #define vec2 float2 #define vec3 float3 #define vec4 float4 #define ivec2 int2 #define ivec4 int4 #define mat4 float4x4 #define mat3x4 float4x3 #define splat3(x) vec3(x, x, x) #define lowp #define mediump #define highp #pragma warning( disable : 3571 ) mat4 u_proj : register(c0); vec2 u_fogcoef : register(c18); vec4 u_matambientalpha : register(c20); mat3x4 u_world : register(c11); mat3x4 u_view : register(c8); vec4 u_uvscaleoffset : register(c17); vec3 u_lightpos0 : register(c24); vec3 u_lightambient0 : register(c48); vec3 u_lightdiffuse0 : register(c40); vec3 u_lightspecular0 : register(c44); vec3 u_lightpos1 : register(c25); vec3 u_lightatt1 : register(c33); vec3 u_lightdir1 : register(c29); vec4 u_lightangle_spotCoef1 : register(c37); vec3 u_lightambient1 : register(c49); vec3 u_lightdiffuse1 : register(c41); vec3 u_lightspecular1 : register(c45); vec3 u_lightpos2 : register(c26); vec3 u_lightatt2 : register(c34); vec3 u_lightdir2 : register(c30); vec4 u_lightangle_spotCoef2 : register(c38); vec3 u_lightambient2 : register(c50); vec3 u_lightdiffuse2 : register(c42); vec3 u_lightspecular2 : register(c46); vec3 u_lightpos3 : register(c27); vec3 u_lightambient3 : register(c51); vec3 u_lightdiffuse3 : register(c43); vec3 u_lightspecular3 : register(c47); vec4 u_ambient : register(c19); vec3 u_matdiffuse : register(c21); vec4 u_matspecular : register(c22); vec3 u_matemissive : register(c23); vec4 u_cullRangeMin : register(c80); vec4 u_cullRangeMax : register(c81); struct VS_IN { vec2 texcoord : TEXCOORD0; vec3 normal : NORMAL; vec3 position : POSITION; }; struct VS_OUT { vec3 v_texcoord : TEXCOORD0; vec4 v_color0 : COLOR0; vec3 v_color1 : COLOR1; float v_fogdepth: TEXCOORD1; vec4 gl_Position : POSITION; }; VS_OUT main(VS_IN In) { VS_OUT Out; vec2 texcoord = In.texcoord; vec3 normal = In.normal; vec3 position = In.position; vec3 worldpos = mul(vec4(position, 1.0), u_world).xyz; mediump vec3 worldnormal = normalize(mul(vec4(normal, 0.0), u_world).xyz); vec4 viewPos = vec4(mul(vec4(worldpos, 1.0), u_view).xyz, 1.0); vec4 outPos = mul(u_proj, viewPos); lowp vec4 lightSum0 = u_ambient * u_matambientalpha + vec4(u_matemissive, 0.0); lowp vec3 lightSum1 = splat3(0.0); vec3 toLight; lowp vec3 diffuse; float distance; lowp float lightScale; mediump float ldot; lowp float angle; toLight = u_lightpos0; ldot = dot(toLight, worldnormal); diffuse = (u_lightdiffuse0 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular0 * u_matspecular.rgb * ldot ; } lightSum0.rgb += (u_lightambient0 * u_matambientalpha.rgb + diffuse); toLight = u_lightpos1 - worldpos; distance = length(toLight); toLight /= distance; ldot = dot(toLight, worldnormal); angle = length(u_lightdir1) == 0.0 ? 0.0 : dot(normalize(u_lightdir1), toLight); if (angle >= u_lightangle_spotCoef1.x) { lightScale = clamp(1.0 / dot(u_lightatt1, vec3(1.0, distance, distance*distance)), 0.0, 1.0) * (u_lightangle_spotCoef1.y <= 0.0 ? 1.0 : pow(angle, u_lightangle_spotCoef1.y)); } else { lightScale = 0.0; } diffuse = (u_lightdiffuse1 * u_matdiffuse) * max(ldot, 0.0); if (ldot >= 0.0) { ldot = dot(normalize(toLight + vec3(0.0, 0.0, 1.0)), worldnormal); if (u_matspecular.a <= 0.0) { ldot = 1.0; } else { ldot = pow(max(ldot, 0.0), u_matspecular.a); } if (ldot > 0.0) lightSum1 += u_lightspecular1 * u_matspecular.rgb * ldot * lightScale; } lightSum0.rgb += (u_lightambient1 * u_matambientalpha.rgb + diffuse) * lightScale
Dragon Ball Z Shin Budokai v1.10.3 2021-02-14 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Dragon Ball Z Shin Budokai v1.10.3 2021-02-14 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Dragon Ball Z Shin Budokai v1.10.3 2021-02-13 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Dragon Ball Z Shin Budokai v1.10.3 2021-02-13 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Dragon Ball Z Shin Budokai v1.10.3 2021-02-13 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (
Dragon Ball Z Shin Budokai v1.10.3 2021-02-12 D3D error in shader compilation: info: C:\Program Files\PPSSPP\[email protected](95,31-45): error X3004: undeclared identifier 'u_spline_counts' / code: #pragma warning( disable : 3571 ) float4x4 u_proj : register(c0); float4 u_matambientalpha : register(c20); float4x3 u_world : register(c11); float4x3 u_view : register(c8); float4 u_uvscaleoffset : register(c17); float4 u_cullRangeMin : register(c80); float4 u_cullRangeMax : register(c81); struct VS_IN { float2 texcoord : TEXCOORD0; float4 color0 : COLOR0; float3 normal : NORMAL; float3 position : POSITION; }; struct VS_OUT { float3 v_texcoord : TEXCOORD0; float4 v_color0 : COLOR0; float4 gl_Position : POSITION; }; float2 tess_sample(in float2 points[16], float4x4 weights) { float2 pos = float2(0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float3 tess_sample(in float3 points[16], float4x4 weights) { float3 pos = float3(0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4 tess_sample(in float4 points[16], float4x4 weights) { float4 pos = float4(0.0, 0.0, 0.0, 0.0); pos += weights[0][0] * points[0]; pos += weights[0][1] * points[1]; pos += weights[0][2] * points[2]; pos += weights[0][3] * points[3]; pos += weights[1][0] * points[4]; pos += weights[1][1] * points[5]; pos += weights[1][2] * points[6]; pos += weights[1][3] * points[7]; pos += weights[2][0] * points[8]; pos += weights[2][1] * points[9]; pos += weights[2][2] * points[10]; pos += weights[2][3] * points[11]; pos += weights[3][0] * points[12]; pos += weights[3][1] * points[13]; pos += weights[3][2] * points[14]; pos += weights[3][3] * points[15]; return pos; } float4x4 outerProduct(float4 u, float4 v) { return mul((float4x1)v, (float1x4)u); } struct Tess { float3 pos; float2 tex; float4 col; }; void tessellate(in VS_IN In, out Tess tess) { int2 point_pos = int2(In.position.z, In.normal.z) * 3; int2 weight_idx = int2(In.position.xy); float3 _pos[16]; float2 _tex[16]; float4 _col[16]; int index; index = (0 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[0] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[1] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[2] = tess_data[index].pos; index = (0 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[3] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[4] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (1 + point_pos.x); _pos[5] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (2 + point_pos.x); _pos[6] = tess_data[index].pos; index = (1 + point_pos.y) * u_spline_counts + (3 + point_pos.x); _pos[7] = tess_data[index].pos; index = (2 + point_pos.y) * u_spline_counts + (0 + point_pos.x); _pos[8] = tess_data[index].pos; index = (