Project 1: Auto-Generator

📌 FINAL PROJECT BUILD + DOCUMENTATION DUE: Week 3 Tuesday, January 20

Submit Final Submission Here

Please read the How To Submit page for more detailed instructions.

Prompt

In order to keep play interesting and unique for each iteration, video games often use custom algorithmic systems that dynamically generate different environments, characters, and other game data using the same set of assets.

To get familiar with building custom dynamic systems using Unity and C#, your first project prompt is as follows:

Create a generator in Unity that only requires 1 ~ 2 button controls to run.


Consider the following options:

  • a landscape / level / terrain generator;
  • a character generator, eg. exquisite corpse;
  • an evolution simulator, e.g. cellular automaton.


Possible techniques:

  • modular architecture using prefabs, arrays/lists, instantiate/destroy functions, empty transforms as connection points;
  • procedural / algorithmic generation using random functions, perlin noise, custom parameters, L-systems, cellular automata, etc.


    -- The Bibites on itch.io
    -- (Youtube video) "Coding Traing #16: L-systems"

    -- Conway's Game of Life


Tips:

  • Consider what constraints or rules you can impose to create unique forms and color palettes.
  • You may work in 2D or 3D. Lean into your strengths as a visual designer / artist as much as possible with this project! (And also remember you don't have much time!)
  • Consider how a viewer will see / experience your generative designs. Can they orbit the camera around? Can they press a button to generate new objects?


Inspirations

-- Hao Liao and Joey Schutz, "Quick Character Genreator"
-- Will Herring, "Pet the Pup at the Party"
-- Lingdong Huang, "Better Horses"
-- Kate Compton, "Flowers"... who also wrote this Tumblr post about making generators "So you want to build a generator..."
-- Titouan Millet, "Mu Cartographer"
-- Nicky Case, "Emoji Simulator"


Requirements

Your final project requires:

  • the use of modular OR procedural generation techniques, or even a mix of both!
  • at least 1~2 button controls to run.


Your final project is not required to:

  • be a traditional video game;
  • have sound / audio.


Evaluation

Your final project will be evaluated according to the guidelines listed in the course syllabus.