I’m not sure where to fix this issue: I am trying to create a bed of leaves, and a box (for now) pushes through it. I have bsolver all set up and working great - little boxes are randomly scattered and rotated, and my box, using forces, pushes them around - excellent (image 1)
Now I’m trying to add my leaf image to one side of the box - problems. When I add it to the box, (movie file in->constant->actor1) I can cull the back surface, but not the sides, so I get little lines on the side of the box which is the squashed leaf image on the side. (image 2).
I found a tutorial on creating a layout for a geometry to set a different image for each side of the box. I created an alpha-only png and set up the six side of the box. (image 3)
I put all of that into an ActorCOMP (called leaf2) and dragged position and rotation nulls to the instancing Translate OP,Position OP, as I had done previously. (image 4)
Well, apparently ActorCOMPs don’t want to look at GeoCOMPS inside of them, so when I put all of that inside my actor comp, I get one leaf (the position and rotation don’t work) and the physics does not work - will not react to boxSOP. (image 5)
So this could be fixed by:
Have a different images on each side of a boxSOP, or making 5 side of the box “invisible”.
Having the bsolver “see” the geoCOMP inside of it.
The nesting of a Geometry Component inside the Actor Component is an issue especially for the instancing.
But there is no need for the Geometry COMP inside the Actor COMP - you can also assign the material to the actor directly as you had done before. The only change in your network should be the color map you reference on the Constant MAT.
I appreciate the response, however, I still don’t see how I get rid of the image being on the side of the cube. I need it to be on only one (top) surface.
would be interesting to see your full network to point out what causes your issue but in the attached example you can see how the Box SOP is instanced via the Actor COMP’s Instancing parameters and the material directly applied to the Actor COMP.
instancing allows for assigning individual textures to instanced copies.
You can either create a 2D Texture Array with a Texture3D TOP and access them via the w Texture coordinate reference on the Instance2 page - or reference multiple TOPs via the Instance Textures parameter on the Instance 2 page as well.
Check out our curriculum at learn.derivative.ca and especially the section on instancing for more information: