

I've started on the combat/exploration-mode test graphics. Those are done on a smaller scale, individual trees and rocks and such-like. Don't really have anything to show there yet since it was pretty busy at work.


Each individual hex is a mesh. I don't apply the displacement at run-time, I apply it as a modifier to a finely subdivided basic hex primitive in Blender, then bake out texture/ambient-occlusion/normal maps and a reduced-detail version of the displaced hex mesh:

A typical mountain displacement map looks like this:

Generating it is pretty simple: my usual "fuzzy disk" (ie, cross section of a sphere function) with a Bias function applied, and fBm turbulence in the X and Y axes. Then a mask is applied to snip it to a hex, and an erosion filter is applied before importing it into Blender.
Edit: As far as GPU goes, it's nothing special. It's an $800 HP from Costco with a 5300 series Radeon. I never buy any kind of dedicated, top-of-the line gaming hardware, since I don't play many AAA games and I certainly don't develop AAA games. I figure that if my game runs well on a shitty HP from Costco, it should run well for the majority of people who would ever conceivably play any game I make. Developing on a high-end machine, in my opinion, would only serve to hide potential performance problems.
Super zoomed out:

Haha, that looks great !
If you want to get rid of the hard lighting, I would test to use wrapped lighting, which gives a softer, more GI, lighting effect. Instead of
diffuse = max(0,dot(light_vector,normal_vector))
use
diffuse = dot(light_vector,normal_vector)*0.5+0.5;
Ashaman73: You're right, that does make it look a little softer:

On the left, your wrapped lighting with a single directional light; on the right, the old way using 2 directional lights, one in the back for filler. Not only are the shaded areas softer and smoother, I was able to drop a d-light and save a pass.
I really love this new style, as it is what I was planning on doing for my hex based strategy game I am going to make...
So is this ground mesh all one huge mesh or you taking patches and displacement mapping each patch... So say each path has 256x256 polygons and you height displacement each vertex? If so how are you going about making the hex outline of each patch? Are you limiting the workable area of the square displacement map to the inscribed circle of the hex?
I would love to see some of the displacement maps of the mountians as a .png file so I could check it out... if you don't mind ;)
Keep up the good work!!
BTW what GPU are you using in your desktop to develop this?