این پروژه های نمونه زیر روشهای مختلفی را که می توانید از SPRITE SWAP برای دستیابی به جلوه ها و نتایج مختلف استفاده کنید ، نشان می دهد.

صحنه های نمونه های زیر را می توان همه در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap:
مبادله انیمیشن Flipbook
این نمونه نحوه استفاده از Sprite Swap را برای ایجاد یک کلیپ انیمیشن قابل استفاده مجدد نشان می دهد که از یک انیمیشن به سبک Flipbook تقلید می کند. Scene 1 Flipbook Animation Swap. unity را برای دیدن آن در عمل باز کنید.

سه دارایی کتابخانه Sprite مورد استفاده در این مثال در دارایی ها/نمونه ها/انیمیشن 2D/[X. Y. Z]/نمونه/5 اسپریت مبادله/کتابخانه Sprite قرار دارد:
- hero. spritelib
- zombie1. spritelib
- Zombie2. spritelib
Sprites برای این دارایی های کتابخانه Sprite از scavengers_spritesheet.png گرفته شده است ، که در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/sprites قرار دارد. هر سه دارایی کتابخانه Sprite دارای تعداد دسته های یکسانی هستند. و دسته ها و ورودی های آنها دارای همین نام هستند.

دسته ها و نام های برچسب Hero. spritelib ، که با دو دارایی کتابخانه Sprite دیگر یکسان است.
مراحل زیر را برای بازسازی صحنه نمونه Swap Animation 1 Flipbook دنبال کنید:
یک GameObject خالی ایجاد کنید و آن را قهرمان کنید. مؤلفه Renderer Sprite را اضافه کرده و به پنجره بازرس آن بروید. یکی از اسپری های مورد استفاده در Hero. Spritelib را اختصاص دهید. به خاصیت Sprite آن.
مؤلفه کتابخانه Sprite را اضافه کرده و Hero. spritelib را به خاصیت دارایی کتابخانه Sprite خود اختصاص دهید. سپس مؤلفه Sprite Recolver را به همان GameObject اضافه کنید.
مؤلفه انیمیشن را اضافه کنید. Scavengers. Anim Animation Clip را در دارایی ها/نمونه ها/انیمیشن 2D/[X. Y. Z]/نمونه/5 spriteswap/انیمیشن پیدا کنید و این دارایی را به خاصیت انیمیشن مؤلفه اختصاص دهید.
Hero GameObject را کپی کرده و نسخه را به Zombie1 تغییر دهید.
- در مؤلفه رندر Zombie1 sprite ، خاصیت Sprite خود را بر روی یکی از اسپریت های مورد استفاده در Zombie1. spritelib قرار دهید.
مجدداً قهرمان GameObject را کپی کرده و نسخه را به Zombie2 تغییر نام دهید.
- در مؤلفه رندر Zombie2 's Sprite ، ویژگی Sprite را روی یکی از اسپریت های مورد استفاده در Zombie2. spritelib تنظیم کنید
هر سه GameObjects اکنون با همان کلیپ انیمیشن متحرک هستند. همانطور که کلیپ انیمیشن پخش می شود ، اسپری که هرگونه حل کننده Sprite هر GameObject به آن اشاره دارد ، مبادله می شود که سبک انیمیشن Flipbook را ایجاد می کند. با استفاده از یک دارایی کتابخانه Sprite متفاوت برای هر GameObject ، همان کلیپ انیمیشن با اسپریت های مختلف استفاده می شود.
مبادله انیمیشن
این نمونه نحوه استفاده از Sprite Swap را برای ایجاد یک کلیپ انیمیشن قابل استفاده مجدد برای انیمیشن هایی نشان می دهد که شامل تعویض اسپری و تغییر شکل Sprites است. توجه داشته باشید که مثال زیر نیاز به نصب کننده PSD دارد.
Scene File 2 Swap. unity را برای دیدن نمونه در عمل باز کنید.

قاب اولیه با دست در حالت شست.
این نمونه بر روی نمونه کلیپ انیمیشن قابل استفاده از نمونه مبادله انیمیشن Flipbook ساخته شده است. این نمونه از دو پرونده منبع مختلف واقع در دارایی/نمونه/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/sprites استفاده می کند. دارایی های مورد استفاده عبارتند از:
- dialog. psb
- گفتگوی GRAY. PSB
این دارایی ها با PSD وارد کننده با ویژگی Rich Rig Rig فعال شده وارد می شوند. هر دو دارایی با یک اسکلت یکسان تقلب شده اند و هر دارایی دارای دو اسپریت متفاوت برای دست هایی است که در طول انیمیشن تعویض می شوند.

