October Challenge 2014
Ends in:

Coming Soon:
Ludum Dare 31
December 5th-8th, 2014

*EST: 9 PM
UTC: 02:00

ConstructionPlease excuse the site weirdness. Mike is making and fixing things. Clocks are probably wrong. Colors are place-holder.

Ludum Dare 31:
Ludum Deals
MiniLD #XX

2D Tile Engine!

Posted by
April 30th, 2011 7:37 am


Just a few demos using only 10×10 tiles:

How it happens:
A 10×10 tile is created using a boolean array:

for(int i=0;i<10;i++){
	for(int j=0;j<10;j++){
 		tiles[i,j] = (Random.Range(0.0f,1.0f)>=0.5f);

Then each tile checks its surrounding tiles and records the environment status into a flag:

byte getFlagsForTile(int i, int j){
	byte result = 0;
	int curPos = 0;
	for(int k=-1;k<=1;k++){
		for(int l=-1;l<=1;l++){
	return result;

Based on this flag system:

So if the flag’s first bit is 1, that means there’s a tile on the lower right of this tile.

Using the flag as a guide, the tile can then pick its graphics from this sprite sheet:


That’s it … also I will use the flag information to generate collision.

One Response to “2D Tile Engine!”

  1. snowyowl says:

    Wow. That is an awesome sprite sheet.

Leave a Reply

You must be logged in to post a comment.

[cache: storing page]