Devblog 20 – Procedural Island Generator

Procedural island generator

DOMEN KONESKI

To begin with, our focus lately has been on reworking our island generator. At the beginning of development we had a weak system, where you placed ‘spawner’ on an island with a set of rules to follow. This system did work, but as the development continued we have found little to no variations at the end and we became bored of it. Consequently Floatlands needed a procedural island generator!

Domen, our lead game designer, started working on his own procedural engine, which first produced simple islands with basic flora on it (trees, bushes and grass). The system can be easily tweaked as the development continues for optimization and gameplay purposes (e.g. too much trees at one spot – too much resources for player).

ISLAND SIZES

Floatlands will have 4  different island sizes and 4 biomes to follow (we are going to add biomes and sizes later on).

procedural island generator lowpoly floatlands
Island sizes, from ‘shelf’ to ‘father’ island
Size Description
Shelf A tiny bit of an island. Used to create some variation on other islands.
Normal Normal sized island. The majority of Floatlands islands.
Mother Bigger islands. Used mostly for resource gathering and shelter building
Father Biggest islands. Used for exploring. These are dangerous!
procedural island generator lowpoly floatlands
Island size comparison from players perspective

ISLAND BIOME

Each island (and perhaps islands around it) will contain specific set of flora and fauna objects. However, in the first release there will only be 3 major biomes. Normal (grassy, rich with resources), Snow (foggy and cold place) and Desert biome (dusty and dangerous). Even more, each biome will have its own color scheme and weather.

Biome Description
Normal Populated with animals. Lots of resources can be found here.
Snow Foggy and white – rich with minerals
Desert Dangerous place to be

For example, here we’re using our early version of procedural generator:

procedural island generator normal island lowpoly floatlands
Normal-sized island with ‘Normal’ biome.
procedural island generator mother lowpoly floatlands
Snow biome on a ‘Mother’ -sized island.

ISLAND PATHS

Each island will also have some paths that will connect certain points of interests. This idea is still work in progress but we’ve already managed to write an algorithm that creates a nice path/spline on an island, regardless of its size.

procedural island generator panorama lowpoly floatlands
Procedural generated path. Panorama shot of in-game gameplay, using volumetric lightning.

To conclude, here’s a quick panorama in-game shot. We started to use a volumetric lightning technique, which explains the shininess! Plan for the future is to add animals, more flora variety and points of interest (e.g. abandoned shacks).

Join us on Discord


6 Comments

  1. C.J.Geringer says:

    Looking good.

    why did you choose “desert” as the one to be dangerous?’

  2. Nicolas says:

    Love it! What know algorithms did you base this one on? Marching cubes and what else?

    • admin says:

      Base islands are premade, which means initial shapes (doughnut, lune, other shapes) are already there and can be always added for more island variety – we have more control on what to expect after the procedural generation. The proc. generation bit is when we modify the terrain (mesh) using Simplex noise in various forms (flat, hill or mountainous enviroment). For island paths/pathways we are using Catmull’s spline algorithm.

  3. Matei says:

    What kind of volumetric lighting solution are you using? Is it something form the AssetStore or is it a custom solution?

    • admin says:

      For now we are using a solution from AssetStore which is called HxVolumetric lighting. It suits us really well with this project and there is no need to write our own system since it takes alot of mindpower and time.

Leave a Reply

Demo Gameplay