All images link to larger images.
James Shargo |
|
Real-time Fluid Dynamics ala Jos Stam
Using physical models to create interesting, swirling fluid-like behaviors tht convincingly mimic the appearance and behavior of fluids such as smoke, water and fire. |
Ciao Shi and Yi Su |
|
In our project, we use 3D L-systems combined with ray-tracing to create fanciful towers and castles. We generate a tower by using simple objects such as spheres and cylinders. In a rule, a cylinder might become four cylinders.
|
Hongyang Liu and Meng Wang |
|
We use the ARToolki, a software library for building Augmented Reality applications, to create an application that detects the current marker image in current scene and osverlay the virtual information on the marker image.
|
Michael Prendergast |
|
OpenGL Shaders
In this project I implemented an application using OpenGL and C++ which demonstrates the use of various shaders on several different solids. These shaders include a toon shader, a flat shader, and a shader which implementes the Phong shading model.
|
Reza Asadi
and
Galen Wilkerson |
|
Intersection and Interference in Bubbles Soap bubbles have many deeply interesting mathematical and physical properties.
These properties include the fact that they are minimizing surfaces (minimizing thermodynamic free energy), which leads to the ability to apply rigorous mathematical geometric proofs to their interaction. In particular, intersection points between bubbles can be calculated to high precision. We show a geometric derivation of the surface shape at the interface between two bubbles, finding the radius of the sphere whose segment forms the interface surface as a function of the intersecting bubbles’ radii.
We also investigate the interaction of soap bubbles with light in reflection. Due to the thin bubble walls ~5000nm - very small relative to radius - light rays after surface reflection interfere electromagnetically with parallel rays resulting from internal refraction and reflection. We introduce interference and trace a geometric proof that these rays are essentially parallel. We also outline a method to find the closed-form phase-shift between reflected and refracted/internally-reflected rays. This enables a derivation of intensity of the resulting ray as a function of incident ray intensity, wavelength, angle, and index of refraction.
Using the above methods in ray-tracing, we produce images of intersecting bubbles having appropriately shaped interface surface with colors calculated using intersection and interference formulae.
|
Chunquing Chen |
|
Painterly Rendering with Curved Brush Strokes of Multiple Sizes
We create an image with a hand-painted appearance from a photograph by painting the image with ultiple rendering passes, larger strokes first then smaller strokes for detail. We use curved brush strokes to make different styles possible. We add an intuitive set of parameters to the painting algorithm so that a designer may vary the style of painting. |
Eric Moras and Deepak D. Rao |
|
Mandelbrot and Julia Sets (iOS)
Our project implements two beautiful fractals, namely the Mandelbrot Set and the Julia Set on iOS 4.3.2, specifically for the iPhone 4 and the iPad 2. The inspiration for implementing such a known concept on iOS stems from the fact that very few applications that implement this are up and running on the App Store.
The Mandelbrot set is a particular mathematical set of points, whose boundary generates a distinctive and easily recognizable two-dimensional fractal shape. The Mandelbrot set is the set of values of c in the complex plane for which the orbit of 0 under iteration of the complex quadratic polynomial zn+1 = zn2 + c remains bounded. That is, a complex number, c, is part of the Mandelbrot set if, when starting with z0 = 0 and applying the iteration repeatedly, the absolute value of zn never exceeds a certain number (that number depends on c) however large n gets.
The Julia set is now associated with those points z = x + iy on the complex plane for which the series zn+1 = zn2 + c does not tend to infinity. c is a complex constant, one gets a different Julia set for each c. The initial value z0 for the series is each point in the image plane.
|