• Register
Post news RSS NOWHERE Progress Report: Procedural Procedures!

Four weeks have passed, and still no new NOWHERE alpha in sight. What's happening? Time to give you all a little heads up.

Posted by on

The colony as it looks at the moment was already cool enough to make a few jaws drop, but we're not happy. The game's world is supposed to be a rich diverse place, yet with a kind of homogeneous look but featuring a lot of distinct landmarks; as if that wasn't enough, each new play-through is supposed to throw the dices anew and generate a whole different look for the world. The colony will look a little different to each player.

In the first two weeks I worked on a base implementation for easily generating 2-manifold meshes based on Fabian Giesen's excellent implementation guide on the subject, adding support for splitting vertices and faces, subdivision and texture mapping. In the rest of the time I worked on a generator for hexagonal greeble patterns to skin meshes with interesting surfaces. It's very early stuff, and more is about to come in the following months.

I believe a few screenshots in chronological order will explain our progress best.

It all starts with a quad

Splitting faces is one of the two elemental operators to increase mesh complexity.

Testing extrusion, which is built from the split vertex/face operators.

Added code for various base primitives, here's a cone.
How awesome is that? Not much. Moving on.

It took a long time to get this right: meshes with holes.

A repeated sequence of face extrude & transform can yield pretty organic structures.

Catmull-Clark subdivision surfaces with support for creasing / semi-hard edges.
I think we're done here.

Just one of many failed attempts to somehow get a grip on a workable pattern technique.

This was one of the earliest hexagonal patterns we did, manually, a year ago.
Why not do this procedurally?

Eroded RLE noise with an axonometric projection,
with islands identified and colored by flood-fill algorithm. Piece of cake.
A bright spot kept whooshing by the window several times while I worked on this.
I'm not fully sure but I believe it was the sun.

Another generated pattern, this time with a more appropriate color scheme.

This is what a generated texture tile looks like.

Testing one of the generated textures on a fitting object using Blender/Cycles.
The procedural technique used here is
based on repeatedly simulating
a round of Nibbles/Snake, by the way.

Time to put it in the game. A first generated mesh looks pretty good! And yet still so much to do...

Hope that was as interesting for you as it was for me. Expect a new alpha build appearing in your account soon! Watch the skies!

Introvous - - 9 comments

Pro O:

Reply Good karma Bad karma+1 vote
Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.