So a few simple questions around an area that keeps tripping me up in two areas that are related. I guess I need a good tutorial on these very specific areas...The bottom line is that if I can understand the behaviors better, I will have better control because most of the time I try to distribute objects with GNs I have trouble! What I am trying to accomplish is creating a bunch of trees/rocks and nature resources that I can distribute over a landscape. However I don't want them created all in one spot (world origin) as they will all overlap and make it harder to edit. Ideally I can create them off to the side and get them randomly distributed by understanding distribution and origins better. The questions up front are:
- Why does apply location reset the object origin and why do I want that? I usually want to keep my object origin at the center of geometry
- What do the GN ObjectInfo/CollectionInfo 'Separate Children' and 'Reset Children' do? When do I know when to use them?
- What do the GN ObjectInfo/CollectionInfo 'Original' and 'Relative' do? When do I know when to use them?
- If I move my Suzanne up on the Z axis, the distributed Suzanne's also move up the Z EVEN AFTER I APPLY THE LOCATION WHICH MOVES THE OBJECT ORIGIN BACK TO WORLD ORIGIN. WHY?
- How do I distribute ObjectInfo or CollectionInfo objects more randomly or more specifically question 5
- How do I easily create objects out of my camera view with different not at world origin and distribute them across another object
First please note that I normally apply rotation and scale but sometimes I apply location. It's taken me a long time to realize that when I apply location the Object origin changes from the object's geometry to the world origin (or cursor location (they are often the same))
So first question, why does the origin point change when location is applied? I would expect that object origin should not be affected by saying "this object is at it's desired/home spot" which is what I think applying object location is doing.
WRT Geometry Nodes and distributing collections of objects, all of this gets more confusing. I don't need a specific fix for my project, I need a better understanding of behaviors and expectations.
For instance given this simple setup, with a gray plane, orange Suzanne and a green Torus, all objects have scale and rotation applied.
Now I want to distribute both objects randomly over the plane and make them purple.
All good, They seem to have the same scale, they are randomly distributed. I notice that the two options on the Collection info node do not seem to do anything when selected separately, but if both are checked, the distributed object move just a bit lower on the Z and I have no idea why
Now if I change the Collection Info from Original to Relative and try the Separate and Reset Children options on the CollectionInfo node I get similar results. I have no idea why!! What are these options doing?
Now I want to distribute both the torus and Suzanne separately, so I guess I need to put them in two different collectionInfo (or ObjectInfo) and Join them back to the geometry. Since they both are at world origin and with scale and rotation applied, they occupy the same space so I have to separate them. However this does not put the distributed object at separate locations. I guess I need to add some randomness to the points that are distributed on the plane.
Suzanne moved up on the Z and location Applied, so Suzanne's origin is at world origin - so why are the distributed instances not on the Z that is the same as Suzanne's location? Again, Separate and Reset Children and Original/Relative seem to have no impact. To get them back to the plane I need to add a Translate Instances node to readjust the 'Z', yuck. Is there a more straightforward way?