SlideShare uma empresa Scribd logo
1 de 14
Организация работы с UE4
(в команде до 20 человек)
Echo
High Noon
1
2
3
4
5
6
7
8
9
UE4 + Visual Studio
Trello (Kanban)
GitLab
TeamCity
Confluence
Инструментарий
1
2
3
4
5
6
7
8
9
Роли + компетенции
Геймдизайнеры
Программисты + скриптеры
Артовики
Менеджемент - ноль
Доска в Trello
1
2
3
4
5
6
7
8
9
Отказ от прототипов
Виды прототипа
Взвешенные решения
Временный арт (но лучше с ним)
1
2
3
4
5
6
7
8
9
Интеграция контента
Единое дисковое пространство
Политики именования
Организация папок проекта
Коллекции
1
2
3
4
5
6
7
8
9
Система контроля версий
Git, SVN, Perforce, Plastic SCM
Git LFS
Множество веток от develop-a
Конфликты
Мердж .uasset
Мердж .umap
1
2
3
4
5
6
7
8
9
Короткие циклы разработки
TeamCity
Dedicated server
Development build vs Shipping build
Torrent
Вертикальная интеграция
1
2
3
4
5
6
7
8
9
Подготовка билдов
Ошибки в BP
Локализация
Сборка света (в продакшн)
Иконки в таск баре
1
2
3
4
5
6
7
8
9
Обновление версий движка
Следить (читать длинные списки изменений)
Ждать первых минорных версий перед полным переездом
Не ждать роста разницы
Писать плагины
1
2
3
4
5
6
7
8
9
Обучать все отделы BP и прочему инструментарию
Делать фичи законченными, каждая фича должна иметь осязаемый результат
Почаще рефакторить проект, стараться переосмыслять новые изменения
Не хранить исходники арта в системе контроля версий
Плагины вместо модифицированных версий движка
Выводы
Вопросы и ответы

Mais conteúdo relacionado

Semelhante a Организация работы с UE4 в команде до 20 человек

ROS - Robotics Operation System
ROS - Robotics Operation SystemROS - Robotics Operation System
ROS - Robotics Operation System
hudvin
 
Java. Lecture 12. Development Tools
Java. Lecture 12. Development ToolsJava. Lecture 12. Development Tools
Java. Lecture 12. Development Tools
colriot
 
что и почему вы должны программировать на Erlang.максим лапшин. зал 4
что и почему вы должны программировать на Erlang.максим лапшин. зал 4что и почему вы должны программировать на Erlang.максим лапшин. зал 4
что и почему вы должны программировать на Erlang.максим лапшин. зал 4
rit2011
 
лустин статические анализаторы систем 1с ad2015
лустин   статические анализаторы систем 1с ad2015лустин   статические анализаторы систем 1с ad2015
лустин статические анализаторы систем 1с ad2015
Magneta AI
 
инструменты веб разработчика
инструменты веб разработчикаинструменты веб разработчика
инструменты веб разработчика
Softline
 
"Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно..."Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно...
it-people
 

Semelhante a Организация работы с UE4 в команде до 20 человек (20)

ROS - Robotics Operation System
ROS - Robotics Operation SystemROS - Robotics Operation System
ROS - Robotics Operation System
 
Java. Lecture 12. Development Tools
Java. Lecture 12. Development ToolsJava. Lecture 12. Development Tools
Java. Lecture 12. Development Tools
 
Л9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложенийЛ9: Взаимодействие веб-приложений
Л9: Взаимодействие веб-приложений
 
Проблемы и пути их решения при командной разработке проектов
Проблемы и пути их решения при командной разработке проектовПроблемы и пути их решения при командной разработке проектов
Проблемы и пути их решения при командной разработке проектов
 
презентация.1
презентация.1презентация.1
презентация.1
 
Экосистема или зоопарк / Федор Щудло (EastBanc Technologies)
Экосистема или зоопарк / Федор Щудло (EastBanc Technologies)Экосистема или зоопарк / Федор Щудло (EastBanc Technologies)
Экосистема или зоопарк / Федор Щудло (EastBanc Technologies)
 
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs..."How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
 
