RhinoCommon Light Properties


Any idea if these Light Properties in RhinCommon can be used and implemented? I’m not having any luck getting them to work.





Would be great if we could extend Rhino’s lighting possibilities.


Hi @bringfire,

I don’t believe anything in Rhino uses any of the power properties. Intensity may be used. But a 3rd party rendering application may use these.

How would you extend and what would use the extension?

– Dale

Thanks for the response Dale.

This is good to know, and I’ve found a VB script that helped me understand how to implement the Intensity method.

During this time of working from home, renderings have become increasingly important to convey design ideas both internally and externally. It would be great to be able to more accurately render lighting based on standard power units (Candela, Lumens, Watts) within Rhino to evaluate and discuss lighting strategies with more accuracy and confidence. A native way to utilize these methods would allow us to extend the standard Rhino Light Properties Panel or Grasshopper Scripts to include standard lighting units.

It sounds like even if those methods are in RhinoCommon they may not be implemented in the Rhino Core…or whatever part of the code would allow us to change the lights based on these units, is that correct to your knowledge?


In Rhino 7 with Raytraced and Rhino Render the light intensities are essentially Watts, for directional light (sun) the strength (intensity) is watts per square meter.

Since the rendering engine Cycles that powers Raytraced and Rhino Render always assumes 1 unit is 1 meter intensities are scaled accordingly. If you have a model in mm unit the intensity Cycles gets is 1000 times larger then what you see in the GUI.

With Rhino 7 you also get light falloff (linear and inverse squared), whereas Rhino 6 always has constant light - no falloff, which makes it even harder to do proper lighting.

1 Like

Thanks, Nathan.

I’m going to look into the Rhino 7 WIP to see how that is implemented. Thanks for the info. Do you know if the light.PowerWatts methods in RhinoCommon are used to implement this in RhinoCycles?


I do not use these methods to implement this in RhinoCycles.

I get the numbers as you see them in the UI, scaled up or down depending on the model unit system. Cycles works internally with 1 unit = 1 meter.

1 Like

Got it. I can see here on GitHub how you’re doing that. Thanks! I’m installing the WIP now to explore the new UI for lights.


I hope you’ll have some fun too.