基本コンセプト
スケルトンを設定するためには、以下の基本コンセプトの知識が必要です。
スケルトン
プロジェクト内の各スケルトンは、そのスケルトンを構成するすべてのボーン、スロット、アタッチメント等とその他の情報とともにツリービューに表示されます。1つのプロジェクトには複数のスケルトンを持つことが可能です。スケルトンを追加するには、SpineメニューのNew Skeleton(新規スケルトン)
を選択してください。
ボーン
スケルトンは、ボーンの階層を持っています。各ボーンは、回転、トランスレート、スケール、シアーの情報を持ち、これらを合わせてボーンのトランスフォームと呼びます。あるボーンがトランスフォームされると、その子要素も影響を受けます。例えば、腕のボーンを動かすと、手のボーンも動くといったようになります。このようにボーンが階層化されていることで、イメージの操作がより直感的になり、アニメーターは大きな動きに集中することができます。また、必要に応じて要素間の距離を一定に保つことも容易になります。
Spineでは、人型や動物ではないスケルトンでも、ほとんどのアニメーションにボーンが使用されます。シンプルなスケルトンであれば、イメージごとにボーンを使用することができます。メッシュは、ボーンを使用せずにイメージをアニメーションさせるためにも使用できます。
アタッチメント
スケルトンアニメーションでは、画像やメッシュなどの「アタッチメント」がボーンに取り付けられ、ボーンがトランスフォーム(回転、トランスレート、スケール、シアー)されると、アタッチメントもトランスフォームされます。しかし、Spineでは、アタッチメントはボーンに直接取り付けられません。その代わり、アタッチメントは「スロット」に取り付けられ、そのスロットはボーンに取り付けられます。
上の例では、root
はeyes
とhead
の2つのスロットを持つボーンで、それぞれのスロットには同じ名前のアタッチメントが付いています。
スロット
スロットは、柔軟な表示順管理を可能にするために存在します。スケルトンの表示順序(Draw Order)はスロットのリストになっていて、上位にあるスロットのアタッチメントが下位のスロットよりも上に描画されます。表示順序は、ツリーのスケルトンの下に表示されます。
スロットは、ボーンの表示順序から切り離されており、同じボーン上のアタッチメントを、別のボーン上のアタッチメントの上下に描画することができます。例えば、torsoボーンにはbelly
とshirt
のスロットがあり、hipボーンにはpants
のスロットがあるとします。スロットを使えば、belly
とshirt
が同じボーンの下にあってもbelly
はpants
の下に、shirt
はpants
の上に描画されます。
スロットには何個でもアタッチメントを付けることができますが、同時に表示できるのは1つのアタッチメントだけです。スロットは同時に複数のアタッチメントを表示することはできません。なぜなら、アタッチメントの表示順序が不定になってしまうからです。
また、スロットは同じ種類のアタッチメントをグループ化します。例えばweapon
スロットにknife
、 sword
、axe
などがあるとします。表示順序にはweapon
スロットだけが表示されるので、スケルトンに多数のアタッチメントがある場合の描画順の管理が簡単になります。
また、スロットにはカラーがあり、これは画像を使用するタイプのアタッチメントの色合いに使用されます。