After another couple of days messing about, I finally understand a few more things about LuxRender.
1.) You can’t make a LightSource of type “area”. Despite the fact that this is (ahem) nowhere in the documentation, you have to use AreaLightSource. The AreaLightSource seems to be a LOT less powerful than a “direct” light source, requiring changes in gain on the order to thousands to see them both in the same scene. This may be because the “direct” light is taken to be something like sunlight?
2.) LuxRender reliably crashes at the end of each and every render if you use hybrid (CPU/GPU) mode. I’m not sure whether this is because it’s insisting on picking up the Intel Iris GPU on my MacBook as well as the NVIDIA card, but I can’t seem to find a way to lock out the IrisPro.
3.) Despite the face that “sphere” primitives are described as unsupported in the hybrid renderer, they actually seem to work just fine in 1.3.1 (although they do throw a warning, this may just mean that the CPU has to get involved?).
4.) Texture mapping meshes depends on you providing explicit uv coordinates for the vertices. In these coordinates, the dimensions of the texture image seem to be [0,1] x [0,1], regardless of the pixel dimensions of the image.
5.) Although per-vertex normals are described as “optional” in the mesh documentation, and a mesh I built by hand worked fine without them, a PLY mesh without vertex normals doesn’t seem to render at all.
After all this, I finally managed to make the example I was looking for, which will be part of the MATH 4510/6510 class next semester. It’s a collection of 750 spheres distributed normally in space with a collection of 70 spheres distributed according to a scaled normal which are all glowing.
The resulting image is kind of sleek and dramatic and wonderful, I think. I found that the noise in the image was pretty much gone at 500 S/p. (This is an 800×800 render, and I got to that point in about 10 minutes on the left.) The one on the right has a good deal more light, and required half an hour or so to get to that point. The image shown is at something closer to 800 S/p, and required some manual balancing of the light sources to look right.) I was more than prepared to continue all night, but it doesn’t seem needed.
My book on Unity arrived today, so that seems like a natural time to switch gears and plunge into my next tech project: writing the 2.0 version of TaylorTurret!