Submitted by , posted on 22 July 2002



Image Description, by


TrixelLife is a lifegame in 3D, so it plays on a grid of cubes and each cube can have up to 26 neighbours.

Game of life is a cellular automaton invented by John Conway in 1970, for more info on this game go here: http://www.math.com/students/wonders/life/life.html. This page also contains links to an extremely cool java applet of the 2D version of game of life.

Trixel 3D is a raycaster I made few months ago, it uses a 3DDDA algorithm to display a 64x64x64 voxel world on screen. It works fast on anything faster than 1GHz but too bad most of the slowdown goes to the pixeldrawing, not the raycasting, I still need to work on that. Sorry for the very small resolution, by the way! Trixel is actually a contraction of Tri + Pixel, or 3-dimensional pixel. It sounded cool enough for a name for the "engine". This suggest that the world is a 3D array, which is true. Each voxel can have it's own RGB color and it's own shape (empty, filled, lifegame-cell, random-noise cell, other graphical effect, blahblah).

It uses SDL for the screen and input. The camera supports 6 degrees of freedom. Unlike regular 3D engines or even regular raytracers, this one works faster if there are more cubes, no matter how complex the geometry is. All that counts is that if there are more cubes, the rays will hit them faster.

Because Trixel uses such a voxel world it was just begging me to make a 3D life game of it, so here it is.

You can set the rules in an ini file, this means you can set how many neighbours a living voxel needs to survive or die and how many neighbours an empty voxel needs for a birth. A voxel can have up to 26 living neighbours (that's simply because of the geometry of a cube grid), so there are a total of 2*26 = 52 rules (instead of 2*8 = 16 for the 2D life game).

In the program you can place living cells manually and whenever you want press the spacebar to run the rules once, or hold the spacebar down to run them all the time. The rule calculation goes really fast, faster, for example, than MSN Messenger needs to display one smiley!

By default the game uses the same rules as the 2D version (2 or 3 neighbours for survival, 3 neighbours for a birth), but because it all plays in 3D now, the result is completely different, in fact the living cells "explode" quite easily, this created large 3-dimensional shapes. I didn't find a stable set of rules yet... does anyone know some?

This is of course not the first 3D game of life out there, but in combination with a raycaster I thought it was cool enough to post on flipcode :-)

You can download the thing here:
http://www.perilith.com/~lode/trixel/Files/TrixelLife.zip. Just unzip it and run it. Please read the included readme first for an explanation on the ini file and the controls. I may upgrade this game of life and Trixel itself when I feel for it, maybe I'll even try to make other cellular automata in 3D because next week I should receive Wolfram's book A New Kind Of Science from Amazon.

Have fun,

Lode Vandevenne.



[prev]
Image of the Day Gallery
www.flipcode.com

[next]


 


Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
Please read our Terms, Conditions, and Privacy information.