

In Substance Painter, there's a checkbox in the project settings to toggle between MikkTVert and MikkTFrag, while in Substance Designer you can load tangent basis plugins. Both bakers allow to select the tangent basis as described in the docs you referred to. The baker in Substance Designer has more features than the one in Substance Painter.

There is also a fastTBN implementation, which skips re-normalisation in the fragment shader, but this option is disabled by default and is not exposed via the editor. In contrast, Pla圜anvas does this by default:ĭTBN = mat3(normalize(dTangentW), normalize(dBinormalW), normalize(dVertexNormalW)) InputData.normalWS = TransformTangentToWorld(normalTS, half3x3(, bitangent.xyz, ))

In Unity, the tangent frame is assembled in the fragment shader without re-normalisation as described here. Secondly, most current applications use MikktSpace tangent frames. The normal maps and models we are using do work flawlessly in Unity.Īs far as I understand, there are currently at least two issues:įirstly, as pointed out, tangents are dropped by the FBX importer, which causes an entirely different normal mapping algorithm to be used. It still does not look right with any maps we've used, though, which were exported from Substance. We'd like to use Pla圜anvas for product visualisation, but in its current state without normal mapping we are hitting a brick wall.Īs a workaround, we tried importing glb assets with tangents into the editor and loading them at runtime, which correctly imports the tangents and causes the expected shader variant to be used.
