Godot Engine - отличный способ реализовать сбор ресурсов в игре

Доброго времени! Пока весь мир занят паникой, я всё ещё пытаюсь привлечь внимание людей к интересному, лёгкому в освоении и весьма функциональному игровому движку Godot Engine!

В данном материале разбираю механику, позволяющую организовать сбор ресурсов в игре.


Визуально это выглядит так:

Godot Engine - отличный способ реализовать сбор ресурсов в игре Godot Engine, Gamedev, Программирование, 3D, Гифка, Видео

Ну и, тем, кто заинтересовался, полноценный урок:

Если в процессе возникнут какие-либо вопросы, буду рад на них ответить!


PS: Пост опубликован специально для сообщества "Лига Разработчиков Видеоигр"

Лига Разработчиков Видеоигр

6.6K постов22.1K подписчиков

Добавить пост

Правила сообщества

ОБЩИЕ ПРАВИЛА:

- Уважайте чужой труд и используйте конструктивную критику

- Не занимайтесь саморекламой, пишите качественные и интересные посты

- Никакой политики


СТОИТ ПУБЛИКОВАТЬ:

- Посты о Вашей игре с историей её разработки и описанием полученного опыта

- Обучающие материалы, туториалы

- Интервью с опытными разработчиками

- Анонсы бесплатных мероприятий для разработчиков и истории их посещения;
- Ваши работы, если Вы художник/композитор и хотите поделиться ими на безвозмездной основе

НЕ СТОИТ ПУБЛИКОВАТЬ:

- Посты, содержащие только вопрос или просьбу помочь
- Посты, содержащие только идею игры

- Посты, единственная цель которых - набор команды для разработки игры

- Посты, не относящиеся к тематике сообщества

Подобные посты по решению администрации могут быть перемещены из сообщества в общую ленту.

ЗАПРЕЩЕНО:

- Публиковать бессодержательные посты с рекламой Вашего проекта (см. следующий пункт), а также все прочие посты, содержащие рекламу/рекламные интеграции

- Выдавать чужой труд за свой

Подобные посты будут перемещены из сообщества в общую ленту, а их авторы по решению администрации могут быть внесены в игнор-лист сообщества.


О РАЗМЕЩЕНИИ ССЫЛОК:

Ссылка на сторонний ресурс, связанный с игрой, допускается только при следующих условиях:

- Пост должен быть содержательным и интересным для пользователей, нести пользу для сообщества

- Ссылка должна размещаться непосредственно в начале или конце поста и только один раз

- Cсылка размещается в формате: "Страница игры в Steam: URL"

Вы смотрите срез комментариев. Показать все
5
DELETED
Автор поста оценил этот комментарий

Ооочень скептически отношусь к идее реализации своего движка в 2020 году.

Для UnrealEngine4 есть в маркете не очень дорогой плагин, дающий примерно то же самое. Плюс вся мощь UE4, а не вот эта костыльная штука.

раскрыть ветку (35)
7
DELETED
Автор поста оценил этот комментарий
Насколько я понял, что юнити, что унрил крайне крутые движки, но для 99% инди игр они слишком глобальны. Я сейчас учу юнити, там движок только весит около 10 гиг. При том что игра, которую я хочу делать это сраненький 2д платформер с простой музыкой и минимумом механик. В итоге это все выглядит как попытка забить гвоздь микроскопом.
раскрыть ветку (34)
Автор поста оценил этот комментарий

Попробуйте тот же Monogame - только фреймворк и утилитка загрузки ресурсов, или любой другой "молоточек вместо микроскопа".  После этого дружелюбная Юнити покажется раем. Если не хотелось найти конструктор, конечно.

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий
Все может быть. Не исключаю что для тех задач о которых я говорю будет достаточно того же little big planet. В целом я просто выступаю за конкуренцию среди движков.
1
Автор поста оценил этот комментарий

А как размер движка  коррелируется с размером проекта?

Хочешь просто - делай просто. Никто не запрещает.

раскрыть ветку (25)
3
DELETED
Автор поста оценил этот комментарий
Я не про запрет делать просто. Я про порог вхождения. Вам покажется шокирующей информация, но некоторые люди, особенно неопытные, пугаются сложных инструментов. Мне например не понятно накуя для простого 2д платформера выбирать 10 гиговую юнити, а к ней ещё редактор кода. И ладно если это моно, который сейчас кстати хер прикрутишь, а если это студия? Ещё на 16 гиг? В итоге нужно выделить почти 30 гиг на проект по найду пятиминутному.
раскрыть ветку (24)
DELETED
Автор поста оценил этот комментарий

