Including a Light in a Block Definition

Is this not possible? I’m attempting to save one within a block definition (the block’s a lamp), but the light never shows up in the block. Adding it to the block faIls also.

1 Like

Light objects are not supported in Block definitions.

THanks. If there’s a spot to look for such things in the documenation, please let me know.

I verified it by searching on the support pages and found some notes in a coding example.
I think the restriction is related to generating the lighting in the scene.

I’ve added this as a bug:
https://mcneel.myjetbrains.com/youtrack/issue/RH-48093

I don’t know what will come of it but it doesn’t hurt to ask, eh?

https://www.rhino3d.com/searchresults?q="lights+in+blocks"

1 Like

I’d imagine it’d be handy to iterate a lamp around a scene won’t be an unusual requirement.

2 Likes

+1!
Just would have neede this, too.

+1 from me too, @John_Brock

I felt the need to post as one of the comments in the youtrack states:
“Unless we hear about this issue a lot, implementing this request has a low priority”

I’m trying to fill the quota for “a lot” and get this issue escalated to high priority because i’ve found an abundance of threads across this and the chaosgroup forums over the last 5-6 years…

etc…

At the moment the only workaround for users wanting to instance multiple lighting objects is to use other applications like 3ds max :frowning:

4 Likes

Not entirely true, Vray Next supports instancing of lights. It’s the default behavior if you copy or array lights

@Gijs No that is a completely different issue.

I’m aware of V-Rays handy capabilities for editing light properties for the same asset i.e. intensity and colour.

But that doesn’t allow anywhere near the amount of editability a block instance would allow, i.e. changing orientation, changing lighting type (rectangle lights vs spotlights etc.), working with external rhino files including lights.

1 Like

+1 from me too, I work in a boutique lighting design company so this would be a huge help to be able to send people update-able Rhino fixture files.

@John_Brock is this planned for Rhino 7?

1 Like

+1 for Lights in Block Definition.
Managing a lot of lights in a realtime rendere engine like Enscape would become a lot easier

2 Likes

Hi - this feature request item is open to the public and so you can keep track of any activity around it. It is currently on the 7.x list but that is a best guess only.
-wim

1 Like

@jcmv_design yes I agree that working with lights would be easier the way you describe.
For the time being, we might be able to solve a lot / prototype the way we like it using some scripts. As an example, I’ve made two scripts.
One will allow you to focus one or multiple spots (normal or IES)
The second will allow you to align the direction of multiple spots to a target.
alignSpots.py (942 Bytes)
focusSpots.py (1.2 KB)

here’s another one, requires named point objects. This could probably be made to work with blocks as well:
alignSpotToFixture.py (1.1 KB)

edit: this one works with blocks. Again, needs 2 named point objects to be present in the block: spot_source and spot_target
alignSpotToBlock.py (1.5 KB)

3 Likes

Oh wow, wait, so this Rhino problem is why it won’t work for v-ray?

Thanks @Gijs I appreciate the scripts you’ve shared, i’ve used similar ones in the past when needed and they do serve as a semi-workaround.

But it’s still a much clunkier and slower way of doing things then if we had the ability to include them simply in the block itself.

@jcmv_design yes it is still a bit clunky I agree but this is a start. I need a bit more time to work out more advanced ideas but I certainly think it is doable. For example, what I would ideally like is that I can focus a light fixture and that the light will follow. In my current project I’m using rail spots that have 2 pivot points for orienting the light and these are not concentric when viewed from the top.
IMO it will require that the light fixture is made out of 3 blocks, one for the sliding part, one for the vertical and one for the horizontal rotation. In case McNeel would implement lights in blocks that would be sufficient, what is extra needed is linking the light’s position and orientation to the last block.
Can you describe how you would use lights in a block? Because other than for non moving light fixtures I don’t see how lights in a block would save time. In the above case there is still no way to focus the light and make the fixture follow. Blocks won’t solve that.

here’s an early prototype: open the 3dm below and run the attached script:
spotlight_focus.3dm (485.4 KB)
spotFocusAdvanced.py (3.2 KB)

edit: better version here that works also after first orientation can be found here

3 Likes

Hello. Are lights in Blocks supported in Rhino 7? It would be an important argument for upgrade in our office. I’ve been waiting for the lights in blocks since Rhino 4 and we are still struggling with that by uncomfortable workarounds…
Thanks.

1 Like

I second this. Please, Mcneel. Rhinoceros really has so much potential to beat 3ds max in just pure Archviz alone. We have Subd now, Rhinonature is coming, Vray support is at the golden age and Grasshopper has the capability of beating railclone. If mcneel could really just fix annoying bugs like this they could smash the competition.

3 Likes