Комментарии 9
Привет! Немного критики :)
> В один момент я почти поверил в то, что никто не использует удалённую сборку, или это что-то элементарное, но именно отсутствие внятной документации и немногочисленные статьи с устаревшей информацией и вынудили меня написать этот материал, который, надеюсь, поможет читателям оптимизировать процесс сборки кросс-платформенных приложений.
1. Во-первых, совершенно незачем использовать ручную конфигурацию rsync'а, когда достаточно дать remote control для юзера. См. docs.unrealengine.com/en-US/Platforms/Mobile/iOS/Windows/index.html, конфигурация для удаленной сборки уже давно превратилась в «пройди по доке и все работает».
2. Описанный вариант это НЕ оптимальный вариант :) Да, никто (ок, 99%) не использует удаленную сборку таким образом для целей продакшна. Это костыль, оставшийся от UE3 и нужный скорее для экспериментов и проектов с минимумом C++ кода, который как бы есть, но время его сборки — незначительно.
Потому что:
— если тебе нужно дебажить и профайлить билд: ты идешь к маку и аттачишься к нему через Xcode
— если тебе нужен билд на «поиграть/потестить» или «на релиз»: ты делаешь сборку через CI/CD и получаешь либо ипашку, либо апдейт в файрбейзе/аппцентре.
Более того, remote build:
— не собирает шейдаки в бинари, они идут в текстовом виде
— у него нет инкрементальной компиляции, полная пересборка every time
— не поддерживает сборку плагинов или проектов, использующие статик либы (никаких «ашек»)
Т.е. такой билд не предназначен ни для дебага, ни отладки, ни релиза.
В любом случае, статье плюсик, как минимум это пример альтернативной конфигурации и настройки rsync'а, что бывает полезно :)
> В один момент я почти поверил в то, что никто не использует удалённую сборку, или это что-то элементарное, но именно отсутствие внятной документации и немногочисленные статьи с устаревшей информацией и вынудили меня написать этот материал, который, надеюсь, поможет читателям оптимизировать процесс сборки кросс-платформенных приложений.
1. Во-первых, совершенно незачем использовать ручную конфигурацию rsync'а, когда достаточно дать remote control для юзера. См. docs.unrealengine.com/en-US/Platforms/Mobile/iOS/Windows/index.html, конфигурация для удаленной сборки уже давно превратилась в «пройди по доке и все работает».
2. Описанный вариант это НЕ оптимальный вариант :) Да, никто (ок, 99%) не использует удаленную сборку таким образом для целей продакшна. Это костыль, оставшийся от UE3 и нужный скорее для экспериментов и проектов с минимумом C++ кода, который как бы есть, но время его сборки — незначительно.
Потому что:
— если тебе нужно дебажить и профайлить билд: ты идешь к маку и аттачишься к нему через Xcode
— если тебе нужен билд на «поиграть/потестить» или «на релиз»: ты делаешь сборку через CI/CD и получаешь либо ипашку, либо апдейт в файрбейзе/аппцентре.
Более того, remote build:
— не собирает шейдаки в бинари, они идут в текстовом виде
— у него нет инкрементальной компиляции, полная пересборка every time
— не поддерживает сборку плагинов или проектов, использующие статик либы (никаких «ашек»)
Т.е. такой билд не предназначен ни для дебага, ни отладки, ни релиза.
В любом случае, статье плюсик, как минимум это пример альтернативной конфигурации и настройки rsync'а, что бывает полезно :)
0
Пардон, а актуальная документация не отображает реальность? Не докапываюсь, реально интересно качество документации у Анриала по этому вопросу и стоит ли ей доверять вообще.
0
В официальной документации отражены основные шаги, но не освещены некоторые подводные камни (login shell, корректность пути к проекту, настройка RSync)
0
Аргумент, конечно, сомнительный, но изначально все эти хождения по различным материалам и магия с RSync начались как раз из-за того, что стандартное решение из официальной документации упорно отказывалось работать :)
0
У меня по документации проблем не возникло. Так же можете почитать мою статью в дополнение к этой. Пункты 2.2-2.3, да и в целом всю статью можно — собран мой жизненный опыт по сборке под iOS.
0
По правде говоря, такой способ даже для тестов не сильно-то годиться. Куда удобнее использовать CI, зайти в браузере на страничку и нажать Build. Билд скачать сразу с нужного девайса минут через 5, чем грузить его вручную на телефон с ПК через провод. Особенно когда должно протестить игру сразу несколько человек.
Мы используем Мак-миник с Jenkins. Собираем на нем сразу Android и iOS. Удаленную сборку не использовали никогда, так как для разных платформ получаются разные пайплайны. А так все быстренько и удобно. Если не используете, очень советую.
Единственное, настроить сервер и сборку Unreal Engine таким образом небольшой гемор, но это один раз, когда не знаешь, что делать.
Мы используем Мак-миник с Jenkins. Собираем на нем сразу Android и iOS. Удаленную сборку не использовали никогда, так как для разных платформ получаются разные пайплайны. А так все быстренько и удобно. Если не используете, очень советую.
Единственное, настроить сервер и сборку Unreal Engine таким образом небольшой гемор, но это один раз, когда не знаешь, что делать.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Публикации
Изменить настройки темы
Используем macOS для удалённой сборки Unreal Engine билдов из-под Windows