User:Owen Burgoyne/POV-Ray Tutorial
The purpose of this guide is to take an already-built LDraw model and then render it in POV-Ray to create a near-realistic image. The guide itself will not necessarily give you all the answers on how to create exactly what you want, but will hopefully get you started in the right direction and perhaps even lead you on to investigating and mastering certain rendering techniques.
For the purposes of this guide I have used the following:
- The LDraw library
- MLCad 3.40
- LDView 4.2 beta 1
- The LGEO library and my own LGEO Parts Pack (zip file)
- POV-Ray 3.7 RC6
The first four can all be obtained directly from the LDraw All-In-One-Installer (AIOI), although my LGEO parts pack requires manual installation.
The LDraw AIOI currently contains POV-Ray 3.6, but I recommend uninstalling this if you already have it and installing POV-Ray 3.7. Although still currently in beta, I have had no issues using it and it contains the ability to use more than one CPU, allowing for much faster rendering when using a multi-core system.
The guide also assumes that you are running the above on Windows. (I have no Mac or Linux experience, so would not able to advise on the correct file paths for installation.)
Installation and setup
Although the AIOI can automate a lot of the installation, there are still a few tweaks that need to be made to the default installation to optimise the setup.
LDView, which is used to export the LDraw model to the POV-Ray format automates a lot of things, although there are a few things worth taking into account.
The first thing you may want to set is the aspect ratio of the final image. Once you have your model open within LDView, you can set LDView's diplay aspect ratio from the menu under View > Standard Sizes. Each view size shows the relevant aspect ratio that it conforms to in brackets. For the purposes of this tutorial, I'll be using 1280 x 720 (16:9), the ratio used by a lot of modern monitors.
To ensure that this carries over to your render, you need to set a matching ratio in the LDView export window. You can do this by going to File > Export... and then the Options... button, and selecting the appropriate option under Aspect Ratio. You can also use Current LDView aspect ratio, but need to ensure that you know what you used when selecting the image size within POV-Ray.
However, for this to work, you need the same aspect ratio available within POV-Ray, and this is explained under the "quickres.ini" entry below.
LDView gives you the ability to use "include" files within your POV-Ray file, in case there are settings you always use but are not default options within the file that LDView generates. This means you can set other values for things such as floor colour, background colour, etc.
An "include" can be saved to any location, and the file path can then be inserted into the relevant field.
The LGEO library
If you've installed the LGEO library from the AIOI to the default location, then it should be located at C:\Program Files\LDraw\LGEO.
Although updated by Lutz Uhlmann in 2008, there are still a few errors in the library, some of which are simply compatibility issues with any version of POV-Ray higher than 3.1. Where possible, I have fixed any files that I have come across, as well as create some new files, which can be found in the LGEO Parts Pack listed above.
The file itself mainly contains LGEO files (marked with lg_ at the beginning of the file) which can simply be copied to LGEO's C:\Program Files\LDraw\LGEO\lg folder.
It also contains a file called LGEO.xml which must be copied to the LDView installation folder.
Setting up POV-Ray
To function properly with the LGEO library, POV-Ray needs to be told where to find the library files, and this is done via the povray.ini file. To edit this, within the POV-Ray menu go to Tools > Edit master POVRAY.INI. This will open the file as a text file, and give you some basic explanation on how to add or modify settings within this file.
You need to ensure that library paths are included in the file, pointing to the installation folder for LGEO. If using the AIOI, this is installed by default to the C:\Program Files\LDraw folder, so the following lines would need to be added to the end of the file:
Library_Path="C:\Program Files\LDraw\LGEO" Library_Path="C:\Program Files\LDraw\LGEO\ar" Library_Path="C:\Program Files\LDraw\LGEO\lg"
If you're using a 64-bit version of Windows, then you may need to change Program Files to Program Files (x86).
POV-Ray includes its own resolution definitions, stored in a file called quickres.ini, which allows you to quickly set your desired image output size. These are accessed via a drop-down box shown at the top left of the POV-Ray window, but the available options are fairly limited.
To alter these settings, within the POV-Ray menu go to Tools > Edit resolution INI file and the file should then open up as a text file. You should see a number of different resolutions, mainly set to the 4:3 ratio (640x480, 800x600, etc.), along with anti-alias switches. For example:
[800x600, No AA] Width=800 Height=600 Antialias=Off
[800x600, AA 0.3] Width=800 Height=600 Antialias=On Antialias_Threshold=0.3
This rather limits the available ratios, such as 16:9 (widescreen) or 2.35:1 (anamorphic widescreen). Therefore you need to specify your own. To make it easier to pick out which aspect ratio I need, I often specify this in the preset, as in the below example:
[800x340 2.35:1, No AA] Width=800 Height=340 Antialias=Off [800x450 16:9, No AA] Width=800 Height=450 Antialias=Off
You can also specify further sizes by adding variations on the above, and add anti-aliasing to each resolution by changing Antialias=Off to:
Exporting to POV-Ray
Rendering in POV-Ray
Setting up custom inserts
POV-Ray includes the option to insert pre-defined parameters into a POV-Ray file, either from the main menu or by right-clicking the Editor window.
The purpose of setting these up for rendering LDraw models is to make it easier to insert often-used options, such as radiosity settings or HDRI lighting environments.