что и почему вы должны программировать на Erlang.максим лапшин. зал 4
что и почему вы должны программировать на Erlang.максим лапшин. зал 4что и почему вы должны программировать на Erlang.максим лапшин. зал 4
что и почему вы должны программировать на Erlang.максим лапшин. зал 4
 
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав БахмутовПлюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
Плюсы и минусы Go для разработчиков на C++, Вячеслав Бахмутов
 
Внедрение параллельного рендеринга в игровой движок
Внедрение параллельного рендеринга в игровой движокВнедрение параллельного рендеринга в игровой движок
Внедрение параллельного рендеринга в игровой движок
 
DevHub 3 - CVS
DevHub 3 - CVSDevHub 3 - CVS
DevHub 3 - CVS
 
Smalltalk в распределённых системах реального времени
Smalltalk в распределённых системах реального времениSmalltalk в распределённых системах реального времени
Smalltalk в распределённых системах реального времени
 
лустин статические анализаторы систем 1с ad2015
лустин   статические анализаторы систем 1с ad2015лустин   статические анализаторы систем 1с ad2015
лустин статические анализаторы систем 1с ad2015
 
Cтатические анализаторы систем 1с AgileDays 2015
Cтатические анализаторы систем 1с AgileDays 2015Cтатические анализаторы систем 1с AgileDays 2015
Cтатические анализаторы систем 1с AgileDays 2015
 
инструменты веб разработчика
инструменты веб разработчикаинструменты веб разработчика
инструменты веб разработчика
 
Hl Nekoval
Hl NekovalHl Nekoval
Hl Nekoval
 
Machine learning c использованием нейронных сетей, Дмитрий Лапин
Machine learning c использованием нейронных сетей, Дмитрий ЛапинMachine learning c использованием нейронных сетей, Дмитрий Лапин
Machine learning c использованием нейронных сетей, Дмитрий Лапин
 
"Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно..."Девопс - это не только для программистов. Практические примеры из жизни одно...
"Девопс - это не только для программистов. Практические примеры из жизни одно...
 
управление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложенийуправление сборками и развертыванием веб приложений
управление сборками и развертыванием веб приложений
 
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
Разработка портируемой инфраструктуры New Relic — контейнеры, CoreOS и прочие...
 

Mais de Sperasoft

Mais de Sperasoft (20)

особенности работы с Locomotion в Unreal Engine 4
особенности работы с Locomotion в Unreal Engine 4особенности работы с Locomotion в Unreal Engine 4
особенности работы с Locomotion в Unreal Engine 4
 
концепт и архитектура геймплея в Creach: The Depleted World
концепт и архитектура геймплея в Creach: The Depleted Worldконцепт и архитектура геймплея в Creach: The Depleted World
концепт и архитектура геймплея в Creach: The Depleted World
 
Опыт разработки VR игры для UE4
Опыт разработки VR игры для UE4Опыт разработки VR игры для UE4
Опыт разработки VR игры для UE4
 
Gameplay Tags
Gameplay TagsGameplay Tags
Gameplay Tags
 
Data Driven Gameplay in UE4
Data Driven Gameplay in UE4Data Driven Gameplay in UE4
Data Driven Gameplay in UE4
 
Code and Memory Optimisation Tricks
Code and Memory Optimisation Tricks Code and Memory Optimisation Tricks
Code and Memory Optimisation Tricks
 
The theory of relational databases
The theory of relational databasesThe theory of relational databases
The theory of relational databases
 
Automated layout testing using Galen Framework
Automated layout testing using Galen FrameworkAutomated layout testing using Galen Framework
Automated layout testing using Galen Framework
 
Sperasoft talks: Android Security Threats
Sperasoft talks: Android Security ThreatsSperasoft talks: Android Security Threats
Sperasoft talks: Android Security Threats
 
Sperasoft Talks: RxJava Functional Reactive Programming on Android
Sperasoft Talks: RxJava Functional Reactive Programming on AndroidSperasoft Talks: RxJava Functional Reactive Programming on Android
Sperasoft Talks: RxJava Functional Reactive Programming on Android
 
