Mirroring/ scaling instances without causing additional draw calls

Hi guys,
I am working on a large model and would like to mirror one side of the model to the other side by using instances.
When I create an instance and set the Z axis scaling of the instance to -1 I get the result I need, however it results in an additional draw call which I would like to avoid to improve performance.

I found out that the extra draw call is caused by using a different scaling for the instance than for the source mesh. Changing the position of the instance on the other hand does not result in an extra draw call.
I also tried to attach my instance to a new TransformNode and to only scale the TransformNode instead of the instance. However this also caused another draw call.

Do you have a suggestion how I can mirror/ scale an instance without causing a new draw call?


Hello and welcome,

this is unfortunate but not avoidable :frowning:
By setting the scaling on z to -1 you force the system to change the culling (CW instead of CCW). To support this case, Babylon must separate the instance from its root as the culling cannot be different for instances

Just by curiosity, did you tried with a Solid Particle System by setting the particle scaling to -1 ?
No idea how it behaves with your model