Ну 10 гигов движок - это притянуто за уши, в 2020 году это не должно быть проблемой. Я тут на днях игру 60 гигов качал. А минимальная игра, собранная на UE4, весит мегабайт 150 - не идеально, но все же копейки.

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

Но, UE4 - open source, поддерживает плагины. Можно сделать надстройку, меняющую интерфейс и ограничивающую фичи, чтобы было легко начать пользоваться. А когда пользователю этого станет мало, он сможет переключиться на полноценный движок, и даже продолжить работать над тем же проектом. Вот это было бы реально полезно. Но я понимаю, это не так интересно разрабатывать.

раскрыть ветку (3)
2
DELETED
Автор поста оценил этот комментарий
Я считаю что юнити уже перерос инди сектор. Ну или скажем так начальный инди сектор. Для вхождения в геймдев он конечно подходит, но наличие альтернативных движков всегда плюс. Сейчас для новичков если смотреть статьи есть либо rpg maker, либо unity. По остальным решениям информации крайне мало. В итоге либо очередной рогалик пилишь либо куришь мануалы неделю и возвращаешься на завод со словами нахуй надо.
раскрыть ветку (2)
1
DELETED
Автор поста оценил этот комментарий

Это по UE4 информации мало?!

Но я уже писал - полезнее и проще было бы сделать надстройку над существующим движком, которая бы оставляла только основную функциональность, чтобы уменьшить порог вхождения. Изобретать свой движок - значит заново реализовать сложную работу с мешами, тенями, материалами, шейдерами, там огромная работа на десятки (если не сотни) человеко-лет. Зачем это заново проходить?

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий
Наоборот. Сейчас есть инфа только по UE4 и unity.
1
Автор поста оценил этот комментарий
Вам покажется шокирующей информация, но некоторые люди, особенно неопытные, пугаются сложных инструментов.

Шокирующие новости, от нас это скрывали многие годы, чтобы вайти в айти, оказывается нужно учиться. Немыслимо. Никто не думал о том что такое возможно.

Мне например не понятно накуя для простого 2д платформера выбирать 10 гиговую юнити, а к ней ещё редактор кода.

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

Госпадее, как можно в 2020 году вообще заикаться на счет 30гб места? Когда 256 ссд стоят баксов 50. А если мало, возьми за эти бабки терабайт hdd.

В итоге нужно выделить почти 30 гиг на проект по найду пятиминутному.

Короче хочешь ты свою шестерку починить, и стоит у тебя выбор, между батиным гаражом с 5 ключами из СССР и здоровой мастерской автосервисом  с кучей мыслимого и немыслимого инвентаря и свободным доступом ко всему этому.

И ты такой "бля, ну у меня же шестерка, нахера мне там разбираться с этими подъемниками, гайковертами, домкратами гидравлическими. В яме сцепуху поменяю по простому".

И ты её поменяешь, рано или поздно. Но будешь грязный, заебанный и заречешься никогда больше заниматься этой хуйней. Не узнав при этом как просто все это можно было бы сделать.

раскрыть ветку (19)
3
DELETED
Автор поста оценил этот комментарий
Шокирующие новости, от нас это скрывали многие годы, чтобы вайти в айти, оказывается нужно учиться. Немыслимо. Никто не думал о том что такое возможно.

Жопу с пальцем не путайте. Делать простенькие игрушки и войти в айти разные вещи. Согласен, чтобы получить работу в геймдеве нужно учиться и нужно учить сложные полноценные движки. Но потратить 5 минут и сделать игру на три спрайта это еще не значит войти в айти.

Потому что ты неадекватно оцениваешь характеристики разных продуктов. Отвергая огромные плюсы, несущественными минусами.
В каком месте я что-то отвергаю? Я говорю о том что для разных задач нужны разные инструменты. Юнити крутой инструмент, но это не значит что его обязательно использовать для решения всех задач.

Госпадее, как можно в 2020 году вообще заикаться на счет 30гб места? Когда 256 ссд стоят баксов 50. А если мало, возьми за эти бабки терабайт hdd

