
An INI file is a text file containing settings for what used to be called POV-Ray command-line options. POV-Ray 3.6 attempts to read the main INI file from the locations:
Any other INI file can be specified by passing the INI file name on the command line. This way you can customize POV-Ray settings for any individual scene file.
Run:

As a rule POV-Ray understands an *.ini generated by povanim with a tiny exception of "Unknown key 'pvm' in INI file.". To fix it open the ini file and delete the line "pvm=on". It is located at the very bottom of your file. This option is meant for PVMPOV which is an additional POV-Ray feature providing the ability "to distribute a rendering across multiple heterogeneous systems" through PVM, a message passing system that enables a network of computers to be used as a single distributed memory parallel computer. Obviously this option doesn't bother POV-Ray while rendering through povanim in Blender, however rendering a file containing this line with "unmodified" POV-Ray in console, a regular Linux way, generates the error. In my opinion the Linux world contains a huge amount of programs that are very interesting as masterpieces of programming art but useless in other ways. Do you really need to render your picture on multiple computers that act like a single one through a heterogeneous systems network?
Options are read top to bottom in the *.ini
file but in general may be specified in any order. If you specify
an option more than once, the previous values are generally
overwritten with the last specification. The only exception is
the Library_Path=path
options. Up to 25 unique paths
may be specified.
|
Let's take a look at the *.ini file generated by povanim: |
Home | |||||||||||||||||||||
| Input_File_Name= Output_File_Name= |
Input file. Output file. |
|
||||||||||||||||||||
|
Output_to_File=On |
By default, POV-Ray writes an image file to disk. When you are developing a scene and doing test renders, the graphic preview may be sufficient. To save time and disk activity you may turn file output off. |
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
|
Output_File_Type=t |
Output_File_Type=x, where x is:
|
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
|
Width=800 Height=600 |
Width of the image to render. Height of the image to render. It is preferable to keep width/height ratio as 4/3. |
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
|
Preview_Start_Size=1 Preview_End_Size=1 |
Typically, while you are developing a scene, you will do many low resolution test renders to see if objects are placed properly. Often this low resolution version doesn't give you sufficient detail and you have to render the scene again at a higher resolution. A feature called "mosaic preview" solves this problem by automatically rendering your image in several passes. To use this feature you should first select a Width and Height value that is the highest resolution you will need. Mosaic preview is enabled by specifying how big the mosaic blocks will be on the first pass using Preview_Start_Size=n. The value n should be a number greater than zero that is a power of two (1,2, 4, 8, 16, 32, etc.) The process continues until it reaches 1*1 pixels or until it reaches the size you set with Preview_End_Size=n. Again the value n should be a number greater than zero that is a power of two and less than or equal to Preview_Start_Size. The default ending value is 1. If you set Preview_End_Size to a value greater than 1 the mosaic passes will end before reaching 1*1, but POV-Ray will always finish with a 1*1. For example, if you want a single 8*8 mosaic pass be fore rendering the final image, set Preview_Start_Size=8 and Preview_End_Size=8. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Start_Column=0 ;End_Column=1 Start_Row=0 ;End_Row=1 ; This is a comment. |
When doing test rendering it is often convenient to define a small, rectangular sub-section of the whole screen so you can quickly check out one area of the image. The Start_Row, End_Row, Start_Column and End_Column options allow you to define the subset area to be rendered. The default values are the full size of the image from (1,1) which is the upper left to (w, h) on the lower right where w and h are the Width=n and Height=n values you have set. Note if the number specified is greater than 1 then it is interpreted as an absolute row or column number in pixels. If it is a decimal value between 0.0 and 1.0 then it is interpreted as a percent of the total width or height of the image. For example: Start_Row=0.75 and Start_Column=0.75 starts on a row 75% down from the top at a column 75% from the left. Thus it renders only the lower-right 25% of the image regardless of the specified width and height. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Verbose=on |
Output verbose status messages on the progress of the rendering. | |||||||||||||||||||||
| Display=on |
Display the rendering in progress, optionally specifying the palette. |
|||||||||||||||||||||
|
|
||||||||||||||||||||||
| Palette=3 | The
Palette=y option selects the palette to be used. Typically
the single character parameter y is a digit which selects one of
several fixed palettes or a letter such G for gray scale, H for
15-bit or 16-bit high color or T for 24-bittrue color. Obviously Palette=3 means 24-bittrue color, since T is the third letter from the ones given above. |
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
| All_Console=on | Turn on all debug, fatal, render, statistic and warning text to console. | |||||||||||||||||||||
| Buffer_Output=Off Buffer_Size=0 |
The output-file buffer options
Buffer_Output and Buffer_Size are removed per POV-Ray 3.6. Note:
the options are still accepted, but ignored, in order to be
backward compatible with old INI files. |
|||||||||||||||||||||
| Debug_Console=On | Turn console display of debug info text on. | |||||||||||||||||||||
| Statistic_Console=On | The output to the console of the debug, fatal, render, statistic or warning text streams. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Display_Gamma=2.2 | Note: the Display_Gamma is a setting based on your computer's display hardware, and should be set correctly once and not changed. If the Display_Gamma keyword does not appear in the INI file, POV-R the display gamma is 2.2. This is because most PC monitors have a gamma value in the range 1.6 to 2.6. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Render_Console=On | Turn console display of render info text on. | |||||||||||||||||||||
| Fatal_Console=On | Turn console display of fatal error text on. | |||||||||||||||||||||
| Warning_Console=On | Turn console display of warning text on. | |||||||||||||||||||||
| Fatal_Error_Return=I | Fatal_Error_Return=action
Actions:
|
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Post_Scene_Return=I |
Set post scene return actions. | |||||||||||||||||||||
| Pre_Scene_Return=I | Set pre scene return actions. | |||||||||||||||||||||
| User_Abort_Return=I | Set user abort return actions. | |||||||||||||||||||||
| Pause_When_Done= | The rendering will pause when complete, on/off. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Test_Abort=On | On some operating systems once you start a rendering you must let it finish. The Test_Abort=on option causes POV-Ray to test the keyboard for keypress. If you have pressed a key, it will generate a controlled user abort. Files will be flushed and closed but only data through the last full row of pixels is saved. POV-Ray exits with an error code 2 (normally POV-Ray returns 0 for a successful run or 1 for a fatal error). | |||||||||||||||||||||
| Test_Abort_Count=100 | Causes the test to be performed only every 100 pixels rendered or scene lines parsed. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Continue_Trace=Off |
If you abort a render while it's in progress or if you used the End_Row option to end the render prematurely, you can use Continue_Trace=on option to continue the render later at the point where you left off. This option reads in the previously generated output file, displays the partial image rendered so far, then proceeds with the ray-tracing. This option cannot be used if file output is disabled with Output_to_file=off. The Continue_Trace option may not work if the Start_Row option has been set to anything but the top of the file, depending on the output format being used. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Quality=9 | The Quality=n option
allows you to specify the image rendering quality. You may choose
to lower the quality for test rendering and raise it for final
renders. The quality adjustments are made by eliminating some of
the calculations that are normally performed. For example settings
below 4 do not render shadows. Settings below 8 do not use
reflection or refraction. The duplicate values allow for future
expansion. The values correspond to the following quality
levels:
The default is 9 if not specified. |
|||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Antialias=off | Turns anti-aliasing off. You will probably want to turn it on later, when you finish all your test renders. | |||||||||||||||||||||
| Antialias_Depth=3 | Antialias_Depth=n 1 <= n <= 9 |
|||||||||||||||||||||
| Antialias_Threshold= | If the threshold is 3.0 then no anti-aliasing is done. Lower threshold means more anti-aliasing and less speed. Use anti-aliasing for your final version of a picture, not the rough draft. The lower the contrast, the lower the threshold should be. Higher contrast pictures can get away with higher tolerance values. Good values seem to be around 0.2 to 0.4. | |||||||||||||||||||||
| Sampling_Method=1 | POV-Ray gives you the option to use one of two alternate super-sampling methods. The Sampling_Method=n option selects either type 1 or type 2. Type 1 is an adaptive, non-recursive super-sampling method. It is adaptive because not every pixel is super-sampled. Type 2 is an adaptive and recursive super-sampling method. It is recursive because the pixel is sub-divided and sub-sub-divided recursively. The adaptive nature of type 2 is the variable depth of recursion. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Bounding=On | Allows you to force bounding on. The default value is on. | |||||||||||||||||||||
| Bounding_Threshold=3 | The Bounding_Threshold=n switch allows you to set the minimum number of objects necessary before bounding is used. The default is 25 which means that if your scene has fewer than 25 objects POV-Ray will automatically turn bounding off because the overhead isn't worth it. Generally it's a good idea to use a much lower threshold like 5. | |||||||||||||||||||||
| Remove_Bounds=On | Early versions of POV-Ray had no system of automatic bounding or spatial sub-division to speed up ray-object intersection tests. Users had to manually create bounding boxes to speed up the rendering. Since version 3.0, POV-Ray has had more sophisticated automatic bounding than any previous version. In many cases the manual bounding on older scenes is slower than the new automatic systems. Therefore POV-Ray removes manual bounding when it knows it will help. In rare instances you may want to keep manual bounding. Some older scenes incorrectly used bounding when they should have used clipping. If POV-Ray removes the bounds in these scenes the image will not look right. To turn off the automatic removal of manual bounds you should specify Remove_Bounds=off. The default is Remove_Bounds=on. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Split_Unions=Off | One area where the jury is still out is the splitting of manually bounded unions. Unbounded unions are always split into their component parts so that automatic bounding works better. Most users do not bound unions because they know that doing so is usually slower. If you do manually bound a union we presume you really want it bound. For safety sake we do not presume to remove such bounds. If you want to remove manual bounds from unions you should specify Split_Unions=on. The default is Split_Unions=off. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Vista_Buffer=Off Light_Buffer=On |
Additionally POV-Ray uses systems known as vista buffers and light buffers to further speed things up. The systems only work when bounding is on and when there are a sufficient number of objects to meet the bounding threshold. The vista buffer is created by projecting the bounding box hierarchy onto the screen and determining the rectangular areas that are covered by each of the elements in the hierarchy. Only those objects whose rectangles enclose a given pixel are tested by the primary viewing ray. The vista buffer can only be used with perspective and orthographic cameras because they rely on a fixed viewpoint and a reasonable projection (i. e. straight lines have to stay straight lines after the projection). The light buffer is created by enclosing each light source in an imaginary box and projecting the bounding box hierarchy onto each of its six sides. Since this relies on a fixed light source, light buffers will not be used for area lights. Reflected and transmitted rays do not take advantage of the light and vista buffer. The default settings are Vista_Buffer=on and Light_Buffer=on. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Draw_Vistas=Off | Vista buffering is a spatial sub-division method that projects the 2-D extents of bounding boxes onto the viewing window. POV-Ray tests the 2-D x, y pixel location against these rectangular areas to determine quickly which objects, if any, the viewing ray will hit. This option shows you the 2-D rectangles used. The default setting is off because the drawing of the rectangles can take considerable time on complex scenes and it serves no critical purpose. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Jitter=off | Another way to reduce aliasing artifacts is to introduce noise into the sampling process. This is called jittering and works because the human visual system is much more forgiving to noise than it is to regular patterns. The location of the super-samples is jittered or wiggled a tiny amount when anti-aliasing is used. Jittering is used by default but it may be turned off with the Jitter=off option. | |||||||||||||||||||||
| Jitter_Amount=1 | The amount of jittering can be set with the Jitter_Amount=n.n option. For example 0.5 uses half the normal jitter. The default amount of 1.0 is the maximum jitter which will insure that all super-samples remain inside the original pixel. Note that the jittering noise is random and non-repeatable so you should avoid using jitter in animation sequences as the anti-aliased pixels will vary and flicker annoyingly from frame to frame. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Library_Path= | This is the path to your libraries. Here you can include also Library_Path=/usr/local/share/povray-3.6/include, the regular POV-Ray textures folder, if you decide to edit pov or inc files manually. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Field_Render=Off Odd_Field=Off |
Field rendering is sometimes used for animations when the animation is being output for television. By default, field rendering is not used. SettingField_Render=on will cause alternate frames in an animation to be only the even or odd fields of an animation. By default, the first frame is the even field, followed by the odd field. You can have POV-Ray render the odd field first by specifying Odd_Field=on. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Video_Mode=0 | The Video_Mode=x option sets the display mode or hardware type chosen where x is a single digit or letter that is machine dependent. Generally Video_Mode=0 means the default or an auto-detected setting should be used. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Bits_Per_Color=8 | Most of the image file formats output 24 bits per pixel with 8 bits for each of red, green and blue data. PNG allows you to optionally specify the output bit depth from 5 to 16 bits for each of the red, green, and blue colors, giving from 15 to 48 bits of color information per pixel. The default output depth for all formats is 8 bits/color (16 million possible colors), but this may be changed for PNG format files by setting Bits_Per_Color=n, where n is the desired bit depth. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Histogram_Grid_Size= | The histogram grid size gives the number of times the image is split up in both the horizontal and vertical directions. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Output_Alpha=Off | Targa format allows 8 bits of alpha transparency data to be output, while PNG format allows 5 to 16 bits of alpha transparency data, depending on the color bit depth as specified above. You may turn this option on with Output_Alpha=on . The default is off. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| Radiosity=Off |
Radiosity is an additional calculation which computes diffuse inter-reflection. It is an extremely slow calculation that is somewhat experimental. By default, radiosity is off. The parameters which control how radiosity calculations are performed are specified in the radiosity section of the global_settings statement. | |||||||||||||||||||||
![]() |
||||||||||||||||||||||
| pvm=On | Delete this, if it bothers you. | |||||||||||||||||||||
|
||||||||||||||||||||||