(69% work done)
today was so frustrating but also so satisfying by the end. phase 6 was about making the satellite actually interactive. built a clickable registry using a reg() function that stores every mesh by name so the raycaster knows which part got hit. then added hover detection inside the animate loop using Raycaster. had lots of bugs and the worst one was the highlight appearing in the completely wrong position, hovering near a part but not on it. turned out mouse coordinates were being calculated relative to the whole window instead of just the canvas, fixed it with getBoundingClientRect(). now hovering works perfectly on every part and it feels like a real interactive app :3