Snogray renderer
Snogray is a program for rendering 3d scenes, using monte-carlo
ray-tracing. It is "physically based", meaning that it tries to
calculate light transport in a physically plausible way when that
is practical. For instance, all light-falloff is inherently 1 /
r2 (unlike some older
ray-tracers) and reflection/refraction are calculated using
Fresnel's formulas).
Snogray's goals include:
- A "rich" scene description language which is easy and
practical for humans (and especially programmers) to write, in
the style of POVray. This is in contrast to many other modern
renderers that use human-unfriendly scene description formats,
and essentially require scenes to be created using a separate
GUI modelling program. To do this, snogray uses the Lua language as its main scene
description language. Lua is elegant and very friendly (for both
beginners and experts).
- A wide variety of input and output formats, so the user can
use input files directly without converting them. In addition to
Lua, one may use 3DS and NFF scene files, PLY and other mesh
formats, and many image formats (including HDR formats such as
OpenEXR and
RGBE/.hdr/.pic).
- Modern rendering features. Currently snogray supports such
features as object instancing, area-lights, image-based
lighting, depth-of-field, and both image-based and procedural
texturing (including bump-mapping). It is planned to add many
other features, most importantly global illumination methods
such as photon-mapping and instant-radiosity (currently the
only supported mechanism for indirect illumination is fairly
naïve recursive tracing, which is of course very slow, although
usable for some scenes).
Current status
Snogray currently works reasonably well, but is still very
rough. In particular, it has no real notion of being "installed"
— it expects to find any files it needs to load relative
to the current directory.
Download / Sources
The snogray source code and development history is available
from its Git
SCM repository on savannah.nongnu.org.
Packaged sources may be found in
the snogray
download area (because snogray is not yet in a releasable
state, these are essentially snapshots of the source tree packaged
for easier building).