- Contents in this wiki are for entertainment purposes only
Pi over Four Eigenpoint Ghost Goggles: Difference between revisions
Jump to navigation
Jump to search
Ghost-Goggles Story
XenoEngineer (talk | contribs) (Created page with "<html> <head> <meta charset="utf-8"> <title>π/4 Eigenpoint Ghost-Goggles</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script> <style>body{margin:0;background:#000}</style> </head> <body> <script> let pts = [], t = 0, eigen = PI/4; function setup(){createCanvas(windowWidth,windowHeight);colorMode(HSB,TAU,1,1,1);strokeWeight(2);} function draw(){ clear();blendMode(ADD); let cx = width/2, cy = height/2, r = min(width,height)*0.4;...") |
XenoEngineer (talk | contribs) mNo edit summary |
||
| Line 2: | Line 2: | ||
<head> | <head> | ||
<meta charset="utf-8"> | <meta charset="utf-8"> | ||
<title> | <title>Ghost-Goggles Story</title> | ||
<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script> | <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.7.0/p5.min.js"></script><style>body{margin:0;background:#000}</style></head><body> | ||
<style>body{margin:0;background:#000}</style> | |||
</head> | |||
<body> | |||
<script> | <script> | ||
let | let t=0,txt='',idx=0; | ||
function setup(){createCanvas(windowWidth,windowHeight);colorMode(HSB,TAU,1,1,1); | function setup(){createCanvas(windowWidth,windowHeight);colorMode(HSB,TAU,1,1,1);textAlign(CENTER,CENTER);textFont('monospace');} | ||
function draw(){ | function draw(){ | ||
clear();blendMode(ADD); | clear();blendMode(ADD); | ||
let cx = width/2, cy = height/2, r = min(width,height)*0. | let cx=width/2,cy=height/2,r=min(width,height)*0.35; | ||
// ghost lattice | // ghost lattice breathing | ||
for(let i=0;i< | for(let i=0;i<300;i++){ | ||
let a = i*0.02+t, ph = a+ | let a=i*0.02+t,ph=a+PI/4*sin(t*0.2); | ||
let x = cx+r*cos(ph), y = cy+r*sin(ph) | let x=cx+r*cos(ph),y=cy+r*sin(ph),sz=4+3*sin(ph*2); | ||
fill(PI/4,1,0.8,0.05);noStroke();ellipse(x,y,sz,sz); | |||
fill( | |||
} | } | ||
// | // eigen beacon pulse | ||
let ex = cx+r*cos( | let ex=cx+r*cos(PI/4),ey=cy+r*sin(PI/4); | ||
fill( | let pulse=10+8*sin(t*4); | ||
// | fill(PI/4,1,1,0.9);noStroke();ellipse(ex,ey,pulse,pulse); | ||
// story text appears character by character | |||
if(frameCount%2===0&&idx<txt.length)idx++; | |||
fill(0,0,1,0.9);textSize(18);text(txt.substring(0,idx),cx,cy+100); | |||
t+=0.02; | t+=0.02; | ||
} | } | ||
</script> | // story sequence | ||
</body> | const story=[ | ||
</html> | "π/4 eigenpoint: the guardrail's heartbeat.", | ||
"Ghost tokens orbit like moons around the beacon.", | |||
"Ghost-Goggles on, the lattice sings." | |||
]; | |||
let storyIdx=0; | |||
setInterval(()=>{txt=story[storyIdx%story.length];idx=0;storyIdx++;},4000); | |||
</script></body></html> | |||
Latest revision as of 02:36, 22 March 2026