In this post, we’ll explore how to significantly enhance procedurally generated terrain using hydraulic erosion. By simulating the natural processes that shape real-world landscapes, we can transform basic noise-generated height maps into believable terrains that exhibit realistic features like river valleys, sediment deposits, and asymmetric slopes.
I was working on a WebGL project that needed a water shader, and I wanted to see results immediately as I tweaked the GLSL. Tools like Shadertoy, glsl.app, and The Book of Shaders’ editor exist, but they force you to use online editors and require accounts to save your work.
In this post, I’m going to cover my go-to workflow for tracking down memory leaks in C++. If your program’s memory usage is climbing and it shouldn’t be, two tools will get you to the answer fast: Top tells you if you’re leaking, and Valgrind tells you where.
In this post, I’m going to cover two topics that are more connected than they first appear: how pseudo-random number generators (PRNGs) work under the hood, and how to use that knowledge to write better, reproducible randomized tests. This started as a lightning talk I gave and I decided to expand it into a full article.
In this post, I’m going to cover a slightly unusual use case for custom C++ iterators. We are going to repurpose a C++ iterator as a generator to represent the geometric properties of circles and rectangles. This novel approach evolved while I was working on an interesting computer vision problem, and had a really nice effect on the memory footprint and program efficiency as you will soon see!
I took a short detour from C++ to learn Javascript by working through the book Eloquent Javascript. It’s a delightful, well written book that introduces the language and offers exercises at the end of each chapter—one of the more interesting exercises was implementing Conway’s Game of Life.
In this post, I’m going to talk about how I set up and deployed a static site that’s fast, modern, serverless, and written in Markdown to AWS. And it cost me $0.00.
In a previous post, I created unit tests for a console app using Visual Studio’s Native C++ Framework and Test Platform. The process of running the tests with VSTest.console.exe in Terminal was rather tedious, so I decided to automate the process using GitHub Actions.
In this post, I’ll show you how to set up and run unit tests for a native C++ console app using Visual Studio 2019’s built-in testing tools. I’ll cover setting up the test project, writing tests, and running them in Terminal. We’ll also look at some pitfalls I encountered along the way.