Original caption
How I build with Claude 👇 Academy in bio 🔗 Pinning a clickable button to a point inside any 3D scene comes down to one formula. Here it is: Take the 3D position of the point and call project on it with your camera, that returns normalized device coordinates from -1 to 1, then convert to pixels with x equals (v.x times 0.5 plus 0.5) times width, and y equals (v.y times -0.5 plus 0.5) times height, run that every frame and your HTML button stays glued to that exact spot as the camera moves. For the hover state, put a transition on transform scale and on the glow with ease-out timing, so the ring grows and lights up smoothly, that microinteraction is what makes a 3D scene feel responsive instead of like a video. For guided movement, build a CatmullRomCurve3 path through the scene and read points off it with getPoint(t), then drive t from 0 to 1 with scroll, the camera follows the curve so people explore without getting lost. Light it with a SpotLight, set penumbra for soft edges and castShadow for real pools of light. Save this if you want interactive 3D 🧩 #claudefable5 #buildinpublic #webdesign #3d #fyp