First time here? Check out the Help page!
1 | initial version |
I have not tried this, but I believe you can use the "mirror" type to create virtual light sources for each glazing panel using a unique modifier (material name) for each. You can then give this list of modifier names to rcontrib or rfluxmtx using the -M option. The result should be a matrix of reflected contributions from each source for each evaluated irradiance position in the room, or per pixel if you are generating component images.
If your offending building's facade is planar, you could use a single surface/modifier and a bin calculation to tell you where you are reflecting the most glare, and that would be a lot more efficient, since it wouldn't create hundreds of virtual light sources to track, only one.
2 | No.2 Revision |
I have not tried this, but I believe you can use the "mirror" type to create virtual light sources for each glazing panel using a unique modifier (material name) for each. You can then give this list of modifier names to rcontrib or rfluxmtx using the -M option. The result should be a matrix of reflected contributions from each source for each evaluated irradiance position in the room, or per pixel if you are generating component images.
If your offending building's facade is planar, you could use a single surface/modifier and a bin calculation to tell you where you are reflecting the most glare, and that would be a lot more efficient, since it wouldn't create hundreds of virtual light sources to track, only one.
For example, the following expression would compute a bin number corresponding to left-right then bottom-top ordering of panes on a window wall divided in a Fw x Fh grid where each pane is Wp by Hp in world units starting at lower-left position of (X0,Z0) and extending in the XZ plane:
floor((Px-X0)/Wp) + Fw*floor((Pz-Z0)/Hp)
You could give this as the "-b" option to rcontrib for your window-wall modifier, and it would create Fw x Fh output values for each ray (bundle).