For this assignment I have produced a self portrait of myself with two defining features: my glasses and my camera.
Initially, the concept I wanted to pursue involved a simplistic rendering of my face with mouse tracking applied to the eyes and camera. I am most proud of the fact that I managed to achieve this idea with the eyes (albeit with some help from the p5js reference page). The main difficulty with this for me was trying to understand how the mouseX and mouseY functions worked in relation to the constrain function. However, with lots of experimentation, I managed to figure out how to implement mouse tracking the way I intended for the eyes. I have included the code for it below:
// eyeballs fill(255) ellipse(150, 175, 50, 40) ellipse(250, 175, 50, 40) // pupils fill(80, 40, 10); let leftPupilX = constrain(mouseX, 140, 160); let leftPupilY = constrain(mouseY, 170, 180); ellipse(leftPupilX, leftPupilY, 25, 25); let rightPupilX = constrain(mouseX, 240, 260); let rightPupilY = constrain(mouseY, 170, 180); ellipse(rightPupilX, rightPupilY, 25, 25);
This leads onto the many aspects which I wanted to implement but could not with the main one being the implementation of mouse tracking on the camera. Ideally, the intended outcome was to have the eyes track the camera as it moved around with the mouse in order to create a more dynamic and interactive experience. However, I could not figure out how to apply mouse tracking to multiple shapes. Some other details which I wished to include were facial hair (I was unsure how to go about it and ran out of time) as well as the curve in my glasses which connects the two lenses (I wanted to make a curved rectangle but could not find how). Moreover, I was unsure of how to present my hair so I just opted for a rounded rectangle which may be perceived as a hat.
In terms of the code itself, I feel that I should have made use of variables in order to make the act of placing the different shapes on the canvas in relation to each other easier. One point that I liked which came as a result of not using variables was that certain features were slightly off centre (e.g mouth, nose) which made the outcome feel more playful and hand drawn.