با دست باز شده به یک قاب مبادله شد.
دو دارایی کتابخانه Sprite با استفاده از همان مراحل نشان داده شده در نمونه مبادله انیمیشن Flipbook ایجاد می شود. آنها در دارایی ها/نمونه ها/انیمیشن 2D/[X. Y. Z]/نمونه/5 کتابخانه SPRITE/SPRITE SPRITE قرار دارند و:
مراحل زیر را برای بازسازی صحنه نمونه دنبال کنید:
هر دو dialog. psb و dialog gray. psb را از پنجره پروژه به صحنه بکشید.
مؤلفه کتابخانه Sprite را به گفتگوی GameObject اضافه کنید ، سپس دارایی dialog. spritelib را به ویژگی دارایی کتابخانه Sprite خود اختصاص دهید.
مؤلفه کتابخانه Sprite را به گفتگوی Gray GameObject اضافه کنید ، سپس گفتگوی Gray. spritelib را به خاصیت دارایی کتابخانه Sprite خود اختصاص دهید.
سلسله مراتب GameObject GameObject را گسترش داده و GameObject Child R_ARM_2 را غیرفعال کنید. این دارایی لازم نیست زیرا در طول انیمیشن مبادله می شود.

به GameObject R_ARM_1 بروید و مؤلفه حل کننده Sprite را اضافه کنید. گرافیک R_ARM_2 را از منوی کشویی برچسب یا از تصویر کوچک آن انتخاب کنید.
مراحل 4 تا 5 را با گفتگوی Gray GameObject تکرار کنید.
مؤلفه انیماتور را به گفتگو و گفتگوهای خاکستری GameObjects اضافه کنید. دارایی کنترل کننده Animator Dialog را در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 sprite swap/انیمیشن/انیماتورها پیدا کنید و آن را به ویژگی کنترل کننده مؤلفه انیماتور اختصاص دهید.
در این نمونه ، مؤلفه کتابخانه Sprite به همان GameObject به عنوان مؤلفه حل کننده Sprite وصل نشده است. حل کننده Sprite تلاش می کند تا یک مؤلفه کتابخانه Sprite را که از همان GameObject موجود در آن شروع می شود ، پیدا کند و سپس سلسله مراتب GameObject را طی کند. این اجازه می دهد تا با وصل کردن مؤلفه کتابخانه Sprite به یک بازی ریشه مشترک که اجزای حل کننده Sprite به آن وصل شده اند ، از همان مؤلفه کتابخانه Sprite استفاده کنند.
مبادله بخشی
این نمونه نحوه تعویض دارایی های Sprite را با استفاده از API ارائه شده با تغییر داده های حل کننده Sprite نشان می دهد. این نمونه از برخی از دارایی ها و تنظیم مشابهی با نمونه Sprites skied چندگانه استفاده می کند. برای دیدن نمونه در عمل ، صحنه 3 قسمت مبادله را باز کنید.

در صحنه ، هر قسمت دارای سه گزینه بصری مختلف است که می تواند مبادله شود. دارایی های گرافیکی در دارایی ها/نمونه ها/انیمیشن 2D/[X. Y. Z]/نمونه/5 spriteswap/sprites قرار دارند:
- rikr.png
- Rikr poison.png
- Rikr Rage.png
یک دارایی کتابخانه Sprite حاوی اسپریت های ساخته شده از هر سه دارایی گرافیکی در بالا ایجاد شده است. مقوله ای برای هر قسمت بدنه بازیگر ایجاد می شود که سه مدخل از سه نسخه مختلف شخصیت حاصل می شود. دارایی در دارایی ها/نمونه ها/انیمیشن 2D/[X. Y. Z]/نمونه/5 spriteswap/کتابخانه sprite/Rikr full. spritelib قرار دارد.

قطعات مربوطه از هر یک از سه نسخه بازیگر ، و بر این اساس نامگذاری شده است.
مؤلفه کتابخانه Sprite را به GameObject RIKR_ROOT در صحنه وصل کنید. Rikr Full. Spritelib دارایی را به خاصیت دارایی کتابخانه Sprite خود اختصاص دهید.
مؤلفه Sprite Resolver را به همه رندرهای Sprite در زیر GameObject RIKR_ROOT اضافه کنید. بسته به قسمت بدنی که GameObject نشان می دهد ، یک اسپری را که مطابق با GameObject مربوطه است ، اختصاص دهید. به عنوان مثال ، یکی از اسپریت ها را در دسته "بدن" برای حل کننده Sprite متصل به GameObject Rikr_body و غیره انتخاب کنید.

با این تنظیم ، می توانید هر بخشی از بازیگر را به صورت جداگانه به اسپری دیگر مبادله کنید.
مبادله قسمت اسکریپت
یک اسکریپت Monobehaviour سفارشی به نام Swappart به GameObject RIKR_ROOT وصل شده است. این اسکریپت در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/اسکریپت/زمان اجرا/swappart. cs قرار دارد.

