482/681, Dr. Lawlor
The idea for this second project is for
you to write a complete end-to-end simulator of something you're
interested in: similar to the homeworks, but in more depth, and on a topic of your
- Describe what you want to build in-class on Monday, April 6.
- Give me rough draft code (working, but not complete) on
Monday, April 20. If you're taking the graduate
section, this should include an outline of a technical
paper describing your topic.
- Present your progress in-class during the week of April 27-May
- Turn in a final draft on Thursday, May 7, the day of the final
exam. This version should work completely, and look
good--carefully prepared textures, a nice user interface, etc.
If you're taking the graduate section, this should include a
writeup formatted like a
scientific paper--this formatting is so standardized you can procedurally
generate scientific papers (although they have no
Topics (or pick your own!)
Choose any one of these topics, extend
your Project 1, or pick your own new topic. Remember you have
under a month to finish everything, so keep it simple! If these
seem too big, feel free to simplify them in your "topic"
Note that the above links are chosen
purely on the basis of visual coolness; better links explaining
the above techniques undoubtably exist!
- Extend any of your homeworks, from this class or another
- Pick a technical paper you're interested in, and implement
- Many independent agents, like people
fleeing a fire or a freeway
- Plant growth, such as L
- Waves, such as wave
particles or FFT
and colliding in space. There are lots of good libraries
for this, including Newtonand ODE.
- Non-rigid bodies, such as cloth, clay, or rubber.
- Hair simulation, like mass-spring
- 2D fluid dynamics, usually
on a regular 2D or 3D grid.
- Simple cellular automata (e.g., Conway's
Game of Life). These are especially fun to write on
the graphics card using a pixel shader!
any type), on the graphics card or off.
- Or pick some other simulation you're interested in, and can
find useful data on!