YafaRay

YafaRay
Developer(s) YafaRay developers
Stable release 0.1.1 / June 23, 2009; 2 years ago (2009-06-23)
Written in C++
Operating system Cross-platform
Type Raytracer
License LGPL
Website www.yafaray.org

YafaRay is a free, open source ray tracing program that uses an XML scene description language. It has been integrated into the 2.49 version of the 3D modelling software Blender, but requires an exporter for the redesigned 2.5 version of Blender.

It is licensed under the GNU Lesser General Public License (LGPL).

Contents

History

YafaRay's predecessor YafRay (Yet Another Free Raytracer) was written by Alejandro Conty Estévez, and was first released in July 2002. The last version of YafRay was YafRay 0.0.9, released in 2006. Due to limitations of the original design, the raytracer was completely rewritten by Mathias Wein. The first stable version of the new raytracer, YafaRay 0.1.0, was released in October 2008.

Features

Rendering

Global Illumination
YafaRay uses global illumination to produce realistically lit renderings of 3D scenes, using Montecarlo-derived approximations.
Skydome Illumination
This illumination system is based mainly on light coming from an emitting sky, taking into account the soft shadows calculations also involved. The illumination can be obtained from a high dynamic range image.
Caustics
YafaRay uses photon mapping that allows for caustic (light distortion produced by reflection or transmission such as through a burning-glass). For simulating translucent materials there is also a subsurface scattering shader under development.
Depth of field
The effects of a focus depth of field can be reproduced using this feature. With a point in the scene fixed, further objects will be out of focus.
Blurry reflections
If a surface is not a perfect reflector, distortion arises in the reflected light. This distortion will grow bigger as the reflecting object is taken further away. YafaRay can simulate this phenomenon.

Architecture

Modular framework
YafaRay features a modular structure, with a kernel with which the rest of the render elements connect: scene loader, lights and shaders. This together with an API, allows development of rendering plug-ins, for using YafaRay from any program or 3D suite. Supported suites include Blender, Wings 3D and Aztec.
Cross-platform
YafaRay has been fully developed using C++. This makes for good portability and there are precompiled binaries for the most common platforms: GNU/Linux, Windows 9x/XP/2000, Mac OS X and Irix. YafaRay can be used as a stand-alone render engine, using its own scene description format. This way it can be used from the command line directly, by a script, etc. There are also provisions for parallel or distributed rendering.

See also

External links