Skins スキン

スキンはスケルトンのボーンとアニメーションを他のアタッチメントセットへの再利用を可能にします。これにより同様のボーンとアニメーションを有する複数キャラクター作成作業が大幅に軽減されます。

スキンのキーは「スキンプレースホルダー」です。スキンプレースホルダーは他のアタッチメント同様、ツリーの中でスロットの下に生成されるアタッチメントです。これは実際に使用されるスキンアタッチメントのプレースホルダーのみであり、現在有効なスキンから来ます。スキンはスキンプレースホルダーのアタッチメントの集合です。他のスキンが有効にされると、スケルトン全体でスキンホルダーに使用されるアタッチメントを変更します。

設定

スキンはスキンとスキンプレースホルダーの作成により設定され、その後、そのスキン用のアタッチメントでスキンホルダーが実装されます。

スキン

スキンはツリーの中で「スキン」ノードを選択し、「新規スキン」をクリックすることで作成されます。

スキンプレースホルダー

Skin placeholders are created by selecting a bone or slot in the tree and clicking New... Skin Placeholder. スキンプレースホルダーはツリー内でボーンまたはスロットを選択し、「新規...」「スキンプレースホルダー」をクリックすることで作成されます。

スキンプレースホルダーは各スキンのアタッチメントを保持するため、名前がスキンの詳細と目的を示す必要はありません。その代り、スキンプレースホルダー名はアタッチメントが代表するものを示すべきです。例えば、「レッド」と「ブルー」スキンがある場合、「レッドヘッド」または「ブルーヘッド」ではなく「ヘッド」が良いスキンホルダー名になります。

アタッチメント

スキンプレースホルダーをスキン用のアタッチメントで実装するには、希望するスキンが有効であることを確認します。ツリー内の可視性ドットがどのスキンが有効であるかを示します。ここでは「レッド」スキンが有効です:

スキンが有効になると、有効なスキンのアタッチメントを定義するために、スキンプレースホルダーの下にアタッチメントが配置されます。他のスキンが有効にされると、これらのアタッチメントが消え、新しく有効になったスキンに定義されたアタッチメントが表示されます。

ショートカット

スケルトンの全てのアタッチメントがスキンプレースホルダーを使用せずに作成されると、その後スキンプレースホルダーを作成し、既存のアタッチメントをこのスキンプレースホルダーに移動する作業が非常に困難になります。これをもっと効率的に実行するには、まずツリーの一番上のフィルターボタンを使用してボーンとスロットを非表示にし、複数のアタッチメントの選択を容易にします。次にスキンを作成する、あるいはスキンが有効であるかを確認し、アタッチメントを選択して「新規...」「スキンプレースホルダー」を選択します。この操作により、同じ名前を使用するアタッチメントにスキンホルダーを作成し、アタッチメントを有効なスキンのスキンプレースホルダーの下に移動します。

スキンプレースホルダーが必要なくなった時、アタッチメントをスロットに移動してスキンプレースホルダーを削除することになり、非常に煩雑な作業になります。これをもっと効率的に実行するには、スキンプレースホルダーを選択し、ツリーの一番下のプロパティで削除をクリックします。削除ダイアログで、「現在のアタッチメントを保持する」をチェックします。これでスキンプレースホルダーを削除する前に、現在のスキンのアタッチメントをスロットに移動します。

アニメーションの再利用

スキンは関連アタッチメントのグループ化を容易にします。例えば異なるイメージを使用する雄または雌のゴブリンを作成するとします。2種類のスキンを作成し、ランタイムに使用するスキンを選択します。

これはスキンの使用方法の一例です。Spineは、実際にこれを実行する「ゴブリン」プロジェクト例を含みます。アタッチメントのグループ化は困難な問題ではありません。例えば、コードは雄または雌を表示するために、ランタイムにどのアタッチメントをスケルトンに表示しなければならないか分っています。

スキンの真のパワーはアニメーションがアタッチメントを見せる時、キーが作成されるのはスキンプレースホルダーで特定のアタッチメントではないことにあります。表示される実際のアタッチメントは現在有効なスキンのスキンプレースホルダー用のアタッチメントです。これがなければアニメーションは再利用できないアタッチメントを表示します。

例えば、ゴブリンスケルトンは目の上で「目を閉じた-雄」あるいは「目を閉じた-雌」アタッチメントを表示して、ゴブリンが瞬きするアニメーションが必要です。スキンがない場合、2つのアニメーションが必要になります。スキンを使用すれば、「目を閉じた」スキンプレースホルダーを示す1つのアニメーションだけが必要です。

スキンコンビネーション

プロジェクトの中には複雑なアタッチメント構成が必要なものがあります。例えば、アバターシステムでは顔、身体、衣服アイテムをいろいろ組み合わせます。これを解決するには、ノーマルというスキンホルダーを作成し、各「アイテム」用のスキンを作成し、アタッチメントをグループ化します。次にランタイム時にコードがプログラムによりスキンを作成し、望ましいアタッチメント構成を定義するために各「スキンアイテム」の全てのアタッチメントをこのスキンに実装します。

例えば、「胴」、「スリーブ左」、「スリーブ右」スキンプレースホルダーのアタッチメントを定義する「レッドシャツ」スキンがあるとします。スケルトンをレッドシャツアイテムで構成するには、ランタイム時にコードがプログラムによりスキンを作成し、「レッドシャツ」スキン(およびその他の希望アイテム)からの全てのアタッチメントをこれに実装します。

現在のところSpineはエディターで複数のスキンを同時に有効にすることはできません。この機能は予定されていますが、それまでスキンコンビネーションはランタイム時のみで見ることができます。

ビデオ

次: イベント 前: Paths