Intro to Computational Media

15 cartoony faces drawn in thin and doodly black strokes are displayed in a 3 by 5 grid.

Weird Faces Vending Machine (2013) by Matthias Dörfelt

Face Generator

Objective

Build a simple generator that makes multiple variations of the same face.

Description

In parameterized design, you are a conductor rather than an individual musician. Instead of producing a single design where you have to draw out all the details step by step, you are using code to create a set of parameters that generate a variety of results.

For Assignment 2, you will create a face generator using customized variables and the random() function. Plug the maximum / minimum values into the random() for each feature. The face generator will create multiple variations of the face through mouse or keyboard interactions. Test, iterate, and refine the parameters by paying great attention to details.

This is an individual assignment. You are welcome to ideate and brainstorm with your peers, but the work you submit should be your own.

Design Constraint

Canvas Size: 400 x 400px

Timeline

Due 9/19

  1. Prepare a piece of paper and pencil, and recreate this 400 * 400 px grid template by drawing on paper.
  2. Draw two stages of the same face – the first drawing should depict the face at its first stage, and the second drawing should depict the face at its second stage. Once you have an idea of how your face would look like in its first and second stages, you should be able to use the range in between to create variations of the form. Here's an example by Nicky Du (BFADT '22).
  3. Transfer your drawings into the p5 sketch. Plug the maximum / minimum values into random() for each of the attributes.
  4. Make sure that you include the following technical components in your sketch:
    • User-defined variables
    • random()
    • mouseX and mouseY, mousePressed() or keyPressed()
  5. Closely observe how the attributes relate to one another in every variation, and refine the parameters until every variation feels intentional.

Submission Guidelines

Please submit your sketch to Canvas Assignment 2.

Tutorials