Wanderingisland by clillianhong - 1

Procedural

Procedural generation of floating islands bodies in Unity

Unknown VersionUnknown LicenseUpdated 152 days agoCreated on July 28th, 2020
Go to source

Wandering Islands

Procedural generation of floating islands in Unity, adapted from this paper

Poisson Disc point generation for distributing islands

The current system only utilizes one layer of 2D poisson disc points based on this paper, though in the future it might be fun to implement a faster 3D version to be able to vary radius.

Height map adjustment curves

Ended up using the third curve on the bottom and the fourth on top, to mitigate the issues with the radial mesh.

Mesh Generation - finished, untextured

These are all using a linear relation to vary the height map maximum from edge to center; will experiment with different curves later.

Mesh Generation - progress pics

some tragic bugs (see end for more)

Populating 2D vertex disk

The vertex disk is filled radially, where one can vary the number of rings and radial divisions.

Offsets for island top and bottom halves

The initial disk is copied twice, with offsets going off in opposite directions to create the top and bottom of the island. These two halves will be stitched together during the mesh generation phase.

Outline Generation

The paper used approximations based on hand drawn outlines, but for simplicity I’m just generating a wobbly outline with perlin noise. Outline visualized with gizmos

Tragic Bugs

  1. Procedural Rose Generation???
  2. I put my eagle in for fun but he looks like the Avengers Helicarrier
  3. “Giant Pita bread fights a mid century modern chandelier”, Lillian Hong, 2020, Digital Media

Noise bug that wasn’t noticeable till higher density meshes were tested.

Show all projects by clillianhong