Sperasoft‬ talks j point 2015
Sperasoft‬ talks j point 2015Sperasoft‬ talks j point 2015
Sperasoft‬ talks j point 2015
 
Effective Мeetings
Effective МeetingsEffective Мeetings
Effective Мeetings
 
Unreal Engine 4 Introduction
Unreal Engine 4 IntroductionUnreal Engine 4 Introduction
Unreal Engine 4 Introduction
 
JIRA Development
JIRA DevelopmentJIRA Development
JIRA Development
 
Introduction to Elasticsearch
Introduction to ElasticsearchIntroduction to Elasticsearch
Introduction to Elasticsearch
 
MOBILE DEVELOPMENT with HTML, CSS and JS
MOBILE DEVELOPMENT with HTML, CSS and JSMOBILE DEVELOPMENT with HTML, CSS and JS
MOBILE DEVELOPMENT with HTML, CSS and JS
 
Quick Intro Into Kanban
Quick Intro Into KanbanQuick Intro Into Kanban
Quick Intro Into Kanban
 
ECMAScript 6 Review
ECMAScript 6 ReviewECMAScript 6 Review
ECMAScript 6 Review
 
Console Development in 15 minutes
Console Development in 15 minutesConsole Development in 15 minutes
Console Development in 15 minutes
 
Database Indexes
Database IndexesDatabase Indexes
Database Indexes
 

Último

СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
Хроники кибер-безопасника
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
Хроники кибер-безопасника
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Ирония безопасности
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
Хроники кибер-безопасника
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
Хроники кибер-безопасника
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
Ирония безопасности
 

Último (9)

СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdfСИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
СИСТЕМА ОЦЕНКИ УЯЗВИМОСТЕЙ CVSS 4.0 / CVSS v4.0 [RU].pdf
 
MS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdfMS Navigating Incident Response [RU].pdf
MS Navigating Incident Response [RU].pdf
 
2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf2023 Q4. The Ransomware report. [RU].pdf
2023 Q4. The Ransomware report. [RU].pdf
 
Ransomware_Q3 2023. The report [RU].pdf
Ransomware_Q3 2023.  The report [RU].pdfRansomware_Q3 2023.  The report [RU].pdf
Ransomware_Q3 2023. The report [RU].pdf
 
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
Cyber Defense Doctrine Managing the Risk Full Applied Guide to Organizational...
 
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdfMalware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
Malware. DCRAT (DARK CRYSTAL RAT) [RU].pdf
 
Cyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdfCyberprint. Dark Pink Apt Group [RU].pdf
Cyberprint. Dark Pink Apt Group [RU].pdf
 
CVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdfCVE. The Fortra's GoAnywhere MFT [RU].pdf
CVE. The Fortra's GoAnywhere MFT [RU].pdf
 
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
ИСТОЧНИКИ ИННОВАЦИОННОСТИ КИТАЯ (ПО ВЕРСИИ DGAP) | The Sources of China’s Inn...
 

Организация работы с UE4 в команде до 20 человек

