Ingolf - путь в GameDev
74 subscribers
24 photos
25 videos
7 links
Рассказываю о своём прогрессе в создании игр и о своем пути к получению работы в геймдеве
Download Telegram
Что тут происходит, почему противник прогибается под меня когда пытается атаковать🤣🤣🤣
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
33💅2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Прототип часть 2️⃣

Не прошло и двух недель, а нет... прошло. Я не знаю как это работает, но вот пост😁
Продолжаю дорабатывать этот прототип↗️

Теперь игрока могут окружить и заколоть ножами прям как Цезаря😁

За это время было сделано:
1️⃣ Противники теперь атакуют и преследуют игрока
2️⃣ Игрок научился умирать от полученных ран🤤
3️⃣ После смерти можно возродиться или загрузиться с сохранения
4️⃣Было найдено исправлено множество багов🙄

Из интересного:
🐶Пока что возрождение "бесплатное", но позже придётся либо смотреть рекламу, либо загружаться. Возрождение восстанавливает 50% здоровья и убивает всех противников, пока что за эти убийства тоже даются очки прокачки, это надо поправить

🐶Самым мозговыносящим для оказалось найти причину бага, когда при определённых условиях стрелы летели по странной траектории. Оказалось в Unity по умолчанию при расчёте raycast'a учитываются триггеры из за чего стрелы как бы ударялись об них и летели не туда.

🐶 Вчерашний баг из щитпоста был вызван тем, как противник поворачивался к игроку при атаке. Если интересно, подробнее в комментах прошлого поста
Please open Telegram to view this post
VIEW IN TELEGRAM
3🏆222🔥1
Если вам нравятся инди-игры и всё, что с ними связано, то канал INT | Indie News Today — это то что вам нужно!🔥

📝 Канал поможет вам узнать не только о перспективных и интересных инди-проектах, но и глубже погрузиться в индустрию независимых игр.

Канал является уютным новостным уголком для тех, кто любит инди-игры и ценит искренность в творчестве. Всё без лишнего шума, только то, что действительно цепляет. 🎮

🚀 Подписывайтесь, чтобы быть в курсе самых интересных событий в мире инди!
👍622
This media is not supported in your browser
VIEW IN TELEGRAM
😆Моя первая игра на Godot часть 2️⃣

Сделал небольшой перерыв от Unity и вернулся к годоту для разнообразия.

Было сделано:
1️⃣Игровой HUD
2️⃣Эффект разрезания яблока
3️⃣Эффект и логика разлёта частей мишени
4️⃣Отбрасывание ножей при попадании в ножи
5️⃣Случайная генерация начальных ножей и яблок

Из интересного:
*️⃣Попробовал идеологию из веба, когда верстка делается не якорями, а гридами. Заверстал интерфейс через VBoxContainer и HBoxContainer. Не знаю как это сказывается на производительности именно в Godot, но в Unity верстка через контейнеры съедает производительность из за тяжёлых операций под капотом.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥44👍3221
This media is not supported in your browser
VIEW IN TELEGRAM
😆Моя первая игра на Godot часть 3️⃣

По Unity мне сейчас показывать особо нечего, так как я внедряю в проект фичи которые не влияют на геймплей или занимаюсь рефакторингом. Поэтому снова Godot.

Было сделано:
1️⃣ Верста и логика стартового экрана;
2️⃣ Верстка магазина ножей;
3️⃣ Верста и логика экрана рестарта;
4️⃣ Оживлён счётчик ножей и очков.

Из интересного:
*️⃣ Теперь за попадание в цель начисляются очки, а количество ножей ограничено. Можно проиграть, но выиграть пока нельзя;
*️⃣ К следующему посту игровой цикл будет полностью завершён;

Из наболевшего:
🤬 Какой же деревянный встроенный редактор кода. Хрен поймешь где что используется, по скриптам бегать неудобно, возможностей рефакторинга просто 0;
🤬 Так мало того, при использовании местного "singlton" можно обратиться к любой переменной даже если она не существует и тебе не выдаст ошибки ни на этапе компиляции ни в рантайме, просто невидимый баг и ищи почему код не работает;
🤢 Вообще все эти синглотоны это лютый говнокод, но мне пока впадлу организовать единую точку входа как в я делаю в Unity, поэтому городим как получается.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43332🔥2
Media is too big
VIEW IN TELEGRAM
💡Недавно открыл для себя интересный канал
"try again | учусь делать игры"

Автор рассказывает про создание своей игры авиасимулятора SkyDelivery.

Вдохновлённой такими играми как:
ИЛ-2 Штурмовик, X-Plane 12, Sky Rogue, Aviassembly

На данный момент реализован небольшой прототип который включает следующее:
✔️ Ангар с возможностью выбора трех самолётов с различными характеристиками;
✔️Несколько типов миссий: перелёт из пункта А в пункт Б, облёт точек маршрута на время, сброс груза в назначенные места, поисково-спасательные миссии;
Активно идёт развитие авиасимуляторной составляющей игры и с каждым обновлением поведение самолёта становится всё более реалистичным.

Проект развивается семимильными шагами и за этим очень интересно следить.

Ссылка на канал — https://t.me/TryAgainDevlog
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥64👍42
This media is not supported in your browser
VIEW IN TELEGRAM
Прототип часть 3️⃣ & Долгожданное возвращение в Unity

Всем привет, возвращаюсь после долгого затишья, последний пост по Unity был аж 22 ноября прошлого года.
Моё долгое отсутствие было связано с поиском работы в своём городе и последующим изучением нового стека. Теперь я гордый 1С разработчик🐤

Но мой путь в GameDev никуда не уходит и цели не меняtтся. Сейчас работа стабилизировалась и я снова могу больше времени уделять обучению у ментора с целью попасть в корпоративную разработку на Unity.🤓

❗️Ну а теперь о том что было сделано за время с последнего поста❗️

Напомню что этот проект является базой для сдачи домашек ментору.
Сейчас я отрабатываю задачи которые встретятся мне на реальном проекте

Реализован сервис внутриигровой рекламы на Unity ads. При смерти игрока возможность возродиться доступна за рекламу, но только один раз. После второй смерти нужно будет загружаться с сохранения, при этом так же показывается реклама, но её можно пропустить.

Изменения без визуала:
Реализован конфиг для удобного переключения сохранений с Json на PlayerPrefs;
Реализована загрузка игровых ассетов через Аddressable;
Внедрен сервис аналитики firebase Analytics и отправка статистки;
Исправлены баги в машине состояний и в состояниях противника;
Исправлено начисление очков и статистики за убийство противников при возрождении игрока.

P.S. Я не делал посты по Unity, как как долгое время все изменения были без визуала и показывать мне было нечего. А так же почти всё время уделял изучению 1С. Поэтому прошлые посты были по Godot, там побольше визуала🙁
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥44331
Ментор вёл систему публичных обещай что бы мотивировать нас активнее сдавать домашки

Суть в том что бы пообещать сделать вещ X за время Y 🐶

А если не сделаешь то ты должен чувствовать себя стыдно, потому что обманул и кинул кучу людей и твоё обещание нифига не стоит.

Я тоже хочу ввести эту практику на канал что бы мотивировать себя чаще постить.

- Цель сделать пост по последней домашке до 28 февраля. Так что ждите🤓

P.S. Домашка доделана благодаря этой штуке, осталось отрефакторить, сдать и написать пост.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥22111
This media is not supported in your browser
VIEW IN TELEGRAM
Прототип часть 4️⃣ Удалённые конфиги на Firebase

Не а опять, а снова постов долго не было, аж 4 недели. Работа съедает все равно.
Приходя домой после работы в 18:30 иногда просто нет сил что то делать, а ложиться спать уже в 23:00.

За этот месяц накодил 14 часов в Unity, что конечно маловато.😧

Закончил еще одну домашку ментора, вот что было сделано:
Все конфиги проекта на ScriptableObject'ах были удалены и перенесены в удалённые конфиги Firebase.
Добавил отдельную Initial сцену для загрузки игры, на которой теперь грузятся глобальные сервисы проекта (реклама, статистика, конфиги, addressable и т.д)
Благодаря всему вышеперечисленному появилась шторка загрузки, потому что загрузка начала занимать какое то время (из за коннекта к сторонним сервисам)

Из интересного:
🍺 Удалённые конфиги реально крутая штука. Так как все конфиги подтягиваются из интернета и применятся ко всем экземплярам игры. Я могу не пересобирая билд поменять характеристики игрока или противника.
Особенно круто это сработает на Itchio или Яндекс играх что бы править баланс не ожидая одобрения игры

P.S. Обещание выполнено, что творит пистолет у виска страх показаться глупым.
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2🏆2
This media is not supported in your browser
VIEW IN TELEGRAM
Как я выгорел от Unity 😤

Что такое постить?
Постов не было ровно 2 месяца🙂
Работа всё так же съедает, сил что-то делать всё так же нет 😞.

В марте я выгорел именно только от Unity - мне хотелось писать код, но я никак не мог начать. Даже написать простой код и даже уловки продуктивности перестали помогать. Кодить на других стеках я мог без проблем.

Я думал, февраль был слабеньким, но тогда у меня хотя бы были силы на Unity вечером.

В марте я окончательно выгорел от скучной рутины в виде текущих домашек: IAP, RemoteConfigs, Addressables, Ads. Я устал настраивать сервисы вместо геймплея. А окончательно добило меня то, что я пытался кодить на Unity во время работы - меня просто съело чувство вины 😔.

В апреле я понял, что выгорел, и устроил себе отдых:
На работе занимался только 1С;
Дома не трогал Unity вообще и играл в расслабляющие игры;
Чтобы как то вернуться в Unity, сделал Flappy Bird по гайду, без улучшений.

В итоге я вроде как восстановился и готов наконец добить домашку по IAP.
Остается только найти баланс между работой и Unity, а иначе я так никогда не свичну стек.

P.S. Меня удивляет как некоторые находят силы на GameDev при этом работая программистами на основой работе. Я лично просто заёбываюсь писать код на работе и дома уже ничего не хочу😞

P.S.S. Я выгорел не от геймдева, а именно от самого движка. Я пробовал кодить на Godot и там всё шло как по маслу.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯33🔥22🤣1😨1
This media is not supported in your browser
VIEW IN TELEGRAM
Мой путь в GameDev с ментором часть 5️⃣ - внутриигровые покупками на Unity IAP

За последние тридцать дней я накодил 20 часов в Unity. Это меня радует, я наконец вернулся к сдаче домашек ментору.

Наконец закончил с внутриигровыми покупками вот что было сделано:
Создал сцену главного меню с которой теперь можно начать игру или зайти в магазин;
Сверстал UI магазина и карточку товара;
Информация о товарах подгружается из удалённых конфигов;
В магазине можно купить отключение рекламы или геммы, второй товар нужен лишь для теста;
Информация о покупках записывается в сохранение;
При отключении рекламы перестаёт показываться принудительная реклама при попытке загрузить; сохранение после смерти, реклама с вознаграждением всё так же доступна.


Из интересного:
🚩 Это была довольно крупная фича и мне много чего пришлось добавить в проект что бы всё заработало. Текущая архитектура показала себя с лучшей стороны и позволила внедрить всё легко и без костылей.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥533
❗️Пора бы прояснить пару нюансов о моих целях и контенте в паблике❗️

1️⃣Многие в комментах не понимают, что за домашки я сдаю. Скажу еще раз, я обучаюсь у ментора что бы попасть на работу в корпоративный GameDev и сменить свой текущий стек с 1С на Unity.

2️⃣Проект что я показываю в домашках, нужен только для тренировки навыков реальной разработки и никогда не планировался как полноценная игра. Подобных проектов будет еще несколько

3️⃣Цель этого канала изначально была показать мой путь к получению работы в корпоративном GameDev'e
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3👌321
Ingolf - путь в GameDev pinned «❗️Пора бы прояснить пару нюансов о моих целях и контенте в паблике❗️ 1️⃣Многие в комментах не понимают, что за домашки я сдаю. Скажу еще раз, я обучаюсь у ментора что бы попасть на работу в корпоративный GameDev и сменить свой текущий стек с 1С на Unity.…»
This media is not supported in your browser
VIEW IN TELEGRAM
Мой путь в GameDev с ментором часть 6️⃣ - облачные сохранения на Unity Cloud save

Самое смешное что домашка была сделана за 4 дня 10,5 часов из которых 6 я накодил вчера. Что говорит о том что я хз почему пост выходит через месяц а не через неделю😑

Ну а теперь по то что было сделано:
Сделал анонимную авторизацию пользователя, что бы понимать чьи данные мы сохраняем;
Теперь в прогресс игрока записывается и дата последнего сохранения;
Написал реализацию облачных сохранений;
Создал SaveCoordinator который сам решает как именно сохранять игру, через облако или на устройство;
Сверстал UI окна для разрешения конфликтов сохранений.


Из интересного:
🚩 Появилась система разрешения конфликтов сохранений - если при загрузке игры сохранение на устройстве более актуальное чем облачное, появится окно разрешения конфликта, в котором будет предложено выбрать с какого сохранения загрузить прогресс;
🚩 Оказалось что эту штуку очень просто реализовать, я только боле боялся, поэтому и затянул.

🌟Обещаю что пост по следующей домашке - облачные Addressables будет через неделю, а не месяц🌟
Please open Telegram to view this post
VIEW IN TELEGRAM
222
Мой путь в GameDev с ментором часть 7️⃣ - облачные Addressables

Как и обещал, пост не через месяц и даже не через неделю.
Показывать нечего, визуально ничего не поменялось. Поэтому вот вам мемы.

Облачные Addressables - они нужны для удобного обновления и загрузки контента игры без необходимости пересобирать билд игры.
Так же они позволяют уменьшить вес игры, за счёт того что не обязательный для игрока контент можно позже докачать через сеть когда он ему понадобятся, а не заставлять его грузить всю игру целиком.


Выделил контент который нужен только во время игры и вынес его в бандл, который будет храниться удаленно.
На Яндекс Cloud создал бакет в который поместил бандл из Unity.
В Unity настроил удалённую загрузку этого бандла

Теперь прежде чем запустить саму игру, на сцене меню я жду пока бандл подгрузиться и только после этого запускаю игру.

Из интересного:
🚩В начале у меня был жёсткий пердолинг с Яндекс Cloud - я не мог там зарегаться, меня блокировали. А потом я не мог заставить Unuty грузить эти данные по ссылке. Но в итоге все получилось
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
322
Media is too big
VIEW IN TELEGRAM
Мой путь в GameDev с ментором часть 8️⃣ - визуальные эффекты и звуки

В этот раз мне нужно было добавить всяких красивостей - звуки, музыка, эффекты, анимации.С учётом фиксов предыдущей домашки это заняло 27 часов.

Вот что было сделано:
Добавлены эффекты смерти и попадания по врагу;
Написан dissolve шейдер для исчезновения врага после смерти;
Добавлена фоновая музыка и звуковые эффекты;
Добавлены звуки взаимодействия с UI;
Создано окно в главном меню для настроек звука;
Полоскам здоровья добавлена анимация;
Добавлены анимации UI через DOTween;
Добавлена кнопка выхода в главное меню.

Из интересного:
🚩Это финальный пост для этого проекта. Потому что это была последняя домашка из раздела "Задачи на реальном проекте". Мне останется сделать фиксы для этой домашки, как ментор её проверит. И я перейду к следующему этапу.

🚩По изначальному плану это должна была быть полноценная игра - клон астероидов с Atari. Но так как я уже делал такую игру, ментор сказал сделать проект на основе тестового задания. Поэтому нормального геймплея тут нет.

⭐️Следующим этапом будет изучение мультиплеера на примере создания клона vampire survivors
Please open Telegram to view this post
VIEW IN TELEGRAM
2221