• Register

A little Turn-Based Strategy RPG set in the magical world of Eyja.

Post news Report RSS World Editing in Spellwrath

Spellwrath concists of an entire continent made up of billions and billions of Voxels. Placing each by hand would be crazy...

Posted by on



Spellwrath concists of an entire continent made up of billions and billions of Voxels. Placing each by hand would be crazy... Obviously, I'll need some little programmatic helpers. So, here is a quick overview of the 3 techniques I use:

Heightmaps

The probably most basic tool to creating large landscapes are heightmaps. It's pretty easy and fast to create entire worlds using photoshop and have them generated by an engine. As a matter of fact, there are entire tools out there that can help with that!

For Spellwrath at the moment, Photoshop is the tool of choice. However, the problem with standard monochromatic heightmaps is that there is no color/material information - only height. Therefore, I decided to use each of the 3 color channels for different things:

  1. Red - Heightmap
  2. Green - Material / Color
  3. Blue - Special markings, like buildable areas.

In total I use a 8192 x 8192 Image file. I would love to have an even bigger image, but I didn't want to split the image and going larger destroys my Computer. Therefore the mapping isn't 1 to 1, but rather each Pixel of that map translates into at least 128 Voxels. Yes, that's at least 8.589.934.592 Voxels. But the Engine I wrote for Spellwrath can handle rendering all of them on screen using a technique called Sparse Voxel Octrees.

What does the heightmap look like at the moment? Well, it's very very boring:

height SMALL


Placing Elements

The next step in the process of creating the world for Spellwrath is placing larger Objects. You may have seen that in the Game you can build buildings. I use this same technique to place other things inside the World. For example, below I've started working on a small Editor and tested it out by placing Trees:

forest

It's not a very complex process in itself, but took a very long while to get working from a programming perspective.


Voxel-by-Voxel Editing

And in the final step, I can always manipulate individual Voxels. This is obviously a last resort method for touching up certain areas or adding a tiny bit more detail. Editing billions of voxel by hand would be insane!

island


Final Words

This is all still an early look at the world building aspect of the Game. I am yet to reach the phase of actually generating content, as the Game Mechanics themselves are not yet fully implemented.

But I thought it would fun to share :)

Cheers,

Michael

Facebook | Twitter | Website

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: