2021-06-24基本的に以下のURLのドキュメントを参考にしています。RuntimesガイドUnityで使用するSpineコンポーネントUnityでSpineで作成したアニメーションを再生するためのコンポーネントとして以下の3つが用意されています。(UI)に関しては名前のとおりUGUIのcanvasに使用するものなので用途は限られているのですが、問題はSkeletonAnimationとSkeletonMecanimです。Spineのアニメーションを再生するにはどちらかを使う必要がありますが、調べたり実装したりして考えたことを書いておきます。SkeletonMecanim公式で推奨されているのはSkeletonAnimationですが、それぞれ比べていきます。アニメーションの再現Mecanimを使用した場合、Spineのエディタのプレビューで再生したものと同じになることを保証しない記載があります。アニメーション間のトランジションを最初のフレームに追加のキーを設定する必要があります。ONにすると消されるので、そのオプションはMecanimの場合使用できません。詳しくはこちらトランジションはただでさえ、見た目を整える難しさがあるので、さらに考慮すべき項目が増えるのはちょっとしんどい印象です。Clipのイベントとして設定されるどちらも基本的な機能は備えています。disposedといった5つのイベントを受け取ることができ、アニメーション再生時のイベントの扱いが便利そうだと思いました。SkeletonAnimationはTrackEntryを介したアニメーションの細かい設定ができる点も気になります。attachmentのON/OFFやdrawOrderの順番の変更、eventの発火といった徐々に変化せずミックスができない項目に対してしきい値を設定できます。パフォーマンス面SkeletonMecanimはSkeletonAnimatonに比べるとパフォーマンスで劣るそうです。ゲームプレイに影響ある程ではないと思いますが、以下のフォーラムで書かれているように大量に生成したときにパフォーマンスに差が出たという話があります。Animation両者の差がパフォーマンスにとってクリティカルになるケースは稀な気がします。多少のパフォーマンスを犠牲にしてでもMecanimのようにGUIでアニメーションの遷移を設定出来たほうが良いという気持ちはあります。ステートマシンMecanimを使う最大のメリットはやはりGUIでアニメーションの遷移を定義できることです。スパゲッティな遷移になりがちとはいえ、アニメーションの遷移をステートマシンで表現できるのは強みです。逆にSkeletonAnimationを使う際の一番の問題点はこれで、アニメーションを変化させるのにプログラムからAPIを呼ぶしかないのです。SkeletonAnimationを使いつつ、Mecanimnのようなステートマシンを使いたいというニーズはあり、以下のフォーラムのようにNodeCanvasというアセットを使う方法が提案されています。NodeCanvas?NodeCanvasは少し高価ですが、触った感じ、確かにステートマシンでアニメーションを管理できますし、使いやすいアセットです。上記フォーラムで紹介されているようなSpine用のアクションを自分で作る必要があるものの、一つの解であると言えそうです。同様にステートマシンを扱うPlaymakerのSpine実装も存在しているのですが、PlaymakerでMecanimのようなアニメーション遷移を作るのは難しいです。まとめどちらもメリット・デメリットあるのでどちらを採用するかは一概に言えない感じでした。個人的にはSkeletonAimatonを使っていこうかと思っています。公式で推奨されているなら・・・。(@kido0617)。