When -mi is not specified but the input scene has instancing extension,
we convert the instances to the internal world-space transform
representation, which can then be serialized using our existing code.
Note that instances are not attached to nodes in the internal
representation; animation and scene data is thus silently discarded for
now. This is not ideal but is not trivial to change as it would require
reworking other parts of the processing pipeline. This also means that
the relationship between named nodes and instances isn't preserved,
and instances for a given mesh are always concatenated - which is good
for efficiency (assuming per instance culling) but may restrict some
use cases.
When -mi is not specified but the input scene has instancing extension, we convert the instances to the internal world-space transform representation, which can then be serialized using our existing code.
Note that instances are not attached to nodes in the internal representation; animation and scene data is thus silently discarded for now. This is not ideal but is not trivial to change as it would require reworking other parts of the processing pipeline. This also means that the relationship between named nodes and instances isn't preserved, and instances for a given mesh are always concatenated - which is good for efficiency (assuming per instance culling) but may restrict some use cases.
Fixes #685.