How BSDF materials handle RGB channels

Hi everyone,
I would like to ask how the three RGB channels are processed separately in the calculation of the BSDF matrix, or whether the calculation of the three channels of RGB is the same in the calculation of the BSDF matrix, regardless of the different reflectance/transmittance of different channels.
Thanks a lot for your help.

Hi Guo,

Can you be more specific? What calculation are you referring to?

CIE color is supported by Radiance’s extension to the Optics/WINDOW BSDF XML standard, but I don’t believe there are any measurments available with this standard. The genBSDF command with the -C option can produce such files, however.

Normally, all three RGB channels are treated the same for a standard (CIE-Y) BSDF. There are exceptions if you specify diffuse reflection and transmission RGB values in your BSDF or aBSDF primitive, however.


Thank you very much for your help
What I mean is that the transmittance of windows to different wavelengths of light is different, so should different BSDF materials be used for different wavelengths of light?When I calculated the BSDF in the WINDOW software, the material of the window had wavelength properties, but the final BSDF was weighted and averaged in the solar\visible band.Then how can I get the BSDF material to set the wavelength properties corresponding to the window material?
As your reply, if i specify diffuse reflection and transmission RGB values in my BSDF or aBSDF primitive, 'if no real arguments are given, the BSDF is used by itself to determine reflection and transmission. if thereare at least 3 real arguments, the first triplet is an additional diffuse reflectance for the front side. ’ (from the refman.pdf) I’m wondering if it means that another layer of material been added to the outside of the BSDF.
I hope I’ve made it clearer this time, thank you again.

Hi Guo,

Yes, that clarifies your question very well. If an overall RGB transmission color is desired, I recommend applying a Radiance pattern, such as a colorfunc to your BSDF material. The RGB values can be constants, which will modify transmitted but not reflected rays for this type.

If you wish to apply actual spectra, you can use any of the spectral pattern types introduced in Radiance 6.0a.

If you need your color to change with transmission angle, this can also be accomplished with colorfunc, colordata, specfunc, or specdata with some additional work.

I hope this helps.

Hi Greg,

Thank you so much for your reply to my question. Your reply is clear to this question and show me the way forward.

Best regards,