It would be good if the Object Info and Collection Info nodes could output instances of the referenced objects/collections, because it could significantly improve performance and reduce memory usage.
The nodes have an "Original" and "Relative" mode that has been introduced in rB8b777ee6d69d: Geometry Nodes - Object Info: option to apply obj transform to the geometry. P1909 is a small patch that changes the Object Info node so that it outputs instances.
The problem is that the "Relative" mode can result in sheared instances if the objects have non-uniform scaling and are rotated differently.
Having shear is not a problem by itself. However, afaik Blender usually expects that object matrices can be decomposed into location, rotation and scale.
We have two options:
- If we allow sheared instances in geometry nodes, we might have to update many other places to support sheared objects or we would have to "apply" the shear, resulting in higher memory usage and performance loss.
- If we do not allow sheared instances, the "Relative" mode in the Object/Collection Info node does not work correctly, when the object with the modifier has non-uniform scaling and is rotated differently than the instanced object.
With P1909 applied, you get the following result with shear is not supported. Note, in master this works fine currently, because the shear is "applied".
My current personal opinion is that the second option is more practical. Non uniform scaling is discouraged in some other contexts as well afaik.
I'd appreciate some feedback on the topic.