Arc 0

Climate 2: Rivers and Erosion

Posted on

I’m doing this a little out of order. Why groundwater and erosion first? Modeling the water layer on and in the ground is an isolated section of climate simulation. Whereas the air modeling has interdependent parts (radiation, convection, etc.), the groundwater system is self-contained except for precipitation and evaporation. I can easily implement a dummy […]

Arc 0

Climate 1: Climate Simulation for the Computationally Limited (Research and Overview)

Posted on

Unlike plate tectonics, computational climate simulation has an enormous body of research because of modern meteorology. Although we often we joke about incorrect weather forecasts, it’s pretty amazing how accurately we can model the entire atmosphere days in advance.  With climate simulation we have the opposite problem. Modern Global Climate Models are so detailed that it’s […]

Update

Update: Climate Sim Stability

Posted on

This week I encountered an interesting simulation stability bug in my climate. All the air in my simulation was steadily traveling from low to high altitude. I haven’t posted on my climate simulation section yet so here’s a little background on how it works. I hope it’s enough to help this post make sense. My […]

Arc 0

Terrain Generation 5: Fault Features

Posted on

In my last post, I worked on making tectonic plates and smooth elevation transitions between plates, coasts, continents, and continental shelves. In this post, I’ll add additional fault features such as mountains and rifts. Also if you’re puzzled by any of my not-very-scientific plate tectonics, check out my post on Tectonic Plates. Fault Feature Algorithm Overview […]

Update

Update: Erosion

Posted on

The erosion algorithm is showing signs of life. Here is the first time I’ve gotten water to flow to their natural pooling areas. I’m not sure if these are closer to lakes or rivers. My simulation isn’t very stable; right now all land surfaces eventually become covered in hundreds of meters of water. I need […]

Arc 0

Terrain Generation 4: Plates, Continents, Coasts

Posted on

Note: This post and the next will reference the faults and plate tectonics described in my tectonic research post. I’ll also assume you know the basics of simplex noise. I posted a quick rundown of some noise terms earlier. Mountain formation from faults involves some pretty complicated 3D physics. This video starting at 1:28 has a […]

Update

Update: Fault Upgrades

Posted on

I was cleaning up my tectonic plate and fault algorithm and got frustrated with several parts of it so I decided to redo much of it. That involved going all the way back to the Voronoi code and fixing a couple of longstanding bugs, improving and generalizing some floodfill/breadth-first-search functions and rasterization functions, and reimplementing […]

Arc 0

Terrain Generation 3: Voronoi Diagrams

Posted on

I decided to use Voronoi cells to model tectonic plates. Let me clarify that I am generating one Voronoi cell per tectonic plate. I am not using Voronoi cells as polygonal map tiles as Amit Patel did in his polygonal map generator. I am generating a small number of large Voronoi cells as tectonic plates, […]

Arc 0

Terrain Generation 2: Tectonic Plate Science

Posted on

When I began researching tectonic plates, the first thing I learned was how little we know about them. It seems the main cause of our lack of understanding is that we simply can’t see tectonic plates. I find it strange and amusing that we can travel all over the world in hours, and we’ve reached […]

Arc 0

Terrain Generation 1: Introduction

Posted on

Where should I start? There are many, many approaches to procedurally generating terrain. Terrain generation is the classic introductory exercise into procedural generation, or as it is sometimes called, “Hello, Perlin.” It is straightforward (the simpler algorithms, at least), and the visual results are easy to assess. Thus it’s been used in everything from fantasy […]