I’ve cloned a mesh and using a negative scale to mirror/invert the geometry. The mesh is not symmetrical so I can’t rotate it, negative scale is working great in WebGL but does not persist when exporting to USDZ (not sure about gltf).
The USDZ format allows negative transforms, but not all renderers (like iOS quicklook) render these. In general, it’s a good idea to follow these best practices before importing a model. To minimize any issues with this follow the steps below.
1.) We recommend resetting your transform values. The exact workflow for this depends on the software package you use for production. Most often there is a “Freeze Transform” or “Reset XForm” that resets transform values and removes negative scaling values.
2.) After doing this in your 3D software, make sure the normals on your model are flipped the correct direction. Check you viewpoint settings to make sure you are only showing single sided normals and that you are in a viewport mode that will show you differences. Then flip normals where you see issues.
3.) Lastly, export to FBX. We recommend unchecking Preserve Edge Orientation.
4.) Import into the platform and check the transform values to confirm the process was done correctly.
Here is a link to more best practices we recommend: https://docs.threekit.com/docs/en/threekit-3d-content-creation-guidelines#
If you can’t follow what Nicole suggested - can you apply a PolyMesh operator to it, and then use the symmetry mirror operator?
Not sure if that would do the trick for or not, but maybe worth a shot…
Thank you @npremo for the thorough explanation!!
@tcarpenter your suggestion also worked like a charm! I “duplicated” the mesh and the Mirroring Operator seems to be doing the trick and exports as expected to USDZ.