Photon Map Radiance

Hi Fredrico,

Honeybee doesn’t support Photon Mapping at present. The functionality of Radiance that is implemented in Honeybee right now is capable of handling most materials including multi-modifier complex materials.

I have done some fairly extensive testing with Photon Mapping outside of Honeybee and found that it’s mostly useful if you are trying to simulate caustics. As per what I have last seen, Dr. Roland Schregle and his colleagues are still working on a variant of Photon Mapping that can be used for annual daylighting simulations.

Which materials are you trying to simulate?

Dear Sarith,

Thanks for the quick reply!

My study know is about the comparison of a Radiance based simulation (in this case using Honeybee, not radiance desktop) and a test room lit by daylight. So basically I won’t need any annual daylight simulation, rather a simple illuminance map taken at the floor plan. The I will compare the real with the simulated ones.

In the beginning the variables I am taking into account do not include any shading devices, like for example the typical metallic white venetian blind, that I have been told, and later on read, are the actual problem of the Radiance engine.

So, do you think that if I do not simulate this kind of blinds (with curve surfaces and high reflective material), I can have good result in the simulation?

Thanks again for the helpful reply

Hi Federico,

If your metallic venetian blinds are specular (instead of being lambertian), then photon mapping will most likely produce more physically realistic results. Greg Ward had presented this image at the last Radiance Workshop (more details):

The bright patterns on the right image are due to caustics from the edges on the Glass.

I tried a few simulations to test it on my own. The below two simulations are with classic radiance. You don’t see any patterns on the wall due to reflections from the pool.

While the series of images below is with Photon Mapping. You can see the effect of caustics on the areas highlighted by red rectangles.

Based on what I have read and tested so far I think you’d probably see some noticable differences with Photon Mapping simulations if your model involves curved specular metallic surfaces.

The bare minimum requirement to implement PhotonMaps in Honeybee would be to link the binary file mkpmap to the workflow and then add the flag -ap to rpict to account for global and caustic photons. To put it simply, it’s fairly doable. I had tested all my simulations on a Linux system, however, I am told that the photon mapping files work fairly well on windows as well. I would suggest that you create a simulation in Honeybee with standard radiance commands and then share the file. It should be fairly easy to create a hack code to link that to the photon mapping commands.

Hi Sarith!

Thanks very much for all the info. I can see clearly the reflection patterns in the photon mapped ones.

Regarding my work, I haven’t started yet with the model and I will also have to check the reflectance values of test room. When I will have all set up I will upload the file here.

Thanks for the big help!

Hi Sarith,

What do you think about implementing photon mapping to Honeybee as an option for image-based analysis? What do you think will be the major issues?

I have no experience in using PhotonMapping but based on the presentations I think our main challenge is to open up access to available parameters (page 7 and 8 from David’s presentation) and set them to the best practice. I also think we need proper warnings for the cases which sort of follows Greg’s slide in choosing the best method.

Thanks! I’m learning lots of new stuff in the areas that I always wanted to learn more about them by reading your posts.


Hi Mostapha,

I think it would be easy for you to actually make it work with the existing recipe-based workflow that currently exists in Honeybee.

On a very fundamental level getting Photon mapping to work basically requires the creation of an amb file for all the photons through mkpmap. Based on the discussion that I had with David during the workshop, the thing that isn’t completely settled as far as Photon Mapping goes is the selection of number of photons and bandwidth for creating the photons. However, since then I have noticed a troubleshooting table at the end of the Photon Mapping manual. So, perhaps everything is stable now.

I am fairly certain that I can write a hack for the existing Honeybee workflow to make it work with Photon Mapping. We could use that example to create a proper implementation in Honeybee. I will update you guys in a few days.

(By the way, I totally agree with your comment about proper warnings and Greg’s slide about choosing the best method.)

Great! I’m looking forward to the example file.

Thanks very much Satith!