Project #2 Face Generator:

Give the Dog What They Want.
Then Give the Cat What They Want.

*Click the canvas to see the color of the dog change.*
*Hit any key on the keyboard to switch it to a cat.*

Description

This week, we learned how to randomly generate values, incorporate mouseX and mouseY coordinates, and interact with mouse clicks and mouse/key presses. I wanted to create a playful interaction that combines all of these elements into one.

Design Process

Initially, I set up different variables for R/G/B values for each part of the face: the face shape, eye color, freckles, nose, and lips. Then, I dug into limiting the ranges of some of those components by fixing them with a set of RGB values and adding/subtracting a randomized amount. Eventually, I ended up just randomizing the face color, and played around with blend modes to ensure all of the components on the face would be determined relative to the main color, and remain visible and compatible with the face color.

I incorporated the mouse coordinate interaction by adding a stretching bone. I also changed up the eye movement and facial expression of the dog to follow the magic bone.

The fish bones were tricker to make, and it took me a while to figure out how to continuously add lines with a set interval in between. I recalled the interactivity from Leffin's zipper from last class, and asked if I could play around with the for statement he used to add the teeth. Upon much trial and error, it worked!

Reflection

In the ideation stage, instead of randomizing the RGB values or size of shapes, I wanted to blend shapes that comprise of my drawing of a cat (ie. pointed ears, triangular nose) and those of my dog dawing (ie. long ears, round nose), and then pick random points in that transition (ie. from a triangle to an ellipse) to create mid-stage creatures between a dog and a cat. Realizing that blending shapes isn't in the scope of the project, I pivoted to switching from a dog and a cat using the system variable keyIsPressed, and used the randomization effect to determine the RGB values of the face and the accompanying snack. I hope to soon learn how to blend shapes and generate various types of catdogs.

Credits

For statement for sparsed shape drawing: Lost & Found, Christopher Leffin