Runtime Swap (ランタイムスワップ)
このサンプルは、Sprite Library API を使用して特定のエントリーをオーバーライドする方法を示しています。このサンプルを使用するには、PSD Importer がインストールされている必要があります。このサンプルの実際の動作を確認するには、6 Runtime Swap シーンを開きます。
グラフィックアセットは Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Sprites にあります。
Knight.psbSkeleton.psb
Skeleton.psb は、リグ設定に Knight.psb の .skeleton アセット を使用しています。また、Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Sprites にある Knight.spriteLib Sprite Library アセットも参照しています。
Runtime Swap (ランタイムスワップ) スクリプト
RuntimeSwap という名前のカスタム MonoBehaviour スクリプトが KnigtboyRig ゲームオブジェクトにアタッチされています。このスクリプトは、Assets/Samples/2D Animation/[X.Y.Z]/Samples/5 SpriteSwap/Scripts/Runtime/RuntimeSwap.cs にあります。
Skeleton.psb のスプライトが表示されている (サンプルシーン内の) ボタンを押すと、スクリプトが Sprite Library のオーバーライド API を使用してスプライトエントリーをオーバーライドします。
m_SpriteLibraryTarget.AddOverride(entry.sprite, entry.category, entry.entry);
Knight.psb のスプライトが表示されているボタンを押すと、スクリプトが Sprite Library のオーバーライド REST API を使用してスプライトエントリーのオーバーライドを削除します。
m_SpriteLibraryTarget.RemoveOverride(entry.category, entry.entry);