Work continues on the Terrain Engine.
As I mentioned in previous updates, the terrain uses fewer polygons in flat areas and more in uneven areas. This is nice, but we can still do more. For example, Polygon density is the same all over the terrain. A better idea is to have it be more agressive in removing polygons in the distance. Stuff that is far away could be much simpler. Let’s see:
This time, the lower-left shows the normal optimization, and on the upper-right is the one where it removes more polygons in the distance. As you can see, close up they work the same, but in the distance I’m now using a lot less polygons. I’m all the way down to 65,195 polygons! That is a reduction of about 88% from our first terrain. We can see the difference at this point, but the differences are subtle and easily worth the massive savings.
I’ve added some code to look at the shape of the land and color it accordingly. The high grass is pale, the lowland grass is deep, lush green. Steep banks are dirt-colored. High banks are grey (rock) colored.
Note that all of this is simple vertex coloring, just to give an idea of how the terrain might look if used in a game of some sort. This is cheap and simple, and will be replaced later in the project by something more robust.
Now it’s starting to look like something. However, the surface is so smooth and the color changes are so gradual that the whole thing looks like dull plastic. That’s not what I want. Let’s give it a texture.
That makes a big difference! The texture I’m using is very simple: it’s just random greyscale noise, like a low-contrast version of television snow. Still, the small variations of brightness really brings the surface to life. All these screenshots so far have been from the same position for comparison, but there is a lot more to the terrain. Let’s look at it from another angle:
I want to point out that I am avoiding adding lots of fancy effects to the scene. I could make this look much more striking by using dramatic lighting (sunrise or sunset shading), adding a proper horizon (so this isn’t a square island floating in space), adding clouds, sun, lens flares or any number of other scene-enhancing effects. Without these, things may look bland, but it also means I won’t be propping up a lame system with a lot of makeup. The time to add that stuff is later.
The Best of 2012
My picks for what was important, awesome, or worth talking about in 2012.
The Witch Watch
My first REAL published book, about a guy who comes back from the dead due to a misunderstanding.
A programming project where I set out to make a Minecraft-style world so I can experiment with Octree data.
A programming project where I set out to make a gigantic and complex world from simple data.
The story of me. If you're looking for a picture of what it was like growing up in the seventies, then this is for you.