On Mon Sep 29 17:41:27 2025 +0000, Matteo Bruni wrote:
Pretty sure that's not what the inverse of the transpose is for, regardless of what the documentation says. Usually you want to use the inverse of the transpose of a transformation matrix specifically for normals, to make sure that they remain orthogonal with the transformed geometry. Not sure what's up with vertices with two position elements (if supported at all?), I guess it's possible that the comment from https://learn.microsoft.com/en-us/windows/win32/direct3d9/id3dxskininfo--upd... is also correct. I tweaked a bit the test ([usm-test.txt](/uploads/27c8e1a1fed580424ee913b067bdda89/usm-test.txt)) to check my hunch and at least it looks like the inverse transpose matrix is used for normals when present.
Makes sense, thanks. The application in question doesn't need that functionality, so I don't think it's worth implementing, but I'll change the message accordingly.