This ray tracer is quite unique in that it doesn’t rely on triangle meshes: you rather make objects from precise shapes, in a convenient language.
Sadly, I’ve quickly run into its limitations, partly demonstrated by the subsequent example:
its lack of a useful UI for Unix pushes you into an annoying trial and error cycle through its scene description language;
simulated caustics are broken by design—objects cast colourful shadows;
photon mapping is not adjustible, and the immensely intense beam clips colours wrong, maxing out (1, 0, 0.1) as (1, 0, 1);
it is generally very hard to express real materials and solids.
// povray +A Antialias_Threshold=0 +Q11 example.pov
#version 3.7;
#include "glass.inc"
global_settings { max_trace_level 100 assumed_gamma srgb
photons { count 1000000 } }
camera { location <2.5, 2.5, -5> look_at <0, 0, 0> }
light_source { <-5, 5, -5> color srgb<2, 2, 2>
area_light <5, 0, 0>, <0, 5, 0>, 5, 5 jitter circular orient }
plane { <0, 1, 0>, -1.5 finish { ambient .3 }
pigment { checker color srgb<0.5, 0.6, 0.7> * 1.2,
color srgb<0.75, 0.6, 0.45> * 1.2 } }
#declare Pill = texture {
pigment { color srgbft<0.6, 0, 0.35, 1.3, 0> }
finish { F_Glass7 reflection { 0.01, 0.75 fresnel on }
roughness 0.002 } }
sphere { <0, 0, +2>, 1 scale <1.6, 1, 1> texture { Pill }
interior { I_Glass } photons { target refraction on } }
sphere { <0, 0, -1>, 1 scale <1.6, 1, 1> texture { Pill }
interior { I_Glass caustics 0.5 } }
POV-Ray will certainly find its use, even today when it’s no longer being developed, but do not expect photorealism, and consider designing your scenes in other programs.
If you’re curious about what I was trying to model, it was this imperfect spheroid. Sadly, digital cameras also struggle to capture what it looks looks like in real life. The object shifts in colour between red and rose, depending on its environment and how you look at it, and the highlights need a very high dynamic range display to pop out as intended—they’re not yellow as below (HDR-capable phones can deal with this).
Comments
Use e-mail, webchat, or the form below. I'll also pick up on new HN, Lobsters, and Reddit posts.