Представьте что вы хотите учить детей делать игры в провинции в классе информатики на железе 2010 года с мегабитной сетью на 15 машин. Или что вы живете в Зимбабве и технологический процесс до вас тупо не дошел? А проблему нехватки физических носителей памяти не слышали? Если билд тех же птиц увеличится на 10 мб, это даст нагрузку в несколько петабайт данных. Могу обобщить цитатой - "Напьются смузи, напрограммируют мышкой, а потом у них текстовые редакторы зависают".


Короче хочешь ты свою шестерку починить, и стоит у тебя выбор, между батиным гаражом с 5 ключами из СССР и здоровой мастерской автосервисом с кучей мыслимого и немыслимого инвентаря и свободным доступом ко всему этому.

Если мне нужно поменять резинку на дворнике, то зачем мне ехать в автосервис, оплачивать инструменты или механика, читать мануалы по шахе, по дворникам, по работе с подъемником? Мне нужно поменять один дворник, а не перебрать движок.

раскрыть ветку (18)
1
Автор поста оценил этот комментарий

Если честно, я проблемы не понимаю. Юнити все также позволяет сделать на коленке что-то простое за неделю. А так учиться минимально надо всему. Разве что в дримс можно сесть и "играть", но там и кпд пиздецовый)

раскрыть ветку (5)
1
Автор поста оценил этот комментарий

Ну да, ну да, пошел я нахер. Вместо минуса, можно было бы объяснить нормально в чем проблема, может вместе бы разобрались что нужно)

Автор поста оценил этот комментарий

Результат Юнити - это и неоптимальный результат. Конечно, скажут "щас бы париться из-за ресурсоёмкости", но мне как-то кажется неправильным, моветоном что ли, закладывание в проект кучи неиспользуемых функций. Плюс Юнити сам по себе тяжелее, медленнее ворочается, и строение проекта сложнее.

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

з.ы. минусовал не я

раскрыть ветку (3)
Автор поста оценил этот комментарий

Ну ресурсоемкость зависит от разраба все же. Относительно неиспользованных функций я тоже не очень понял, зачем их закладывать. Относительно строения проекта все интереснее, если писать в рамках юнити используя принциаы ооп и в целом мысля объектами, то да, все тяжко будет. Но если использовать ECS шаблон проектирования, то становится поняьно, что юнити инзачально на него расчитан был)

раскрыть ветку (2)
Автор поста оценил этот комментарий

Закладываются эти функции, как я понимаю, в движке при компиляции проекта. А насчет объектного ориентирования - речь о том, что больше подходит для новичков - я, например, даже что такое ECS не знаю)))

раскрыть ветку (1)
Автор поста оценил этот комментарий

Движок в первую очередь нужен как средство ренлеринга, во вторую как набор инструментов логики. Я, возможно, не до конца понимаю что вы имеете в виду под "функциями", но на этапе компиляции там ничего лишнего нет, если вы, как разработчик, это лишнее не оставили.

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

Попробую объяснить точнее, даже если мы рассматриваем целью платформер с минимумом механик, нам все равно надо работать с полями данных, а для нормальной работы нужна возможность их организации. Мнение, что для маленких проектов не нужно работать над архитектурой логики проекта очень пагубно, потому что зачастую случается ситуация, когда задуманная концепция требует значительно более сложной реализации, чем казалось ранее.

Немного сумбурно вышло, но как итог я бы советовал новичкам изучать подобные вещи на простых реализациях, но с таким подходом, будто это большой проект)

Автор поста оценил этот комментарий

Ясно, понятно. У тебя все получится.

раскрыть ветку (11)
Автор поста оценил этот комментарий

Опять ты ядом своим в комментах брызжешь. Гражданин же понятно пишет, что никто в IT входить не собирается. Вот я в спортивный кружок хожу. Я - любитель, просто поднимаю штангу, у меня работа сидячая и размяться приятно. Я не собираюсь на соревнования, не планирую работать тренером и вообще свою жизнь со спортом связывать не планирую. Я просто поднимаю штангу, для ОФП это нормально. И если я встречусь с экспертом уровня олимпийского чемпиона, для которого мои максимальные веса - разминочные правильно ли ему начинать брызгать ядом и кричать, что так на олимпиаду не попасть! Вот посмотрите на меня - красавец, а вы все дебилы. Понятно, что ты вот такой эксперт с мировым именем, и какой-нибудь Бобби Котик на совещаниях обсуждает, что в этом месяце игру не выпускаем, там shakagami свою игру релизит, а конкурировать с ним - безумие. Но здесь любители собираются, что, с моей точки зрения, хорошо и это поддерживать надо, а не ядом брызгать.

