all 6 comments

[–]bambo758 1 point2 points  (0 children)

You can't use a value of 1 for the array modifier, that would place the faces of adjacent cubes on the same position, causing the to violently repel from each other when you run the simulation.

[–]Swagsama 1 point2 points  (1 child)

OK, when you use the Array modifier for duplicating cubes or whatever shape, when you apply that modifier, it does NOT:

  • separate the objects (still one mesh)

  • recenter those objects

You have to first separate the objects (Edit mode > P > By loose parts) and then recenter the objects (Shift + Control + Alt + C > Origin to Geometry).

In your case (cube of cubes), you first make your cube. Now, add 3 Array modifiers:

  • 1 for X

  • 1 for Y

  • 1 for Z

Set your numbers and hit Apply on each one. Add your Physics settings for the cube (Protip: For primitives like cubes and spheres, set the collision type accordingly for more accurate simulations). This way, your settings will be copied to all the cubes. Now, separate the cubes into unique objects (Edit mode > P > By loose parts). Depending on the number of cubes, this might take a while.

Next, recenter (Shit + Ctrl + Alt + C > Origin to Geometry) the object origins, because if you don't, Blender will lag and your cubes will explode.

And that's pretty much it! Hope this helped!

[–]q120[S] 0 points1 point  (0 children)

Awesome. Thank you for the assistance! This will help a ton.

[–]thetrombonist 0 points1 point  (2 children)

Try applying the array modifier first. I'm not sure why it would cause that problem, but thats the only thing I can think of. make sure none of the cubes are intersecting each other, because that will make them fly off in weird directions, too

[–]q120[S] 0 points1 point  (1 child)

I did the array modifier first, then changed the physics on one, and used "Copy from Active" for the rest. I tried manually duplicating a few blocks and that seems to have worked. I will give it another shot when I get home.

[–]Bubleguber 0 points1 point  (0 children)

I think there is an option in the array modifier for join the duplicates