asdasd
This commit is contained in:
parent
7899b08f3b
commit
1e7fd38bb6
|
@ -41,6 +41,30 @@ vec3 pqToNits(vec3 pq)
|
|||
return 10000.0 * pow(num / den, vec3(oo_m1));
|
||||
}
|
||||
|
||||
vec3 linearToSrgb(vec3 color) {
|
||||
bvec3 isLo = lessThanEqual(color, vec3(0.0031308f));
|
||||
|
||||
vec3 loPart = color * 12.92f;
|
||||
vec3 hiPart = pow(color, vec3(5.0f / 12.0f)) * 1.055f - 0.055f;
|
||||
return mix(hiPart, loPart, isLo);
|
||||
}
|
||||
|
||||
vec4 linearToSrgb(vec4 color) {
|
||||
return vec4(linearToSrgb(color.rgb), color.a);
|
||||
}
|
||||
|
||||
vec3 srgbToLinear(vec3 color) {
|
||||
bvec3 isLo = lessThanEqual(color, vec3(0.04045f));
|
||||
|
||||
vec3 loPart = color / 12.92f;
|
||||
vec3 hiPart = pow((color + 0.055f) / 1.055f, vec3(12.0f / 5.0f));
|
||||
return mix(hiPart, loPart, isLo);
|
||||
}
|
||||
|
||||
vec4 srgbToLinear(vec4 color) {
|
||||
return vec4(srgbToLinear(color.rgb), color.a);
|
||||
}
|
||||
|
||||
float gold_noise(vec2 xy, float seed)
|
||||
{
|
||||
const float PHI = 1.61803398874989484820459;
|
||||
|
@ -83,12 +107,50 @@ vec3 hsv_to_rgb(vec3 hsv)
|
|||
return vec3( 0 );
|
||||
}
|
||||
|
||||
vec4 plagfrog_o(vec4 outcolor, vec4 color, vec2 coord, float x, float y, float sqr, float h, float w)
|
||||
{
|
||||
float sqd = ( ( coord.x - x ) / w ) * ( ( coord.x - x ) / w ) + ( ( coord.y - y ) / h ) * ( ( coord.y - y ) / h );
|
||||
float a = 1.0 - clamp(sqd-sqr,0.0,1.0);
|
||||
|
||||
vec4 ret = (color * a) + (outcolor * (1-a));
|
||||
return ret;
|
||||
}
|
||||
|
||||
void main()
|
||||
{
|
||||
outColor = vec4(0.0, 0.0, 0.0, 1.0);
|
||||
int nextTest = 0;
|
||||
|
||||
if (test == nextTest++)
|
||||
{
|
||||
float bodyBrightness = targetNits * 0.15;
|
||||
vec2 coord = (gl_FragCoord.xy / 2.2) + vec2(-20, 50);
|
||||
|
||||
vec4 colg = srgbToLinear(vec4( 0.46, 0.69, 0.33, 1.0 ));
|
||||
vec4 collg = srgbToLinear(vec4( 0.77, 0.89, 0.70, 1.0 ));
|
||||
vec4 coldg = srgbToLinear(vec4( 0.36, 0.56, 0.23, 1.0 ));
|
||||
vec4 colw = vec4(0.0);
|
||||
vec4 colb = srgbToLinear(vec4( 100000.0, 0.0, 0.0, 1.0 ));
|
||||
vec4 sdfOutColor = vec4( 0.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colg, coord, 192.0, 165.0, 1280.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colg, coord, 320.0, 165.0, 1280.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colg, coord, 256.0, 256.0, 16384.0, 0.75, 1.0 );
|
||||
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, collg, coord, 256.0, 365.0, 16384.0, 0.75, 1.25 ) * sdfOutColor.a;
|
||||
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colw, coord, 192.0, 165.0, 512.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colw, coord, 320.0, 165.0, 512.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colb, coord, 192.0, 165.0, 128.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, colb, coord, 320.0, 165.0, 128.0, 1.0, 1.0 );
|
||||
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, coldg, coord, 224.0, 240.0, 64.0, 1.0, 1.0 );
|
||||
sdfOutColor = plagfrog_o( sdfOutColor, coldg, coord, 288.0, 240.0, 64.0, 1.0, 1.0 );
|
||||
|
||||
sdfOutColor *= bodyBrightness;
|
||||
|
||||
outColor = vec4(nitsToPq(sdfOutColor.rgb), 1.0);
|
||||
}
|
||||
else if (test == nextTest++)
|
||||
{
|
||||
const vec3 start = vec3(0.0);
|
||||
const vec3 end = vec3(targetNits);
|
||||
|
|
Loading…
Reference in New Issue