Case studies

Как Sycoforge способствует быстрому созданию идей и итераций

May 17, 2022
Игровой персонаж с окровавленным лицом и длинной, заплетенной в косу бородой, опирающийся на посох или меч
Эта веб-страница была переведена с помощью машинного перевода для вашего удобства. Мы не можем гарантировать точность или надежность переведенного контента. Если у вас есть вопросы о точности переведенного контента, обращайтесь к официальной английской версии веб-страницы.

Принятие системы контроля версий Unity ускоряет разработку Return to Nangrim, объединяя программистов и художников для увеличения количества коммитов более чем на 300%.

Задача
Улучшение сотрудничества и надежная разработка в широком сообществе участников
Платформы
MacOS, PC, PlayStation 4, PlayStation 5 Xbox One, Xbox Series X|S
Персонал
10 в Цюрихе, 21 внештатный сотрудник
Местоположение
Цюрих, Швейцария

Sycoforge: Исследование на примере Unity Version Control

Как инди-студия, ориентированная на искусство, обеспечивает последовательный контроль версий в разрозненном и сильно распределенном сообществе творческих авторов? Компания Sycoforge была глубоко погружена в амбициозный трансмедийный проект, который включал в себя Return to Nangrimприключенческую ролевую игру, дополненную мультимедийными и сложными лингвистическими компонентами. Однако существующая система контроля версий (VCS) была инструментом программиста. Он не был предназначен для творческой стороны разработки игр, и Sycoforge нужны были перемены.

Подвесной горный мост с отсутствующими опорами

Объединение всей среды разработки игр с помощью VCS

Уникальная модель разработки Sycoforgeвключает в себя регулярную обратную связь с глобальным сообществом разработчиков, художников и игроков. Большинство VCS сложны, созданы для инженеров и не предназначены для работы с большими файлами и двоичными файлами из коробки. Для реализации их концепции развития, основанной на участии сообществ, крайне важна была быстрая итерация. Компании Sycoforge требовалось надежное решение, которое могло бы удовлетворить потребности художников и нетехнических сотрудников. Быстрое и широкое внедрение было необходимо для реализации их концепции, и они нашли свое элегантное решение в Unity Version Control от Unity DevOps (ранее известной как Plastic SCM).

Результаты

  • Увеличение количества коммитов на 300% и незначительные конфликты слияния
  • Переход с Bitbucket на Unity Version Control в середине проекта менее чем за неделю
  • Художники получили возможность контролировать процесс создания версий, не перегружая разработчиков.
Линейный рисунок концепт-арта для лиц персонажей

Создание фантастической вселенной

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

Они хотели создать игру с уникальными языками, культурами, картами, кланами и другими деталями для совершенно новой, постоянно развивающейся, самодостаточной фантазии - вселенной Арафинн. Чтобы воплотить ее в жизнь, в 2017 году пара, теперь уже генеральный директор и технический директор соответственно, основала компанию Sycoforge в Цюрихе.

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

Игровой персонаж с длинной бородой, в шлеме

Преодоление потери данных, конфликтов слияния и медленной загрузки блоков

Гильдия игроков - важнейший компонент гибкого процесса разработки Sycoforge, обеспечивающий практически мгновенный отклик на экспериментальный контент и геймплей. Для управления контролем версий в этой сети Sycoforge использовала хранилище исходного кода на базе Git, предназначенное в основном для программистов.

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

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

"Когда речь идет о коде, на разработку и поддержку которого уходит много времени, мы не можем позволить себе потерять данные. Unity Version Control дает нам свободу экспериментировать и пробовать более рискованные вещи, которые мы не смогли бы сделать в противном случае".
MICHELA RIMENSBERGER / SYCOFORGECEO
Изображаемый персонаж

Восстановление баланса между временем устранения неполадок и временем создания

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

"Природа видеоигр, объем данных - все это просто невозможно реализовать с помощью Git", - говорит Рименсбергер. "Большие файлы затрудняют работу, а ожидание локальных изменений занимает так много времени".

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

"Мне нравится работать с Unity Version Control, потому что это так просто. Визуальный интерфейс и удобство использования позволяют мне не беспокоиться о том, что другие не поймут. Это так ясно".
ANDI ARCARO / SYCOFORGEProgrammer
Персонаж смотрит через просторы на огромный вулкан

Регистрация в Unity Version Control

