Project One Proposal


My research involves the realistic rendering of plant surfaces such as leaves and petals. I am currently using the photon mapping renderer Dali, courtesy of Dr. Henrik Wann Jensen (Stanford University), to produce static renderings of plant models constructed with Vlab software. I have been learning to write shaders that capture the essence of light interactions with leaf surfaces – for example, diffuse transmission of light through leaf surfaces and subscattering of light rays within the layers of a leaf.


Instead of simply relying on static images to convey realistic plant renderings, it may be interesting to create animations whereby a camera flies around a plant or a plant sways in a breeze. Such animations would allow us to view light interactions with leaves and petals from different vantage points. As the angle between the plant surfaces and light sources change, we could view the gradual shifting of shadows and transmitted rays. Dr. Gerry Hushlak, the visiting professor from the Art Department, mentioned that one of the central goals of art is to provoke a reaction from the viewer. A realistically rendered, animated plant model, swaying in a breeze, with semi-translucent leaves that cast overlapping soft shadows, would very likely elicit a strong viewer response. In addition, unlike certain works in the world of art, a plant animation would not raise ethical questions.


This project would require building an export module for Vlab. The module would convert a plant model into an object (.obj) file that can be read by Maya. I have already built two export modules for Vlab, so building a third module should be a relatively straightforward process. Once several plant models are brought into Maya, I would make use of Maya’s animation tools to animate the models. I would follow some of the animation design techniques outlined in John Lasseter’s animation paper, for example:

  • pose-to-pose action: I would have to set the extremes or keyframes for different parts of the plant as it is jostled by a breeze. For example, I would indicate several keyframes for the position of the stem as it bends. I would then make use of Maya’s tools to perform the inbetweening.
  • timing: I would convey the weight and size of different plants or plant organs by controlling the speed of the action. Thin leaves at the ends of branches would be jostled to a greater extent than the central stem of the plant.
  • arcs: I would make use of Maya’s spline tools to control the direction of motion between extreme poses.


Once the frames of the animation are complete, they could be saved as object files and imported into Dali, using the object import utility. I would then apply some of Dali’s shaders, for example the diffuse transmission shader I am currently working on, to render the frames of the animation.