Плагін Multi-User Editing (MUE) для Unreal Engine — це чудовий інструмент, який дозволяє командам працювати разом у реальному часі в Unreal Engine. Хоча плагін зараз знаходиться в статусі бета-версії, мені вдалося досягти вражаючих результатів, просто експериментуючи з ним. У поєднанні з плагіном для контролю версій від Diversion ви зможете значно прискорити процес співпраці та розробки проектів вашою командою.
Плагін Multi-User Editing від Epic вже вбудований в Unreal Engine
Варто зазначити, що MUE працює тільки тоді, коли робочі станції знаходяться в одній мережі, тому вам необхідно бути в тому ж цифровому просторі, що й ті, з ким ви співпрацюєте. Офіційна документація Epic вказує, що MUE може бути нестабільним при роботі через VPN, однак вони також надають інструкції, як налаштувати використання через VPN.
Налаштування проекту в UE5
Я буду використовувати версію Unreal Engine 5.4.4, щоб продемонструвати можливості плагіна, але це можна зробити і з будь-яким проектом. Почнемо з того, що створимо новий проект, використовуючи шаблон Third Person.
Якщо ви ще не встановили плагін Diversion, настійно рекомендую звернути на нього увагу. Цей плагін дозволяє користувачеві керувати основними функціями контролю версій безпосередньо в редакторі Unreal Engine, і я вважаю, що на даний момент це найкраще рішення на ринку для систем контролю версій в UE5.
Плагін контролю версій Diversion доступний безкоштовно на ринку Fab
Цей плагін можна знайти безкоштовно на Fab (раніше це був Epic Marketplace). Для більш детальної інформації про плагін Diversion, ви можете ознайомитись з документацією.
Також нам потрібно встановити плагін MUE. Це можна зробити безпосередньо з редактора UE5, оскільки він є частиною стандартного ігрового рушія.
В редакторі UE5 виберіть Edit, а потім Plugins.
Це відкриє менеджер плагінів. Ми можемо знайти плагін MUE і поставити галочку для його встановлення. Оскільки цей плагін ще в бета-версії, ви отримаєте попередження, що не слід публікувати проект. Натисніть “Yes.”
Потім ви отримаєте ще одне попередження внизу редактора, яке повідомляє, що редактору потрібно перезапуститися. Спершу встановимо плагін Diversion, щоб перезапустити редактор лише один раз.
Знайдіть плагін Diversion і також поставте галочку поруч із ним.
Перезапустіть редактор.
Створення репозиторію Diversion
Як тільки плагін буде встановлено та активовано в Unreal Engine, ми можемо налаштувати репозиторій безпосередньо в Unreal Engine, вибравши випадаюче меню Source Control в правому нижньому кутку редактора і вибравши “Connect to Revision Control”. Потім виберіть Diversion у випадаючому меню Provider.
Відкриється нове вікно. Перевірте, чи правильно вказано шлях до файлу в Root репозиторію. Виберіть Initialize project with Diversion.
Натисніть Accept Settings, щоб закрити це вікно.
Ви отримаєте повідомлення про успішне підключення, а в Revision Control з'явиться зелена галочка, що вказує на те, що ваш проект тепер підключений до системи контролю версій.
Завантаження проекту до віддаленого репозиторію займе деякий час, перш ніж ви зможете отримати до нього доступ з іншого комп'ютера. Ви можете перевірити статус завантаження в настільному додатку Diversion. Коли індикатор у верхній частині зміниться з Syncing на хмару з галочкою, завантаження завершено.
Після цього ви зможете отримати доступ до файлів проекту з іншого комп'ютера. Якщо ви відправляєте проект іншому користувачеві (з іншим акаунтом Diversion), спочатку потрібно додати його як співробітника до вашого проекту. У додатку Diversion на комп'ютері виберіть випадаюче меню локального робочого простору та виберіть Repo Collaborators.
Шукайте електронну пошту людини, яку хочете запросити, і натискайте Send invite.
Другий співробітник повинен прийняти запрошення, яке надійде на його електронну пошту. Потім, у додатку Diversion на його комп'ютері, з'явиться новий репозиторій. Виберіть “Clone Repo”.
Перейдіть до місця, куди хочете встановити проект. Виберіть Clone, і почнеться завантаження. Після завершення завантаження ви зможете почати роботу.
Підключення проекту до MUE
В редакторі UE5 виберіть Window, а потім Multi-User Browser, щоб відкрити інтерфейс MUE.
Один користувач повинен створити сервер, до якого зможуть підключитися інші користувачі. Той, хто буде хостити сервер, повинен вибрати Launch a Server в центрі вікна.
Відкриється нове вікно з переліком сеансів. Якщо жоден сеанс не відкрито, потрібно створити новий.
Створення сеансу
Поверніться до вікна Mulit-User Browser, і ви помітите, що з'явилася опція створити сеанс. Це можна зробити, вибравши кнопку в лівому верхньому куті або кнопку в центрі браузера.
Придумайте назву для вашого сеансу і натисніть зелену галочку, щоб запустити сеанс.
Тепер ви побачите, що приєдналися до сеансу.
Давайте підключимо другий робочий стіл. На другому комп'ютері відкрийте проект в редакторі UE5. Виберіть Window, а потім Multi-User Browser, щоб відкрити інтерфейс MUE.
Тепер ви повинні побачити сеанс, який ми створили на першому комп'ютері. Клацніть на сеанс і зверніть увагу, що внизу екрана з'явиться список клієнтів. Натисніть Join Session, щоб приєднатися до сеансу.
Тепер ми можемо бачити інших користувачів у редакторі UE5 і їх зміни в проекті в реальному часі!
Обробка транзакцій MUE
Вікно сеансу дасть нам корисну інформацію про те, що відбувається в сеансі. Ми можемо побачити список всіх клієнтів, на якому рівні вони зараз працюють і де саме на цьому рівні знаходяться. Розділ History внизу також надасть нам список усіх змін, які були внесені до рівня під час цього сеансу.
Зміни називаються транзакціями (Transactions).
Це працює шляхом створення точки початку рівня, коли розпочинається сесія. Усі зміни рівня під час сесії записуються від початкової точки сесії.
Приклад
- Створити нового актора
- Додати компонент статичної сітки до актора
- Змінити матеріал статичної сітки
- Додати актора до мого рівня
- Перемістити актора в рівні.
Усі клієнти зможуть бачити ці зміни в реальному часі. Кожен клієнт також може вносити власні зміни до актора в реальному часі.
Збереження змін з MUE-сесії
Коли ми завершуємо сесію, або навіть періодично під час сесії, ми хочемо зберегти зміни.
Натисніть кнопку Revision Control у правому нижньому куті редактора UE5, потім виберіть Persist Session Changes.
Відкриється нове вікно, яке покаже нам усі зміни, що були зроблені під час сесії. Зверніть увагу, що ми маємо можливість безпосередньо з цього вікна надіслати зміни в систему керування версіями. Також є можливість скасувати вибір будь-яких змін, які ви не хочете зробити постійними. Коли ви готові продовжити, натисніть кнопку Persist у правому нижньому куті вікна.
Тепер ваші зміни є частиною рівня, і будь-хто, хто не був у сесії (і має найактуальнішу версію проекту), зможе побачити ці зміни.
Завершення сесії
Коли ви завершите сесію, можна вийти, просто натиснувши кнопку Leave Session у правому верхньому куті вікна Multi-User Browser.
Якщо ви є хостом сервера, ви також можете завершити роботу сервера, вибравши кнопку в вікні Multi-User Browser (не забудьте попередити всіх перед тим!).
Висновок
Плагін Multi-User Editing революціонізує співпрацю в UE5, і його потужність безсумнівна, коли він використовується в поєднанні з системою контролю версій Diversion. Хоча ще є деякі помилки, я думаю, що ця система стане ще потужнішою в майбутньому, і я з нетерпінням чекаю фінальної версії після завершення бета-тестування. Сподіваюся, що ви та ваша команда знайдете час для експериментів з нею. Думаю, ви також відчуєте всю її потужність.
Перекладено з: Utilizing Multi-User Editing and Diversion