Not much exciting to post about today. Kyren’s been working on nitty gritty technical stuff, addressing some threading issues we’re running into with C++11 pointers. Armagon and the artists are continuing work on missions that I’m not allowed to post about yet.

I’m still playing with the terrain generation, seeing what its capabilities and limitations are. Here’s a screenshot of some WIP desert canyons (click for big):

The terrain generator works by combining multiple layers of Perlin noise. In this shot, I’m using one source to define the primary surface terrain (low dunes), another source to define the rough bottom of the canyons, and a third to mix between them, with bias toward the primary source to make canyons less frequent. There are several problems with the current configuration, however. The most obvious problems are the sharp corners at the canyon edge where the mix shifts from 100% primary surface and rapidly begins switching to the lower canyon terrain. These can be addressed with some smoothing in the mixer (which needs engine changes to implement). Another issue without an obvious solution is what to do with the background. Because of the dimensionality and limited number of layers, it’s difficult to visually distinguish an open valley from a long, narrow canyon from a deep hole. I’ll have to experiment further to find a satisfactory solution.