"Мы рассмотрели несколько VCS, но Unity Version Control явно отличался от них, - говорит Энди Аркаро, программист из Sycoforge. Version Control был создан для совместной работы в рамках всей среды разработки игр. Sycoforge оценил два различных рабочих процесса Version Control: полнофункциональный рабочий процесс Developer для программистов, знакомых с традиционными VCS, и Gluon, упрощенный, высокографичный режим для менее технически подкованных участников.

Sycoforge перешла в середине проекта с Git на Version Control менее чем за неделю, практически без проблем, и это сразу же сказалось на результатах работы команды. Программисты обнаружили, что он улучшает совместную работу, а художники почувствовали себя сильнее благодаря его работе с колоссальными файлами изображений. В результате коэффициент выполнения Sycoforge подскочил более чем на 300 %.

"Version Control помогает нам пробовать более рискованные вещи, которые в противном случае мы бы не стали делать, потому что мы можем легко вернуться к уже сохраненным данным", - говорит Рименсбергер. "При работе с Git вы боитесь делать коммит, потому что вдруг что-то сломается? В Version Control этого нет. Люди готовы брать на себя обязательства чаще, что также позволяет нам сократить время на разрешение конфликтов слияния (которые сейчас практически незначительны). Даже художники могут самостоятельно решить большинство конфликтов слияния с помощью Gluon UI, потому что он очень прост в использовании. Он пуленепробиваемый, безотказный".

Орел, парящий над горами и деревьями

Шлихтовое решение проблемы стресса, связанного с контролем исходных текстов

У каждой студии есть свои уникальные потребности и рабочие процессы, а хлеб и масло Version Control - это гибкость, которую он предлагает командам, чтобы приспособить инструмент к своим потребностям. Для тех, кто только начинает работать, Sycoforge предлагает начать использовать пользовательский интерфейс Gluon - даже программистам - и предоставить доступ к профессиональным инструментам Plastic только старшим и ведущим разработчикам.

Рименсбергер описывает Gluon как schlicht, немецкое слово, которое буквально означает "простой", но подразумевает чистую элегантность. "Функциональность есть, но вы знакомитесь только с тем, что вам действительно нужно на базовом уровне", - говорит она. "Это облегчит вам жизнь, если вы познакомите всех с Gluon, а затем те, кому нужен полный спектр возможностей, смогут их получить".

Для небольшой команды, работающей с большим количеством фрилансеров, такой подход имеет наибольший смысл. Предлагая большинству членов команды только интерфейс Gluon, вы сокращаете объем поддержки, которую им пришлось бы оказывать, если бы они перегрузили большинство нетехнических членов команды полным набором функций и возможностей, а не только теми, которые им больше всего нужны. Это освобождает горстку более опытных разработчиков для управления проектом с помощью таких функций, как Version Control's Branch Explorer, и некоторых более надежных инструментов.

Пять членов команды на рабочих местах в офисе

Сближение команды

С помощью Version Control компания Sycoforge укрепила процесс гибкой разработки, стандартизировала рабочие процессы и стала быстрее реагировать на отзывы сообщества. Рименсбергер говорит: "Благодаря Version Control уведомления о фиксации регулярно появляются в наших почтовых ящиках - это первое, что я проверяю утром". Однако для Sycoforge оптимизация разработки - это лишь средство для достижения очень выгодной цели.

"То, что наше сообщество начало говорить и приветствовать друг друга на нашем гномьем языке, придумывает новые слова, ищет подсказки и пасхалки, - вот что вознаграждает нашу команду", - говорит Рименсбергер. "Незнакомцы со всего мира собираются в нашей таверне Discord, чтобы выпить виртуального гномьего пива и хорошо провести время. Разве не в создании такого сообщества и заключается суть игры?"

"Переход с Bitbucket на Version Control прошел очень и очень гладко. Сработал как надо".
MICHELA RIMENSBERGER / SYCOFORGECEO
Игровой персонаж с окровавленным лицом и длинной, заплетенной в косу бородой, опирающийся на посох или меч

Творите без компромиссов с помощью Unity DevOps

Unity DevOps от Unity Gaming Services предоставляет облачные функции VCS и CI/CD, которые специально адаптированы к задачам разработки игр. Он создан для простой обработки больших и двоичных файлов, поддерживая рабочие процессы как для художников, так и для разработчиков.


Готовы сделать следующий шаг? Попробуйте бесплатно.