این اسکریپت برای بازیابی اسپریت های قابل تعویض به یک مؤلفه کتابخانه sprite اشاره دارد. همچنین مجموعه ای از داده ها را در اختیار دارد که دسته اسپریت ها را در کتابخانه Sprite توصیف می کند که می تواند توسط یک مؤلفه حل کننده Sprite تغییر یابد.
هنگامی که اسکریپت Swap Part راه اندازی می شود، سعی می کند دارایی کتابخانه Sprite را که توسط یک جزء Sprite Library استفاده می شود واکشی کند.
از این دارایی کتابخانه Sprite، سپس نام ورودی ها و برچسب هایی را که در یک رده هستند واکشی می کند.
سپس از این برای پر کردن لیست کشویی UI استفاده می شود.
هنگامی که یک مقدار در لیست کشویی UI تغییر می کند، سپس مولفه Sprite Resolver را برای استفاده از Sprite مربوطه تنظیم می کند.
تعویض کامل پوست
این نمونه نحوه مبادله تصاویر Sprite را با استفاده از API ارائه شده با تغییر دارایی کتابخانه Sprite که توسط مؤلفه Sprite Library ارجاع داده شده است، نشان می دهد. 4 Full Swap. unity Scene را باز کنید تا نمونه را در عمل ببینید.

در صحنه، سه گزینه مختلف دارایی بصری وجود دارد که می توانید با آنها تعویض کنید. دارایی ها در Assets/Samples/2D Animation/[X. Y. Z]/Samples/5 SpriteSwap/Sprites قرار دارند:
- rikr.png
- Rikr poison.png
- Rikr Rage.png
دارایی های کتابخانه Sprite دارای نام های دسته ها، ورودی ها و برچسب های یکسان هستند اما Sprite های مختلف انتخاب شده اند. دارایی ها در Assets/Samples/2D Animation/[X. Y. Z]/Samples/5 SpriteSwap/Sprite Library قرار دارند.
- Rikr. spriteLib
- Rikr Posion. spriteLib
- Rikr Rage. spriteLib
جزء Sprite Library را به GameObject Rikr_Root متصل کنید. دارایی Rikr. spriteLib را به دارایی Sprite Library Asset آن اختصاص دهید.
کامپوننت Sprite Resolver را به هر یک از Sprite Renderer زیر Rikr_Root GameObject اضافه کنید. به هر Sprite Resolver یک Sprite اختصاص دهید که مربوط به قسمت بدنی است که به آن متصل شده است. به عنوان مثال، Body Sprite برای Sprite Resolver متصل به Rikr_Body GameObject انتخاب شده است.

اسکریپت تمام پوست را عوض کنید
یک اسکریپت سفارشی MonoBehaviour به نام SwapFullSkin به Rikr_Root GameObject متصل شده است. این اسکریپت در Assets/Samples/2D Animation/[X. Y. Z]/Samples/5 SpriteSwap/Scripts/Runtime/SwapFullSkin. cs قرار دارد.

هنگامی که یک مقدار در لیست کشویی UI تغییر می کند، مؤلفه دارایی کتابخانه Sprite مربوطه را برای استفاده برای مؤلفه Sprite Library تنظیم می کند.
تعویض DLC
این نمونه نحوه تعویض تصاویر Sprite را با تغییر دارایی Sprite Library ارجاع شده توسط مؤلفه Sprite Library با استفاده از API ارائه شده نشان می دهد. این نمونه از Assets و تنظیماتی مشابه با نمونه Multiple Skied Sprites استفاده می کند و بر روی نمونه Full Skin Swap ساخته می شود.
این تفاوت با روش Full Skin Swap این است که Sprite Library Asset از AssetBundle در طول زمان اجرا بارگیری می شود و در زمان بعدی به جزء Sprite Library اضافه می شود. 5 DLC Swap. unity Scene را باز کنید تا نمونه را در عمل ببینید.

برای اطمینان از عملکرد صحیح AssetBundle ، بررسی کنید که rikr_poison. spritelib و rikr_rage. spritelib دارایی در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/کتابخانه اسپری با برچسب AssetBundle مربوطه برچسب خورده اند.

دارایی rikr_rage. spritelib دارای برچسب "Rikrrage" است.
اسکریپت DLC SWAP SWAP را بارگیری کنید
یک اسکریپت Monobehaviour سفارشی به نام LoadSwapDLC به Load DLC GameObject وصل شده است. اسکریپت در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/scripts/زمان اجرا/loadswapdlc. cs قرار دارد.
اسکریپت هنگام بارگیری DLC شروع به کار می کند ، دارایی های دارایی برای هر دارایی کتابخانه Sprite را اسکن می کند. پس از بارگیری دارایی های کتابخانه Sprite ، این ورودی ها را به اسکریپت Swapfullskin از نمونه کامل مبادله پوست اضافه می کند.< SPAN> برای اطمینان از عملکرد صحیح AssetBundle ، بررسی کنید که rikr_poison. spritelib و rikr_rage. spritelib دارایی در دارایی ها/نمونه ها/انیمیشن 2D/[x. y. z]/نمونه/5 spriteswap/کتابخانه اسپریت با برچسب AssetBundle مربوطه برچسب گذاری شده اند.
سیگنال های تجاری...
ما را در سایت سیگنال های تجاری دنبال می کنید
برچسب :
نویسنده : عبدالله بوتیمار
بازدید : <-PostHit->
تاريخ : سه
شنبه
23 خرداد
1402 ساعت: 22:45