0xa88e4a19…250csent to0x612194e5…505d·#23,905,297·0x42fcfb3a…69be24
0x6121…505d
All memos sent from and to 0x6121…505d.
0xa88e4a19…250csent to0x612194e5…505d·#23,900,427·0xa7eeb415…c4a273
0xa88e4a19…250csent to0x612194e5…505d·#23,900,379·0x70877280…1a421a
.0;void main(){vec2 center=vec2(0.5,0.5);vec2 pos=(v_uv-center)*vec2(1.0,u_resolution.y/u_resolution.x);pos*=2.5;float dist=length(pos);float angle=atan(pos.y,pos.x);float squares=0.0;vec2 aspectRatio=vec2(u_resolution.x/u_resolution.y,1.0);float innermostSize=0.05;float outermostSize=0.05+(k-1.0)*0.025;for(float i=1.0;i<=20.0;i++){if(i<=k){float size=0.05+(i-1.0)*0.025;vec2 squarePos=abs((v_uv-center)*aspectRatio);float squareDist=max(squarePos.x,squarePos.y);float squareThickness=0.001;float square=1.0-smoothstep(size-squareThickness,size+squareThickness,squareDist);square*=smoothstep(size-squareThickness-0.01,size-squareThickness,squareDist);squares=max(squares,square);}};float lines=0.0;float lineThickness=0.001;vec2 linePos=(v_uv-center)*aspectRatio;float tinyOffset=0.002;float outermostOffset=0.002;float topLeftLine=1.0-smoothstep(lineThickness,lineThickness+0.001,abs(linePos.x-linePos.y));topLeftLine*=step(linePos.x,-innermostSize+tinyOffset)*step(linePos.y,-innermostSize+tinyOffset);topLeftLine*=(1.0-step(linePos.x,-outermostSize+outermostOffset))*(1.0-step(linePos.y,-outermostSize+outermostOffset));float topRightLine=1.0-smoothstep(lineThickness,lineThickness+0.001,abs(linePos.x+linePos.y));topRightLine*=step(innermostSize-tinyOffset,linePos.x)*step(linePos.y,-innermostSize+tinyOffset);topRightLine*=(1.0-step(outermostSize-outermostOffset,linePos.x))*(1.0-step(linePos.y,-outermostSize+outermostOffset));float bottomLeftLine=1.0-smoothstep(lineThickness,lineThickness+0.001,abs(linePos.x+linePos.y));bottomLeftLine*=step(linePos.x,-innermostSize+tinyOffset)*step(innermostSize-tinyOffset,linePos.y);bottomLeftLine*=(1.0-step(linePos.x,-outermostSize+outermostOffset))*(1.0-step(outermostSize-outermostOffset,linePos.y));float bottomRightLine=1.0-smoothstep(lineThickness,lineThickness+0.001,abs(linePos.x-linePos.y));bottomRightLine*=step(innermostSize-tinyOffset,linePos.x)*step(innermostSize-tinyOffset,linePos.y);bottomRightLine*=(1.0-step(outermostSize-outermostOffset,linePos.x))*(1.0-step(outermostSize-outermostOffset,linePos.y));lines=max(max(topLeftLine,topRightLine),max(bottomLeftLine,bottomRightLine));float wave1=sin(angle*3.0+u_time*2.0)*(0.2+u_yParams[0]*0.4);float wave2=cos(angle*5.0-u_time*1.5)*(0.3+u_yParams[1]*0.3);float wave3=sin(angle*7.0+u_time*3.0)*(0.4+u_yParams[2]*0.2);float pulse=sin(u_time*0.5)*(0.02+u_yParams[3]*1.0)+(0.5+u_yParams[4]*0.3);float soulRadius=pulse+wave1*0.1+wave2*0.1+wave3*0.1;float sdf=(dist-soulRadius)/0.5;float verticalDistortion=sin(dist*(5.0+u_yParams[5]*15.0)-u_time*(2.0+u_yParams[6]*3.0))*(0.25+u_yParams[6]*2.0);sdf+=verticalDistortion*(0.5+u_yParams[6]*0.5);vec3 color=vec3(0.0);float alpha=0.0;if(sdf<0.0){float intensity=1.0-abs(sdf);float r=u_yParams[7]*0.5+sin(u_time*0.5)*0.1+u_yParams[10]*0.05;float g=u_yParams[8]*0.5+cos(u_time*0.7)*0.1+u_yParams[11]*0.03;float b=u_yParams[9]*0.5+sin(u_time*1.3)*0.1+u_yParams[9]*0.02;float avgParams=(u_yParams[0]+u_yParams[1]+u_yParams[2])/3.0;float paletteIndex=floor(avgParams*10.0);vec3 paletteColor;if(paletteIndex==0.0){paletteColor=vec3(1.0,0.2,0.1);}else if(paletteIndex==1.0){paletteColor=vec3(0.1,0.8,1.0);}else if(paletteIndex==2.0){paletteColor=vec3(0.2,1.0,0.3);}else if(paletteIndex==3.0){paletteColor=vec3(0.8,0.1,1.0);}else if(paletteIndex==4.0){paletteColor=vec3(1.0,0.8,0.1);}else if(paletteIndex==5.0){paletteColor=vec3(1.0,1.0,1.0);}else if(paletteIndex==6.0){paletteColor=vec3(0.3,0.9,0.9);}else if(paletteIndex==7.0){paletteColor=vec3(0.9,0.6,0.2);}else if(paletteIndex==8.0){paletteColor=vec3(0.5,0.2,0.8);}else if(paletteIndex==9.0){paletteColor=vec3(0.9,0.9,0.2);}else{paletteColor=vec3((r+g+b)*0.3,(r+g*0.5+b*0.8)*0.3,(r*0.8+g+b)*0.3);};float variation=sin(u_time*2.0+dist*3.0)*0.1+0.9;float xPos=(v_uv.x-0.5)*2.0;float yPos=(v_uv.y-0.5)*2.0;vec3 positionShift=vec3(sin(xPos*3.14159+u_time)*0.25,cos(yPos*3.14159+u_time*1.5)*0.25,sin((xPos+yPos)*2.0+u_time*2.0)*0.25);float chromaticMix1=sin(u_time*1.5+dist*2.0)*0.2+0.2;float chromaticMix2=cos(u_time*2.5-angle*3.0)*0.15+0.15;float chromaticMix3=sin(u_time*3.5+xPos*yPos*5.0)*0.1+0.1;vec3 chromaticBlend1=vec3(positionShift.g*chromaticMix1,positionShift.b*chromaticMix1,positionShift.r*chromaticMix1);vec3 chromaticBlend2=vec3(positionShift.b*chromaticMix2,positionShift.r*chromaticMix2,positionShift.g*chromaticMix2);vec3 chromaticBlend3=vec3((positionShift.r+positionShift.g)*0.5*chromaticMix3,(positionShift.g+positionShift.b)*0.5*chromaticMix3,(positionShift.b+positionShift.r)*0.5*chromaticMix3);vec3 interference=vec3(sin(dist*15.0-u_time*4.0)*0.05,cos(angle*8.0+u_time*3.0)*0.05,sin((dist+angle)*10.0-u_time*2.0)*0.05);color=paletteColor*variation+positionShift+chromaticBlend1+chromaticBlend2+chromaticBlend3+interference;if(intensity>0.7){color=mix(color,paletteColor+vec3(0.3,0.3,0.3),(intensity-0.7)*3.0);}else if(intensity<0.3){color=paletteColor*intensity*2.0;};alpha=intensity;};float geometricElements=max(squares,lines);if(geometricElements>0.5){color=mix(color,vec3(1.0,1.0,1.0),geometricElements);alpha=max(alpha,geometricElements);};gl_FragColor=vec4(color,alpha);}`;function createShader(gl,type,source){const shader=gl.createShader(type);gl.shaderSource(shader,source);gl.compileShader(shader);if(!gl.getShaderParameter(shader,gl.COMPILE_STATUS)){console.error('Shader compilation error:',gl.getShaderInfoLog(shader));gl.deleteShader(shader);return null;};return shader;};const vertexShader=createShader(gl,gl.VERTEX_SHADER,vertexShaderSource);const fragmentShader=createShader(gl,gl.FRAGMENT_SHADER,fragmentShaderSource);const program=gl.createProgram();gl.attachShader(program,vertexShader);gl.attachShader(program,fragmentShader);gl.linkProgram(program);if(!gl.getProgramParameter(program,gl.LINK_STATUS)){console.error('Program linking error:',gl.getProgramInfoLog(program));return;};const positions=new Float32Array([-1.0,-1.0,1.0,-1.0,-1.0,1.0,1.0,1.0,]);const positionBuffer=gl.createBuffer();gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.bufferData(gl.ARRAY_BUFFER,positions,gl.STATIC_DRAW);const positionAttributeLocation=gl.getAttribLocation(program,'a_position');const timeUniformLocation=gl.getUniformLocation(program,'u_time');const resolutionUniformLocation=gl.getUniformLocation(program,'u_resolution');const yParamsUniformLocation=gl.getUniformLocation(program,'u_yParams');let startTime=Date.now();function animate(){const currentTime=(Date.now()-startTime)/1000.0;gl.clearColor(0.0,0.0,0.0,1.0);gl.clear(gl.COLOR_BUFFER_BIT);gl.useProgram(program);gl.uniform1f(timeUniformLocation,currentTime);gl.uniform2f(resolutionUniformLocation,canvas.width,canvas.height);for(let i=0;i<12;i++){gl.uniform1f(gl.getUniformLocation(program,`u_yParams[${i}]`),currentYParams[i]);};gl.enableVertexAttribArray(positionAttributeLocation);gl.bindBuffer(gl.ARRAY_BUFFER,positionBuffer);gl.vertexAttribPointer(positionAttributeLocation,2,gl.FLOAT,false,0,0);gl.enable(gl.BLEND);gl.blendFunc(gl.SRC_ALPHA,gl.ONE_MINUS_SRC_ALPHA);gl.drawArrays(gl.TRIANGLE_STRIP,0,4);requestAnimationFrame(animate);};window.addEventListener('resize',()=>{canvas.width=window.innerWidth;canvas.height=window.innerHeight;gl.viewport(0,0,canvas.width,canvas.height);});animate();};window.addEventListener('load',initsoul);</script></body></html>
0xa88e4a19…250csent to0x612194e5…505d·#23,900,374·0xe2c9da82…b5f229
n;function extractYParams(yValue){const yStr=yValue.toString();const features=[];for(let i=0;i<yStr.length;i+=2){if(i+2<=yStr.length){features.push(parseInt(yStr.slice(i,i+2))/100);}};while(features.length<12){features.push(0.5);};return features.slice(0,12);};let currentYParams;if(largeRandomY==0){currentYParams=[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5];}else{currentYParams=extractYParams(largeRandomY);};function initsoul(){const canvas=document.getElementById('soul');const gl=canvas.getContext('webgl')||canvas.getContext('experimental-webgl');if(!gl){console.error('WebGL not supported');return;};canvas.width=window.innerWidth;canvas.height=window.innerHeight;gl.viewport(0,0,canvas.width,canvas.height);const vertexShaderSource=`attribute vec2 a_position;varying vec2 v_uv;void main(){v_uv=(a_position+1.0)*0.5;gl_Position=vec4(a_position,0.0,1.0);}`;const fragmentShaderSource=`precision mediump float;varying vec2 v_uv;uniform float u_time;uniform vec2 u_resolution;uniform float u_yParams[12];float k=
0xa88e4a19…250csent to0x612194e5…505d·#23,900,370·0xeafac57d…f9f3bf
<!DOCTYPE html> <title></title> <style>body{margin:0;padding:0;background-color:#000;overflow:hidden}#soul{width:100vw;height:100vh;display:block}</style> <canvas id=soul ></canvas> <script>const largeRandomY=