200 likes | 406 Views
Rendering Fur with Three Dimensional Textures. James T. Kajiya and Timothy L. Kay. Motivation. We want to be able to render furry things!. http://www.trappersden.ca/Moxy.JPG. http://www.lesleymattuchio.com/Ladies.html. Previous Work. Geometrically accurate
E N D
Rendering Fur with Three Dimensional Textures James T. Kajiya and Timothy L. Kay
Motivation • We want to be able to render furry things! http://www.trappersden.ca/Moxy.JPG http://www.lesleymattuchio.com/Ladies.html
Previous Work • Geometrically accurate • Brute-force rendering of individual hairs • Very slow • Severe aliasing due to micro-geometry • Particle-based systems for Volume rendering • Not optimal for ray tracing
Volume Densities • Blinn (1982) • Method for rendering volume densities • Volume of microscopic spheres • Assumed Homogeneous media • Kajiya and Von Hersen (1984) • Generalized to non-homogeneous media • Volume rendering for ray tracing
Volume Densities • For each ray through the volume… • Find the transparency of the surface • Find the brightness of the surface
Volume densities Three parts of the brightness integral Visibility of the current position in the volume Sum of the light contribution from each light source The density of the surface at the point
Texels • Replace volume densities with texels: 3D array containing microsurface data • Density: relative projected area of a surface inside the volume cell • Frames: Local direction of the surface • Lighting Model: The lighting model for the local surface
Texels • Can we render texels with the original volume density rendering equations? • All line integrals go to 0 • Transparency and brightness calculations both go to 0!
Texels • Solution: replace all integrals with sums • Transparency equation becomes • Brightness equation becomes
Fur Rendering • Four steps to rendering fur: • Create fur texel • Map texels to world space • Shoot rays into texel • Calculate lighting
Fur Rendering • Create Fur Texel • Each hair is a cylinder • Place hairs randomly on a surface • Model overcoat and undercoat • Jiggle until it looks “correct”
Fur Rendering • Map texels to world space • Create a continuous mapping between texel and model • Interpolate between texels to form a bilinear patch • No geometry is needed
Fur Rendering • Shoot rays into texel • Intersect rays with bilinear texel patch in world space • Convert intersection into texel space • Calculate Lighting • Fur lighting model is diffuse and specular • Diffuse based on cylindrical shape • Specular is modified Phong lighting
Conclusion • Fur rendering using 3D textures • New 3D texture model called texel • New rendering equations for microsurfaces • Fur texel modeling technique • Texel mapping/interpolation to form objects without geometry • Fur lighting BRDF
Pros/Cons • Pros • Very realistic results! • Complete description of method • Great reference images for comparison with faster methods • Easily extendable • Cons • Fairly slow (2 hrs on a 16 processor mainframe)