

Multi-Project - Javascript, C++, WebGL, OpenGL - 2021
Virtual Worlds with Cylinders + Game Graphics
My Input
These projects were done for a Computer Graphics class at the University of California, Santa Cruz to create a virtual world using low-level graphics language (WebGL). At the end of the class with the experience of creating graphics with WebGL, we were tasked with exploring high-level graphics libraries. With the virtual world, I made a program for users to create N-sided cylinders, where N is the number the user inputs, with types of shading, lighting, and camera control.
The Occluders project was done for a Game Graphics and Real-Time Rendering class at UC Santa Cruz. The class was done in C++ with OpenGL and we were tasked to do one of 9 projects from what we have learned, revolving around rendering as little objects as possible, texturing, fog lighting, and more. I decided on occluders as my project and sketched out plans and layouts for the presentation. Some of the code for functions of occluders is shown below.
The green wall below is an example of 4 objects (composed of squares and spheres) being occluded from the world as the camera no longer views them on screen with the green wall in the way. This is also represented by the number values on the top left going from 10 objects in the world -> 6 objects (there are 5 objects in the world for lighting that are not being occluded + 1 object being the wall itself).