Notas do Editor

  1. 2 года назад мы запустили большой проект под кодовым названием Echo, это мультиплеерный класс басед шутер с упором на тактику про рыцарей-мехов. Был долгий предпродакшн, Проект находится в активной стадии примерно год. Мы готовим на май закрытый альфа тест.
  2. HighNoon - это джемовский проект, которым команда занималась некороткое время с ноября по март этого года.
  3. Максимальное использование движка на всех этапах разработки. канбана: виды все в одной доске и задачу делает ответственная миникомманда (проседает арт) Либо есть доски по отделам Важно чтобы всегда был стабильный и рабочий develop, потому что все остальное идет от него.
  4. Мы разделяем нашу работу по компетенциям и ролям. Роль - это то, что определяет тебя в пайплайне, компетенция - то что сотрудник может улучшить в проекте. Роль может быть переходящей, интегрировать контент умеют практически все участники процесса, писать фичи умеют как дизайнеры так и скриптеры так и программисты, просто кто-то из участников делает это лучше, поэтому мы стараемся, чтобы фичу делал тот кто наиболее эффективно с ней справляется. С другой стороны, этот подход позволяет развиваться тем, кто не имеют компетенцию, а за счет того, что все находятся в опенспейсе, человек который хочет научится, лего получит помощь. Именно по этим причинам у нас нет острой необходимости менеджмента, так как какждый может взять на себя эту роль и помочь с производством. В ситуации, когда инициатива и возможность взять на себя дополнительные функции поощряется и невозброняется, это в сумме дает прирост в работоспособности и стрессоустойчивости коллектива, хотя мы и можем проседать, если кто-то обучается во время выполнения задачи. Вобщем это то к чему мы стремимся, понятно, что не всегда всё удачно получается. Однако при наеме это мотивирует нанимать разнонаправленно развитых людей, которым условно интересно множество сфер разраб
  5. Задача должна быть понятна, любому случайному читателю (в идеале) и должна отвечать на вопрос (что сделать?) Все задачи дб законченным целым, поэтому задача не уходит программисту без минимального пака арта. Про тестирование Минимальный размер фичи Фича не может быть не ценной для игрока, от этого все идет: Фичи большие пласты работы В фичу закладывается рефакторниг Тестированние происходит параллельно Синхронизация с двелопом Песочница для песочницы для песочницы
  6. Есть два вида прототипа: 1. Это фича написанная плохой код, который полностью или частично реализует некторую фичу 2. Это фича сделанная на временном арте или вообще без арта Мы стараемся придежриваться первого варианта и не делать проптотипы потому что: Механика может помочь на в будщем Если механика плохо реализуется, значит были совершены ошибка во время проектирования их всё равно нужно править Если делать прототип на костылях, нужно еще в потора больше времени, чтобы его причесать Экономия прототипа должна заключаться в кол-ве людей на нем задействованных, а не вкол-ве работы. И тем не менее иногда для реализации фичи нужно много арта, поэтому его отсутвие в большинстве случаев не может фатально повлиять на принятие решения оставлять протоип или не стоит.
  7. Мы не заливаем FBXы и исходные файлы в систему контроля версий. Вместо этого используется сетевой диск. Один для интеграции (для того чтобы пути до исходного FBX файла всегда были одинаковы), другой для хранения исходников. Оба диска бэкапяться раз в три дня. Нет идеальной структуры папок, которая бы казалось идеальной для всех участников. Мы просто разделяем файлы сначала по типу, затем по специфике. Но я рекомендую использовать коллекции для своих нужд.
  8. Git очень мощный иснтрумент для работы с множеством веток. Но не хватает лока файлов. Perforce нужно серьезно админить и настраивать. Git сильно разрастается и выедает очень много ресурсов на пользовательском PC. Упаковка и распаковка. Для того чтобы избежать этого лучше использовать Git LFS. SmartGit его поддерживает. Самое сложное -- это конфликты бинарных файлов. В случае с uasset-s все более менее ясно. Есть инструмент который показывает разницу. В последнее время он не глючит. С картами всё сложнее их придется лочить, что сильно осложняет разработку. Эпики обсуждают возможность создать сервер совместного редактирования бинарных файлов. Когда разработка в самом разгаре нужно завести ключ на карту и вести все изменения в одной ветке.
  9. Если проект большой, нужно почаще собирать основную ветку в шиппинг, чтобы быть в курсе возможных проблем. Мы отстраивали автосборку, чтобы ускорить работу и собирать выделенный сервер в любой момент. Минорные ошибки в BP могут не пропустить сборку Shipping версии. Сигнатуры + изменения объектов у которого берутся дефолтные поля Для временных фичей лучше завести ноду IsShipping. Локализацию лучше готовить заранее использовать TEXT вместо String, инсутрементарий крутой. Иконка в таскбаре так и не пофикшена, так что лучше заранее сделать следющее:
  10. Всё это хорошо работает, если писать плагины и не влезать в код. Держать максимальную развязанность кода и рефакторинг. Не ждать роста разницы с движком, потому что в будущем будет крутая фича, которая обязательно понадобиться, но её не будет. Для того чтобы не исправлять код движка лучше писать плагины. Так эффективнее их можно довести до релиза и продавать.