Game Feel Library
← До каталогу
БійПочатковий

Invulnerability Flicker

Класичне блимання після удару — персонаж мерехтить, кажучи: «зараз тебе поранити не можна».

combatdamagei-framessprite

Приклади

Записано з інтерактивного демо нижче на цій сторінці.

Огляд

Після влучання більшість екшенів дарують секунду невразливості, щоб одна помилка не тягнула за собою три. Блимання робить цю секунду видимою: персонаж рівномірно зникає і з'являється, і кожен гравець з часів NES зчитує це миттєво — мене поранено, я ненадовго в безпеці, треба ЗАРАЗ перегрупуватися. Це статусний ефект, переданий без жодного UI.

Блимання — прямокутна хвиля, а не згасання: видно, нема, видно, нема, десь від 8 до 15 перемикань за секунду. Повільніше читається як глюк рендера; значно швидше зливається в напівпрозорість і втрачає тривожність. Останній спалах має закінчитися на «видно», а темп під кінець може прискорюватися як безсловесний таймер — цього трюку всіх навчив Mega Man.

Візуал мусить точно збігатися з правилами. Якщо спрайт блимає — удари ЗОБОВ'ЯЗАНІ проходити без шкоди, а щойно блимання спинилося — вразливість повернулася. Будь-який розсинхрон — невразливість, що переживає блимання, або удар, що влучає посеред мерехтіння, — гравець читає як брехню гри, і довіра до всіх інших сигналів осипається разом із цим.

Інтерактивне демо

вразливий — удар запускає блимання
I-frames1200ms
Частота блимання10Hz

Де застосовується

Невразливість після удару в платформерахЗахист після відродження в аренних іграхВидимі i-frames перекатуОстанні секунди дії підсилення

Найкращі практики

Варто

  • ✓Перемикайте видимість різко, увімк/вимк, на 8–15 Гц — прямокутна хвиля, а не альфа-згасання.
  • ✓Прив'яжіть блимання і невразливість до одного таймера, щоб візуал ніколи не міг збрехати.
  • ✓Закінчуйте на «видно» і подумайте про прискорення блимання в останній чверті — вбудований зворотний відлік.

Не варто

  • ✕Не рахуйте блимання кадрами — на 30 і на 144 fps той самий код мерехтить із геть різною швидкістю; рахуйте час.
  • ✕Не давайте персонажу зникати під час великого замаху боса — гравцеві треба бачити власну позицію, щоб ухилитися.
  • ✕Не використовуйте одне й те саме блимання для шкоди і для підсилень; один патерн має означати одну річ.

Поширені помилки

Реалізація

Встав це у свого ШІ-асистента (Cursor, Copilot, Claude), щоб додати ефект у проєкт.

Промт
Додай у мій проєкт ефект "Invulnerability Flicker": Класичне блимання після удару — персонаж мерехтить, кажучи: «зараз тебе поранити не можна».

Як це працює: Після влучання більшість екшенів дарують секунду невразливості, щоб одна помилка не тягнула за собою три. Блимання робить цю секунду видимою: персонаж рівномірно зникає і з'являється, і кожен гравець з часів NES зчитує це миттєво — мене поранено, я ненадовго в безпеці, треба ЗАРАЗ перегрупуватися. Це статусний ефект, переданий без жодного UI.

Рекомендації:
- Перемикайте видимість різко, увімк/вимк, на 8–15 Гц — прямокутна хвиля, а не альфа-згасання.
- Прив'яжіть блимання і невразливість до одного таймера, щоб візуал ніколи не міг збрехати.
- Закінчуйте на «видно» і подумайте про прискорення блимання в останній чверті — вбудований зворотний відлік.

Чого уникати:
- Не рахуйте блимання кадрами — на 30 і на 144 fps той самий код мерехтить із геть різною швидкістю; рахуйте час.
- Не давайте персонажу зникати під час великого замаху боса — гравцеві треба бачити власну позицію, щоб ухилитися.
- Не використовуйте одне й те саме блимання для шкоди і для підсилень; один патерн має означати одну річ.

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

Джерела

Пов'язані ефекти

Коментарі

…