[UE5.1] Who maintains the deformer plugin? Need help

I want to be able to add Dual Quaternion skinning in Unreal Engine. I have a branch that does this, but I really like the idea of using the deformer graph. The problem as I see it is that the deformer graphs is vertex shader only. This means that we have to do N conversions from LS matrices to DQS per vertex.

If a mesh has 100 bones and 100K vertices, that can be 800K conversions when realistically, we only need to convert the 100 matrices before sending it to the shaders. But that code is in GPUSkinVertexFactory.cpp and there doesn’t seem to be a way to change the vertex buffer from a plugin.

If we could add either an option for DQS (I have code for this) or a way to have a blueprint graph or just a delegate on the mesh component or something like that, it would mean I could just provide my own deformer plugin for the rest (or add it to the existing deformer plugin with a pull request).

Can anyone point me in the right direction as to who could help me out in getting DQS skinning working with the deformers without converting the matrices a billion times?

Thank you.

edit: Oh, I also have a bunch of additional methods for Quat and DualQuat. Does UE have unit tests? If so, where are they located?

3 Likes

Bump.

I have since made a pull request with deformers for dual quaternion. It has tons of unit tests. I even added unit tests for the DualQuaternion classes and added a bug fix.

Not sure if this might help at all, but in the context of MLDeformer, the Nearest Neighbor Model tutorial says at one point that you can use dual quaternion skinning to compute the deltas that the deformer has to learn. I think it’s not quite what you want, but maybe the deformer graph there (DG_DQDeform_RecomputeNormals in the content of the ML Deformer Nearest Neighbor Model plugin) has something of interest.