Anyone on this forum have experience Exporting mGear rigging to Apple SceneKit?
I am an experienced iOS developer (Objective-C, C++, and Swift) but have little experience with 3D. I am hiring a rigging expert to rig a model I have in Maya using mGear. The plan is for him to create rigging for game engines. Normally this would be things like Unity, Unreal Engine etc., but I want to use SceneKit. What I’m doing is NOT intended for a game and exporting baked animations will not suffice. I want to programmatically articulate the rigging.
SceneKit historically supported Collada (DAE), Alembic and USDZ formats.
Alembic is not suitable for bringing rigging to SceneKit as per their own documentation “Alembic will not attempt to store a representation of the network of computations (rigs, basically) which are required to produce the final, animated vertex positions and animated transforms.”
USDZ doesn’t support rigging either. Pixar supports their own proprietary Presto rigging in
a USDZ file but not other rigging formats: https://graphics.pixar.com/usd/workflows.html
Collada (DAE) MAYBE supports some rigging but it isn’t clear how to bring it into SceneKit.
FBX: I believe supports rigging and can perhaps be brought in to SceneKit using:
Apple doesn’t support FBX for SceneKit but this seems the most promising so far though I have yet to try it.
These are the Apple Classes that I’m assuming would be used to fully support rigging:
https://developer.apple.com/documentation/scenekit/scnskinner
https://developer.apple.com/documentation/scenekit/scnmorpher
https://developer.apple.com/documentation/scenekit/scnshadable
https://developer.apple.com/documentation/scenekit/scnprogram
I’m further assuming that to support mGear’s rigging I would have to build mGear as a library and then integrate the FBX rigging imported into SceneKit with the library in a similar fashion to how Maya currently integrates with mGear to interactively change the rigging and morph the polygons using mGear’s solvers. I’m assuming but don’t know for sure that solvers are essentially the same as shaders (but the terminology is all new to me).
Anyone have experience here or thoughts?
If anyone also has knowledge to share of how Maya interacts and integrates with mGear API to API that would be very helpful.
mGear uses Python and C++ so what areas each language is used for with regard to integration would also be helpful.
Thanks in advance.