Liam Wynn

This is my site. Here, I make neato projects and blog posts.

Blog

Projects

Resume

Home

22 January 2018

Ulysses First Release

I have my first project up and running: Ulysses.

Check it out here.

Ulysses will be an on-going development. So what you see is by no means a final product. At the moment, it only generates a colorized height map. Later on, I’d like to add more features to it. For now, in a sentence, it’s just a fun experiment in procedural terrain generation that tries to make scientifically plausible worlds.

I’ll write up a post on how I generated these worlds over the course of this week. There really isn’t a whole lot at play here, but it’s still worth it to know how I did these things.

In the mean time, here are a couple of worlds of size 256 x 128:

World 1

World_2

World 3

Note that blue is oceans, green is land, and white is mountainous land. In these worlds, there are 60 tectonic plates used, 20% of the world is land, and 5% of the world is mountains. The other 75% of the world is oceanic.

What I love most about this is how configurable it is. You can not only change the dimensions of the world, but also stuff like the number of tectonic plates, the amount of land, mountains, etc. This was a goal of mine, and I’m really happy to see this manifest into a final product. Further, the diversity of the worlds is awesome. A lot of other algorithms that just use perlin noise, for example, produce worlds that look the same. In addition, these worlds have all kinds of features, from continents to island chains and everything in between.

An interesting thing to note: these worlds wrap around the edges. So the top of a world and its bottom are seamless (as well as the left and right sides). Also, the generation process is very quick, even with worlds as large as 1024 pixels by 1024 pixels. I have not benchmarked this in any way though. That would probably be a worth-while endeavor.

Home