Instances + Mirror geometry wrong normals

Hello! I have a problem with my model - after importing the FBX file into playcanvas editor, the model does not look right as it should. The problem is with mirrored geometry - all the faces have opossite normals (I think), so the mirrored geometry looks as if inside-out compared to the original.

The workflow in 3DS max was: create the inner tire, create one dent on the tire, make instances of the dent around tire’s center (360°) and then take this dent’s and mirror them to the other side of the tire.

I also tried several other models where I used mirrored instances (to save up file size) and the problem is there too.

Edit: Just wanted to clarify: when I delete any mirroring/instances information (bake the parts to a single mesh), the problem is gone, but that makes a huge impact on file size.

So, I think the problem is that the mirrored model has one of it’s scale factor set to negative, therefore the normal is inverted. This problem was discussed and fixed (for three.js) here: https://github.com/mrdoob/three.js/pull/12787

So if I read correctly, it’s a FBX loader problem? Any idea how to fix this?

Did you try to convert your mesh into editable poly before export? Normalize normals, double check they are correct?

If you can publish your wheel here, I could check it too.

Yes, it was already editable poly before mirroring and exporting. This also happens with every geometry, that you try to mirror (does not have to be instance, you can set it to copy).

Link to FBX file: https://drive.google.com/open?id=1jzU9CKTkM4cpZxJxexULYBQz9z6TJ1Ur

This is how it looks inside modeling program:

And this is after importing into playcanvas:

Sorry, I don’t know why does it happen.

Your normals seem to be good. =(

I have created an issue on github addressing this issue: