GUI: new osc renderer, part 11

ES port
This commit is contained in:
tildearrow 2024-02-19 03:06:25 -05:00
parent 894b1f5a3c
commit bc32f6d57e

View file

@ -102,32 +102,29 @@ const char* sh_oscRender_srcF=
"uniform sampler2D oscVal;\n"
"varying vec2 fur_fragCoord;\n"
"void main() {\n"
" vec2 uv = fur_fragCoord/uResolution;\n"
" uv.y *= 2.0;\n"
" vec2 tresh = vec2(1.0,1.0)/uResolution;\n"
" float x = uv.x-uAdvance*uLineWidth*0.5;\n"
" float xMax = uv.x+uAdvance*uLineWidth*0.5;\n"
" float alpha = 0.0;\n"
" float alphaX = 0.0;\n"
" float valmax = -1024.0;\n"
" float valmin = 1024.0;\n"
" for (; x<xMax; x+=uAdvance) {\n"
" vec2 uv=fur_fragCoord/uResolution;\n"
" uv.y*=2.0;\n"
" float alpha=0.0;\n"
" float xMax=uv.x+uAdvance*uLineWidth;\n"
" float valmax=-1024.0;\n"
" float valmin=1024.0;\n"
" for (float x=uv.x-uAdvance*uLineWidth; x<=xMax; x+=uAdvance) {\n"
" float val=texture2D(oscVal,vec2(x,1.0)).x;\n"
" alphaX+=0.0;\n"
" if (val>valmax) valmax=val;\n"
" if (val<valmin) valmin=val;\n"
" }\n"
" float slope = abs(valmax-valmin)*uResolution.y*0.5;\n"
" if (uv.y>valmin) {\n"
" alpha=valmax*uResolution.y*0.5-fur_fragCoord.y+uLineWidth*0.5;\n"
" } else {\n"
" alpha=fur_fragCoord.y-valmin*uResolution.y*0.5+uLineWidth*0.5;\n"
" float slope=abs(valmax-valmin)*uResolution.y*0.5;\n"
" float slopeDiv=min(uAdvance,(uAdvance/slope));\n"
" float xRight=uv.x+((uLineWidth)/uResolution.x);\n"
" for (float x=max(0.0,uv.x-(uLineWidth/uResolution.x)); x<=xRight; x+=slopeDiv) {\n"
" float val=texture2D(oscVal,vec2(x,1.0)).x*uResolution.y*0.5;\n"
" alpha+=clamp(uLineWidth-distance(vec2(fur_fragCoord.x,fur_fragCoord.y),vec2(x*uResolution.x,val)),0.0,1.0);\n"
" }\n"
" alpha=clamp(alpha,0.0,1.0);\n"
" if (slope>1.0) {\n"
" alpha*=clamp(alphaX,0.0,1.0);\n"
" gl_FragColor = vec4(uColor.xyz,uColor.w*clamp(alpha/(uLineWidth+sqrt(slope*0.125)),0.0,1.0));\n"
" } else {\n"
" gl_FragColor = vec4(uColor.xyz,uColor.w*clamp(alpha/uLineWidth,0.0,1.0));\n"
" }\n"
" gl_FragColor = vec4(uColor.xyz,uColor.w*clamp(alpha,0.0,1.0));\n"
"}\n";
#else
const char* sh_wipe_srcV=