Hey, thanks I was looking into mops, it works on copied objects to points but was struggling to make it work with an object I already have. Maybe I missed something but will try to look into MOPS later.
I think the best approach is what Mr. mestela suggested.
UPDATE: actually, it is possible to make something similar with MOPS, after assemble and MOPS explode, but I can't get the orientation right. but anyway close enough. Good to know!
Edited by brokenkeyframe - March 21, 2019 14:29:10
It's definitely possible to get this to work in MOPs, although you don't want to use Explode in this case, since your objects are already packed primitives. MOPs Convert is more suitable here. The catch is that the packed primitives don't inherently know which way they're oriented… Matt's solution explicitly defines an axis to rotate around. With MOPs, the objects want to rotate around their local axes, or around world axes.
The MOPs Reorient SOP can take care of this; you just have to provide each point with a local N and up that they can rotate around, and those become the new rotation axes for the packed primitives.
I caught a bug in the MOPs Randomize SOP while taking a look at this that was making it use an older rotation method, so I left that node unlocked in this example. If you download the latest Experimental build from Github, this bug should be fixed.
It's definitely possible to get this to work in MOPs, although you don't want to use Explode in this case, since your objects are already packed primitives. MOPs Convert is more suitable here. The catch is that the packed primitives don't inherently know which way they're oriented… Matt's solution explicitly defines an axis to rotate around. With MOPs, the objects want to rotate around their local axes, or around world axes.
The MOPs Reorient SOP can take care of this; you just have to provide each point with a local N and up that they can rotate around, and those become the new rotation axes for the packed primitives.
I caught a bug in the MOPs Randomize SOP while taking a look at this that was making it use an older rotation method, so I left that node unlocked in this example. If you download the latest Experimental build from Github, this bug should be fixed.
Thank you for example and explanation! It's really helpful!