The CS777 Art Assignments
The purpose of these assignments is to force you to get some appreciation for what it takes to make art, force you to learn some things about the tools, and give you a chance to express your creativity.
All assignments are graded "check/no-check." E.g.: what's important that you do something, even if its not a great work of art. Hopefully, you won't choose to do the minumum required, since that's no fun.
All of the art assignments will have public screenings in class, and most will be put up for public viewing on the web. So hopefully, this will encourage you to do something cool.
You must work on each art assignment with a partner. For art assignment 4, you will probably want to work with your project 1 partner. For the first three assignments you will need to work with a different person each time.
The deadlines are relatively firm, and are always before class on a Monday. We need to get them on time so that we can get them ready to show in class on Wednesday.
There are hand-in directories for the assignments which can be found at:
Inside the directory named after your CS login, there are four directories, named assignment1 through assignment4. Place files related to each art assignment in the corresponding directory.
Art Assignment 1
Due Monday, February 3, 11AM.
The goal of this assignment is to remind you how to write a graphics program, and give you an idea of how to make expressive characters (both how simple the characters can be, yet how hard it is to be expressive).
You are to write a program (I recommend C++ and OpenGL, if you want to do something else, please contact me) that animates 2 characters moving around on the screen. One should be happy, the other sad. The characters can be as simple as you like - a circle can make a good character - but somehow (preferably through the motion) the characters must convey their emotions.
Drawing a smiley face and a frowny face and having them move the same way fullfills the letter of the law, but not the spirit. (you'd get a "check", but a grumbling audience at the show). I'd much rather you experimented with making things move in interesting ways than
If you want a challenge, make a third character that is angry.
We will show your programs by running them on a laptop. It might be my laptop, which has really bad OpenGL performance.
Specific details on how to hand in your program will be given soon. You will be given a hand in directory to place your files, and will need to provide us with what we need to build your program, as well as what we need to execute it (yes, we will ask you to turn in your executables for this).
You will also be required to turn in some images. In your handin directory (again, details coming soon), you should place a file called "a1-names.txt" with your names on a single line. You will also turn in some screen shots (at least 1, at most 5) of your program. For each screen shot, please give us a full sized one (whatever that means to you), as well as a 120x90 thumbnail. Please name these files "login-a1-1.jpg" and "login-a1-1-sm.jpg" (or change it to -2 for the second image). Hopefully, we'll be able to make a web page of all these using a script or an editor macro.
Only one person from each team needs to do hand in files.
Art Assignment 2
Due February 10, 11AM
The purpose of this assignment is to force you to introduce yourself to Maya. It's big, mean, and can take a lifetime to master. But working with a partner you should figure some things out.
Fire up Maya and make a picture. It must be rendered (not a screenshot or play-blast).
At a minimum, your scene must have an in-scene light (that casts visible shadows), at least 3 different types of geometry, and at least 3 different surface types (including using a texture map). Hopefully, you will chose to do more than the minimum. You won't be graded on artistic merit, but trying will give you a chance to experiment with the tools. You may also turn in more than 1 picture.
For each picture turn in a "full size" (say 640x480) version, as well as a thumbnail (120x90 pixels) version. Use the same handin strategy as with the images from assignment 1 (e.g. a2-names.txt, a2-1.jpg, a2-1-sm.jpg).
You should work on this assignment with a partner, although each person should make a picture. Therefore, everyone should turn in at least one picture.
Some Maya resources can be found at:
Art Assignment 3
Art Assignment 3: Make an Animation!
Due February 17, 11AM
For this assignment, you are to use Maya to make a short and simple animation. The purpose of this assignment is to make sure that you have a full set of tools at your disposal, and to give you some idea as to what animators are up against.
At a minimum, your animation should be 5 seconds long, have at least 2 objects that are moving, and have a camera motion that is "intentional" (e.g. that there's some idea of why its there).
You must also make a character that moves around, and have this character do something. For example, you might try to make a humanoid character and make it walk, or a snake slither, or squirrel climb a tree or ... Try animating this by hand (key framing it). The goal here is for you to appreciate how hard it is to keyframe good motion, not necessarily make a great work of art.
Again, I hope you do more than the minimum, and use this as an opportunity to experience some of the things we discuss in class, particularly keyframing. On the other hand, don't be too ambitious. In 2 weeks, its unlikely that you will be adept enough with the tools to do create Toy Story.
We will explain the file formats that we want the animations in (most likely 320x240, DiVX compression). You must also turn in still frames from your animation using the same naming convention as the previous projects (e.g. a3-names.txt, a3.avi, a3-1.jpg, a3-1-sm.jpg, ...).
For this assignment, you must work with a partner. The pair of you only needs to turn in one animation and set of still frames.
Some Maya resources can be found at:
Due March 24, 11am
Assignment 4: The Fight
The purpose of this assignment is to get you to think about how to use your work in Project 1 for creating animation, and to learn how to connect your programs and Maya.
We will provide you with a pair of motion capture files (in BVH format) of two characters fighting. You must make an animation of this fight. (yes, everyone will make an animation of the same fight). You only need to create an animation of the first 220 frames, but you can do the whole thing if you want.
You must create this animation in Maya. So part of your challenge will be to devise a way of getting motion capture data into Maya. Your project 1 will be very helpful for this.
For this assignment, you must turn in your Maya file, a rendered AVI file, and some stills. You will also need to make a web page that described how you made the film. While we're only asking for a moderately low resolution file from everyone (320x240), we might ask for a higher resolution version later (should we want to make a compendium video)
Again, you only need to turn things in once for both people.
I have this fear that people are going to make this into more trouble than its worth for them, so here are some hints as to how to do something easy:
Remember, the whole purpose is to show that you can get data into maya. It can be really simple. Think about trying to make things simple. Simple to render, simple to animate, ...
The spirit of the assignment is to write code that gets stuff into Maya, not necessarily make a great animation. (as always, great animation is a bonus, but ...) I would much rather you do one of the simple things below, than to find some commercial BVH importer and do a fancy art project.
Here's a really simple thing: write out the positions of all the joints as a MEL script. have a bunch of spheres move around.
Here's a slightly less simple thing: compute the global position and orientation of each bone, and write it out to a maya script - put a simple piece of geometry for each bone.
Here's a complicated thing: have your program write out a mel script that builds a hierarchy and fills it with the data.
If you find that things are too slow, or that those intermediate scripts are too long (and making Maya barf), try simplifying: leave off the characters toes, skip every other frame, ...
|(c) 2003 Michael L. Gleicher|