503: the dawn of an old age.

AKA “the project formerly affectionately referred to as project sword and also formerly occasionally humorously referred to as project you’re a nation”.  (503 is shorter)

->Download now: 503 -236kb<-

A third render of the same map from a similar angle as the first two posts highlighting the differences. Click to view full size.

Instructions:
The project at this point is still about exploring the map, more to come, hopefully soon.  Movement is WASD and directional keys. Q and Z controls elevation.  N for new map. F2 to gain control of your mouse. Esc to quit the program (only works if it’s the active window, you may need to click then hit esc.)

Geek stuff:
So this update has a lot of new work in it.  The horizon looks much more realistic as I’ve vastly improved my generation algorithms.  I separate the rock and dirt into separate arrays, while exaggerating the rock.  Then treat the two differently in erosion.  A much bigger step I’ve made though is the river and lake generation.  This was a lot more difficult than I expected, I basically rain on every vertex then allow the water to go down to the lowest adjacent vertex absorbing a small amount of terrain per step then when it is trapped it begins raising the height with water and placing terrain instead of taking it. Eventually it finds it’s way out and continues until it reaches the ocean.  Mass wasting was much simpler, though I’m not completely satisfied with the results.  It moves earth much like the water moves.  It breaks off a chunk of terrain if the slope is too steep, and moves it to the lowest adjacent vertex.  Then runs again on that vertex and so on.

One of the noise parameters I added controls distribution. This is what one of the maps look like when I override the default value for the heightmap generation. A very exaggerated version of the pyramidding mountains is clearly visible.

The problem is that there are 8 adjacent vertices so if I had a large area that was really steep I always end up with large flat areas with well defined corners, and coastal shorelines that are straight.  Maybe a little more robust slope detection check would do the trick.  I abstracted my heightmap generation and then use it to make 2d noise maps. I also made it a little more powerful so I can create more specific noise maps. I generate several noise maps with each new map. Though, you can’t see the effect of any of them except one. The green terrain looks more interesting now; the darker patches represent forest. I still need to tweak these values.  But, I’ll probably get higher lod terrain streaming and tree generation before I tinker too much with it.  I could probably get a decent looking skybox with a little bit of work using the same noise generator.  Maybe I should have got that out before posting;  But, I’m trying to find a balance between high frequency posts and actually having something to show in the posts. Ideally I would like to post once per week but that may be unrealistic. We’ll see how it goes.
As a side note, the name, 503, refers to a period of time on the Gregorian calendar, or AD 503.  While the game won’t be historical it will be designed to be in a very distinct setting (late antiquity/early middle ages/dark ages/whatever you want to call it, in western Europe).  503 is probably a little too exact but it’s just a name.  I’ll figure out a subtitle for it later as it’s too ambiguous right now.

You can start to see what the horizon might look like from the land.

Updated:
-Erosion added: both mass wasting and fluvial simulation
-Noise maps generated for various resource placement
– Multithreaded some of the generation to make it a bit faster on multicore processors
-updated texture generation
-fixed a small (but annoying) memory leak in the generation (about 2kb per map generated)
-a bunch of smaller stuff I can’t think of right now

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s