Spermulator 3D-Remake Milestone Report

Names: Sanika Bharvirkar, Circle Chen, Ashley Kao, Grant Zhao

Team 7
Link to webpage: https://akao03.github.io/cs184-final-project-webpage/milestone.html
Link to video: https://drive.google.com/file/d/1gQRHGR9s3rZEzQQpZ5JK1dIQTpprAwWe/view?usp=sharing
Link to slides:https://docs.google.com/presentation/d/1-O_gsE9-Gc6-yXC7CnoSOrlRxWPDf9CEVOGWhy-gdyA/edit?slide=id.p#slide=id.p

We have made significant progress towards our goal as of April 20th, 2025.

First, we were able to make the sperm move in 3D. The player can rotate 360 degrees to look around the map, and they can move the sperm relative to the camera using WASD. The sperm will rotate to face the direction of motion. We also utilized Unity shaders to animate the sperm's tail. We displaced the two coordinates of the tail using sine and cosine functions to create a helical "swimming" motion. At the same time, we were able add glows to our 3D objects using Bloom filters.

We are currently polishing our acidic patches (spheres in the backend) so they can both glow and be transparent.

Preliminary 3D object glow
Glowing 3D sperm and spheres. Notice the opaque cube vs the transparent spheres.

The 3D model of the uterus is mostly formed and we are continually revising it before we import it to our game. We have created textures for the uterus and egg. Next steps include creating models and textures for bacteria and finalizing those of the egg alongside updating game functionality for 3D.

This short video showcases the new 3D camera view and sperm movement. You may need to open it in a new tab for it to play.

Here we have our 3D uterus model.

The full uterus model.
Closeup of a part of the model.

These are some textures we will be using in our project.

Texture for the egg.
Textured uterine wall. This scene will be updated with 3D assets.

To test our Uterus texture, we modified the code for the Universal Unity 2D shader to support 3D object space, which is what our final texture and shading will use. The shader simulates lighting from a fixed z position, and applies a normal map to simulate bumps and ridges. We used this shader to test out which textures would suite the uterus lining the best

The egg material samples from a texture map, an occlusion map, and a normal map to simulate the grooves and edges of a human cell, and we rendered it in Unity's 3D rendering pipeline.

Overall we are making good progress relative to our plans. Our work plan for the time between now and submission includes the following objectives: