Calculate physically-accurate illuminance (in lux) on a whole object (not as seen by camera, but as received by the object)?

I’m trying to model a realistic outdoor scene and would like to calculate and display the light received by an object. Specifically, I’d like to compute and display the lux (and average RGB) received by an entire discrete 3D object selected in the scene as perceived by the object (sum over all of its surfaces), not as perceived by the camera. Suppose for example that the object is a solar panel facing away from the camera – I still want to be able to click on it and get the illuminance (lumens / square meter) across its surface.

As I change the lighting direction/intensity, I’d like to see that this value changes, even if it’s not perceived by the camera.

Are there built-in ways to measure the lux for an object? Or techniques that might enable this? Or anything similar?


1 Like

Hello and welcome

unfortunately there is no way to do it out of the box. As this is not really related to realtime rendering I cannot even point you to the right direction

Maybe others can?

Ah, I see. Thanks. I do see it as somewhat realtime, in that I would like to see the illuminance on an object in a realtime-rendered scene as I/the user changes the lighting.

I think with the new prepass renderer you would be able to get fairly easily the illuminance, but only for visible objects (pixels).

Ah, I see – so not for the backside of the object, unless I move the camera…

Yes indeed.

I see – thanks!