Randomizing part of instances, possible?


Working on a scene which contains lots of clocks, which are linked in then instanced. Is there a way to setup the clock so that every instance show arms in random orientations?

You could use randomize transforms for all the instanced arms, that’d be an easy solution - depending on how they are linked though.

I’ve separated the arms from the axel and relinked the source part. Meaning that in this file I can’t edit anything on the source since it’s linked. The others are instances of the collection containing the linked parts.

How do I proceed? Can I add some random stuff in the source file? How?

There are 138 clocks in total (not all fronts are visible though), so I’d like to keep it linked and kept as instances if possible.

if I get it right the arms are parented to the axel, the the instanced along with it across all the clocks?

You can just select all of them and add a random transform, them being instances shouldn’t matter.

You could probably do it separately for small and big arms, so that the small ones have a more subtle movement.

I’m not able to do this. Using randomize rotation in z from randomize transform, all instances (I also tried duplifaces, a face with three array modifiers) get the same rotation. I’ve made the linked arms proxies so as to be able to rotate them in the first place.

Can you share a setup where the arms are part of a linked collection from external file that works?

sure thing - clockArms.blend (719.0 KB)

Arms are parented to their own cylinder (which would connect them to the clock itself) and instanced as many times as needed.

Thanks, but I have already done things this way (although it doesn’t suit this project). Shouldn’t there be two files? The arms (full clock) are linked in (hence the requirement for proxies), using file/link (not file/append).

I have linked in the master to a collection, now I want to dupli/instance that and randomize all by doing the Randomize Transform on the proxies

Ok,I see now. Was handling the to issues separately, instances and link files.

Without static overrides the only solution I can think of is using constraints, track to or copy rotation of an empty and randomize the influence (that could probably be scripted). Might be a bit tedious and there very well may be better solutions, not sure.

Additionally, every part in the clock (incl arms) is in a collection. I tried to change it so that everything happens in the linked file, but even the collections wouldn’t update with random. Guess the only thing left is in the linked file, take out the arms from the collection and instance them manually and put those in a collection (so as to easily be able to turn them off when I need to work on the clock).

Did everything in the linked file; instanced the clock collection minus the arms, and instanced the arms separately and applied the random. It worked, but it’s not how I ideally would have liked to do it.