|
Труд вопреки насмешкам
|
|
Что нужно, чтобы разрабатывать игру быстрее?11.05.2022, 15:49. Показов 9034. Ответов 88
Метки нет (Все метки)
У меня есть проект по созданию игры. Сначала я разрабатывал ее быстро - по версии каждый месяц. Но потом разработка резко замедлилась, несмотря на то, что количество контента на процент разработки было пересчитано не в большую, а наоборот, в меньшую сторону (ну, так бывает, изначальный расчет показался неверным, о верности текущего судить не берусь). Что я делаю для ускорения разработки:
1. Отказался от моделирования в пользу доступных в Интернете моделей и пакетов Free for the Month. 2. Регулярно произвожу разнообразные технические улучшения, позволяющие не выполнять одну и ту же работу множество раз. 3. Создал таблицу, в которую записываю все изменения, кроме исправления багов, и подсчитываю очки за них, зависящие от сложности и значимости. 4. Просматриваю старые темы по поводу каких-либо ошибок, вместо того, чтобы каждый раз создавать новую. 5. И многое другое, всего сходу и не вспомнить... Но несмотря на это, за полтора года игра разработана всего на 9%. Если это соотношение экстраполировать, получится, что на разработку всей игры уйдет не меньше 18 лет. Не хотелось бы положить всю взрослую жизнь на одну игру, не так ли? В слогане одной из компаний по разработке игр написано "новая игра каждый день". И это была не корпорация в стиле Ubisoft, а сравнительно небольшая и ничем не выдающаяся "фирмочка". Даже если предположить, что рекламный слоган в буквальном смысле "утрирует", каждой игрой занимается 20 работников (учитывая размер компании, больше вряд ли), MMORPG в 10 раз сложнее какого-нибудь шутера или квеста, а половина моего рабочего времени уходит на посторонние проекты, так и не достигающие реализации, получится, что я могу выпускать новую игру каждые 3 * 20 * 10 / 50% = 1200 дней, или чуть больше трех лет и трех месяцев, но никак не 18 лет. И это при предельных расчетах! Взяв более "реальные" числа - например, слоган преувеличивает в 2 раза, над профессиональной игрой работает 12-15 человек, разница в сложности в 5 раз и 40% времени, уходящего впустую - мы получим новый релиз каждые 8 месяцев. Или, может быть, с возрастанием количества "механизмов" для создания контента разработка будет идти все быстрее и быстрее? Ну так и количество врагов или предметов коррелирует с интегрированным показателем прогресса далеко не линейно - для сравнения, в момент 4% прогресса торговец продавал 3 предмета, в момент 8% - 13, а всего планируется несколько десятков или сотен торговцев с суммарным количеством предметов в десятки тысяч (вы угадали, многие будут повторяться). В любом случае, мне кажется, разработка моей игры замедлилась слишком сильно. И это при том, что я взял самый мощный из игровых движков - Unreal Engine. В чем причина? Может быть, у профессионалов есть какие-то особые программы, или какие-то расширения к движкам, которые не доступны публично, и которые ускоряют разработку? Ну я же не думаю, что профессионалы все поголовно намного быстрее двигают руками? Разумеется, такие есть, но вряд ли они задержатся на рабочем месте надолго, так как люди, у которых все "горит", очень неаккуратны и вспыльчивы. Может кто-то объяснить мне, что такое есть у профессионалов, что позволяет редко какой их игре быть в разработке больше года, и не позволяет мне разработать свою хотя бы за пять лет?
0
|
|
| 11.05.2022, 15:49 | |
|
Ответы с готовыми решениями:
88
Что нужно знать, чтобы написать сетевую игру Какое ПО нужно, чтобы разрабатывать WPF-приложения? С чего нужно начинать, чтобы полноценно научиться разрабатывать программы и игры |
|
Труд вопреки насмешкам
|
||
| 13.05.2022, 13:31 [ТС] | ||
|
1. Отказ перебирать коллекцию в цикле в пользу LINQ, который считаю киллер-фичей Шарпа. 2. Отказ создавать на каждый чих по классу в пользу out и кортежей. 3. Отказ от массивов в пользу списков. 4. Использую большие статические классы в качестве списков функций. 5. Активно использую pattern matching (оператор is), прежде всего для проверки типов, явное приведение стараюсь для определения подкласса не использовать, только в числах и char. Продолжать? Добавлено через 4 минуты Не по теме: Да, там эти главы короткие. Прочитал еще две. Какой-то поток сознания, а не книга...
1
|
||
|
Just Do It!
|
||||
| 13.05.2022, 13:37 | ||||
|
0
|
||||
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 13:40 [ТС] | |
|
0
|
|
|
Just Do It!
|
|
| 13.05.2022, 13:43 | |
|
у Мартина & К. есть ещё и такая книжка:
Мартин Роберт К., Ньюкирк Джеймс В., Косс Роберт С. Быстрая разработка программ: принципы, примеры, практика. прямо так и называется, как по вашему сабжу: Быстрая разработка программ но эту я не читал и не знаю, что там и будет ли лично для меня сильно полезная, но в любом случае полезная будет)
0
|
|
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 13:46 [ТС] | |
|
0
|
|
|
Just Do It!
|
||
| 13.05.2022, 13:47 | ||
|
есть ли у вас в коде интерфейсы? ну или применительно к терминологии C++: есть ли у вас в коде абстрактные классы ради полиморфизма? суть большинства наиболее полезных паттернов как правило всегда реализована на полиморфной фиче.
0
|
||
|
Труд вопреки насмешкам
|
||
| 13.05.2022, 14:41 [ТС] | ||
|
XLAT, получается, что эти крестики-нолики я написал быстро, а чтобы ими воспользоваться, потребовалось длительное время, правильно я понял? Ну, это из-за обстоятельств, что не обновил среду, а потом все сразу навалилось. Если брать диапазон 1-5, то я хоть на тройку тяну? Вы же спросили, за сколько я смогу написать, а не сделать готовым к массовому пользованию...
Добавлено через 26 минут XLAT, а вам, как я понял, нравятся Плюсы? А если не секрет, за что? Есть какая-то киллер-фича или просто потому, что привыкли?
0
|
||
|
Just Do It!
|
|||||
| 13.05.2022, 14:51 | |||||
|
и просто проблема чисто философская, можно ли считать если сама по себе игра это не только программирование и дизайн уровней, возможно, процент законченности игры должен измеряться в количестве проданных копий, но это неточно. у вас же есть движок, зачем это низкоуровневое кодирование? вы должны быть в курсе, что "преждевременная оптимизация" часто убивает проект. --- вот ещё важная цитата от Макконнелла. там есть очень важный момент, касаемо к проблеме низкой скорости разработки. Не по теме:
но, например, в питоне есть то, чего нет на С++ и это не языковые конструкции, а это уже куча готовых к использованию предметных библиотек, которые легко можно подключить. поэтому чтобы хорошо себя на них чувствовать, нужна уже иметь в голове порядок и самодисциплину)
0
|
|||||
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 14:56 [ТС] | |
|
0
|
|
|
Труд вопреки насмешкам
|
||||
| 13.05.2022, 15:01 [ТС] | ||||
0
|
||||
|
Just Do It!
|
||
| 13.05.2022, 15:19 | ||
|
что в любом проекте можно выделить существенные свойства и не существенные. на не существенные можно забить. реализовывать только существенные.
0
|
||
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 15:48 [ТС] | |
|
XLAT, а является ли нормальной такая особенность, встречающаяся в моих программах: мне постоянно приходится повторять однотипные действия вместо разработки новых фич: например, в линейке - расставлять индексы врагам и списки координат их возрождения после смерти - выбираются случайные координаты из этого списка, но только в пределах принадлежащим этому типу врагов, поэтому при добавлении новых типов врагов приходилось добавлять списки координат; или в языке программирования - однотипные алгоритмы создания, получения, установки и удаления переменной или свойства при добавлении нового типа; так вот, эти действия добавляют в мою работу страдания, и когда это уже становится невыносимым - например, количество однотипных действий переваливает за сотню - я нахожу способ их автоматизировать (как минимум частично). Программирование такое и есть, или можно пойти по менее мучительному пути?
0
|
|
|
Just Do It!
|
|||||||||
| 13.05.2022, 17:25 | |||||||||
|
всё программирование это про автоматизацию однотипных действий. пишите шаблоны. здесь что-то намутил как макет скелета консольной RTS: Кликните здесь для просмотра всего текста
тут легко добавить демона, тут все демоны в составе каждый в своей армии ...
примерно, как я сделал выше?
0
|
|||||||||
|
Труд вопреки насмешкам
|
|||||||
| 13.05.2022, 18:38 [ТС] | |||||||
0
|
|||||||
|
Just Do It!
|
|||||||
| 13.05.2022, 19:17 | |||||||
0
|
|||||||
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 19:25 [ТС] | |
|
XLAT, а я не согласен. Ваш код устойчив только к добавлению врага, а новое свойство придется прописывать у всех врагов. А у меня добавление врагов обрабатывается автоматом, а новое свойство придется прописать всего три раза - в объявлениях, в Save и в Load. Это же лучше, чем неопределенно большое число раз, или неправда?
0
|
|
|
Just Do It!
|
||||||||
| 13.05.2022, 19:46 | ||||||||
класс этого врага нужно написать целиком!
0
|
||||||||
|
Труд вопреки насмешкам
|
|
| 13.05.2022, 20:06 [ТС] | |
|
XLAT, а что возразите против саботажа в виде new SL()? Лучше выкинуть интерфейс и сделать абстрактный класс Enemy с методами Load() и Save() (общие свойства) и абстрактными методами LoadSpecific() и SaveSpecific() (специфические свойства). Абстрактный класс хорош тем, что может содержать как абстрактные методы ("чистые виртуальные функции" в терминологии C++), так и конкретные.
1
|
|
| 13.05.2022, 20:06 | |
|
Что нужно знать, чтобы написать игру "Змейка"
Что нужно сделать, что бы ноутбук стал быстрее работать?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|