Всех приветствую. В общем после того, как мне пришлось реализовывать некоторые стандартные игровые функции уже в какой раз,
то я подумал о создании некого шаблона, хранящегося в качестве репозитория. Но будет лучше всего, если этот шаблон будет доступен каждому.
Поэтому я сделал некоторые наброски, которые, как мне кажется, пока являются для каждой игры необходимой.
Буду рад выслушать критику и советы.
На уровне абстракции, игры сходятся в чём-либо, поэтому это "что-либо" я вынес. Например переходы между сценами.
Ссылка на репозиторий: КЛИК
Вот банальный пример того, почему лучше подход с шаблоном:
Представим, что человек захотел сделать игру. Он мало разбирается либо с движком, либо в программировании. Ему необходимо, как
минимум в нескольких классах скриптах делать переход между сценами. Соответственно он будет вынужден подключать в каждом файле
необходимую библиотеку и делать несколько одинаковых методов. Да, такое бывает. Как это может выглядеть с шаблоном:
Всего одна строка:
IHMainGameManager.LoadScene("Menu");
По факту, ничего особенного во многих методах нет. Они лишь сокращают некоторые базовые функции. Хотя я планирую добавить
наиболее значимые функции. Например набор рекомендованных паттернов. Подробнее можно почитать в задачах репозитория.
Большая часть информации перечислена в README, но здесь я опишу, что уже есть:
Директива IHCore.Main:
  • IHSettings (Игровые Настройки)
  • IHMainData (Игровые данные, не настраиваемые игроком)
  • IHTimer (Таймер)
  • IHMainGameManager (Настройка базовых компонентов игры. Например загрузка игровых данных)
  • IHDontDestroy + IHDontDestroyEditor (Скрипт, не уничтожающий объект при переходе на другую сцену)
Директива IHCore.UI:
  • IHUIHandler (Различные функции для UI)
Плюс этого шаблона в том, что тот го... мой код вы можете менять очень легко и удобно. Таким образом, вы не будете заложником
предоставленного кода, а даже сможете расширить функционал. Кстати, если вы хороший программист, вы можете помочь в развитии
этого "проекта".
Пока это всё. Каждый желающий может помочь в усовершенствовании этого шаблона для всех, если у вас есть желание и навыки.
Также, вам не обязательно скачивать весь проект. Если вам необходим всего один скрипт, вы можете взять только его. Ещё один плюс
в пользу репозитория.
Ссылка на репозиторий: КЛИК
Опрос: Может ли подобный шаблон пригодится остальным? Или лучше, чтобы каждая команда работала на индивидуальном?
1. 
Думаю этот шаблон можно использовать в качестве фундамента
2. 
Подобный шаблон может и полезен, но о нём могут и не знать. Не стоит.
3. 
Не стоит.
4. 
Не знаю...
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
18
7 лет назад
0
Разумеется, шаблоны стоит использовать. Но в доработанном виде, в куда большем количестве. По крайней мере на хгм, куда многие пришли ради варкрафтостоительства, и откуда малая доля этих людей захочет работать по-настоящему. Не сидеть же большинству блогочитателей в jass-песочнице, пользуясь кодом близзард.
+
1
24
7 лет назад
Отредактирован prog
1
Шаблоны это круто, но не стоит ими слишком увлекаться - возможно некоторые вещи лучше завернуть в "библиотеку" или что вы там для юнити в этих целях используете. Избыточное использование шаблонов ухудшает читабельность кода, может конфликтовать с синтакс-чекерами и статик-аналайзерами. Говорю как человек пользующийся UnrealEngine4, в C++ API которого шаблонов через край. Как дополнительный необязательный синтаксический сахар сверху библиотеки шаблоны смотрятся неплохо, но такое каждый и сам должен уметь реализовать под свой вкус и потребности, как по мне.
0
13
7 лет назад
Отредактирован DasBro
0
prog, Все классы этого шаблона как раз и хранятся в отведенных для них пространствах имён. Вы правы, на счёт чрезмерного использования шаблонов, однако пока я не наблюдал подобных случаев, но раз у вас возникают подобные случаи, приму к сведению.
BrEd Pitt, Вообще, когда-то я считал, что XGM не будет отделять Game Development в такой портал, как DevTrube, поэтому думал, что здесь собирается комьюнити не только людей, делающих моды для Warcraft, но и разработчики игр. Было даже неплохо, когда проводились разные конкурсы не только связанных с модмейкингом...
А на счёт шаблонов, то в целом, ещё одна незначительная причина подобного шаблона - читабельный код. Потому что новички, как я уже заметил,
особо и не заморачиваются на счёт имён полей/методов и т.п. не говоря уже о комментариях.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.