Matthew Clark·Apr 24Marching From Squares to Cubes: Progress on Terrain GenerationI had some time to revisit the marching cubes algorithm recently and decided to share the progress I have made so far. I started by looking…
Matthew Clark·Feb 2Simple Snow SimulationI have been learning more about C++ by reading Accelerated C++. To strengthen my understanding, I decided to write a console-based snow…
Matthew Clark·Jan 20Function Pointers in C++A function pointer is a variable that stores the address of a function. This allows you to call the function through a pointer instead of…
Matthew Clark·Aug 20, 2025Marching Cubes AlgorithmThe Marching Cubes algorithm is a cornerstone technique in volumetric visualization. It is designed to extract a high-resolution polygonal…
Matthew Clark·Jul 1, 2025Camera Simulation in OpenGLCamera or view space refers to a coordinate system where the camera is positioned at the origin, and all scene objects are transformed…
Matthew Clark·Jun 17, 2025Coordinate SystemsIn my last article, I explored vectors and matrices, foundational elements of graphics programming. Today, I want to focus on the systems…
Matthew Clark·Jun 3, 2025OpenGL Textures and TransformationsI have completed my project of creating a 3D graphics renderer from scratch and have begun learning OpenGL. In a previous article, I…
Matthew Clark·May 20, 2025Updating from the Painter’s Algorithm to a Z-BufferSo far, I have been sorting my faces using the painter’s algorithm. This method involves getting the average of the z coordinates for the 3…
Matthew Clark·May 18, 2025Texture Mapping Using Barycentric WeightsAn important concept in computer graphics is texture mapping. This is the process of mapping a 2D image onto the face of a 3D object…