Programming
I did my first steps in programming as soon as i started using computers. I immediately liked the idea of being able to control the computer directly and implementing my own ideas without being restricted by what others have already prepared.
My first programming exercises were done in an interpreted educational language called Comal at school and in Turbo-Pascal. I soon also did some GUI programming with OS/2 and Speed-Pascal directly using the API functions including multithreading.
My latest Pascal based programming efforts were done using Delphi and i have published several programs written in that language.
One of them is HCR-Edit, an editor for High Color Resolution images. Although its main purpose is post processing of POV-Ray generated images it can be used for a lot of other tasks as well.
POV-Ray related
Most of my programming work is related directly or indirectly to POV-Ray. Using POV-Ray the way i do already requires programming in the POV-Ray scene description language and i have written and published various add-ons (include files) for POV-Ray including the IsoWood and IsoCSG include files.
As a member of the Persistence of Vision development team i am also working on the source code of POV-Ray itself. I do maintenence and improvements of the Unix platform specific part as well as the core code and i am also doing documentation and user support.
I am also participating in the development of MegaPOV - an experimental version of POV-Ray that includes various new features and modifications that have not yet been much tested. I am writing improvements myself as well as integrating and reviewing patches created by others. Currently there are the following larger patches from me included in MegaPOV:
- The mechanics simulation patch (MechSim): a system for simulating the movement of mechnical systems ranging from falling blocks and cloth to the movement of planets.
- Improvements of the radiosity feature.
- High dynamic range image reading and writing.
The following improvements have not yet been published, most of them are not yet finished:
- Isosurface object speedup patch which improves performance of isosurface renders. See some examples.
- shadow photons using photon mapping to speed up shadow calculations.
- area light reflection patch to speed up area lights by not calculating the area light effect in reflected/refracted rays.
Apart from POV-Ray modifications i have also written various external tools for POV-Ray like a distributed rendering system and a documentation full text search tool.