This is the documentation for Enlighten.

Configure the scene for GeoRadiosity

Any Enlighten scene can be viewed in GeoRadiosity. In the simplest case where you are using the High Level Build System, this is as easy as opening the .scene file generated for the precompute. In order for GeoRadiosity to display your scene with the correct orientation, scale and triangle culling settings you may need to provide some additional data.

By default, GeoRadiosity uses a right handed coordinate system, where the camera treats the X and Y directions as the horizontal plane and the Z direction as the "up" axis. It will also a assume a default size for the world and that all geometry has triangles that have a counter-clockwise winding order. There are several ways in which you can change these settings.

The easiest way to specify the camera orientation is by adding the axes attribute to the scene element in your .scene file:

<?xml version="1.0" encoding="utf-8"?>
<scene name="ubox_2sys_SH" axes="+x+z+y" version="1">
...

The attribute string encodes the order and orientation of the desired coordinate system. The string is a list of 3 axis (x,y or z), each prefixed with a + or - to denote which way they point relative to the GeoRadiosity default. So +x-y+z will flip the y axis, and +x+z+y will swap z and y. Similarly, +x+y+z implies no change. If you are in a left handed system you'll be looking for an odd number of sign flips and swaps - an even number of flips and swaps would still produce a right handed system but rotate the scene.

The camera orientation can also be specified while GeoRadiosity is running through the Lua console, such as:

app.SetWorldPermutation("+x+y+z")

The scene is assumed to be 100s of units wide, and the GUI elements and camera speed have defaults that make viewing and navigating such a scene easy. If your scene is different (perhaps due to the modelling units chosen) then you can change GeoRadiosity's behaviour through the camera speed controls on the Rendering menu, and via the Lua command:

app.SetWorldUnitScale(0.01)

Enlighten is independent of triangle winding order, but the renderer in GeoRadiosity uses winding order to cull back faces during rendering and assumes a counter-clockwise winding order (or clockwise as measured in a left handed coordinate system). If after correctly specifying the camera orientation your scene is only displaying back faces you will need to flip the triangles provided to Enlighten. Triangle orientation can be safely flipped by swapping 2 indices in each triangle.