ランタイムスワップ
このサンプルでは、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 アセットも参照します。
ランタイムスワップスクリプト
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);