Nav:  [home][render][povray] > [patches-35]
 
Go:  [Patches] [3.5-Patches]
← [What are these? Why?]

Patches for POVRay-3.5

This is a collection of patches against UNIX POVRay-3.50c (but most should apply cleanly against any 3.50).

Unless stated differently, these patches were written by me and are against UNIX POVRay version 3.50c. You are most likely looking for patches against the current version of POVRay; patches on this page are either no longer maintained by me (IPT patch), finally made it into POVRay (e.g. X11 patch) or were not included for what reason ever... <snip>

IPT: Faster low-quality rendering: InterPolated Tracing [discontinued]

Unfortunately, raytracing can take an aweful lot of time. Especially if you want to render an animation this may get really annoying.
POVRay actually has a number of features built in which speed up rendering (e.g. bounding boxes, light and vista buffers) but rendering complicated scenes still can take ages even on modern hardware.

This is why I came up with the following idea: For test-rendering a scene during construction it would be nice to not render the complete image but interpolate parts of it. This unavoidably introduces a loss in quality. The algorithm should be made in a way that the ratio of quality loss versus speed increase is a good one.

Unfortunately, this turned out to be quite hard and I am not sure if I will continue development. Read more about interpolated tracing and the achievements here. (A patch for POVRay is also available on the page behind that link.)

Torus numerics patch [included in 3.6]

This patch will improve the calculation numerics for the torus object and prevent it from getting artifacts when viewed from greater distance with smaller camera angles.
Credit for this patch goes to Lars C. Hassing.

X11 patch [included in 3.6]

This patch fixes window close while rendering (now works aborting the trace when applying this patch; povray-3.6 will close but continue to render) and prevents events from staying in the event queue until end of trace.

Isosurface warning patch [not fixed in 3.6]

Just fixes the warning you get about max_gradient: In case gradients are smaller than 0.0005, official POVRay will happily display that e.g. the max gradient found was 0.000 while you specified 0.000 and that the isosurface may contain holes.
This patch will make POVRay print more digits if needed.

Parametric object patch [not fixed in 3.6]

This patch addresses two issues:

  • Parametric objects with shadows (i.e. without no_shadow) may get completely black due to self-shadowing. The fix for the problem was written by Massimo Valentini.
  • If you specify too small accuracy value, POVRay may crash due to unchecked array boundaries. This patch will not fix the bug but will make POVRay print an error message and abort instead of crash.
    Note: I wrote a patch against POVRay-3.6 which fixes that problem.

BesselJ and SG Orbit patch [too special]

This patch adds support for the Bessel J function and its derivation as well as for the 310 and 320 orbits of the Schrödinger equation in Coulomb potential. Requires GSL (GNU scientific library).
If you don't understand what it's all about, you most certainly do not need it. (Hence, this is also no candidiate to be patched into official POVRay.)

Trivial fix patch [partly fixed in 3.6]

This patch fixes the following minor issues:

  • Fix Control-R/L in unix.cpp. [included in 3.6]
  • Minor optimization of one search loop. [not fixed in 3.6]
  • Adjust radial pigment for 0..1 range. [not fixed in 3.6]
  • Fix little stupid bug in texture noise generation. (Credit: Zohar Leder) [included in 3.6]

Look at the code to see yourself.


[home] [site map]
Valid HTML 4.01!
Copyright © 2003-2004 by Wolfgang Wieser
Last modified: 2004-08-03 17:26:35