[XCX] XYZ capped not just X,

This commit is contained in:
getdls 2017-11-28 00:41:40 +01:00
parent 96bdf7eb9d
commit fa8bdc20c6
3 changed files with 24 additions and 12 deletions

View File

@ -23,6 +23,16 @@ layout(location = 0) in vec4 passParameterSem0;
layout(location = 1) in vec4 passParameterSem1; layout(location = 1) in vec4 passParameterSem1;
layout(location = 0) out vec4 passPixelColor0; layout(location = 0) out vec4 passPixelColor0;
uniform vec2 uf_fragCoordScale; uniform vec2 uf_fragCoordScale;
highp float lineRand(vec2 co)
{
highp float a = 12.9898;
highp float b = 78.233;
highp float c = 43758.5453;
highp float dt = dot(co.xy, vec2(a, b));
highp float sn = mod(dt, 3.14);
return fract(sin(sn) * c);
}
int clampFI32(int v) int clampFI32(int v)
{ {
if( v == 0x7FFFFFFF ) if( v == 0x7FFFFFFF )
@ -70,8 +80,8 @@ activeMaskStackC[0] = true;
activeMaskStackC[1] = true; activeMaskStackC[1] = true;
vec3 cubeMapSTM; vec3 cubeMapSTM;
int cubeMapFaceId; int cubeMapFaceId;
R0i = floatBitsToInt(passParameterSem0); R0i = floatBitsToInt((passParameterSem0) + (lineRand(gl_FragCoord.xy)*0.0001));
R1i = floatBitsToInt(passParameterSem1); R1i = floatBitsToInt((passParameterSem1) -(lineRand(gl_FragCoord.yx)*0.0001));
if( activeMaskStackC[1] == true ) { if( activeMaskStackC[1] == true ) {
R1i.xyz = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R1i.xy)).xyz); R1i.xyz = floatBitsToInt(texture(textureUnitPS0, intBitsToFloat(R1i.xy)).xyz);
} }
@ -177,11 +187,11 @@ R4i.y = floatBitsToInt(intBitsToFloat(R5i.y) + intBitsToFloat(uf_remappedPS[13].
PS1i = R4i.y; PS1i = R4i.y;
} }
if( activeMaskStackC[1] == true ) { if( activeMaskStackC[1] == true ) {
R8i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.xz), intBitsToFloat(R0i.w)))); R8i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R0i.xz) + (lineRand(gl_FragCoord.xy)*0.0002), intBitsToFloat(R0i.w))));
R0i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.xy), intBitsToFloat(R1i.w)))); R0i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R1i.xy) + (lineRand(gl_FragCoord.yx)*0.0002), intBitsToFloat(R1i.w))));
R9i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.zy), intBitsToFloat(R2i.w)))); R9i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R2i.zy) + (lineRand(gl_FragCoord.xy)*0.0002), intBitsToFloat(R2i.w))));
R10i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R3i.xy), intBitsToFloat(R3i.w)))); R10i.x = floatBitsToInt(texture(textureUnitPS1, vec3(intBitsToFloat(R3i.xy) + (lineRand(gl_FragCoord.yx)*0.0002), intBitsToFloat(R3i.w))));
R1i.x = floatBitsToInt(texture(textureUnitPS3, vec3(intBitsToFloat(R4i.zy), intBitsToFloat(R4i.w)))); R1i.x = floatBitsToInt(texture(textureUnitPS3, vec3(intBitsToFloat(R4i.zy) - (lineRand(gl_FragCoord.xy)*0.0005), intBitsToFloat(R4i.w))));
} }
if( activeMaskStackC[1] == true ) { if( activeMaskStackC[1] == true ) {
activeMaskStack[1] = activeMaskStack[0]; activeMaskStack[1] = activeMaskStack[0];
@ -475,6 +485,8 @@ if( activeMaskStackC[1] == true ) {
R0i.x = floatBitsToInt((intBitsToFloat(R1i.w) * intBitsToFloat(uf_remappedPS[22].x) + intBitsToFloat(uf_remappedPS[22].y))); R0i.x = floatBitsToInt((intBitsToFloat(R1i.w) * intBitsToFloat(uf_remappedPS[22].x) + intBitsToFloat(uf_remappedPS[22].y)));
R0i.w = 0; R0i.w = 0;
} }
//+(lineRand(gl_FragCoord.xy)*0.0001)
// export // export
passPixelColor0 = vec4(intBitsToFloat(R0i.x)*shadowExposure, intBitsToFloat(R0i.x), intBitsToFloat(R0i.x), intBitsToFloat(R0i.w)); passPixelColor0 = vec4(intBitsToFloat(R0i.x)*shadowExposure, intBitsToFloat(R0i.x)*shadowExposure , intBitsToFloat(R0i.x)*shadowExposure , intBitsToFloat(R0i.w));
} }

View File

@ -4,8 +4,8 @@
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia // To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
// changes here in turn "breaks" bloom as they over or under expose depending on day/night // changes here in turn "breaks" bloom as they over or under expose depending on day/night
const float preExposure = 0.72; // old brigntess tweak. Truncates at around .45+ const float preExposure = 0.85; // old brigntess tweak. Truncates at around .45+
const float gammaPostExposure = 0.9; // compensate pre exposure, but loss of contrast when positive. const float gammaPostExposure = 0.8; // compensate pre exposure, but loss of contrast when positive.
uniform ivec4 uf_remappedPS[1]; uniform ivec4 uf_remappedPS[1];
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0 layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0

View File

@ -4,8 +4,8 @@
// cross fade brightness // cross fade brightness
// To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia // To-do, .5 is daylight and 1.0 night is wiiu "correct" for nvidia
// changes here in turn "breaks" bloom as they over or under expose depending on day/night // changes here in turn "breaks" bloom as they over or under expose depending on day/night
const float preExposure = 0.72; // old brigntess tweak. Truncates at around .45+ const float preExposure = 0.85; // old brigntess tweak. Truncates at around .45+
const float gammaPostExposure = 0.9; // compensate pre exposure, but loss of contrast when positive. const float gammaPostExposure = 0.8; // compensate pre exposure, but loss of contrast when positive.
uniform ivec4 uf_remappedPS[1]; uniform ivec4 uf_remappedPS[1];
layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0 layout(binding = 0) uniform sampler2D textureUnitPS0;// Tex0 addr 0xf470a000 res 1280x720x1 dim 1 tm: 4 format 0816 compSel: 0 1 2 5 mipView: 0x0 (num 0x1) sliceView: 0x0 (num 0x1) Sampler0 ClampX/Y/Z: 2 2 2 border: 0