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

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

Trying Out Rendering Methods

Posted on

I’ve been struggling with rendering my heightmaps for a while now. My last Update post was more or less venting about how I wasn’t sure whether to attribute flaws and improvements in my heightmaps to my actual heightmaps or the color schemes I was using to render them. Whenever I code a new feature, I […]

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 […]

Arc 0

Arc 0: Pre-Entity World Gen

Posted on

This project naturally separates into three general stages: pre-entity world gen, entity world gen, and “in game.” Pre-Entity World Gen Pre-Entity World Gen encompasses everything that occurs on a very long time scale, from billions to tens of thousands of years. This primarily comprises terrain generation and long term climate simulation. This section isn’t very […]

Update

Rendering

Posted on

I’ve been generalizing my renderer so I can display color maps of all the tile properties I’m generating instead of just the elevations. I thought I’d post some of the color maps that were generated while I tried to figure out better-looking color coding. It always takes a more time than I expect to find […]