Why Cannot I catch reflected glare with radiance?

I am modeling the curtain-wall reflective glare, and I use BRTDfunc to model the reflective glaze.

void  BRTDfunc    RefliteArcticBlue6mm_front
      0.555     0.561     0.478
      0.147     0.164     0.120
      0 0 0
9 0 0 0 0 0 0 0 0 0

But I cannot catch the reflected glare in the rendered picture. I also tried to bump up the -ab -ad -bp parameters, however, it still didn’t work. Below is my command line.

PATH=C:\Radiance\BIN;F:\Program Files (x86)\Autodesk\Ecotect Analysis 2011;$PATH

oconv outdoordaylight2_sky.rad outdoordaylight2.rad > outdoordaylight2.oct
set ROPT=-dp 10000 -ar 90 -ms 0.13 -ds .2 -dt .05 -dc .75 -dr 3 -sj 1 -st .001 -ab 20 -af outdoordaylight2.amb -aa .08 -ad 5000 -as 512 -av 10 10 10 -lr 40 -lw .0001
set VIEW=-vtv -vp -37.136 -23.568 27.599 -vd 42.636 28.068 -22.599 -vu 0 0 1 -vh 32.000 -vv 24.000 -vs 0 -vl 0
rpict -t 120 $VIEW $ROPT -x 64 -y 64 -ps 1 outdoordaylight2.oct > outdoordaylight2_overture_16644.unf
rpict -t 120 $VIEW -x 2400 -y 1800 -ps 3 -pt .04 $ROPT outdoordaylight2.oct > outdoordaylight2_c1.unf
pfilt -m .25 -x /3 -y /3 outdoordaylight2_c1.unf > outdoordaylight2_c1.pic
del outdoordaylight2_overture_16644.unf
rpict -t 120 $VIEW -x 2400 -y 1800 -ps 3 -pt .04 $ROPT outdoordaylight2.oct > outdoordaylight2_c2.unf
pfilt -m .25 -x /3 -y /3 outdoordaylight2_c2.unf > outdoordaylight2_c2.pic
del outdoordaylight2_c2.unf
RadianceIV .\outdoordaylight2*.pic

The final rendered picture is shown as following:

Are you expecting to see light reflected onto the ground? To get that, you would need to use the “mirror” type in the default calculation, in order to trigger virtual source creation. You can use your BRTDfunc as the alternate type, like so:

void mirror reflective_facade
1 RefliteArcticBlue6mm_front
3 .555 .561 .478

1 Like

Hi Yongqing,

an alternative to mirror would be to use caustic photons, particularly for more complex material models (e.g. BSDF). In this case it would make sense to define your specular façade as a photon “port” towards which photons are directed on emission using mkpmap’s -apo option and the material modifier as parameter. The caveat with this is that it was designed for fenestrations with the surface normal pointing inside the building, so your material will need to reflect from its backface too (is this how BRTDFunc works?)

Something along the lines of the following should get you started:

mkpmap -apc outdoordaylight2.pm 1m -apo RefliteArcticBlue6mm -t 10 outdoordaylight2.oct
rpict -ap outdoordaylight2.pm 80 ... $VIEW ... $ROPT ... outdoordaylight2.oct

Note that I suggest starting with 1 million photons here, but consider blowing that up as required – YMMV. Also note there’s no need to specify -ab with rpict in photon mapping mode, as it’s implicitly set to 1.

This will be considerably slower than using mirror with simple material models, but it is a more general recourse for complex geometry and materials.

Hope this helps. Best regards,



when I excuted below commandline:
mkpmap -apc cmap.cmp 1m -apo DoubleGlazed_TimberFrame -t 5 outdoordaylight2.oct
A error message was received,which is “fatal - zero flux from light sources”.

The definition of DoubleGlazed_TimberFrame is shown as following:
void glass DoubleGlazed_TimberFrame
3 0.635 0.705 0.705

Hi Yongqing,

basically this says the photon port doesn’t have a line of sight to the
light source (which I’d rule out in this case), or it failed to transmit;
in case of glass this would indicate the surface normal is pointing
towards the outside, so check that; it should point inside. This was
mainly done to coincide with mkillum convention, although I understand
there are situations where this is awkward. Perhaps we need an option to
reverse this convention?

Note that you can run this without a photon port (omitting -apo), but
then you better have something else to do in the meantime… ;^)

Hope this helps. Best regards,


1 Like