Submitted by , posted on 15 May 2003

Image Description, by

These are two images I created with a small raytracer I wrote for school. It can raytrace bezier curves directly, allowing it to render hair-like objects. The bezier-curve intersection method used is from "Ray Tracing for Curve Primitives" ( It transforms the curve into the coordinate system of the ray, where the ray direction is the z-axis. The curve is then subdivided in the XY plane and if it is sufficiently close to <0,0> it intersects the ray. The lighting model used is described in "Rendering fur with three dimensional textures" ( The hair was distributed on the brown guy (which is a triangle mesh) using the method in "Generating Textures on Arbitrary Surfaces Using Reaction-Diffusion" ( It uses point repulsion to distribute points uniformly over a triangle mesh. There are some tricks in there to approximate the geodesic distance between two points. I also created a small program to create the shape, distance, color and such for each hair.

More pictures, source code, documentation and examples can be found at (site in icelandic).

Arni Mar Jonsson

Image of the Day Gallery



Copyright 1999-2008 (C) FLIPCODE.COM and/or the original content author(s). All rights reserved.
Please read our Terms, Conditions, and Privacy information.