Ship Disaster. Программирование на Unreal Engine
Пишет программист
Программирование
В нашем случае процесс разработки — это не просто написание и отладка кода, а целая небольшая система взаимодействия заряженных энтузиастов, задача которых оживить на экране труды остальных членов команды, работающих над проектом.
Процесс разработки, безусловно, очень интересен, а варианты решения той или иной задачи часто становится предметом многочасовых обсуждений, правда, по какой-то причине преимущественно между самими программистами...
По этой причине в этой статье речь пойдет не о том, что делают программисты, а как построена их работа.
Взаимодействие
Ввиду того, что в проекте задействованы одновременно 3 программиста, перед ними была поставлена задача достижения максимальной эффективности командной работы наравне с полной творческой свободой выбора метода достижения этой цели.
Результат не заставил себя ждать и рабочий процесс выглядит следующим образом:
1. описания механик из диздока обсуждаются программистами для построения максимально универсальной логики реализации этих механик.
2. Далее описанные механики группируются в конкретные таски с учетом минимальных пересечений друг с другом для удобства параллельной работы над одним проектом.Каждый такой таск имеет короткое описание и теги, позволяющие отследить, как связанные механики, так и стадию разработки конкретной задачи.
3. После успешного завершения очередного этапа разработки программист добавляет свои модификации в текущую версию проекта.
К моменту назначенной конференции команда разработки имеет на руках прототип и понимание того, стоит ли вносить изменения в главный таймлайн проекта.
Творческая свобода
Каждый член нашей команды разработки полностью свободен выбирать вариант реализации той или иной механики или целого комплекса механик в выбранном таске.
Многие вопросы выносятся на обсуждение, что рождает поистине красивые логические решения, идущие на пользу производительности. Возможно, кто-то скажет, что это может быть неэффективно и даже рискованно для проекта, который надо реализовать в такие короткие сроки, но мы считаем, что это стоит того.
В дополнение про творческую свободу — даже эта статья написана программистами.
Имя им легион
Одна из ключевых проблем, которые возникают в процессе разработки — это неожиданный полёт птицы вверх ногами или же более гротескное и очень спонтанное желание персонажа вырвать из земли огромную пушку и, возомнив себя ОБР из Civilization, начать наводить ужас на окружающих. А порою это системные сбои, которые ужасают уже самих программистов.
Все это — постоянно возникающие баги, иногда заметные и очень забавные, а иногда срабатывающие лишь в 1 из 100 случаев.
Именно по этой причине было принято решение даже на раннем прототипе проводить стресс тесты сборки с формированием списка существующих проблем для их оперативного устранения с целью максимально качественно погрузить будущего игрока в чудесный мир нашей игры.