Game
Replication Extermination
8 years ago

Procedural Generation In Replication Extermination


The procedural world generation in Replication Extermination is the current iteration of my ongoing love affair withprocedural generation. This syten primarily uses Unity’s Mathf.PerlinNoise() function to create “seeded” randomized values (cellular in nature, as is the point of PerlinNoise).

I’m using a chunking algorithm that uses the player’s current world position to create adjacent world tiles as the player moves. Each of these world tiles has 1600 navigation point objects in a grid. When a world tile is generated, each navigation point’s values
from a variety of offset PerlinNoise maps, such as blocking weight, forest weight, and
hindering weight. These weights on each navigation point are used to determine what world/terrain feature to spawn at the point. Random.InitState() is also called with the tiles position, so that all following random values will be seeded for that tile.

Spawning these world features takes time, so we use a coroutines and every 40 objects spawned we allow a frame to pass. The new world tiles appear in the distance, before the player can see the new world tile.

After the terrain features have been generated, we go through the open vertices and spawn enemies, cores and powerups.



0 comments

Loading...

Next up

Bandana Dee the Dream Friend

Runestones: from concept to in-game model🗿

I was bored, so... ManutKat.

Sometimes the suction cup get sticky. Small animation I made in Blender after doing my tutorial on picking up/dropping objects in animations. Crate model by jQueary (https://sketchfab.com/3d-models/game-ready-sci-fi-crate-d98deca6…).

The whole squad is here!

Interested? Follow me!

One of the most critical update for Sunblaze demo. Now you are able to pet a cat! Finally!

Microsoft Windows XP Unprofessional (windows logo prototype)

a drawing I did because I was bored😪. But I love how it turned out.😊

I worked so hard to get all four of them to the end safely, but then...

it happens