Replies: 2 comments 6 replies
-
Hi, If the IES profile only contains directionally varying intensity information -- e.g., as in the point light-style emitter plugin you mentioned -- it is indeed non-trivial to map it on an area emitter that gives similar emission profile. If we just want to "see" that emitter directly from the camera, a workaround is to insert a small rough-dielectric disk in between the light and the sensor. Here is an example:
This diffuses a delta light path into a narrow beam of valid light paths so that the point emitter appears on the rendering. Here, both the roughness parameter and the IOR control the width of the beam. Another option is to add a small semi-transparent sphere to wrap the point light. This corresponds to a softbox or a diffusion envelope. But if the material is too rough (too diffuse), the rendering would not be very faithful to the original IES profile; and if the material is very smooth, the valid light paths are very hard to sample. The current Mitsuba does not have advanced integrators that can handle such scenes. Best |
Beta Was this translation helpful? Give feedback.
-
Thank you for your reply. I understand that it is not trivial (even not possible) to map an area emitter that gives similar emission profile. So I'm going to break the problem down. First, render the scene with a point IES emitter so that the emission profile is correct. Secondly, render the scene with a custom area emitter, and here I'm only interested in the luminance of the source area (not just to ‘see’ it, but to make it physically valuable). I could finally join the two parts I'm interested in (as in HDR imaging). So I've tried to translate area.cpp into a Python plugin, but I'm having two problems: 1) I can't get the parent shape; I don't know how to call the get_shape() function. 2) I'm trying to implement the eval(self, si,active) function including the IES profile, but I don't know how to access the sensor parameters in order to calculate the distance between the emitter and the sensor. Do you have also a hint for this? |
Beta Was this translation helpful? Give feedback.
-
First of all, BRAVO for this amazing engine that is Mitsuba. I'm a researcher in road lighting and I'm interested in glare caused by the luminance of the sources. I used the IES emitter plugin here: #809 (comment) (thanks to @arpit15) to produce the right illuminance on the road and a custom bsdf plugin to obtain the right luminance from the road to the sensor. Unfortunately, I'm unable to reproduce the luminance of the sources. As far as I understand, all the ponctual sources are invisible and my emitter plugin is punctual. So I suppose I have to use an area emitter and change its initial diffuse radiance by a custom one. I desperately looked for a custom area emitter example plugin in Python - but nothing. I am not able to implement it from scratch, that's why I'm asking help here. Am I on the right path? And how to implement it? Thanks in advance for your answer.
Beta Was this translation helpful? Give feedback.
All reactions