Ефект виявлення змін сезону


10

Я дивився трейлер-тизер на "Сезони після падіння" , і мене вразив ефект, який вони використовують для переходу між сезонами (близько 21-24 секунд):

Анімація, що показує ефект виявлення

Мистецтво рівня, включаючи фон і майданчик переднього плану, змінюється від осені кольором сепії до зими лаванди, при цьому ефект поширюється назовні від персонажа гравця трохи як вода, що просочується папером.

Це схоже на щось більше, ніж просто зміна палітри, оскільки деталі в шаблонах листя і кори змінюються під час переходу.

Як я міг досягти подібного ефекту в грі 2D Unity?

Відповіді:


12

Одним із способів досягти цього буде поєднання між двома фонами за допомогою альфа-карти. Простим підходом було б зробити "задній" (прихований) фон, а потім "передній" (спочатку видимий) фон. Використовуйте альфа-канал переднього фону або окрему альфа-текстуру, щоб контролювати прозорість переднього фону, як будь-який прозорий або напівпрозорий спрайт. Якщо ця альфа-карта менша ніж одна, частини заднього тла відобразяться наскрізь.

Тоді лише питання побудови цієї альфа-карти відповідно до ефекту, який ви хотіли б. На відео, яке ви демонструєте, схоже, що така карта була побудована з "живописно" підходом. Це може включати випадкове розміщення кіл з нульовою альфаю (пір'я від 1,0 до альфа по їх краях). Починайте розміщувати ці кружечки щільно упереджено навколо походження розкриття, а з часом розслабте зміщення, щоб вони поширилися назовні. Виконуючи це, ви, ймовірно, захочете також розширити радіус кіл.

Ви можете налаштувати такий підхід, як вам це потрібно, щоб пристосувати ефект до ваших бажань; звичайні кола можуть виглядати, наприклад, трохи "плямистими", і, замість цього, ви можете хотіти випадковим чином ввести маску випадково вибраного попередньо написаного "штриха" в маску. Навіть випадкове розміщення саме по собі може виглядати занадто невпорядковано, і ви можете замість цього зробити вибір на штампування альфа-маски вздовж якоїсь попередньо створеної кривої чи сплайну, щоб виділити певний стиль.


На жаль, я набрав дуже схожу відповідь в той же час, коли ви були, схоже. ^ _ ^; Вибачення за перекриття.
DMGregory

Дякую за відповідь, я спробую це, і повернуся вам до роботи! Дякую ще раз
Jessca Stone

Ви також можете намалювати вручну чотири-п’ять переходів і трохи рандомізувати обертання. Я сумніваюся, що хтось потурбується, коли це такий швидкий і найгірший сценарій, ви можете грати з обертанням і горизонтальним масштабуванням.
Фонд позову Моніки

Вибачте, щоб знову заважати, але мені було цікаво, чи можете ви детальніше розробити це, оскільки я тестував його сам, але це було трохи незграбно, і я не міг зробити його прозорим. Вибачте ще раз за збурення і дякую!
Джесска Стоун

Це здається, що багато речей там можуть потенційно помилитися; Я не можу допомогти вам налагодити це тут, але можливо, хтось із Чату розвитку ігор може це зробити, і ви можете іноді знайти і мене.

7

Я підійшов би до цього за допомогою користувацького шейдера на моєму SpriteRenderers, який займає дві текстури, по одній для кожної версії, до якої потрібно перейти.

(Навіть якщо використовувати цей ефект для переходу між більш ніж двома станами, я все одно намагаюся структурувати гру, так що нам потрібні лише два для візуалізації в будь-який час: старий стан і наступний стан. Ми дозволимо цьому переходу грати до завершення, перш ніж ми дозволимо гравцеві ініціювати перехід до третього стану, і тоді ми можемо замінити попереднє "старе" стан, оскільки воно більше не видно)

Цей шейдер буде зникати між двома текстурами, використовуючи третю одноканальну текстуру як маску для ефекту (наприклад, чорний = 100% старий стан, сірий = 50/50 суміш, білий = 100% новий стан). Я б відобразив цю текстуру маски в екрані.

Тоді я б встановив другу камеру для візуалізації в RenderTexture, щоб створити цю маску. Ця друга камера буде рухатися з моєю основною камерою та відповідати її розміру FoV / orthographic, тому будь-яка анімація, на мій погляд, стосується як світу, так і виявляє маску послідовно. Ця камера відображатиметься перед моєю основною камерою, і вона буде налаштована на перегляд лише вмісту на спеціально призначеному шарі "виявити". На прикладі відео схоже, що вони використовують систему частинок, щоб викреслити колекцію маленьких хмарних форм у цю текстуру розкриття, яка з часом розширюється, надаючи переходу перевагу, що виглядає органічно.


Дякую за відповідь, я спробую це, і повернуся вам до роботи! Дякую ще раз!
Джесска Стоун
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.