Sprite Skin コンポーネント
スプライトが割り当てられた Sprite Renderer コンポーネントを含むゲームオブジェクトに Sprite Skin コンポーネントを追加すると、Sprite Skin は Skinning エディター でスプライトに対する リグ とウェイトが設定されたボーンを使用して、スプライトを変形します。
アートワークの 準備と Unity へのインポート が完了したら、生成されたプレハブをシーンビューに取り込みます。Unity は自動的に Sprite Skin コンポーネントをプレハブに追加します。このコンポーネントは、ボーンがシーンビューでスプライトメッシュを変形するために必要です。
Sprite Skin は、Skinning Editor モジュールでスプライトに追加されたボーンを表すゲームオブジェクトのトランスフォームを使用してスプライトを変形します。
| プロパティ | 機能 |
|---|---|
| Always Update | 有効にすると、スプライトがカメラの視野に映っていない場合でも、Sprite Skin はそのスプライトの変形を継続します。 |
| Auto Rebind | 有効にすると、コンポーネントは Root Bone プロパティで出発点として設定されたゲームオブジェクトのトランスフォームを使用して、スプライトのボーンとして使用する正しいゲームオブジェクトのトランスフォームを探そうとします。 |
| Root Bone | このプロパティを使用して、スプライトのルートボーンとして使用するゲームオブジェクトのトランスフォームを指定します。 |
| Bones | Skinning Editor モジュールでスプライトに設定されているボーンのリストが表示されます。各スプライトの ボーン エントリーには、正しいデフォーメーションのためにゲームオブジェクトのトランスフォームが関連付けられている必要があります。 |
| Create Bones | このボタンを使用すると、スプライトのボーンを表すゲームオブジェクトのトランスフォームを作成し、Root Bone プロパティと個々のボーンエントリーに割り当てることができます。作成されるルートボーンは、Sprite Skin のゲームオブジェクトの子として配置されます。このボタンは、Root Bone プロパティが割り当てられていない場合にのみ使用できます。 |
| Reset Bind Pose | このボタンを使用すると、ボーンエントリーで割り当てられたゲームオブジェクトオブジェクトのトランスフォームが、Skinning Editor モジュールでスプライトに設定されたバインポーズ値にリセットします。 |
Auto Rebind
Auto Rebind を有効にすると、Sprite Skin はスプライトレンダラーに割り当てられている現在のスプライトに必要なゲームオブジェクトのトランスフォームを自動的に探そうとします。これは、Sprite Renderer プロパティのスプライトが変更されたときにトリガーされます。
再バインドが必要な場合、Sprite Skin は Skinning Editor モジュールのボーン名と一致するゲームオブジェクトのトランスフォーム名を探します。

例を以下に示します。Bone パネル でスプライトを選択すると、現在そのスプライトにリグ設定され、影響を及ぼしているボーンが、その名前とともに表示されます。
上の例では、スプライトは 3 つの接続されたボーンでリグ設定されています。'bone_1' はルートボーン、'bone_2' は 'bone_1' の子、'bone_3' は 'bone_2' の子として開始されます。
Sprite Skin コンポーネントがボーンを自動的に正しく見つけるには、上の例と同じ名前と階層のゲームオブジェクトのトランスフォームがシーンで使用可能である必要があります。
![]()
Sprite Skin の Root Bone プロパティを正しいゲームオブジェクトのトランスフォームに設定すると、Sprite Skin はゲームオブジェクトのトランスフォームをスプライトにリグ設定された同じ名前のボーンにマップします。Auto Rebind が成功するには、リグ設定されたボーンとゲームオブジェクトのトランスフォームの名前と階層が一致している必要があります。つまり、Skinning エディターでボーンの名前を変更する場合は、一致するゲームオブジェクトのトランスフォームの名前も更新する必要があります。
デフォーメーション方法
2D Animation 10 (Unity 2023.1) から、Sprite Skin は、CPU デフォーメーションと GPU デフォーメーションの 2 つの異なる方法で変形できるようになりました。ただし、GPU でフォーメーションは、ユニバーサルレンダーパイプライン (URP) でのみ利用できることに注意してください。
使用方法のガイドライン
CPU デフォーメーションと GPU デフォーメーションのいずれかを選択するオプションにより、プロジェクトでのデフォーメーションを CPU または GPU のどちらで行うかを選択できます。さまざまなシステムで CPU を頻繁に使用しているプロジェクトでは、GPU デフォーメーションの使用をお勧めします。その逆も同様です。
また、GPU デフォーメーションを選択すると、スプライトが SRP バッチャー を使用してレンダリングされることに注意してください。これは、オブジェクトあたりのドローコールコストが小さいことを意味します。CPU デフォーメーションを選択すると、スプライトは動的にバッチ処理され、ドローコールが全体的に少なくなります。このため、シーンに多くの低ポリゴンオブジェクトが含まれている場合は CPU デフォーメーションを選択し、シーンに少数の高ポリゴンオブジェクトが含まれている場合は GPU デフォーメーションを選択することをお勧めします。
すべてのユースケースは一意であるため、常に プロファイリングツール を使用してパフォーマンスへの影響を確認し、データに応じて変更を加えます。
CPU/GPU デフォーメーションの選択
- プロジェクトが ユニバーサルレンダーパイプライン (URP) パッケージを使用して設定されていることを確認します。
- プロジェクトがユニバーサルレンダーパイプライン (URP) パッケージを使用して設定されていない場合は、その設定方法について こちらのガイド を参照してください。
- ユニバーサルレンダーパイプライン (URP) アセット で SRP Batcher オプションが有効になっていることを確認します。
- SRP Batcher オプションが表示されない場合は、Rendering セクションの その他 (⋮) メニューを開き、Show Additional Properties を有効にします。
- Edit > Project Settings > Player > Other Settings を開きます。Rendering セクションで、GPU Skinning を GPU (Batched) に設定します。GPU Skinning が GPU (Batched) または GPU に設定されている場合、Unity は CPU ではなく GPU で Sprite Skin デフォーメーションを実行します。