1 / 35

Сборка билда и прочие неприятности

Проклятие билд-инженера. Сборка билда и прочие неприятности. TimeShift. Билды. Сборка билда – неотъемлемая часть разработки компьютерных игр Билды бывают разные: Большие и не очень Ежемесячные и ежечасные Press , focus , multiplayer etc. PC, PS3, X360… RU, EN, US, DE, FR, ES, GB….

berk-holt
Download Presentation

Сборка билда и прочие неприятности

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Морозов Кирилл Saber Interactive Проклятие билд-инженера Сборка билдаи прочие неприятности

  2. TimeShift

  3. Билды Сборка билда – неотъемлемая часть разработки компьютерных игр Билды бывают разные: • Большие и не очень • Ежемесячные и ежечасные • Press, focus, multiplayer etc. • PC, PS3, X360… • RU, EN, US, DE, FR, ES, GB…

  4. Билд-инженер на 24/7 Работы у билд-инженера много: • Сборка фич и багфиксов • Воссоздание структуры • Конфигурация и настройка • Написание спецификации • Присвоение номера версии • Проверка с QA • Отправка заказчику

  5. Первые шаги • Подружиться с главным программистом • Ознакомиться с игрой • Выучить структуру проекта • Следить за размером билда • Следить за структурой папок

  6. Первая проблема: Сцены Отсчет сцен с лайтмэпами:

  7. Первая проблема: Сцены Конвертер сцен: • Централизованный отсчет • Автоматическое обновление данных с Perforce • Последовательный отсчет всех сцен • Готовность сцен к утру

  8. Данные в билде Билд – совокупность данных Первые сборки билдов: • Большое количество лишних и не организованных папок • Билды занимали много места из-за мусора • Все операции выполнялись вручную

  9. Данные в билде Генератор списков

  10. Shaders, shadowmaps… Генерация в реальном времени: • Тормоза, низкий FPS • Непозволительно большое время загрузки уровней Решение проблемы: • Распределённая прегенерация по разным платформам • Упаковка бинарного кэша в паки по спискам

  11. Wavebanks Суровая реальность мира звуков: • Большое количество локализаций, отсюда огромное количество звуков • Постоянные изменения и перекомпиляция, занимающие по несколько часов

  12. Файлы конфигурации Прятать или нет? Доступные файлы: • Опасность взлома конечными пользователями Скрытые файлы: • Неудобства при разработке • Необходимость переупаковки

  13. Файлы конфигурации Файл конфигурации прятать надо, но: • Упаковывать их в отдельный пак • Прятать только под конец проекта • Необходимо только на PC • Прятать, но не полностью, оставляя уменьшенную копию снаружи

  14. Disk Image и InstallShield • Создание образов дисков для приставок – не требует разработки дополнительного ПО • Для работы с InstallShield’омбыл нанят отдельный человек

  15. Основная головная боль • Огромное количество билдов • 3 платформы • 7 регионов • Специфические требования • Рассылка билдов по тестерам

  16. Техническая база - Farmnode Решение большинства проблем: • Удалённый контроль • Максимально мощные ПК • Чем больше, тем лучше • Распределение операций

  17. Программное обеспечение Автоматизация производства и управление техническими ресурсами • 90% операция скрыто в программном коде • Сокращение затрачиваемого времени • Повышение качества и надежности продукта

  18. Программное обеспечение ПО должно обладать: • Сетевым доступом • LOG’ами • Большим количеством различных настроек • Лёгким и понятным интерфейсом • ПО не должно быть привязано к технической базе *.bat – легко и удобно

  19. Build Client и Shader Compiler Одни из самых интересных утилит

  20. Build Client

  21. Shader Compiler • Установка на все ПК в офисе • Сбор исходников для расчета шэйдеров

  22. HotFix’s Поздние не контролируемые сдачи данных, всегда приводят к поломке проекта!

  23. HotFix’s Долой ночные посиделки! Определите четкие временные рамки приема fix’ов в билд, учитывая: • Hard times • Ежедневные билды • Еженедельные билды

  24. Отсылка билда Отсылка билда – обязанность билд-инженера! • Десятки гигабайт информации ежедневно • Сбои при передачи данных • Полная безконтрольность

  25. Отсылка билда Необходимо специальное ПО, которое способно: • Выполнять синхронизацию файлов и каталогов в двух местах вычисляя контрольную сумму • Минимизировать трафик • Кодировать данные • Вести подробные log’и • Рассылать отчеты

  26. Контроль Важный момент – всё проконтролировать • Работа становится образом жизни… • Работа по выходным • Работа ночами

  27. Контроль Нет необходимости сидеть постоянно в офисе! • Необходимо настроить удалённый доступ к рабочему ПК, используя подходящее ПО • Всегда иметь при себе ноутбук или КПК

  28. Доступ в интернет На этом нельзя экономить: • Максимально высокая скорость соединения • Не лимитированный тариф • Резервное соединение через альтернативного провайдера • Хороший домашний интернет у билд-инженера

  29. Источники питания Будьте готовы к сбоям в электросети Необходимо: • Резервные источники питания большой ёмкости на всё ключевое оборудование • Портативный винчестер

  30. Распределение ролей Будьте готовы к тому, что: • Люди не поймут ваших обязанностей • Вам придется рисовать, программировать, носить мебель и петь песни Расставьте все точки над «И»: • Не берите на себя чужие обязанности • Распределяйте сваленные на вас задачи по профильным специалистам

  31. Система репортов Для того, что бы не делать то, что не нужно: • Будьте всегда в курсе всего что происходит в конторе • Настройте систему репортов • Заставьте всех пользоваться вашей системой

  32. Передача знаний Если вы незаменимы: • Никаких отпусков • Никаких больничных Что бы жить спокойно: • Составьте подробную инструкцию • Разместите её на сервере • Расскажите всем об этом

  33. Дополнительные расходы У вас постоянно будут возникать проблемы: • Добраться поздней ночью домой • Голод 8) Не стесняйтесь! Пусть БОСС: • Вызовет вам такси • Закажет вам пиццу

  34. Заключение • Наладьте процесс сборки билдов и их настройки • Обзаведитесь мощной технической базой, защищённой от различного рода катаклизмов • Разработайте специализированное ПО • Всегда и всё чутко контролируйте • Будьте человеком! Знайте себе цену!

  35. Морозов Кирилл Saber Interactive Спасибо за внимание Есть вопросы? Хотите у нас работать? Подходите к нашему стенду, на ярмарке проектов!

More Related