NAME:           James A. Coons
TOPIC:          The Desert
TITLE:          The Lonely Place (TBD)

FILE NAME:      TLP-yy.POV
JPGFILE:        TLP-yy.JPG
ZIPFILE:        TLP-yy.ZIP

RENDERER USED:  PovRay 3.5 (Windows)
TOOLS USED:     
   ThumbsPlus       (Cerius)   : Image processing and resizing.
   PaintBrush       (Microsoft): Image processing and adding Title. 
   QEDIT            (Semware)  : Global changes, etc.
   Visual Basic 6.0 (Microsoft): Various optional utilities (POVSTRIP, MAKETILE).
   QuickBasic       (Microsoft): Various optional utilities (SEARCH). 

This File explains various development techniques that I use in my
POV-Ray projects.

Master Images

   I usually use what I call a "Master Image" technique for developing
   POV-Ray projects. This technique saves a lot of rendering time. I
   create a "Master Image" in BMP format (I use Microsoft PaintBrush),
   which is usually kept open during development. When making small
   changes or adding detail to specific objects, I render a small area
   around the change and then copy/paste the resulting change into the
   Master Image. This allows me to have an up-to-date view of what the
   final image will look like, without needed to re-render the entire
   image for every little change. It also allows me to "mark up" the
   image with potential changes, such as "add mountain here" or "add
   texture to hills. Then, I can later replace them with something
   "real" as I get around to developing them. When I re-render the
   entire scene, I copy the resulting image into the Master Image,
   replacing the "incomplete" one.

Inline Flags

   I find it useful to insert "Flags" at important locations in the
   source code, so I could easily find what I was looking for. So, Flags
   like "/House", "/Sky", "/Cam", help me locate important sections more
   easily. I keep the Flags in the Final Source File.

Enhanced Textures 

   I also discovered an interesting technique when using textures. If
   you take a simple pigment (Granite, for instance), apply it to a 3-D
   object, add some normals, crand and roughness, this will create a
   more complex and "rick" texture. Then, you can use the new texture in
   place of the original one.

   Another interesting technique is to use an Image as both a Texture
   and a Normal. If the same transformations are used for both, the
   Normal reinforces the Texture and makes it even more realistic.

Pigment and Texture Mixing

   When using an image to create a pigment to apply to an object, there
   is a "blurring" effect that can occur. This is most noticable when
   applying an image pigment to a sphere - the edges of the sphere have
   a blurred effect caused by pixelation. I call this
   "edge-blur-syndrome". It occurs because an image pigment is
   "2-dimensional" and should normally be viewed from a specific vantage
   point. To see this effect, try applying a flat image to a sphere and
   then viewing the resulting render from the left side instead of
   head-on. I created the macros Mix_Pigment and Mix_Texture, which
   creates a true "3-dimensional" pigment or texture from the
   2-dimensional version. It does this by averaging several
   pigments/textures while rescaling and rotating them around various
   axes. The result is a texture that can be applied to any object,
   regardless of orientation, without having to deal with
   "edge-blur-syndrome".

Miscellaneous

   Adding "self-normals" to an image multiple times can result in some
   interesting images.

   I tried to create a "fake blurring" effect with distance by using a
   Z-Gradient to mix various textures at different blurring levels, but
   gave up on the idea.

   I hope these hints are beneficial to someone. 

Current and Previous Submissions
   
   06/2004 - Epic Proportions - "The Great Wall of China" (Placed 32nd out of 71 entries)
   09/2004 - Desert           - "Chloride, Arizona"

James Coons

