Week 7: Back on Track
April 17, 2026
Hi readers, welcome back to my blog!
Last week’s spring break was quite exhilarating, with many of my schoolmates and me competing in a robotics competition and taking home a finalist medal for the team! Now that I’m back and ready to work on this project, I’ve left a few tasks for myself.
Originally, I’d intended to work on user controls after completing animations for my quiz using each model. But now that I’ve met with students, it’s become clear to me that just an animation won’t be enough. Without letting students master the 3 dimensions they are already familiar with, a fourth dimension is too much to ask for.
Instead, I will be trying to copy a control scheme that each student should be more familiar with, 3D Desmos.
Here’s what I changed:
Instead of using sliders for roll, pitch, and yaw, I changed the control scheme to track the mouse button on a right-click hold. Moving the mouse up and down pitches the z-axis toward and away from the screen. Moving the mouse left and right rolls the object about the z-axis.
Scrolling with the middle mouse button normally performs a zooming action; however, holding control while scrolling toggles the special 4D control for each sample group: orthogonality for the wireframe, transparency for cell-highlighting, and target-w for my model.
Unfortunately, I’ve run into another obstacle. My current model animations were all done in CloudCompare, for good reason. Using PyGame means I have to generate my objects 2D layer by layer, instead of 3D shell by shell. However, CloudCompare can’t link up to the Google Form I was working on for my quiz. This means I’ll have to quickly slap together a different solution or find a way to downgrade my CloudCompare model to use PyGame. Much of my time this week was spent trying to downgrade my model, but PyGame truly is too slow for a good user experience.
The reading I’ve assigned for myself is the same as last week’s, focusing on visualizing quaternions. However, I’ve additionally given myself a few articles on using GPU architecture in 4D visualization. In other words, a potential key for making my code more efficient and less reliant on CloudCompare. Just in case, though, I’ve also started reading about the steps it’ll take to embed CloudCompare windows into Google Forms.
If things work out well, I might even have an interactable embed to show you all next week!
Wish me luck, and see you all next week!
Reader Interactions
Comments
Leave a Reply
You must be logged in to post a comment.

Hi Samuel,
Congratulations on the Robotics competition! That aside, I still really want at least an image so I could comprehend how the visualization works. Also, you mention the middle mouse button, but what about laptop and mobile usability? Is platform usability a part of your priorities?
Thank You!