Lighting Simulation with Radiance
When I wanted to design a log home on my computer to see what it would look like under actual lighting conditions, I tried AutoCAD, 3D Studio Max and numerous off-the-shelf home design packages. None of them provided the realistic output or easy support for dealing with the log walls I desired. I had been playing with a lighting simulation package from the Lawrence Berkeley National Laboratory (LBL) known as Radiance and decided I could get what I wanted much faster by adding utilities to it.
Radiance is a physical lighting simulation system written primarily by Greg Ward Larson. It has been around since the early 1990s and recently changed licensing from a free-for-noncommercial-use license to the open-source model. The package produces great-looking images that are output in a special format that records both the texture and physical lighting of a scene, much like the professional products LightScape and VIZ 4 by Autodesk.
The packages used for movie and game making are really the graphics equivalent of junk food factories. The end result may be attractive and popular, but it isn't substantial. The physical details of lighting simply aren't as important as speed to movie and game makers, because they have a lot of pixels to push. A two-hour movie has 172,800 individual frames, and games have to run in real time. As a result, light becomes an artifact of an artistic algorithm in most graphics systems and has little basis in reality.
Radiance output is considered a lab-quality simulation of the physics of light (as long as your input is realistic) and has been rigorously tested in the professional world.
You can obtain the Radiance source code from radsite.lbl.gov. I recommend getting the source tarball, as the compiled RPMs do not include any of the auxiliary files. Once you have the tarball:
$ tar xzf rad3R4.tar.gz $ cd ray $ ./makeall install
Then, simply answer the questions about where you want to put the software. I use $HOME/radiance/bin for the binaries and $HOME/radiance/lib for the auxiliaries.
The makeall script doesn't install the sample scenes or the documentation, so you have to move those files to a good spot also. For example:
$ mv doc/man $HOME/radiance $ mv obj $HOME/radiance
Be sure to add these things to the MANPATH and PATH variables in your profile. One caveat: there is an important utility called rview in the package. Unfortunately, Vim also has a utility of the same name, so use a PATH modification or rename Vim's rview. Do not rename the Radiance utility, because it is called indirectly by other Radiance utilities.
New users of Radiance first will notice the lack of an included CAD system for generating the scene description. The package was written for research purposes under UNIX in the early 1990s, and if you look at the file formats, it is obvious they were written for command-line junkies like myself who love the power of pipes and plain-text processing (my own initials are AWK, after all).
Nevertheless, there are utilities for translating geometry from formats like DXF, Wavefront and MGF so you can use any utility that will output such a format. Many of the modelers listed in the application archive of linux.org will output one of these. A Windows-based AutoCAD/Radiance module called Desktop Radiance is also available from the Radiance web site if you happen to own a compatible version of AutoCAD.
The input files of Radiance are human readable, which makes them good candidates for script generation. However, be warned: occasional terms in the documentation will cause accelerated heart rates in passing physicists, such as “watt per square meter per steradian”. Be sure to check out all the documentation on the web site. If you decide to do more than play, you might want to track down a copy of Rendering With Radiance by Greg Ward Larson, et al. It is currently out of print, so check with used book dealers.
Listing 1 is a scene that includes sky and ground, the material for brass and a sphere with the brass material applied. The sky and ground are standard. The only thing you need to edit for your own scenes are the options to gensky. The values in the listing correspond to noon on November 25 at 33° latitude north and 80° longitude west. Use negative numbers for south and east.
Listing 1. Sample Input Scene for Radiance
Each item in the scene description has the same format. The first line declares an existing material that will be applied to the entry (or void if that doesn't apply), a type name for a material or geometric primitive (like sphere, polygon, plastic or metal) and a user-defined name. The next three groups are the string, integer and real (floating point) parameters for the entry. Each of these starts with an argument count, followed by the actual arguments. They can be spread over as many lines as necessary.
Most entries have only real parameters. This explains the two zeros in the middle of most of the entries; they have no string or integer parameters. The 5 in the last line of brass indicates five real parameters, and the 4 in the last line of the sphere indicates four real parameters. The parameters are straightforward. For example, a sphere needs a center (x, y, z) and a radius.
Materials can be the hardest part of a scene. It is easiest to start by copying existing materials and modifying them to your needs. Read refman.pdf from the web site for more details.
The gensky line at the top of Listing 1 is an embedded command-line utility. Placing an exclamation point at the beginning of a line in a Radiance scene tells the system to run the line as a shell command and use the output as part of the scene. Radiance comes with a number of these utilities, and I've found that writing your own can make scene generation quick and easy.
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.
Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.
Sponsored by ActiveState
| Non-Linux FOSS: libnotify, OS X Style | Jun 18, 2013 |
| Containers—Not Virtual Machines—Are the Future Cloud | Jun 17, 2013 |
| Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer | Jun 12, 2013 |
| Weechat, Irssi's Little Brother | Jun 11, 2013 |
| One Tail Just Isn't Enough | Jun 07, 2013 |
| Introduction to MapReduce with Hadoop on Linux | Jun 05, 2013 |
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Linux Systems Administrator
- Validate an E-Mail Address with PHP, the Right Way
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Introduction to MapReduce with Hadoop on Linux
- RSS Feeds
- One advantage with VMs
1 hour 22 min ago - about info
1 hour 55 min ago - info
1 hour 56 min ago - info
1 hour 57 min ago - info
1 hour 59 min ago - info
2 hours 22 sec ago - abut info
2 hours 2 min ago - info
2 hours 3 min ago - info
2 hours 4 min ago - info
2 hours 5 min ago
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?




Comments
Any luck with Gentoo?
No go at getting this to compile with gentoo.
Re: Lighting Simulation with Radiance
I'm curious if you considered using POVRAY or other rendering programs and if so what criteria led you choose to use Radiance. -- paul
Re: Lighting Simulation with Radiance
POVRAY doesn't do a physical simulation. If you want to take "light meter" readings from the image that would be the same as what you would get in the real world, then you've got to use something that simulates the physics...read the intro to the article again :)
Re: Lighting Simulation with Radiance
I fail to understand how it can be physically accurate with out taking into consideration the material bounce etc. From the image it seems that we are dealling with super smooth and super clean surfaces...so it may be accurate for the scene data...with more info in the scene the physical simulation seems flawed.
Re: Lighting Simulation with Radiance
Five hours - whoa! 3DSMax with mental ray or some other radiosity plugin would have done it in one
Re: Lighting Simulation with Radiance
... and would be physically inaccurate.
Re: Lighting Simulation with Radiance
Not if real world data were used. You can achieve highly accurate results with Radiosity which ships free with 3ds max 5. And 3rd party renderers can achieve even better results. I have a hard time believing that the author actually tried ACAD, max or numerous other off the shelf packages seriously.
Re: Lighting Simulation with Radiance
Does 3DMax or any other renderer actually work with Lux, Lumens or other real world lighting units? Can you create a model, then actually build it and compare measured light levels of both? I've never seen any of those renderes produce such predictions. The packages are in different arenas. You'd never produce a film with 5 hour (minimum) render times. On the other hand, if you are designing an art gallery, you want to know the precise light levels before you spend millions to build it. Radiance will do this. I'm new to Radiance, and not a lighting designer, but these images show the measurable results that can be predicted.
Re: Lighting Simulation with Radiance
If you read paragraph two of the article, the author clearly states that Radiance is LIKE several off-the-shelf programs that do physically accurate simulations (but I doubt any others are free). He never claimed that Radiance was the only capable package.
In para three he says that the animation packages like 3DS are not interested in doing lab quality simulations, they are interested in making pictures, which is true.
Re: Lighting Simulation with Radiance
"The package produces great-looking images that are output in a special format that records both the texture and physical lighting of a scene, much like the professional products LightScape and VIZ 4 by Autodesk."
An improved version of the LightScape and Viz 4 Rendering enginge ships standard with 3DS max 5. True, animation programs sell mainly to people wanting to make pretty pictures, but lighting simulations are not difficult with max 5 and they are accurate.
"None of them provided the realistic output or easy support for dealing with the log walls I desired."
Also a questionable statement considering his logs are perfect cylanders... is the author suggesting that the above packages can't handle cylanders well?
Re: Lighting Simulation with Radiance
Hey, author here.
Thought I'd take a minute and respond to some of the feedback. Thanks for the interest everyone!
I started doing my log home projects back in 1997/8, which is when I tried out 3DS, ACAD, and a few other modelling systems. Actually, I already knew that I wanted to use Radiance for the rendering, because I was wanting to do lighting design, and it was the only free package that would do it (and still is). It also has so many cool features for materials and lights that deal with light in a realistic fashion that it was fun to play with.
As far as commercial stuff goes, the plugins for ACAD made it pretty easy to export geometry to Radiance, but I did find that generating all the cylinders by hand was pretty time consuming. All of the modellers supported cylinders (well, 3DS didn't at the time, it used polygons to approximate, but that is neither here nor there). My comment on ease of use in the article had to do with going from a floor plan to a finished wall with proper holes for windows and doors. It was simply not easy to manually make each blessed log by hand, size it, and position it. With MAXScript, or Maya's MEL it would have been possible to make a script that would have done what my Perl scripts ended up doing, but in the end, it was just so fast and easy to be able to plop one text line in a file, with a few short hole descriptions and have a hole mess of properly sized and positioned cylinders in my scene. Try making a 50 foot log wall with three windows and two doors in any of your GUI packages in 45 seconds. Just can't be done without writing SOME kind of extra code. So, I'm not saying they CAN'T do it. I'm saying that a little Perl code happened to be the quickest and cheapest route for me. YMMV
In terms of accuracy. Many commercial packages do an excellent job now. How much do they cost? More than Radiance. Are they open source? No. Are they easier to use? Yes, for the most part (I like being able to write utilities to dump geometry in Perl, but I'm wierd). Are they faster? Most of the time. They are commercial products with large development budgets. They are aimed at industry users. I am not an industry user with big pockets. The commercial products that I tried for modelling (3DS Max, ACAD, Maya, Rhino), except for ACAD, were all evaluation copies that I had limited time with. Some of the other commercial products to which I was referring were "3D Home Design" and such $50 packages...no competition at all.
So, if you are a commercial developer, where time is more costly that software, by all means use the excellent commercial lighting packages. If you're a hobbiest like me, save the money and have some fun with Radiance.
- Tony
Re: Lighting Simulation with Radiance
Mhmmm nice i never have heard of pov ray before
THANX GUYZ
take a look to a plugin for 3
take a look to a plugin for 3dmax called lightstudio..i cecked it has a real structure radiance i mean bin..lib etc..
I cecked Rayfront too is good and work with bin file of Radiance..but those r not free, if u wont a free gui for Radiance on win u could find Conrad..i dont know if it still online!!!!it work with bin file of Radiance desktop other plugin for autocad 2000
There r lots other prog working with radiance...Dialux .......
Im looking for smart people interested on cecking lighting simulation sistems...
I worked an linux with Radiance...damn very hard time!!!!
Worked on shell compiling manually...rview..rpict..oconv...too slow!!
Some gui are interesting u can find it on Radiance mainsite..but those dont work so well...
Any of u know Blender???...yes it work on win but on Linux too it is free on i suppose opensource too...some Good people r working on a development of Radinance on Blender...http://www.dream.unipa.it/dream/pub/dot/anselmo/radiance/06.php...take a look....!!!!
If noone of those way is for u u can compile a your on pyton!!!
TOSH
is this guy serious? his
is this guy serious? his renderings looked like plastic dipped in pure RGB paint. if this is what physically accurate lighting will do to my renderings. . . i might as well use notepad to render them. AWK! ACK!
It's a simulation, not a pretty picture maker!
Radiance allows you to do physical simulation. You can actually ask for the light levels from at every point in the picture (i.e., like using a camera light meter in the real world). Important for lighting design.
If you want really nice materials, spend a couple of extra days making pretty materials, then play with fake lights to stage it up...then go get a job at Pixar, where they make pretty pictures for entertainment.
If you want to do quick mock-ups of something you really want to build, and want to know how the lighting is going to be for, say, reading in that room, or hanging art work, then use a simulation.
Dialux
I work in lighting design, has anyone here considered Dialux?? free download, professional lighting tool, accurate output in a multitude of formats, plugin's downloadable from most major lighting manufacturers, accurate daylight calc's
I believe the phrase is 'a no-brainer'
Tutorials
Are there any tutorials to teach you how to use the more advanced features of dialux? Ive tried googling it but there are none.
Do you have a Dialux version
Do you have a Dialux version that runs in Linux? Where can i download it?
Dialux on a Linux box
If you run linux, the only way I've found to get Dialux rolling is with virtualbox ose running XP within linux. It runs faster than under a standard XP instal but I cannot make directx work in my virtual machine so i'm stuck with crappy looking opengl while modeling.
P.S. If you use Dialux, you can send renders straight to pov-ray from the dialux GUI to produce fantastic presentation quality images that are acurate - though I would only ever take figures from within dialux or relux - not apretty picture, no matter what kind of black magic created it!!