🙌

mocopiの通信内容を解析してみた Vol.02

2023/01/24に公開

前回書いた「mocopiの通信内容を分析してみた Vol.01」の続きです。
前回の内容でクォータニオン(XYZW)とポジションのXYZの7つの情報をボーンの数、27個分メッセージからパースしてシリアライズするところまでできました。

ボーンの親子関係

mocopiの開発サイトによると、各IDのボーンの位置は以下のようになっています。

一方、mocopiからのデータは見ている限り、いくら動いてもroot以外のポジションのXYZは殆ど変化しません。恐らく各ボーンに親子関係が作られており、親との差分が主に回転情報に入っていると考えられます。
色々解析した結果、mocopiのボーンの親子関係は以下のようになっているようです。
まず、基本的にはID順に親子関係になっています。
ただし4点だけ例外があり、ID11の-_shoulderとID15のr_shoulderはID7のtorso_7が親、ID19のl_up_leg、ID23のr_up_legがID0のrootが親となっています。
TouchDesignerではTransformCHOPで親子関係の回転や移動の計算ができます。

サンプルファイルはこちら

Discussion