Live2DモデルをGodot Engine 4.1上で再生するためのGDExtensionを作ってみました。単に再生するだけのものでしたら、幾つか先行しているものがあるのですが、せっかく作るのでEditorからも操作可能にしてあります。
Live2Dは描画時の処理上Godot Engineと相性が悪い部分があるため加算と乗算処理がうまく扱えません。そのため現時点では全て通常の合成となっています。

描画に必要な処理はLive2D側で行ってくれるので、GDExtension側では貰ったデータをGodot Engineが読める形に変換して渡す処理を行っています。
この処理を行う際、内部ではMeshInstance2DとSubViewportの構築と破棄を行うというちょっと間抜けな実装になっているのですが、処理を単純化するためにそういった動作にしています。
そのためかなり重たい処理となってしまっています。