🏁 Awake, OnEnable і Start в Unity — у чому різниця і коли що використовувати
Unity дає кілька методів для ініціалізації скриптів:
📌 Awake()
• Викликається один раз за життя об’єкта.
• Виконується ще до того, як об’єкт стане активним.
• Використовуйте для ініціалізації змінних та кешування посилань.
📌 OnEnable()
• Викликається кожного разу, коли об’єкт стає активним (
• Зручно для підписки на події або запуску анімацій при активації.
📌 Start()
• Викликається один раз, але тільки після всіх Awake() і коли об’єкт вже активний.
• Використовуйте для роботи з іншими об’єктами, які вже ініціалізовані.
Але ви можете подумати: «Та яка різниця між Awake() і Start()? Можна ж просто використовувати один із них».
Насправді різниця є!
А от
Тому в
🧠 Приклад:
Уявіть, що ви робите сцену з гравцем і камерою, яка повинна слідкувати за ним.
У
А ось у
📌 Отже, пам’ятайте:
• Використовуйте
•
• А
💻 | GAMEDEV UA | #уроки #unity #CSharp #ініціалізація
Unity дає кілька методів для ініціалізації скриптів:
Awake(), OnEnable() і Start(). Вони схожі за призначенням, але працюють по-різному.📌 Awake()
• Викликається один раз за життя об’єкта.
• Виконується ще до того, як об’єкт стане активним.
• Використовуйте для ініціалізації змінних та кешування посилань.
void Awake()
{
_rb = GetComponent<Rigidbody>();
}
📌 OnEnable()
• Викликається кожного разу, коли об’єкт стає активним (
SetActive(true) або при завантаженні сцени).• Зручно для підписки на події або запуску анімацій при активації.
void OnEnable()
{
EventManager.OnScoreChanged += UpdateUI;
}
📌 Start()
• Викликається один раз, але тільки після всіх Awake() і коли об’єкт вже активний.
• Використовуйте для роботи з іншими об’єктами, які вже ініціалізовані.
void Start()
{
targetPosition = player.transform.position;
}
Але ви можете подумати: «Та яка різниця між Awake() і Start()? Можна ж просто використовувати один із них».
Насправді різниця є!
Awake() виконується одразу, коли об’єкт з’являється у сцені, навіть якщо він вимкнений. Це момент, коли об’єкт ще ні з ким не «спілкується», бо він просто готує себе до роботи, створює змінні, кешує компоненти.А от
Start() запускається тільки тоді, коли об’єкт активний і всі інші об’єкти вже встигли виконати свій Awake().Тому в
Start() можна сміливо звертатися до інших елементів сцени, знаючи, що вони вже готові до взаємодії.🧠 Приклад:
Уявіть, що ви робите сцену з гравцем і камерою, яка повинна слідкувати за ним.
У
Awake() гравець ще тільки створюється і налаштовує свої дані. Якщо камера спробує підключитися до нього в Awake(), може статися так, що гравець ще не готовий.А ось у
Start() гравець уже точно ініціалізований, тому камера може безпечно підчепитися і почати рухатись за ним!📌 Отже, пам’ятайте:
• Використовуйте
Awake() для підготовки об’єкта, а саме кешування компонентів та налаштувань.•
OnEnable() для логіки, яка має запускатися щоразу при активації об’єкта.• А
Start() коли треба працювати з іншими вже готовими об’єктами в сцені.💻 | GAMEDEV UA | #уроки #unity #CSharp #ініціалізація
🔥10❤2👍1🥰1
🖍️ Harmony Palette для Aseprite 1.3.x
✅ Обираєш базовий відтінок і насиченість через колорпікер
✅ Одразу бачиш 4 варіанти з різною яскравістю (70%, 50%, 30%, 15%) у режимі реального часу
✅ Лівий клік — встановити колір як передній, правий — як фоновий без закриття вікна
Доступно через
Ідеально для швидкої роботи з палітрами у піксель-арті!
💻 | GAMEDEV UA | #інструменти #PixelArt #Aseprite
✅ Обираєш базовий відтінок і насиченість через колорпікер
✅ Одразу бачиш 4 варіанти з різною яскравістю (70%, 50%, 30%, 15%) у режимі реального часу
✅ Лівий клік — встановити колір як передній, правий — як фоновий без закриття вікна
Доступно через
File > Scripts > Harmony Palette в Aseprite 1.3.xІдеально для швидкої роботи з палітрами у піксель-арті!
💻 | GAMEDEV UA | #інструменти #PixelArt #Aseprite
👍7🔥4❤1
🤖 Ігри майбутнього: чи готові ми до світу, де все створює AI?
Заздалегідь прописані сюжети і шаблонні вороги вже не є межею. Сьогодні ігри можуть жити і змінюватися разом із тобою.
AI і машинне навчання стали справжніми партнерами розробників, які відкривають нові можливості та переосмислюють те, як ми граємо.
🔷 Історії що народжуються прямо на твоїх очах
🔷 Вороги які вчаться на твоїх помилках
У
🔷 NPC які поводяться як справжні люди
У
🔷 Автоматизація креативу
Штучний інтелект допомагає автоматизувати багато процесів у розробці ігор.
Він може створювати анімації персонажів без складної ручної роботи, генерувати музику та звукові ефекти, адаптовані під атмосферу гри.
💡 З розвитком AI з’являються неймовірні можливості, але разом із ними й виклики.
Чи зможемо ми зберегти унікальність ігрових світів, коли машини зможуть створювати величезну кількість контенту? Чи буде AI лише інструментом у руках творців, чи почне диктувати правила гри?
І найголовніше: де проходить межа, коли технології перестають служити креативності і починають її обмежувати?
⚡️ Пиши в коментарях, буде цікаво почути твою думку!
💻 | GAMEDEV UA | #запитання #ШтучнийІнтелект #AI #ШІ
Заздалегідь прописані сюжети і шаблонні вороги вже не є межею. Сьогодні ігри можуть жити і змінюватися разом із тобою.
AI і машинне навчання стали справжніми партнерами розробників, які відкривають нові можливості та переосмислюють те, як ми граємо.
🔷 Історії що народжуються прямо на твоїх очах
AI Dungeon — це не просто гра а живий розповідач який генерує унікальні квести і діалоги у реальному часі.🔷 Вороги які вчаться на твоїх помилках
У
Halo штучний інтелект не просто атакує він адаптується вороги аналізують твої тактики і змінюють стратегію щоб зробити бій дійсно викликом.🔷 NPC які поводяться як справжні люди
У
The Last of Us Part II вороги діють як команда ховаються обстрілюють з флангів і використовують звук щоб відстежувати тебе. Це новий рівень реалізму!🔷 Автоматизація креативу
Штучний інтелект допомагає автоматизувати багато процесів у розробці ігор.
Він може створювати анімації персонажів без складної ручної роботи, генерувати музику та звукові ефекти, адаптовані під атмосферу гри.
💡 З розвитком AI з’являються неймовірні можливості, але разом із ними й виклики.
Чи зможемо ми зберегти унікальність ігрових світів, коли машини зможуть створювати величезну кількість контенту? Чи буде AI лише інструментом у руках творців, чи почне диктувати правила гри?
І найголовніше: де проходить межа, коли технології перестають служити креативності і починають її обмежувати?
⚡️ Пиши в коментарях, буде цікаво почути твою думку!
💻 | GAMEDEV UA | #запитання #ШтучнийІнтелект #AI #ШІ
🔥7👍1
💥 Unity-розробники тепер можуть продавати без комісії 30%! [Інфа]
Xsolla випустила новий SDK для Unity, який дозволяє приймати платежі та продавати контент напряму гравцям, минаючи Google Play та App Store.
📌 Різниця з Unity IAP:
•
•
🔥 Що всередині:
• Кросплатформа: iOS, Android, ПК, веб.
• 1000+ способів оплати у 200+ країнах 🌍
• Підписки, бандли, персональні пропозиції.
• Автоматичні податки, захист від шахрайства, обробка повернень.
🎯 Ідеально для інді та студій, які хочуть заробляти більше та працювати на своїх умовах.
💻 | GAMEDEV UA | #новини #Unity #монетизація #Xsolla
Xsolla випустила новий SDK для Unity, який дозволяє приймати платежі та продавати контент напряму гравцям, минаючи Google Play та App Store.
📌 Різниця з Unity IAP:
•
Unity IAP → прив’язка до магазинів, комісія до 30%, обмеження правил платформ.•
Xsolla SDK → ваш власний магазин, прямі платежі, повний контроль над цінами, офферами та даними гравців.🔥 Що всередині:
• Кросплатформа: iOS, Android, ПК, веб.
• 1000+ способів оплати у 200+ країнах 🌍
• Підписки, бандли, персональні пропозиції.
• Автоматичні податки, захист від шахрайства, обробка повернень.
🎯 Ідеально для інді та студій, які хочуть заробляти більше та працювати на своїх умовах.
💻 | GAMEDEV UA | #новини #Unity #монетизація #Xsolla
🔥8👍6❤1
YouTube
How To Render 2 Million Objects At 120 FPS
Project files: https://github.com/Matthew-J-Spencer/pushing-unity
Let's discover the true potential of Unity by pushing its limits. In this video, we'll explore a variety of techniques, from straightforward tweaks like data-oriented design, to more advanced…
Let's discover the true potential of Unity by pushing its limits. In this video, we'll explore a variety of techniques, from straightforward tweaks like data-oriented design, to more advanced…
🔥 Як рендерити 2 мільйони об’єктів на 120 FPS в Unity?
✅ Один
Не використовуй тисячі MonoBehaviour з Update(). Один менеджер керує всім.
✅ Кешуй transform
✅ GPU Instancing
Один
✅ Jobs + Burst
Важкі обчислення переносяться в багатопотоковість. Burst робить код блискавичним.
✅ ECS (Entity Component System)
Дані компактні та оновлюються пачками. Мінімальне навантаження на CPU.
✅ DrawMeshInstancedIndirect + ComputeBuffers
Робота переноситься на GPU, CPU відпочиває, сцена літає.
✅ Кешуй Camera.main
▶️ [Детальніше тут] 👈
💡 Як це працює разом:
ECS зберігає дані щільно в пам’яті → Jobs + Burst обчислюють оновлення у багатопотоковості → ComputeBuffers передають дані на GPU → DrawMeshInstancedIndirect малює всі об’єкти одним викликом.
💻 | GAMEDEV UA | #оптимізація #рендер #render #GPU
✅ Один
Update() замість сотеньНе використовуй тисячі MonoBehaviour з Update(). Один менеджер керує всім.
✅ Кешуй transform
transform.position у кожному кадрі це дорого. Збережи посилання один раз. [Детальніше]✅ GPU Instancing
Один
Draw Call для сотень моделей і FPS росте.✅ Jobs + Burst
Важкі обчислення переносяться в багатопотоковість. Burst робить код блискавичним.
✅ ECS (Entity Component System)
Дані компактні та оновлюються пачками. Мінімальне навантаження на CPU.
✅ DrawMeshInstancedIndirect + ComputeBuffers
Робота переноситься на GPU, CPU відпочиває, сцена літає.
✅ Кешуй Camera.main
Camera.main кожного разу шукає об’єкт у сцені. Знайди один раз і збережи.▶️ [Детальніше тут] 👈
💡 Як це працює разом:
ECS зберігає дані щільно в пам’яті → Jobs + Burst обчислюють оновлення у багатопотоковості → ComputeBuffers передають дані на GPU → DrawMeshInstancedIndirect малює всі об’єкти одним викликом.
💻 | GAMEDEV UA | #оптимізація #рендер #render #GPU
🔥8❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Хочете рухатися по похилих поверхнях у 2D в Unity? 😍
Тепер це легко з
💻 | GAMEDEV UA | #туторіал #Ковзання #Рух #RigidBody2D
Тепер це легко з
Rigidbody2D.Slide() — обробляє кути, ковзання та визначення поверхонь!💻 | GAMEDEV UA | #туторіал #Ковзання #Рух #RigidBody2D
👍14❤🔥1
YouTube
Don’t Let These 4 Code Smells Ruin Your Unity Game
Shotgun Surgery is one of the most frustrating code smells in Unity — when a single change forces you to edit multiple noscripts scattered across your project. In this video, we’ll tackle it along with three other common pitfalls: Switch Statements, Temporary…
4 підлі помилки в коді, які тихо вбивають твій проєкт ⚠️
Не кожен «поганий запах» коду відчутний одразу. Але потім вони перетворюють будь-яку фічу на кошмар. Дивись:
✅ 1. Temporary Field
❓Чому це сміття? Поле path потрібне лише в
Як виправити:
Або передавай залежності через параметри.
✅ 2. Switch Statements
❓Чому це жах? Додав нового ворога то міняй код скрізь.
Використовуй поліморфізм:
✅ 3. Shotgun Surgery
Що це? Ти змінив логіку підрахунку очок і мусиш лізти в
Використовуй C# Events:
Або ScriptableObject як Event Channel, він дозволяє від’єднати залежності між системами.
✅ 4. Refused Bequest
Ти зробив BaseEnemy з купою методів, але в BossEnemy більшість не потрібна. Він просто «успадкував за компанію».
Рішення:
• Забери зайву логіку в сервіси і додай через композицію.
Це означає, що замість спадкування базового класу з усім підряд, роби окремий клас для потрібної поведінки й використовуй його всередині.
📺 [Детальніше] ▶️
Зберігай, якщо цікаво 😉
💻 | GAMEDEV UA | #уроки #unity #CSharp
Не кожен «поганий запах» коду відчутний одразу. Але потім вони перетворюють будь-яку фічу на кошмар. Дивись:
✅ 1. Temporary Field
public class Enemy : MonoBehaviour
{
private Path path; // Використовується лише в одному методі!
void Start() {
path = FindObjectOfType<Path>();
}
void UpdatePath() {
path.Recalculate();
}
}
❓Чому це сміття? Поле path потрібне лише в
UpdatePath(), але займає пам'ять завжди.Як виправити:
void UpdatePath() {
var path = FindObjectOfType<Path>();
path.Recalculate();
}Або передавай залежності через параметри.
✅ 2. Switch Statements
switch (enemyType)
{
case EnemyType.Melee:
AttackMelee();
break;
case EnemyType.Range:
AttackRange();
break;
}
❓Чому це жах? Додав нового ворога то міняй код скрізь.
Використовуй поліморфізм:
public abstract class Enemy : MonoBehaviour
{
public abstract void Attack();
}
public class MeleeEnemy : Enemy
{
public override void Attack() { /* melee attack */ }
}
public class RangeEnemy : Enemy
{
public override void Attack() { /* range attack */ }
}
✅ 3. Shotgun Surgery
Що це? Ти змінив логіку підрахунку очок і мусиш лізти в
Enemy, UIManager, GameManager, SaveSystem...Використовуй C# Events:
public static event Action<int> OnScoreChanged;
Або ScriptableObject як Event Channel, він дозволяє від’єднати залежності між системами.
✅ 4. Refused Bequest
Ти зробив BaseEnemy з купою методів, але в BossEnemy більшість не потрібна. Він просто «успадкував за компанію».
Рішення:
• Забери зайву логіку в сервіси і додай через композицію.
Це означає, що замість спадкування базового класу з усім підряд, роби окремий клас для потрібної поведінки й використовуй його всередині.
📺 [Детальніше] ▶️
Зберігай, якщо цікаво 😉
💻 | GAMEDEV UA | #уроки #unity #CSharp
🔥8🥰1
🕹 Gamepad UI / Controller Prompts Pack
📦 Завантажити 👈
Там ще купа елементів у такому ж стилі. Як вам? 🔥
💻 | GAMEDEV UA | #корисне #UI #текстури
📦 Завантажити 👈
Там ще купа елементів у такому ж стилі. Як вам? 🔥
💻 | GAMEDEV UA | #корисне #UI #текстури
🔥9
MIDiA Research
The case for more digestable games: Over a third of console and PC gamers play LESS than 5 hours a week
The attention economy is oversaturated. Games are not just competingwith other games but with TikTok, YouTube, Netflix, and well ... life. But the games industry – especially premium games on console and PC – has a unique twofold challenge: Supply : New AAA…
📊 Чи стають ігри коротшими у 2024–2025?
Геймери дедалі частіше кажуть: “Нема часу на 100-годинні марафони”. А розробники справді скорочують проєкти. Чому так відбувається і що показують дані?
🔍 Факти та тренди [Інфа]
✔️ Менше часу на ігри:
✔️ Конкуренція за увагу: у 2024 лише
✔️ Довгі ігри менше проходять: у багатьох AAA до фіналу доходять <50% гравців, у деяких лише
🎮 Як реагує індустрія?
✅ Ubisoft зменшує масштаби: Assassin’s Creed Mirage 20–23 год, проти 80+ у Valhalla.
✅ Hellblade II: 6–8 год сюжету за $50 викликало дискусії, але без «гри заради розтягування».
✅ Stellar Blade: 20–25 год золота середина.
✅ Avowed: два режими 15 год швидкого проходження або 40+ для фанатів глибини.
📈 Чому саме так?
Сьогодні гравці мають мало вільного часу: соцмережі, серіали й реальне життя постійно конкурують за їхню увагу. AAA-ігри залишаються дорогими у виробництві; інвестиції в роздутий контент рідко окуповуються, якщо користувачі навіть не доходять до фінальних титрів.
Скорочення тривалості проєктів дозволяє зменшити виробничі витрати, зробити продукт більш доступним і підвищити шанси на його проходження.
💬 Що каже спільнота?
«Хочу гру на 7–10 годин, щоб пройти за вихідні» або «100 годин у світі Elden Ring? Дайте дві!»
А чого хочете особисто ви? До якого формату ви тяжієте? Діліться у коментарях 👇
💻 | GAMEDEV UA | #запитання #ShortGames #ГеймТренди #GamingTrends
Геймери дедалі частіше кажуть: “Нема часу на 100-годинні марафони”. А розробники справді скорочують проєкти. Чому так відбувається і що показують дані?
🔍 Факти та тренди [Інфа]
✔️ Менше часу на ігри:
66% геймерів проводять <10 годин на тиждень, а 36–40% усього 5 год.✔️ Конкуренція за увагу: у 2024 лише
23% ігрового часу йшло на нові релізи. Решта на старі хіти.✔️ Довгі ігри менше проходять: у багатьох AAA до фіналу доходять <50% гравців, у деяких лише
25%.🎮 Як реагує індустрія?
✅ Ubisoft зменшує масштаби: Assassin’s Creed Mirage 20–23 год, проти 80+ у Valhalla.
✅ Hellblade II: 6–8 год сюжету за $50 викликало дискусії, але без «гри заради розтягування».
✅ Stellar Blade: 20–25 год золота середина.
✅ Avowed: два режими 15 год швидкого проходження або 40+ для фанатів глибини.
📈 Чому саме так?
Сьогодні гравці мають мало вільного часу: соцмережі, серіали й реальне життя постійно конкурують за їхню увагу. AAA-ігри залишаються дорогими у виробництві; інвестиції в роздутий контент рідко окуповуються, якщо користувачі навіть не доходять до фінальних титрів.
Скорочення тривалості проєктів дозволяє зменшити виробничі витрати, зробити продукт більш доступним і підвищити шанси на його проходження.
💬 Що каже спільнота?
«Хочу гру на 7–10 годин, щоб пройти за вихідні» або «100 годин у світі Elden Ring? Дайте дві!»
А чого хочете особисто ви? До якого формату ви тяжієте? Діліться у коментарях 👇
💻 | GAMEDEV UA | #запитання #ShortGames #ГеймТренди #GamingTrends
🔥10🥰1
🚀 Unity 6.2 — новий стабільний реліз!
🧠 Unity AI Beta
Вбудований прямо в редактор. Допомагає прискорити робочий процес, автоматизувати задачі та генерувати контент.
Unity Points безкоштовні та без обмежень під час бета.
📱 Android XR Updates
Пакет
• Підтримка hand mesh
• Динамічна частота оновлення
• Visibility mesh occlusion (краща продуктивність URP на мобільному XR)
🖼 Graph Toolkit
Створення кастомних графових інструментів у редакторі. [Детальніше]
🧱 Mesh LOD
Автоматичне генерування
🌐 World Space UI для UI Toolkit
Рендер UI прямо у 3D-просторі. [Детальніше]
🔐 Developer Data Framework
Більше прозорості та контролю над даними. [Детальніше]
🩺 Нові Diagnostics
Покращені звіти про креші та
Unity 6.2 — Supported release, тож отримує повну LTS-підтримку. Можна апгрейдитися без ризику для стабільності.
💻 | GAMEDEV UA | #новини #unity #unityrelease
Unity 6.2 тепер підтримується для продакшну і готовий до використання в ваших проєктах.🧠 Unity AI Beta
Вбудований прямо в редактор. Допомагає прискорити робочий процес, автоматизувати задачі та генерувати контент.
Unity Points безкоштовні та без обмежень під час бета.
📱 Android XR Updates
Пакет
Android XR тепер верифікований та готовий для продакшну.• Підтримка hand mesh
• Динамічна частота оновлення
• Visibility mesh occlusion (краща продуктивність URP на мобільному XR)
🖼 Graph Toolkit
Створення кастомних графових інструментів у редакторі. [Детальніше]
🧱 Mesh LOD
Автоматичне генерування
LOD при імпорті моделей. [Детальніше]🌐 World Space UI для UI Toolkit
Рендер UI прямо у 3D-просторі. [Детальніше]
🔐 Developer Data Framework
Більше прозорості та контролю над даними. [Детальніше]
🩺 Нові Diagnostics
Покращені звіти про креші та
ANR, реальний час продуктивності. [Детальніше]Unity 6.2 — Supported release, тож отримує повну LTS-підтримку. Можна апгрейдитися без ризику для стабільності.
💻 | GAMEDEV UA | #новини #unity #unityrelease
⚡8👍2❤1🥰1
Фінальний мем тижня!
Зв'язок з автором: @DevAndrew 👈
Бот з блек-лістом: @IndieSafeBot
(Бот тимчасово не працює. Переставляємо на інший сервер)
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
✈️ Gamedev | #меми
Зв'язок з автором: @DevAndrew 👈
Бот з блек-лістом: @IndieSafeBot
(Бот тимчасово не працює. Переставляємо на інший сервер)
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
Please open Telegram to view this post
VIEW IN TELEGRAM
😁15🥰1
📌 Підсумок публікацій за тиждень:
Почнемо з основного - @IndieSafeBot припинив свою роботу на декілька днів.
🔔З навчальних матеріалів:
• ⏰Різниця між Awake, OnEnable i Start
• 🤑 Як рендерити велику кі-сть обєктів
• 🆘 4 помилки в коді, які гублять твій проєкт
🗞 Новини:
• 💵 Unity-розробники тепер можуть продавати без комісії 30%!
• 🚀 Unity 6.2 — новий стабільний реліз!
🗣 Цікаві обговорення:
• 📉 Чи стають ігри коротшими у 2024–2025?
• 🤖 Чи готові ми до світу, де все створює ШІ?
⚒️Ну і просто корисне:
• 🖌 Harmony Palette (Aseprite)
• 🛹 Рух на похилих поверхностях
• 📌 Gamepad UI / Controller Prompts Pack
📋 Для вашої зручності ми це все зібрали в один пост, повертайтеся та надолужуйтесь, якщо щось пропустили 😉
💻 | GAMEDEV UA | [Підтримка каналу тут]
Почнемо з основного - @IndieSafeBot припинив свою роботу на декілька днів.
🔔З навчальних матеріалів:
• ⏰Різниця між Awake, OnEnable i Start
• 🤑 Як рендерити велику кі-сть обєктів
• 🆘 4 помилки в коді, які гублять твій проєкт
🗞 Новини:
• 💵 Unity-розробники тепер можуть продавати без комісії 30%!
• 🚀 Unity 6.2 — новий стабільний реліз!
🗣 Цікаві обговорення:
• 📉 Чи стають ігри коротшими у 2024–2025?
• 🤖 Чи готові ми до світу, де все створює ШІ?
⚒️Ну і просто корисне:
• 🖌 Harmony Palette (Aseprite)
• 🛹 Рух на похилих поверхностях
• 📌 Gamepad UI / Controller Prompts Pack
📋 Для вашої зручності ми це все зібрали в один пост, повертайтеся та надолужуйтесь, якщо щось пропустили 😉
💻 | GAMEDEV UA | [Підтримка каналу тут]
🔥12👍2
🚦Як працюють LayerMask у Unity?
Уяви, що у тебе 100 об'єктів на сцені. Але Raycast має влучити тільки у ворогів, а не в усе підряд. Як це зробити? 🤔
👉 Тут в гру вступає LayerMask, спосіб сказати Unity: “шукати тільки на цих шарах”.
📦 Що таке LayerMask?
LayerMask - це бітова маска, яка дозволяє обирати які саме шари враховувати, коли ти викликаєш
У Unity кожен Layer це число
✔️ Кожен біт у цьому числі відповідає одному Layer.
✔️
✔️
🧪 Приклад:
👆
🧠 Хак:
Можна комбінувати шари:
Або навіть вручну:
⚡️ Керування колізіями між шарами
У Unity можна налаштувати, які шари можуть фізично контактувати, а які проходять повз один одного:
1. Меню: Edit → Project Settings → Physics (3D) або Physics2D (2D).
2. Прокрути вниз до Layer Collision Matrix.
3. Галочка = шари взаємодіють, знята = шари ігнорують один одного.
Приклад:
• Знімаємо галочку Player ↔️ Enemy → гравець і вороги не стикаються.
• Галочка Player ↔️ Ground залишена → гравець продовжує ходити по землі.
▶️ Як працює LayerMask у Unity 👈
🛠 Навіщо це знати?
• Оптимізація: Raycast не перевіряє зайве
• Фільтрація: Вибіркові взаємодії
• Безпека: обробка тільки тих шарів, які потрібні
💻 | GAMEDEV UA |#уроки #layermask #шари
Уяви, що у тебе 100 об'єктів на сцені. Але Raycast має влучити тільки у ворогів, а не в усе підряд. Як це зробити? 🤔
👉 Тут в гру вступає LayerMask, спосіб сказати Unity: “шукати тільки на цих шарах”.
📦 Що таке LayerMask?
LayerMask - це бітова маска, яка дозволяє обирати які саме шари враховувати, коли ти викликаєш
Raycast тощо.У Unity кожен Layer це число
від 0 до 31, а LayerMask зберігає інформацію про те, які шари включені, у вигляді 32-бітного числа.✔️ Кожен біт у цьому числі відповідає одному Layer.
✔️
Якщо біт = 1 → шар активний для перевірки.✔️
Якщо біт = 0 → шар ігнорується.🧪 Приклад:
int layerMask = LayerMask.GetMask("Enemy");
if (Physics.Raycast(transform.position, transform.forward, out RaycastHit hit, 100f, layerMask))
{
Debug.Log("Enemy hit!");
}👆
GetMask("Enemy") повертає маску, яка дозволяє влучити тільки в об'єкти на шарі “Enemy”.🧠 Хак:
Можна комбінувати шари:
int mask = LayerMask.GetMask("Enemy", "Obstacle");Або навіть вручну:
int mask = (1 << LayerMask.NameToLayer("Enemy")) | (1 << LayerMask.NameToLayer("Obstacle"));⚡️ Керування колізіями між шарами
У Unity можна налаштувати, які шари можуть фізично контактувати, а які проходять повз один одного:
1. Меню: Edit → Project Settings → Physics (3D) або Physics2D (2D).
2. Прокрути вниз до Layer Collision Matrix.
3. Галочка = шари взаємодіють, знята = шари ігнорують один одного.
Приклад:
• Знімаємо галочку Player ↔️ Enemy → гравець і вороги не стикаються.
• Галочка Player ↔️ Ground залишена → гравець продовжує ходити по землі.
▶️ Як працює LayerMask у Unity 👈
🛠 Навіщо це знати?
• Оптимізація: Raycast не перевіряє зайве
• Фільтрація: Вибіркові взаємодії
• Безпека: обробка тільки тих шарів, які потрібні
💻 | GAMEDEV UA |#уроки #layermask #шари
🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
🔥 Add Inbetween Frames - твоя анімація без зайвої рутини!
Втомився вручну малювати кожен кадр для плавної анімації? 😅
Скрипт Add Inbetween Frames з NxPA Studio робить це за тебе!
✨ Що він робить:
• Автоматично додає проміжні кадри між існуючими
• Працює з групами шарів та зберігає їхню структуру
• Можна обирати, де і скільки кадрів додати
• Ідеально підходить для
💡 Після встановлення скрипт буде в
📥 [Завантажити: NxPA Studio на itch.io] 👈
⏱️ Економія часу + плавні переходи = круті анімації за секунди!
💻 | GAMEDEV UA | #інструменти #PixelArt #Aseprite #Animation
Втомився вручну малювати кожен кадр для плавної анімації? 😅
Скрипт Add Inbetween Frames з NxPA Studio робить це за тебе!
✨ Що він робить:
• Автоматично додає проміжні кадри між існуючими
• Працює з групами шарів та зберігає їхню структуру
• Можна обирати, де і скільки кадрів додати
• Ідеально підходить для
walk cycles, рухів персонажів і ефектів💡 Після встановлення скрипт буде в
File → Scripts або через правий клік на таймлайні кадрів.📥 [Завантажити: NxPA Studio на itch.io] 👈
⏱️ Економія часу + плавні переходи = круті анімації за секунди!
💻 | GAMEDEV UA | #інструменти #PixelArt #Aseprite #Animation
🔥6⚡5❤2🥰1
🧠 Чи роблять відеоігри нас «розумнішими»?
Ви коли-небудь ловили себе на думці: «Я стільки годин граю. Це хоч якось корисно?» Виявляється, так! Дослідники стверджують, що ігри не тільки розважають, а й прокачують мозок. Але не все так однозначно.
✅ Чому геймери кмітливіші? [Джерело]
Дослідження показують: гравці краще справляються із завданнями на пам’ять, увагу і швидкість реакції, ніж ті, хто не грає. Чому?
🔹 Екшн-ігри (шутери, MOBA)
Це марафон для мозку! Ви одночасно відстежуєте десятки об’єктів, ухвалюєте миттєві рішення і реагуєте на загрози за долі секунди. Результат швидша реакція та сильніша концентрація.
🔹 Стратегії та головоломки (RTS, Portal, tower defense)
Щоб перемогти, потрібно планувати, передбачати та мислити на кілька кроків уперед. Після кількох годин у таких іграх просторове мислення і логіка реально прокачуються.
📊 Що кажуть цифри? [Джерело]
• Геймери виконують тести на увагу і швидкість на
• Діти, які грають 3+ години на день, показують кращі результати в завданнях на самоконтроль і робочу пам’ять.
• Навіть 8 годин у головоломці на кшталт
🤯 Але є й зворотний бік
Якщо ігри стають залежністю то мозок страждає.
🔸 Проблеми з концентрацією
🔸 Зниження навчальних навичок
🔸 Ризик тривожності та безсоння
❓ А ти помічав, що ігри роблять тебе кмітливішим? Які ігри реально допомогли прокачати твою увагу чи пам’ять?
💻 | GAMEDEV UA | #запитання #відеоігри #геймери #когнітивнінавички
Ви коли-небудь ловили себе на думці: «Я стільки годин граю. Це хоч якось корисно?» Виявляється, так! Дослідники стверджують, що ігри не тільки розважають, а й прокачують мозок. Але не все так однозначно.
✅ Чому геймери кмітливіші? [Джерело]
Дослідження показують: гравці краще справляються із завданнями на пам’ять, увагу і швидкість реакції, ніж ті, хто не грає. Чому?
🔹 Екшн-ігри (шутери, MOBA)
Це марафон для мозку! Ви одночасно відстежуєте десятки об’єктів, ухвалюєте миттєві рішення і реагуєте на загрози за долі секунди. Результат швидша реакція та сильніша концентрація.
🔹 Стратегії та головоломки (RTS, Portal, tower defense)
Щоб перемогти, потрібно планувати, передбачати та мислити на кілька кроків уперед. Після кількох годин у таких іграх просторове мислення і логіка реально прокачуються.
📊 Що кажуть цифри? [Джерело]
• Геймери виконують тести на увагу і швидкість на
12–17% швидше, ніж ті, хто не грає.• Діти, які грають 3+ години на день, показують кращі результати в завданнях на самоконтроль і робочу пам’ять.
• Навіть 8 годин у головоломці на кшталт
Portal 2 можуть дати помітний ріст когнітивних навичок.🤯 Але є й зворотний бік
Якщо ігри стають залежністю то мозок страждає.
🔸 Проблеми з концентрацією
🔸 Зниження навчальних навичок
🔸 Ризик тривожності та безсоння
❓ А ти помічав, що ігри роблять тебе кмітливішим? Які ігри реально допомогли прокачати твою увагу чи пам’ять?
💻 | GAMEDEV UA | #запитання #відеоігри #геймери #когнітивнінавички
🔥6🤔3
🔥 Steam змінив систему відгуків
Тепер за замовчуванням показується рейтинг гри мовою вашого інтерфейсу, а не глобальний.
Valve пояснює:
✅ Зміни стосуються ігор із 2000+ відгуків, де є щонайменше 200 відгуків певною мовою.
✅ Глобальний рейтинг залишився; його можна увімкнути в налаштуваннях.
Що це означає? Рейтинги тепер можуть сильно різнитися між мовами. Наприклад:
• Англійська: «Дуже позитивні»
• Українська: «Змішані»
А для розробників❓
Тепер ще більше уваги потрібно приділяти локалізації та якості сервісів у різних країнах, інакше гра отримає низьку оцінку серед конкретної мовної спільноти.
💬 Як думаєте, це допоможе чи навпаки заплутає?
💻 | GAMEDEV UA | #новини #steam #rating #Valve
Тепер за замовчуванням показується рейтинг гри мовою вашого інтерфейсу, а не глобальний.
Valve пояснює:
«У різних регіонах досвід може відрізнятися через переклад, культурні нюанси або проблеми з підключенням».
✅ Зміни стосуються ігор із 2000+ відгуків, де є щонайменше 200 відгуків певною мовою.
✅ Глобальний рейтинг залишився; його можна увімкнути в налаштуваннях.
Що це означає? Рейтинги тепер можуть сильно різнитися між мовами. Наприклад:
• Англійська: «Дуже позитивні»
• Українська: «Змішані»
А для розробників❓
Тепер ще більше уваги потрібно приділяти локалізації та якості сервісів у різних країнах, інакше гра отримає низьку оцінку серед конкретної мовної спільноти.
💬 Як думаєте, це допоможе чи навпаки заплутає?
💻 | GAMEDEV UA | #новини #steam #rating #Valve
🔥14
YouTube
Mesh LOD is Magic (Unity 6 Tutorial)
Unity’s new Mesh LOD system automatically creates and manages levels of detail for meshes on import, reducing polygon count and improving performance with a minimal memory footprint.
Unlike traditional LOD Groups, it doesn’t create extra GameObjects or duplicate…
Unlike traditional LOD Groups, it doesn’t create extra GameObjects or duplicate…
🔍 Повний розбір Mesh LOD у Unity 6.2
Unity продовжує дивувати! У новій версії з’явилася система Mesh LOD, яка спрощує роботу з рівнями деталізації та оптимізацією моделей.
✅ Що таке Mesh LOD?
✔️ Автоматично створює рівні деталізації під час імпорту моделі.
✔️ Не створює додаткових
✔️ Зберігає всі LOD у оригінальному меші, використовуючи
✅ Чому це важливо?
🔹 Менший розмір у пам’яті.
🔹 Оптимізовані відстані для переключення LOD.
🔹 Плавні переходи (crossfade).
🔹 Підтримка експорту у FBX.
Як працює, та як налаштувати дивіться ось [тут] 👈
💻 | GAMEDEV UA | #оптимізація #MeshLOD #LOD
Unity продовжує дивувати! У новій версії з’явилася система Mesh LOD, яка спрощує роботу з рівнями деталізації та оптимізацією моделей.
✅ Що таке Mesh LOD?
✔️ Автоматично створює рівні деталізації під час імпорту моделі.
✔️ Не створює додаткових
GameObject, як класичний LOD Group.✔️ Зберігає всі LOD у оригінальному меші, використовуючи
index buffer та той самий vertex buffer.✅ Чому це важливо?
🔹 Менший розмір у пам’яті.
🔹 Оптимізовані відстані для переключення LOD.
🔹 Плавні переходи (crossfade).
🔹 Підтримка експорту у FBX.
Як працює, та як налаштувати дивіться ось [тут] 👈
💻 | GAMEDEV UA | #оптимізація #MeshLOD #LOD
🔥10❤1⚡1
🤖 Хочеш створити власного AI-бота?
Уяви гру без ворогів, союзників чи NPC, які взаємодіють із гравцем — вона буде порожньою. Саме тут вступає в гру штучний інтелект.
🎯 Навіщо потрібні AI-боти:
– Вороги, що атакують або тікають
– NPC, які патрулюють, реагують на гравця або допомагають йому
– Сценарії з поведінкою в стилі "Stealth", "Shooter", "Survival" та інші
📌 Як їх реалізувати в 2D та 3D:
– Рух та переслідування
– Зони виявлення та реакції
– Системи станів (Idle, Chase, Attack, Flee)
✅ Все з прикладами, простими поясненнями і на реальних кейсах. Підходить для Unity-проєктів будь-якого жанру.
🧠 Вчися робити ботів, які не просто рухаються, а намагаються тебе вбити👇
– 2D [Відео]
– 3D [Відео]
💻 | GAMEDEV UA | #туторіал #AI #ШІ #боти
Уяви гру без ворогів, союзників чи NPC, які взаємодіють із гравцем — вона буде порожньою. Саме тут вступає в гру штучний інтелект.
🎯 Навіщо потрібні AI-боти:
– Вороги, що атакують або тікають
– NPC, які патрулюють, реагують на гравця або допомагають йому
– Сценарії з поведінкою в стилі "Stealth", "Shooter", "Survival" та інші
📌 Як їх реалізувати в 2D та 3D:
– Рух та переслідування
– Зони виявлення та реакції
– Системи станів (Idle, Chase, Attack, Flee)
✅ Все з прикладами, простими поясненнями і на реальних кейсах. Підходить для Unity-проєктів будь-якого жанру.
🧠 Вчися робити ботів, які не просто рухаються, а намагаються тебе вбити👇
– 2D [Відео]
– 3D [Відео]
💻 | GAMEDEV UA | #туторіал #AI #ШІ #боти
🔥7👎1
YouTube
Unity 2D Animations in SECONDS? - Aseprite Importer package
Stop wasting hours setting up 2D animations in Unity! ⏱️ Check out Aseprite importer package! 😍🎮 ➡️https://docs.unity3d.com/Packages/com.unity.2d.aseprite@...
Хочеш не витрачати години на налаштування 2D-анімацій? ⏱️
Зустрічай Aseprite Importer – ідеальний інструмент для імпорту твоїх
✅ Імпорт кадрів, анімацій та слайсів без зайвих клопотів
✅ Підтримка шарів та тегів з Aseprite
✅ Працює з Unity 2021.3.15f1 та новішими
[Детальніше тут] 👈
Забудь про ручне різання та проблеми з спрайтами!
💻 | GAMEDEV UA | #Unity #Aseprite #2DAnimation #Animation
Зустрічай Aseprite Importer – ідеальний інструмент для імпорту твоїх
.ase та .aseprite файлів прямо в Unity.✅ Імпорт кадрів, анімацій та слайсів без зайвих клопотів
✅ Підтримка шарів та тегів з Aseprite
✅ Працює з Unity 2021.3.15f1 та новішими
[Детальніше тут] 👈
Забудь про ручне різання та проблеми з спрайтами!
💻 | GAMEDEV UA | #Unity #Aseprite #2DAnimation #Animation
👍8❤1
🔥 Чому часті виклики Instantiate та Destroy — зло
❗️ Уяви, що у грі постійно з'являються кулі, вороги або ефекти вибуху. Що найчастіше роблять новачки?
Зручно, правда? Але є одна проблема…
❌ Чому це погано
•
•
• А тепер уяви, що ти робиш це десятки, а то й сотні разів за секунду. Що відбувається?
🔹 Постійні алокації пам’яті.
🔹 GC працює частіше → гра робить фризи.
🔹 FPS падає → на мобільних це особливо болюче.
Коли це критично?
👉 Шутери, спавн ворогів, спецефекти. Будь-де, де багато об'єктів.
✅ А як це виправити? Object Pooling!
Object Pooling — це техніка, при якій ти не створюєш і не видаляєш об’єкти постійно, а використовуєш вже готові (головне не переборщити).
Принцип простий:
• Створюєш пул (список) об’єктів на старті гри.
• Коли потрібно новий об'єкт — береш з пулу та активуєш.
• Коли об'єкт більше не потрібен — деактивуєш і повертаєш у пул, а не видаляєш.
✅ Чому це круто?
✔️ Немає зайвих алокацій пам’яті → FPS стабільний.
✔️ Немає GC-фризів → гра не підлагує.
✔️ Швидше за Instantiate/Destroy → особливо помітно на мобільних і VR.
💡 Використовується у всіх великих іграх: кулі, вороги, ефекти, UI елементи, навіть партикли.
📌 А як реалізувати Object Pool правильно і без типових помилок? ДИВИСЬ ТУТ 👈
💻 | GAMEDEV UA | #оптимізація #уроки #objectpooling #виклики
❗️ Уяви, що у грі постійно з'являються кулі, вороги або ефекти вибуху. Що найчастіше роблять новачки?
Instantiate(bulletPrefab, position, rotation);
Destroy(bullet, 2f);
Зручно, правда? Але є одна проблема…
❌ Чому це погано
•
Instantiate створює новий об'єкт у пам’яті → відбувається виділення пам’яті на heap, що досить дорого по продуктивності.•
Destroy знищує об'єкт → це запускає збірку сміття (Garbage Collector), яка “прибирає” об'єкти з пам’яті.• А тепер уяви, що ти робиш це десятки, а то й сотні разів за секунду. Що відбувається?
🔹 Постійні алокації пам’яті.
🔹 GC працює частіше → гра робить фризи.
🔹 FPS падає → на мобільних це особливо болюче.
Коли це критично?
👉 Шутери, спавн ворогів, спецефекти. Будь-де, де багато об'єктів.
✅ А як це виправити? Object Pooling!
Object Pooling — це техніка, при якій ти не створюєш і не видаляєш об’єкти постійно, а використовуєш вже готові (головне не переборщити).
Принцип простий:
• Створюєш пул (список) об’єктів на старті гри.
• Коли потрібно новий об'єкт — береш з пулу та активуєш.
• Коли об'єкт більше не потрібен — деактивуєш і повертаєш у пул, а не видаляєш.
✅ Чому це круто?
✔️ Немає зайвих алокацій пам’яті → FPS стабільний.
✔️ Немає GC-фризів → гра не підлагує.
✔️ Швидше за Instantiate/Destroy → особливо помітно на мобільних і VR.
💡 Використовується у всіх великих іграх: кулі, вороги, ефекти, UI елементи, навіть партикли.
📌 А як реалізувати Object Pool правильно і без типових помилок? ДИВИСЬ ТУТ 👈
💻 | GAMEDEV UA | #оптимізація #уроки #objectpooling #виклики
🔥6👍2
Фінальний мем тижня!
Зв'язок з автором: @DevAndrew 👈
Зараз в дорозі, тому вчора не було постів. Вибачайте 😅
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
💻 | GAMEDEV UA | #меми
Зв'язок з автором: @DevAndrew 👈
Зараз в дорозі, тому вчора не було постів. Вибачайте 😅
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
💻 | GAMEDEV UA | #меми
😁14🥰1