Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 10 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,26 +1,18 @@
# lab06-proceduralFace

Let's practice parameterization! We'll be starting with an oh-so-beautiful gingerbread man face that looks like this:
![image](https://github.com/user-attachments/assets/4707eb0a-b25e-4eda-84e3-3bb336981781)
For this procedural SDF face, I add the two parameters SURPRISE and JUDGEMENTAL, taking in values from 0 to 1 and modifying the resulting face to express the intended emotions.

## Setup
Start by forking [this shadertoy](https://www.shadertoy.com/view/XftyR8)
## Link

## Task 1
In the faceSDF function, add a new float parameter called SUPRISE a value between 0 and 1. Copying the way EYE_SEPARATION is used, modify the face such that the gingerbread face looks more or less surprised based on the value of SURPRISE. SURPRISE = 0 should be not very surprised, and SUPRISE = 1.0 should look very surprised. Note that the face shouldn't look broken for any value in that range!
Changing this parameter should change at least 3 geometic attributes of the face and more than one facial feature (just eyebrows are NOT SUFFICIENT).
https://www.shadertoy.com/view/332BWK

![image](https://github.com/user-attachments/assets/76d63b1b-f3af-456a-8031-8b8da0abe125)
## Images

## Task 2
Your own parameter! Create a new attribute of your choice that maps to a procedural face characteristic in the domain of [0,1]. It SHOULD NOT be a literal attribute, eg. eye-separation or mouth size, but instead a more qualitative, subjective quality that you tie to specific geometic parameters using your design sense. Have fun!
Here are the results.

## Extra Credit
In the faceSDF function, create a new float parameter called SADNESS. Follow the same guidelines as outlined in Task 1.

## Submission
- Create a pull request to this repository
- In the README, include the names of both your team members
- In the README, create a link to your shader toy solutions
- Make sure your shadertoy is set to UNLISTED or PUBLIC (so we can see them!)
|<img src="https://github.com/user-attachments/assets/9b97c781-21e4-40c4-aa87-fa726d55d789" />|<img alt="Screenshot 2025-11-12 114406" src="https://github.com/user-attachments/assets/d386802a-fd71-4a2b-ac8a-72d2392cf0c7" />|
|:--:|:--:|
| *SURPRISE: 0, JUDGEMENTAL: 0* | *SURPRISE: 1, JUDGEMENTAL: 0* |
|<img alt="Screenshot 2025-11-12 114432" src="https://github.com/user-attachments/assets/65977571-7e2d-46b0-8381-2ee8c64754d5" />|<img alt="Screenshot 2025-11-12 114450" src="https://github.com/user-attachments/assets/ba8fb35f-550d-444c-893d-bc921f637c22" />|
| *SURPRISE: 0, JUDGEMENTAL: 1* | *SURPRISE: 1, JUDGEMENTAL: 1* |