Фінальний мем тижня!
Зв'язок з автором: @DevAndrew
Підтримати канал тут: [Клац] 🙈
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі).
Чекаємо завтрашнього заключення 😁
✈️ Gamedev | #меми
Зв'язок з автором: @DevAndrew
Підтримати канал тут: [Клац] 🙈
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі).
Чекаємо завтрашнього заключення 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
😁18👍1🥰1
📌 Підсумок публікацій за тиждень:
Головна новина — запуск @IndieSafeBot
Це бот для геймдев-спільноти, який допомагає уникати шахрайства, збираючи реальні скарги на компанії (не особиста думка автора).
Також, у ньому можна створювати замовлення, переглядати їх, шукати роботу або отримувати сповіщення про нові пропозиції.
🏫 З навчальних матеріалів у нас:
• 💥 Як створити систему здібностей
• ⛳️ Vector3.Distance і чому це не завжди найкраще рішення
• 🚀 Drag and Trajectory Visualization
🌐 Новини та інструменти:
• ⚡️ Project Auditor оптимізація продуктивності
• 🎮 Mesh Lod - автоматичне створення деталізації
• 🤖 Copilot - ШІ прямо у редакторі
💡 Цікаві теми для дискусій:
• 🗣 Ранній фідбек; плюс та мінуси
• 💔 Чому ми кидаємо ігри на середині?
• 🏅Новий лідер на ігровому ринкy?
🛠 З корисного у нас:
• 🎤 Музичний, інструментальний, пак
• 💭 Smoke Fx Pixel ефект
📋 Зібрали для вас все в одному пості! Переглядайте, зберігайте і надолужуйте згаяне!
💻 | GAMEDEV UA |
Головна новина — запуск @IndieSafeBot
Це бот для геймдев-спільноти, який допомагає уникати шахрайства, збираючи реальні скарги на компанії (не особиста думка автора).
Також, у ньому можна створювати замовлення, переглядати їх, шукати роботу або отримувати сповіщення про нові пропозиції.
🏫 З навчальних матеріалів у нас:
• 💥 Як створити систему здібностей
• ⛳️ Vector3.Distance і чому це не завжди найкраще рішення
• 🚀 Drag and Trajectory Visualization
🌐 Новини та інструменти:
• ⚡️ Project Auditor оптимізація продуктивності
• 🎮 Mesh Lod - автоматичне створення деталізації
• 🤖 Copilot - ШІ прямо у редакторі
💡 Цікаві теми для дискусій:
• 🗣 Ранній фідбек; плюс та мінуси
• 💔 Чому ми кидаємо ігри на середині?
• 🏅Новий лідер на ігровому ринкy?
🛠 З корисного у нас:
• 🎤 Музичний, інструментальний, пак
• 💭 Smoke Fx Pixel ефект
📋 Зібрали для вас все в одному пості! Переглядайте, зберігайте і надолужуйте згаяне!
💻 | GAMEDEV UA |
🔥7🥰1💩1
🧩 Що таке процедурна генерація і як її реалізувати?
Процедурна генерація — це створення контенту (рівнів, карт, об’єктів, текстур, подій) за допомогою алгоритмів, а не вручну. Інакше кажучи: ти задаєш правила, а комп'ютер створює унікальний контент на ходу.
🎯 Навіщо вона потрібна:
🔹 Зменшує ручну роботу (не потрібно створювати 100 рівнів вручну)
🔹 Дає варіативність (новий досвід при кожному запуску)
🔹 Економить місце (зберігається лише алгоритм, а не купа даних)
🔹 Працює в реальному часі (генерує контент під час гри)
Самий популярний приклад це
Але важливо! Для кожного типу гри свій підхід до генерації.
Різний контент = різні алгоритми. Що підходить для одного жанру не спрацює для іншого.
🔸 Для платформера ідеально підходить підхід
Цей метод спочатку створює прохідний маршрут для гравця, від старту до фінішу, а вже потім навколо нього будується геометрія рівня: платформи, пастки, вороги тощо. [Детальніше]
🗺 Для печер та підземель добре підходить Cellular Automata.
Це метод, який працює з полем, поділеним на клітинки (сітка). Кожна клітинка це або стіна, або прохід.
На початку клітинки заповнюються випадково (частина — стіни, частина — проходи), а потім ми багато разів проходимо по всій карті й змінюємо клітинки за простими правилами.
• Якщо навколо клітинки більше ніж 5 стін вона теж стане стіною.
• Якщо навколо мало стін стає проходом.
Через кілька таких "проходів" сітка починає виглядати як справжня печера з плавними переходами, закритими кімнатами та тунелям. Для того, щоб перевірити, що гравець може дійти з точки А в точку В, додають алгоритм пошуку маршруту. [Джерело]
🌍 Для open‑world світів і великих ландшафтів використовують Perlin Noise
Уяви, що ти хочеш намалювати карту з горами і долинами.
Як зробити так, щоб там не було різких стрибків (висока гора поруч з глибокою ямою), а все було плавно і природно?
Perlin Noise — це математична функція, яка створює саме такі плавні зміни чисел.
Вона генерує "хвилеподібні" значення, які не скачуть раптово, а переходять одне в одне м’яко, як хвилі на морі. [Джерело]
💡Цікавий факт: у Minecraft для створення свого світу використовують комбінацію кількох процедурних методів —
💻 | GAMEDEV UA | #уроки #ProceduralGeneration #LevelDesign #ProceduralContent #генерація #ПроцедурнаГенерація
Процедурна генерація — це створення контенту (рівнів, карт, об’єктів, текстур, подій) за допомогою алгоритмів, а не вручну. Інакше кажучи: ти задаєш правила, а комп'ютер створює унікальний контент на ходу.
🎯 Навіщо вона потрібна:
🔹 Зменшує ручну роботу (не потрібно створювати 100 рівнів вручну)
🔹 Дає варіативність (новий досвід при кожному запуску)
🔹 Економить місце (зберігається лише алгоритм, а не купа даних)
🔹 Працює в реальному часі (генерує контент під час гри)
Самий популярний приклад це
MinecraftАле важливо! Для кожного типу гри свій підхід до генерації.
Різний контент = різні алгоритми. Що підходить для одного жанру не спрацює для іншого.
🔸 Для платформера ідеально підходить підхід
Path‑firstЦей метод спочатку створює прохідний маршрут для гравця, від старту до фінішу, а вже потім навколо нього будується геометрія рівня: платформи, пастки, вороги тощо. [Детальніше]
🗺 Для печер та підземель добре підходить Cellular Automata.
Це метод, який працює з полем, поділеним на клітинки (сітка). Кожна клітинка це або стіна, або прохід.
На початку клітинки заповнюються випадково (частина — стіни, частина — проходи), а потім ми багато разів проходимо по всій карті й змінюємо клітинки за простими правилами.
• Якщо навколо клітинки більше ніж 5 стін вона теж стане стіною.
• Якщо навколо мало стін стає проходом.
Через кілька таких "проходів" сітка починає виглядати як справжня печера з плавними переходами, закритими кімнатами та тунелям. Для того, щоб перевірити, що гравець може дійти з точки А в точку В, додають алгоритм пошуку маршруту. [Джерело]
🌍 Для open‑world світів і великих ландшафтів використовують Perlin Noise
Уяви, що ти хочеш намалювати карту з горами і долинами.
Як зробити так, щоб там не було різких стрибків (висока гора поруч з глибокою ямою), а все було плавно і природно?
Perlin Noise — це математична функція, яка створює саме такі плавні зміни чисел.
Вона генерує "хвилеподібні" значення, які не скачуть раптово, а переходять одне в одне м’яко, як хвилі на морі. [Джерело]
💡Цікавий факт: у Minecraft для створення свого світу використовують комбінацію кількох процедурних методів —
Perlin Noise (для рельєфу), Simplex Noise, а також алгоритми для формування печер і розташування об'єктів. Саме поєднання різних підходів дає змогу отримувати такі різноманітні і живі світи.💻 | GAMEDEV UA | #уроки #ProceduralGeneration #LevelDesign #ProceduralContent #генерація #ПроцедурнаГенерація
🔥8
This media is not supported in your browser
VIEW IN TELEGRAM
📺 CamViewSync — легке розширення для Unity
Керуйте будь-якою обраною камерою прямо через вікно «Сцена»!
CamViewSync — це зручне та інтуїтивне розширення для редактора Unity, натхненне системою керування камерами в Unreal Engine.
✅ Синхронізація виду сцени з вибраною камерою
✅ Плавна навігація та контроль
✅ Ідеально для кінематографічних сцен, катсцен і геймплейних камер
📦 Завантажити 👈
🎥 Більше не потрібно вручну виставляти позиції камери — просто рухайтеся у сцені, і камера повторює за вами.
💻 | GAMEDEV UA | #корисне #інструмент #камера #UnityEditor #CamViewSync #Camera
Керуйте будь-якою обраною камерою прямо через вікно «Сцена»!
CamViewSync — це зручне та інтуїтивне розширення для редактора Unity, натхненне системою керування камерами в Unreal Engine.
✅ Синхронізація виду сцени з вибраною камерою
✅ Плавна навігація та контроль
✅ Ідеально для кінематографічних сцен, катсцен і геймплейних камер
📦 Завантажити 👈
🎥 Більше не потрібно вручну виставляти позиції камери — просто рухайтеся у сцені, і камера повторює за вами.
💻 | GAMEDEV UA | #корисне #інструмент #камера #UnityEditor #CamViewSync #Camera
❤10🔥2🥰1
Всім привіт! 👋
Сьогодні без ранкового поста — тепер ваша черга говорити!
Розкажіть про свій досвід у геймдеві: хто робить це професійно — чому саме ця сфера вас захопила? А хто як хобі — що привернуло вашу увагу і чому геймдев став для вас цікавим?
Хочу почути про ваш досвід ☺️
Сьогодні без ранкового поста — тепер ваша черга говорити!
Розкажіть про свій досвід у геймдеві: хто робить це професійно — чому саме ця сфера вас захопила? А хто як хобі — що привернуло вашу увагу і чому геймдев став для вас цікавим?
Хочу почути про ваш досвід ☺️
🔥6🤔3❤1🥰1
👤Чи вмирають синглплеєрні ігри у 2025?
Скільки разів ти чув, що “соло-ігри вже нікому не цікаві”?
Але давай без міфів. Факти і цифри:
🔹
🔹
🔹
🔹
🔹
💡 І найцікавіше: за даними hi-tech.ua, 53% гравців у всьому світі віддають перевагу синглплеєрним іграм.
Серед тих, кому за 35 - ця цифра зростає до 65–74%.
Але є нюанс!
AAA-сингли — це ризиковано дорого. Якщо не вистрелить — студія в мінусах. Саме тому великі видавці пушать
Синглплеєр не вмирає. Навпаки, він виживає попри все. І що важливо, гравці цього хочуть.
А ти що думаєш? Любиш ігри такого типажу? Пиши нижче 👇
💻 | GAMEDEV UA | #запитання #singleplayer #синглплейер #sologame
Скільки разів ти чув, що “соло-ігри вже нікому не цікаві”?
Але давай без міфів. Факти і цифри:
🔹
Baldur’s Gate 3 — GOTY, >10 млн копій🔹
Hogwarts Legacy — ~24 млн🔹
Elden Ring — ~23 млн🔹
God of War Ragnarok — ~15 млн🔹
Black Myth: Wukong — топ Steam, ~10 млн копій за місяць💡 І найцікавіше: за даними hi-tech.ua, 53% гравців у всьому світі віддають перевагу синглплеєрним іграм.
Серед тих, кому за 35 - ця цифра зростає до 65–74%.
Але є нюанс!
AAA-сингли — це ризиковано дорого. Якщо не вистрелить — студія в мінусах. Саме тому великі видавці пушать
live‑service моделі: батл паси, шопи, сезони. Гравець лишається довше = гроші капають.Синглплеєр не вмирає. Навпаки, він виживає попри все. І що важливо, гравці цього хочуть.
А ти що думаєш? Любиш ігри такого типажу? Пиши нижче 👇
💻 | GAMEDEV UA | #запитання #singleplayer #синглплейер #sologame
❤7🔥2👍1🥰1
YouTube
Game Optimization - Introduction & General Principles - Episode 1
Today we begin a new series of videos about optimizing games. We're going to cover all kinds of optimization topics in the series over the next few months. Today I start by introducing the topic, explaining why you should optimize, who should optimize, and…
🛠 Оптимізація в іграх: коли, навіщо і хто має це робити?
Хіба залишились люди, які справді так думають?)
👀 У першому відео з нової серії про оптимізацію пояснюють усе по-людськи:
— Коли оптимізувати (і коли НЕ треба)
— Хто має це робити (не тільки програмісти)
— Навіщо це взагалі (і це не тільки про FPS)
— Чому важливіше рахувати Frame Time, а не просто "60 FPS"
— Як не потрапити в пастку “передчасної оптимізації”
📊 Frame Time:
—
—
І от ці мілісекунди те, що реально покаже, де просадка.
🎥 [Переглянути відео] 👈
🧠 Якщо ти робиш гру і хочеш, щоб вона не лагала на третині пристроїв то тобі буде цікаво :)
💻 | GAMEDEV UA | #оптимізація #курс #performance #fps
"Оптимізація — це вже потім, коли лагатиме?"
Хіба залишились люди, які справді так думають?)
👀 У першому відео з нової серії про оптимізацію пояснюють усе по-людськи:
— Коли оптимізувати (і коли НЕ треба)
— Хто має це робити (не тільки програмісти)
— Навіщо це взагалі (і це не тільки про FPS)
— Чому важливіше рахувати Frame Time, а не просто "60 FPS"
— Як не потрапити в пастку “передчасної оптимізації”
📊 Frame Time:
—
60 FPS = ~16.67 мс—
30 FPS = ~33.33 мсІ от ці мілісекунди те, що реально покаже, де просадка.
🎥 [Переглянути відео] 👈
🧠 Якщо ти робиш гру і хочеш, щоб вона не лагала на третині пристроїв то тобі буде цікаво :)
💻 | GAMEDEV UA | #оптимізація #курс #performance #fps
❤6🔥5🥰1
YouTube
Unity CRT TV VFX tutorial - URP/BuiltIn with no shaders !
Thanks for watching this video !
Get the Scanlines file here : https://drive.google.com/file/d/1ODJeYCm22gL3W5EuiglcEyFNTm9pr9Mf/view?usp=sharing
Join my discord : https://discord.gg/pnqqTk4pwM
You can Tip me at Ko-FI : https://ko-fi.com/nekojin116
Get the Scanlines file here : https://drive.google.com/file/d/1ODJeYCm22gL3W5EuiglcEyFNTm9pr9Mf/view?usp=sharing
Join my discord : https://discord.gg/pnqqTk4pwM
You can Tip me at Ko-FI : https://ko-fi.com/nekojin116
📺 Як зробити CRT-ефект без шейдерів?
⚡️Проста і ефектна техніка, яка створить атмосферу ретро-екрану у твоїй грі або проекті.
Це не складні шейдери, а класний трюк, що дає той самий ностальгічний вайб!
📌 [Переглянути] 👈
Ностальгія гарантована! 😎
💻 | GAMEDEV UA | #туторіал #postprocesing #CRTефект #ретро
⚡️Проста і ефектна техніка, яка створить атмосферу ретро-екрану у твоїй грі або проекті.
Це не складні шейдери, а класний трюк, що дає той самий ностальгічний вайб!
📌 [Переглянути] 👈
Ностальгія гарантована! 😎
💻 | GAMEDEV UA | #туторіал #postprocesing #CRTефект #ретро
❤6
🧠 Graph Toolkit у Unity: Робимо свою діалогову систему!
Ще один потужний інструмент з’явився в арсеналі Unity — Graph Toolkit
І якщо ви хочете створювати свої системи без зайвого кодування, або мрієте про власний візуальний редактор діалогів то вам точно сюди! 🎯
🔧 Що всередині:
1. Graph Toolkit додається як пакет у проєкт.
2. Створюється Graph Asset — файл, у якому зберігатиметься вся структура діалогу.
3. Визначаються кастомні вузли:
🔹
🔹
🔹
🔹
4. Візуально збирається тестовий граф.
5. Пишеться імпортер, який читає граф у рантаймі та створює внутрішнє представлення діалогу.
6.
▶️ [Детальніше] 👈
🧪 Результатом є повністю функціональна, візуально налаштовувана система діалогів.
💻 | GAMEDEV UA | #інструмент #туторіал #системадіалогу #діалог #GraphToolkit #DialogueSystem
Ще один потужний інструмент з’явився в арсеналі Unity — Graph Toolkit
І якщо ви хочете створювати свої системи без зайвого кодування, або мрієте про власний візуальний редактор діалогів то вам точно сюди! 🎯
🔧 Що всередині:
1. Graph Toolkit додається як пакет у проєкт.
2. Створюється Graph Asset — файл, у якому зберігатиметься вся структура діалогу.
3. Визначаються кастомні вузли:
🔹
StartNode — точка початку🔹
DialogueNode — звичайні репліки🔹
BranchNode — варіанти вибору🔹
EndNode — завершення діалогу4. Візуально збирається тестовий граф.
5. Пишеться імпортер, який читає граф у рантаймі та створює внутрішнє представлення діалогу.
6.
DialogueManager керує логікою діалогу: показ тексту, варіанти, перехід між вузлами.▶️ [Детальніше] 👈
🧪 Результатом є повністю функціональна, візуально налаштовувана система діалогів.
💻 | GAMEDEV UA | #інструмент #туторіал #системадіалогу #діалог #GraphToolkit #DialogueSystem
❤7🥰1
Конструкція using в C# та як легко керувати ресурсами 🔥
У Unity (і C# загалом) часто працюємо з об’єктами, які займають ресурси. Наприклад, відкриваємо файли, мережеві з’єднання чи інші зовнішні ресурси. І важливо їх правильно закривати, щоб не витрачати пам’ять і не створювати баги.
Ось де допомагає конструкція
• Об’єкти, які підтримують
• Після завершення блоку викликається
• Це дуже зручно, бо не треба писати вручну
Якщо вам невідомо що таке IDisposable, то вам сюди 👈
📌 Конструкція using — простий і надійний спосіб автоматично керувати ресурсами в C#. Вона допомагає уникнути помилок через забуття закрити файли чи звільнити ресурси, що важливо для стабільності програми.
💻 | GAMEDEV UA | #уроки #using #CSharp #Unity #UsingStatement
У Unity (і C# загалом) часто працюємо з об’єктами, які займають ресурси. Наприклад, відкриваємо файли, мережеві з’єднання чи інші зовнішні ресурси. І важливо їх правильно закривати, щоб не витрачати пам’ять і не створювати баги.
Ось де допомагає конструкція
using:using (var file = new FileStream("save.dat", FileMode.Open))
{
// Робота з файлом
}
// Після виходу з цього блоку file автоматично закриється і звільнить ресурси• Об’єкти, які підтримують
IDisposable, можна “загортати” в using• Після завершення блоку викликається
Dispose(), який звільняє ресурси• Це дуже зручно, бо не треба писати вручну
file.Close() чи Dispose()Якщо вам невідомо що таке IDisposable, то вам сюди 👈
📌 Конструкція using — простий і надійний спосіб автоматично керувати ресурсами в C#. Вона допомагає уникнути помилок через забуття закрити файли чи звільнити ресурси, що важливо для стабільності програми.
💻 | GAMEDEV UA | #уроки #using #CSharp #Unity #UsingStatement
👍5❤3🥰1
⚖️ Інді-гра ≠ хаос: що потрібно знати про юридичні аспекти геймдеву ⚖️
Більшість інді-розробників горять ідеєю. Але часто забувають про одну річ, яка може серйозно підставити — юридичну сторону.
Ось базовий чеклист для всіх, хто створює гру соло або в маленькій команді 👇
📜 Авторське право
— Створив гру — ти автор.
Але якщо використовуєш чужі ассети, музику чи шрифти варто перевіряти ліцензію.
CC0? Ок. CC-BY? Вкажи автора. CC-BY-NC? Комерція заборонена.
(Що за незрозумілі букви? Creative Commons (CC) — це система ліцензій, яка визначає, що ти можеш робити з чужим контентом)
📁 Ассети та контент
— Не бери рандомні картинки з Google.
Навіть «безкоштовні» речі можуть мати обмеження.
🛠 Заведи табличку: де взяв, яка ліцензія, чи можна комерційно.
📃 Політика конфіденційності (Privacy Policy)
— Якщо ти збираєш хоч якісь дані (email, рейтинг, IP), тобі потрібна політика. Навіть якщо ти не збираєш дані сам, а використовуєш SDK (наприклад, рекламу або аналітику), тобі вже потрібна політика конфіденційності.
🧠 Особливо, якщо гра доступна в ЄС (GDPR) або для дітей (COPPA).
🧑🤝🧑 Робота в команді
— Ви з другом/командою робите гру?
Домовтесь на березі:
✅ Хто власник?
✅ Як ділиться прибуток?
✅ Що буде, якщо хтось піде?
Навіть простий Google Doc з підписами вже краще, ніж нічого.
📄 Угода з користувачем (EULA/ToS)
— Якщо ти публікуєш гру в Steam, Google Play тощо в тебе має бути угода.
Особливо, якщо є:
• внутрішні покупки
• онлайн-функції
• система збору даних
💰 Доходи = відповідальність
— Гра приносить дохід? Подумай про реєстрацію ФОП.
Платформи типу Steam, Google чи Apple часто вимагають податкові документи.
Постав ❤️ якщо вже вляпувався з ассетами 😅
💻 | GAMEDEV UA | #запитання #закони #ЮридичніАспекти #АвторськеПраво #Ліцензія #ПолітикаКонфіденційності #EULA #GDPR #COPPA
Більшість інді-розробників горять ідеєю. Але часто забувають про одну річ, яка може серйозно підставити — юридичну сторону.
Ось базовий чеклист для всіх, хто створює гру соло або в маленькій команді 👇
📜 Авторське право
— Створив гру — ти автор.
Але якщо використовуєш чужі ассети, музику чи шрифти варто перевіряти ліцензію.
CC0? Ок. CC-BY? Вкажи автора. CC-BY-NC? Комерція заборонена.
(Що за незрозумілі букви? Creative Commons (CC) — це система ліцензій, яка визначає, що ти можеш робити з чужим контентом)
📁 Ассети та контент
— Не бери рандомні картинки з Google.
Навіть «безкоштовні» речі можуть мати обмеження.
🛠 Заведи табличку: де взяв, яка ліцензія, чи можна комерційно.
📃 Політика конфіденційності (Privacy Policy)
— Якщо ти збираєш хоч якісь дані (email, рейтинг, IP), тобі потрібна політика. Навіть якщо ти не збираєш дані сам, а використовуєш SDK (наприклад, рекламу або аналітику), тобі вже потрібна політика конфіденційності.
🧠 Особливо, якщо гра доступна в ЄС (GDPR) або для дітей (COPPA).
🧑🤝🧑 Робота в команді
— Ви з другом/командою робите гру?
Домовтесь на березі:
✅ Хто власник?
✅ Як ділиться прибуток?
✅ Що буде, якщо хтось піде?
Навіть простий Google Doc з підписами вже краще, ніж нічого.
📄 Угода з користувачем (EULA/ToS)
— Якщо ти публікуєш гру в Steam, Google Play тощо в тебе має бути угода.
Особливо, якщо є:
• внутрішні покупки
• онлайн-функції
• система збору даних
💰 Доходи = відповідальність
— Гра приносить дохід? Подумай про реєстрацію ФОП.
Платформи типу Steam, Google чи Apple часто вимагають податкові документи.
Постав ❤️ якщо вже вляпувався з ассетами 😅
💻 | GAMEDEV UA | #запитання #закони #ЮридичніАспекти #АвторськеПраво #Ліцензія #ПолітикаКонфіденційності #EULA #GDPR #COPPA
👍11❤9🔥3🥰1
💡 Цікавинка з історії ігор:
Першою відомою комп’ютерною мультиплеєрною грою вважають Tennis for Two (1958), створену Вільямом Гігінботемом. Гра показувалась на осцилографі і працювала на аналогових комп’ютерах з простими контролерами.
Ще одна знакова рання гра Spacewar! (1962), розроблена для комп’ютера
Ці ігри стали першими кроками у мультиплеєрних, які тепер об’єднують мільйони гравців по всьому світу! 🌍🔥
💻 | GAMEDEV UA | #факт #історія #першагра #tennisfortwo #spacewar!
Першою відомою комп’ютерною мультиплеєрною грою вважають Tennis for Two (1958), створену Вільямом Гігінботемом. Гра показувалась на осцилографі і працювала на аналогових комп’ютерах з простими контролерами.
Ще одна знакова рання гра Spacewar! (1962), розроблена для комп’ютера
DEC PDP-1. У ній двоє гравців керували космічними кораблями і боролися один проти одного.Ці ігри стали першими кроками у мультиплеєрних, які тепер об’єднують мільйони гравців по всьому світу! 🌍🔥
💻 | GAMEDEV UA | #факт #історія #першагра #tennisfortwo #spacewar!
❤7👍3🥰1💯1
Фінальний мем тижня!
Зв'язок з автором: @DevAndrew
Підтримати канал тут: [Клац] 🙈
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
✈️ Gamedev | #меми
Зв'язок з автором: @DevAndrew
Підтримати канал тут: [Клац] 🙈
📌 І пам'ятаємо про #теги, що вони тут не просто так (детальніше в самому першому закріпі)
Please open Telegram to view this post
VIEW IN TELEGRAM
😁9❤1🥰1
📌 Підсумок публікацій за тиждень:
🏫 З навчальних матеріалів:
• 💥 Як реалізувати діалогову систему через Graph Toolkit
• ⛳️ Чим корисна конструкція using у C# і як не забути про ресурси
• 📺 Як створити CRT-ефект без шейдерів
• 🧠 Що таке процедурна генерація і чим вона корисна
🌐 Інструменти та технічні фішки:
• 🎥 CamViewSync — легке розширення для зручнішої роботи з камерою
• ⚙️ Оптимізація в Unity: коли варто починати і які бувають підходи
💡 Тематика для роздумів та обговорень:
• 🎮 Чи є майбутнє у синглплеєрних ігор у 2025?
• 🗣 Інді-розробка: юридичні поради, які варто знати
📋 Усе зібрали для вас в один зручний пост. Читайте, зберігайте і не втрачайте корисне! 😉
💻 | GAMEDEV UA | [Підтримати канал тут]
🏫 З навчальних матеріалів:
• 💥 Як реалізувати діалогову систему через Graph Toolkit
• ⛳️ Чим корисна конструкція using у C# і як не забути про ресурси
• 📺 Як створити CRT-ефект без шейдерів
• 🧠 Що таке процедурна генерація і чим вона корисна
🌐 Інструменти та технічні фішки:
• 🎥 CamViewSync — легке розширення для зручнішої роботи з камерою
• ⚙️ Оптимізація в Unity: коли варто починати і які бувають підходи
💡 Тематика для роздумів та обговорень:
• 🎮 Чи є майбутнє у синглплеєрних ігор у 2025?
• 🗣 Інді-розробка: юридичні поради, які варто знати
📋 Усе зібрали для вас в один зручний пост. Читайте, зберігайте і не втрачайте корисне! 😉
💻 | GAMEDEV UA | [Підтримати канал тут]
🔥5❤4👍1🥰1
🧵 Практичне використання async/await в Unity
У Unity часто потрібно дочекатися дії користувача: підтвердження, введення тексту чи завершення анімації. Раніше для цього використовували
З
🔁 Колбеки VS async/await
❌ Варіант із колбеками:
✅ Те саме через async/await:
Код стає компактним, послідовним і без "пекла колбеків".
🧠 Як це працює?
Щоб
🔧 Інтерфейс очікуваного компонента:
🔹 Цей інтерфейс визначає, як компонент повідомляє про завершення дії (наприклад, натискання кнопки).
🔹 Його потрібно реалізувати у своєму класі, наприклад, у PopupConfirm.
🛠 Awaiter:
🔹
🔹 Інтерфейс
📌 Де корисно застосовувати:
• Підтвердження дій
• Введення даних
• Завантаження/збереження
• Туторіали, меню, діалоги
• Заміна вкладених колбеків
🔚 Висновок
🔁 Поділись, якщо було корисно!
💻 | GAMEDEV UA | #уроки #csharp #Unity #code #async #await #AsyncAwait #CleanCode
У Unity часто потрібно дочекатися дії користувача: підтвердження, введення тексту чи завершення анімації. Раніше для цього використовували
корутини або колбеки, але такий код швидко стає незрозумілим. З
async/await усе стає простіше — цей підхід дозволяє зручно обробляти будь-які асинхронні події, навіть взаємодію з UI.🔁 Колбеки VS async/await
❌ Варіант із колбеками:
public void Save(int slotIndex)
{
if (SaveExists(slotIndex))
{
popupConfirm.Open("Перезаписати файл?", () => SaveCommentsRequest(slotIndex));
}
else
{
SaveCommentsRequest(slotIndex);
}
}
void SaveCommentsRequest(int slotIndex)
{
popupInput.Open("Введіть коментар", comments => SaveWithComments(slotIndex, comments));
}
void SaveWithComments(int slotIndex, string comments)
{
// Зберігаємо дані
}
✅ Те саме через async/await:
public async void Save(int slotIndex)
{
if (SaveExists(slotIndex) && !await popupConfirm.Open("Перезаписати файл?"))
return;
var comments = await popupInput.Open("Введіть коментар");
// Зберігаємо дані
}
Код стає компактним, послідовним і без "пекла колбеків".
🧠 Як це працює?
Щоб
await працював не тільки з Task, але й з власними подіями в UI (наприклад, вікном підтвердження), потрібно реалізувати дві речі:🔧 Інтерфейс очікуваного компонента:
public interface IAwaitable<TResult>
{
event Action<TResult> OnComplete;
Awaiter<TResult> GetAwaiter();
}
🔹 Цей інтерфейс визначає, як компонент повідомляє про завершення дії (наприклад, натискання кнопки).
🔹 Його потрібно реалізувати у своєму класі, наприклад, у PopupConfirm.
🛠 Awaiter:
public class Awaiter<TResult> : INotifyCompletion
{
TResult result;
Action continuation;
public bool IsCompleted { get; private set; }
public Awaiter(IAwaitable<TResult> awaitable)
{
awaitable.OnComplete += setResult;
void setResult(TResult res)
{
awaitable.OnComplete -= setResult;
IsCompleted = true;
result = res;
continuation?.Invoke();
}
}
public void OnCompleted(Action continuation)
{
if (IsCompleted) continuation();
else this.continuation += continuation;
}
public TResult GetResult() => result;
}
🔹
Awaiter — це обгортка, яка дозволяє використовувати await з вашим класом.🔹 Інтерфейс
INotifyCompletion тут потрібен, щоб компілятор знав, як викликати продовження після завершення події.📌 Де корисно застосовувати:
• Підтвердження дій
• Введення даних
• Завантаження/збереження
• Туторіали, меню, діалоги
• Заміна вкладених колбеків
🔚 Висновок
async/await дозволяє спростити логіку в UI, уникнути вкладених делегатів і покращити структуру коду. Після невеликої підготовки ви зможете очікувати будь-яку взаємодію так само просто, як Task.🔁 Поділись, якщо було корисно!
💻 | GAMEDEV UA | #уроки #csharp #Unity #code #async #await #AsyncAwait #CleanCode
👍7🔥2🥰1
🛠 Як організувати робочий процес у команді?
Коли у вас багато задач, нотаток, дедлайнів і файлів то без системи легко все заплутати. Ось пару класних інструментів, які реально допомагають тримати все під контролем і не втрачати час на пошуки.
📌 Notion — це як твій робочий простір «все в одному»: нотатки, таски, бази даних, плани. Усе разом і зручно! Можна створити круті шаблони, вести документацію, розставляти пріоритети і працювати з командою в реальному часі.
⚙️ Coda — робочі документи нового рівня. Тут можна поєднати нотатки, таблиці, формули і навіть автоматизації. Круто, якщо хочеш, щоб документи самі рахували, відслідковували статуси і допомагали рухатися далі без зайвих мануалів.
❓ А ви чим користуєтесь для організації роботи? Поділіться досвідом👇
💻 | GAMEDEV UA | #інструменти #організація #команда #notion #coda
Коли у вас багато задач, нотаток, дедлайнів і файлів то без системи легко все заплутати. Ось пару класних інструментів, які реально допомагають тримати все під контролем і не втрачати час на пошуки.
📌 Notion — це як твій робочий простір «все в одному»: нотатки, таски, бази даних, плани. Усе разом і зручно! Можна створити круті шаблони, вести документацію, розставляти пріоритети і працювати з командою в реальному часі.
⚙️ Coda — робочі документи нового рівня. Тут можна поєднати нотатки, таблиці, формули і навіть автоматизації. Круто, якщо хочеш, щоб документи самі рахували, відслідковували статуси і допомагали рухатися далі без зайвих мануалів.
❓ А ви чим користуєтесь для організації роботи? Поділіться досвідом👇
💻 | GAMEDEV UA | #інструменти #організація #команда #notion #coda
❤4
Yourstory
Sam Altman hints at GPT-5 and upcoming AI product rollouts
OpenAI CEO hints at new models and features, with GPT-5 likely in the pipeline amid growing enterprise AI demand.
🧠 OpenAI Horizon Alpha — GPT-5 на горизонті? [Інфа]
📢 Наступний великий крок у розвитку штучного інтелекту!
OpenAI представила
— 💻 Швидкої розробки ПЗ: low-code, front-end, генерація SVG
— 🎨 Креативних задач: анімації, дизайн, реклама
— 📊 Стратегічного планування: фінанси, проекти, симуляції
🔓 Модель відкрито доступна для безкоштовного тестування через Open Router API, а активна спільнота користувачів допомагає її постійно вдосконалювати.
👀 А тепер про те, що всі чекали — GPT-5?
CEO OpenAI Сем Альтман 2 серпня натякнув, що найближчими місяцями компанія випустить «тонну нового»: моделі, фічі та несподіванки. Він поділився скріншотом розмови з AI, яка, ймовірно, демонструє можливості GPT-5 — модель розуміє контекст, емоції та навіть філософські теми (наприклад, серіал "Pantheon").
⚠️ Альтман попереджає про можливі тимчасові збої та навантаження на сервери під час запуску. Очікується інтеграція з Microsoft і широке застосування в бізнесі.
📈 Чи є Horizon Alpha ранньою версією GPT-5, чи це окремий проєкт? Поки невідомо, але ясно одне, ми стоїмо на порозі революції у світі штучного інтелекту.
💻 | GAMEDEV UA | #новини #AI #OpenAI #HorizonAlpha #GPT5 #ChatGPT #OpenSourceAI #TechNews
📢 Наступний великий крок у розвитку штучного інтелекту!
OpenAI представила
Horizon Alpha — нову потужну AI-модель з розширеним контекстним вікном до 256 000 токенів і можливістю генерувати відповіді довжиною до 128 000 токенів. Ця модель блискуче справляється з довготривалим мисленням, складним аналізом і довгими текстами, роблячи її ідеальним інструментом для:— 💻 Швидкої розробки ПЗ: low-code, front-end, генерація SVG
— 🎨 Креативних задач: анімації, дизайн, реклама
— 📊 Стратегічного планування: фінанси, проекти, симуляції
Horizon Alpha вже демонструє продуктивність, що конкурує з такими топ-моделями, як Gemini 2.5 Pro.🔓 Модель відкрито доступна для безкоштовного тестування через Open Router API, а активна спільнота користувачів допомагає її постійно вдосконалювати.
👀 А тепер про те, що всі чекали — GPT-5?
CEO OpenAI Сем Альтман 2 серпня натякнув, що найближчими місяцями компанія випустить «тонну нового»: моделі, фічі та несподіванки. Він поділився скріншотом розмови з AI, яка, ймовірно, демонструє можливості GPT-5 — модель розуміє контекст, емоції та навіть філософські теми (наприклад, серіал "Pantheon").
⚠️ Альтман попереджає про можливі тимчасові збої та навантаження на сервери під час запуску. Очікується інтеграція з Microsoft і широке застосування в бізнесі.
📈 Чи є Horizon Alpha ранньою версією GPT-5, чи це окремий проєкт? Поки невідомо, але ясно одне, ми стоїмо на порозі революції у світі штучного інтелекту.
💻 | GAMEDEV UA | #новини #AI #OpenAI #HorizonAlpha #GPT5 #ChatGPT #OpenSourceAI #TechNews
❤4🔥1
Unity Asset Store
Painterly Normals Shader | VFX Shaders | Unity Asset Store
Add depth to your next project with Painterly Normals Shader from Detox. Find this & more VFX Shaders on the Unity Asset Store.
🎨 Painterly Normals Shader — простий шейдер для мультяшних нормалей
Хочеш швидко надати своїм моделям унікальний мультяшний вигляд?
[Завантажити - тут] 👈
Ідеально для ігор у стилі «hand-painted»
💻 | GAMEDEV UA | #корисне #Shaders #StylizedGraphics #шейдер
Хочеш швидко надати своїм моделям унікальний мультяшний вигляд?
[Завантажити - тут] 👈
Ідеально для ігор у стилі «hand-painted»
💻 | GAMEDEV UA | #корисне #Shaders #StylizedGraphics #шейдер
🔥8❤1⚡1
🧠 Unity: Оптимізація фізики без магії
Фізика в Unity — це круто, але дуже швидко може зжерти FPS. Особливо на мобілках.
Тримайте 7 практичних порад, які реально працюють ⬇️
1️⃣ Вимикай зайві взаємодії
У
Менше перевірок → менше навантаження.
2️⃣ Неактивний об'єкт ≠ активна фізика
Якщо об'єкт за кадром або ще не використовується:
Це реально економить ресурси.
3️⃣ Не рухай об'єкт через transform.position
Якщо він має Rigidbody — використовуй:
Інакше багаючі колізії й головний біль.
4️⃣ Усе, що пов’язано з фізикою роби в FixedUpdate()
Input читається в
5️⃣ Статичний об'єкт? Забудь про Rigidbody
Колайдер без Rigidbody = норм.
Rigidbody потрібен тільки тим, що рухаються.
6️⃣ Interpolate не для всіх
Вмикай Interpolation тільки на об'єктах, де треба згладжений рух (типу гравця).
Інакше просто даремно навантажуєш CPU.
7️⃣ Триґери й колізії не лагують самі по собі
Але якщо в
У деяких випадках краще перевіряти вручну:
📌 Це базовий набір, який дає хороший приріст на мобілках.
💻 | GAMEDEV UA | #оптимізація #Unity #PhysicsOptimization
Фізика в Unity — це круто, але дуже швидко може зжерти FPS. Особливо на мобілках.
Тримайте 7 практичних порад, які реально працюють ⬇️
1️⃣ Вимикай зайві взаємодії
У
Project Settings → Physics вимикай непотрібні Layer-to-Layer взаємодії.Менше перевірок → менше навантаження.
🧩 Профі-порада: для складних сцен створюй спеціальні шари для об'єктів, які взагалі не повинні взаємодіяти з фізикою (UI, FX, дальній фон тощо).
2️⃣ Неактивний об'єкт ≠ активна фізика
Якщо об'єкт за кадром або ще не використовується:
rb.simulated = false;
collider.enabled = false;
Це реально економить ресурси.
3️⃣ Не рухай об'єкт через transform.position
Якщо він має Rigidbody — використовуй:
rb.MovePosition(...);
Інакше багаючі колізії й головний біль.
🧩 Профі-порада: якщо тобі потрібен "жорсткий" телепорт (наприклад, для швидкого переміщення на спауні) — спочатку зроби rb.simulated = false, потім position, потім знову simulated = true.
4️⃣ Усе, що пов’язано з фізикою роби в FixedUpdate()
AddForce, MovePosition, velocity — тільки туди.Input читається в
Update(), а дії в FixedUpdate().5️⃣ Статичний об'єкт? Забудь про Rigidbody
Колайдер без Rigidbody = норм.
Rigidbody потрібен тільки тим, що рухаються.
6️⃣ Interpolate не для всіх
Вмикай Interpolation тільки на об'єктах, де треба згладжений рух (типу гравця).
Інакше просто даремно навантажуєш CPU.
7️⃣ Триґери й колізії не лагують самі по собі
Але якщо в
OnTriggerEnter() чи OnCollisionEnter() багато логіки — буде біда.У деяких випадках краще перевіряти вручну:
Physics2D.OverlapCircle(...)
🧩 Профі-порада: якщо використовуєш великі області виявлення — заміни колайдери на Collider2D.OverlapPoint/Box/Circle з кешованими масивами. Це зменшить кількість об'єктів у сцені.
📌 Це базовий набір, який дає хороший приріст на мобілках.
💻 | GAMEDEV UA | #оптимізація #Unity #PhysicsOptimization
❤9👍3🔥2🥰1
This media is not supported in your browser
VIEW IN TELEGRAM
🧩 Як зробити систему розміщення на гекс-сітці в Unity за 60 секунд
Хочеш реалізувати розміщення об’єктів на шестикутній сітці в Unity? Тоді це для тебе :)
💻 | GAMEDEV UA | #туторіал #HexGrid #grid #сітка
Хочеш реалізувати розміщення об’єктів на шестикутній сітці в Unity? Тоді це для тебе :)
💻 | GAMEDEV UA | #туторіал #HexGrid #grid #сітка
🔥9❤🔥2
YouTube
DOTWEEN is the BEST Unity asset in the WORLD and I'll fight anybody who disagrees
DOTween is the very first thing I install upon creating a new project. Animate your position, rotation and scale in a single line of code, with all the customization you could hope for... and that's only scratching the surface.
For the full documentation:…
For the full documentation:…
🚀 DOTween – хороший інструмент для анімацій
🔍 Що таке DOTween?
Це не візуальний інструмент (як Animator), а програмний спосіб керувати анімаціями.
Це щось на кшталт:
"Я хочу, щоб об'єкт з координати A перемістився в точку B за 1 секунду" і
🤖 Як працює анімація без DOTween?
Без tween-фреймворків тобі доведеться:
• Самому обчислювати зміни значень у
• Писати
• Створювати логіку початку/кінця/паузи
• Відслідковувати стан анімації
🎯 Наприклад:
А з DOTween:
💡 Просто. Зрозуміло. І читається як "людське" речення.
Чому не Animator для простих анімацій?
Вимагає багато налаштувань, важко контролювати і майже неможливо змінювати анімацію в реальному часі.
DOTween — це:
🔹 Плавні анімації у 1 стрічку
🔹 Працює з усім: Transform, UI, Material, Text, числові значення
🔹 Підтримка секвенцій; кілька анімацій підряд
🔹 Можна зупинити, перезапустити, зробити петлю
🔹 Відмінно працює на мобільних пристроях
🛠 Приклад: Анімація UI-кнопки
🤯 Без аніматора. Без купи станів. Без мороки.
▶️ [Детальніше тут] 👈
Якщо хочеш робити плавні ефекти в UI, плавні рухи об'єктів, зміну значень, не витрачаючи вечори на код то це для тебе 😉
💻 | GAMEDEV UA | #інструменти #DOTween #Tweening #анімації #код #оптимізація
🔍 Що таке DOTween?
DOTween — це безкоштовна бібліотека для Unity, яка дозволяє створювати плавні анімації будь-яких значень у коді.Це не візуальний інструмент (як Animator), а програмний спосіб керувати анімаціями.
Це щось на кшталт:
"Я хочу, щоб об'єкт з координати A перемістився в точку B за 1 секунду" і
DOTween робить це за тебе.🤖 Як працює анімація без DOTween?
Без tween-фреймворків тобі доведеться:
• Самому обчислювати зміни значень у
Update()• Писати
Lerp, Time.deltaTime, Mathf.MoveTowards• Створювати логіку початку/кінця/паузи
• Відслідковувати стан анімації
🎯 Наприклад:
// вручну в Update() змінюєш позицію
void Update() {
transform.position = Vector3.MoveTowards(transform.position, targetPos, speed * Time.deltaTime);
}
А з DOTween:
transform.DOMove(targetPos, 1f);
💡 Просто. Зрозуміло. І читається як "людське" речення.
Чому не Animator для простих анімацій?
Animator — крутий для складних анімацій персонажів і 3D-моделей. Але для простих ефектів, як рух об’єкта, зміна прозорості або тряска камери, він надто складний і незручний.Вимагає багато налаштувань, важко контролювати і майже неможливо змінювати анімацію в реальному часі.
DOTween — це:
🔹 Плавні анімації у 1 стрічку
🔹 Працює з усім: Transform, UI, Material, Text, числові значення
🔹 Підтримка секвенцій; кілька анімацій підряд
🔹 Можна зупинити, перезапустити, зробити петлю
🔹 Відмінно працює на мобільних пристроях
🛠 Приклад: Анімація UI-кнопки
public void OnPointerEnter() {
// При наведенні курсора на кнопку плавно збільшуємо її розмір до 120% за 0.2 секунди з ефектом "видавлювання" (OutBack)
button.transform.DOScale(1.2f, 0.2f).SetEase(Ease.OutBack);
}
public void OnPointerExit() {
// Коли курсор знімається з кнопки, плавно повертаємо її розмір до початкового (100%) за 0.2 секунди з ефектом "підтягування назад" (InBack)
button.transform.DOScale(1f, 0.2f).SetEase(Ease.InBack);
}🤯 Без аніматора. Без купи станів. Без мороки.
▶️ [Детальніше тут] 👈
Якщо хочеш робити плавні ефекти в UI, плавні рухи об'єктів, зміну значень, не витрачаючи вечори на код то це для тебе 😉
💻 | GAMEDEV UA | #інструменти #DOTween #Tweening #анімації #код #оптимізація
🔥9🥰1