раскрыть ветку (10)
Автор поста оценил этот комментарий

О, мой поклонник объявился, давно тебя не было, я уже начал переживать)

раскрыть ветку (9)
Автор поста оценил этот комментарий

Да я каждый день здесь, но спасибо за заботу. Тебе тоже не болеть. На коммент ответишь?

раскрыть ветку (8)
Автор поста оценил этот комментарий

Боюсь ты забыл задать вопрос)

Поэтому...

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

Но нет...

Твой пример невалидный, так как суть тут не про "профессионал - неуч". А про "я хочу качаться, у меня есть выбор, при свободном доступе, между большим крутым тренажерным залом и маленьким полуподвалом. И с одной стороны у тебя куча людей которые готовы помочь, куча обучающих материалов, новейшие тренажеры разных видов, все удобно, красиво. А с другой задрыпанный кулер, 3 калеки в трениках, плакаты на стенах времен СССР, и по паре видов весов для гантелей и штанг. И ты такой, ммм, куда же пойти? Пойду в подвал. А почему? Потому что мне только гантели нужны, и здание там что-то большое. А банки я себе и так накачаю..."

И да...

И не стоит себя ограничивать, я верю что сможешь употребить словосочетание "брызгать ядом" больше 3 раз за коммент. Я в тебя верю.

Давай!

Давай попробуем сразу под этим комментом.

раскрыть ветку (7)
Автор поста оценил этот комментарий
При том что игра, которую я хочу делать это сраненький 2д платформер с простой музыкой и минимумом механик.
В темплейтах анрила уже есть сайд скроллеры. И 2д, и 3д. С выставленной камерой и управлением персонажем.
раскрыть ветку (5)
1
DELETED
Автор поста оценил этот комментарий
Бладж. Я видимо совсем тупой и не умею доносить свои мысли. Я имел в виду, что использовать движок, на котором делают большую часть ААА игр, для создания примитивных игр мне кажется избыточным.
раскрыть ветку (4)
Автор поста оценил этот комментарий
Совершенно согласен, вообще не понимаю, когда очередной школьник делает свой ущербный клон Flappy Birds на юнити. Спрашивается нафига? Для игр со столь примитивными механниками даже годот избыточен, такие игры легко и просто клепаютс в Construct. Это будет и менее трудозатратно, и менее затратно по времени и более правильно. Юнити просто стал брендом! Да челябинские кросовки могут быть гораздо удобнее, мягче и крепче чем адидас. Но никто не хочет носить челябинские кросовки они не модные. То же самое, происходит с годот - прекрасная машина во многом не уступающая юнити, во многом её превосходящая, кое в чём уступающая. Но на годот мало мануалов и мало хороших игр, в странах снг нет вакансий. Почему? Всё просто он не является брендом. Все кто мог бы это исправить сидят на юнити. Я уверен если какая нибудь небольшая студия выпустит, хорошую полноценную игру на годот и она выстрелит, люди на этом заработают то очень скоро появятся и мануалы на русском, и вакансии, и юнити подвинутся придётся.
Автор поста оценил этот комментарий
использовать движок, на котором делают большую часть ААА игр, для создания примитивных игр мне кажется избыточным
Что "кажется" это ты верно заметил. Очень может быть, что у Годот есть свои плюсы и причины существовать, но это определённо не те, о которых ты говоришь.
Автор поста оценил этот комментарий
Я сейчас учу юнити, там движок только весит около 10 гиг.

1. это не движок, это среда столько весит
2. ААА раньше на с++ писали и в текстовом редакторе, что мне от языка тоже отказаться и от того же блокнота?
3. Нормально писать и на юнити, конечные файлы выходят довольно компактными.

раскрыть ветку (1)
1
DELETED
Автор поста оценил этот комментарий
С сайте юнити сейчас качается сборка движка весом около 10 гиг без редактора кода. В каком месте я предлагаю отказаться от с++ и блокнота? Наоборот, я в нашей полемике пытаюсь выступить защитой альтернативных вариантов разработки.
Вы смотрите срез комментариев. Чтобы написать комментарий, перейдите к общему списку