← Back to projects

Tiny Town

Tech Stack

UnityC#Blender

Team size: 1

Time frame: 3 weeks


Overview

Tiny Town is a procedural road generation project using L-systems to create dynamic road networks and urban layouts.

The goal of this project was to explore how simple rule-based systems can be used to generate complex structures and create varied environments.

Tiny Town

Introduction

L-systems are a mathematical formalism originally developed to describe the growth processes of plants and other natural phenomena. They work by iteratively applying rewriting rules to generate complex structures from simple initial conditions.

In this project, L-systems were adapted for procedural road generation, where generated sequences were interpreted using turtle graphics to create road layouts and explore different urban structures.

Tiny Town
Tiny Town

Challenges

One of the main challenges was designing generation rules that produced interesting road layouts while maintaining control over the generated results.

Balancing randomness and structure was important to create varied environments while avoiding unrealistic or overly chaotic road networks.


Results

The final result was a procedural road generation system based on L-systems, capable of creating different road networks and urban layouts from user-defined rules. Through Unity's Inspector, users could modify the starting word and generation rules to experiment with different outcomes.

Through this project, I gained experience in procedural algorithms, rule-based generation, and developing interactive tools for content creation in Unity.

Tiny Town