После установки интерфейса Automated Driving Toolbox™ Interface для Unreal Engine® 4 Projects support package как описано в Пакет поддержки установки для пользовательской настройки сцен, можно симулировать в пользовательских сценах одновременно из обоих Unreal® Редактор и Simulink®. Используя эту среду ко-симуляции, можно добавить транспортные средства и датчики к модели Simulink, а затем запустить эту симуляцию в пользовательской сцене.
Если открыть файл проекта Unreal непосредственно в редакторе Unreal, Simulink не сможет установить связь с редактором. Чтобы установить это соединение, вы должны открыть свой проект из модели Simulink.
Откройте модель Simulink, сконфигурированную для симуляции в среде Unreal Engine. Как минимум, модель должна содержать блок Simulation 3D Scene Configuration. Например, откройте простую модель, которая имитирует транспортное средство, движущийся по прямой магистрали. Эта модель используется в примере Design Lane Marker Detector Using Unreal Engine Simulation Environment.
openExample('driving/VisualPerceptionIn3DSimulationExample') open_system('straightRoadSim3D')
В Simulation 3D Scene Configuration блоке этой модели установите параметр Scene source равным Unreal Editor
.
В параметре Project найдите файл проекта, содержащий сцены, которые вы хотите настроить.
Например, этот пример пути задает AutoVrtlEnv
проект, который поставляется с пакетом поддержки Automated Driving Toolbox Interface for Unreal Engine 4 Projects.
C:\Local\AutoVrtlEnv\AutoVrtlEnv.uproject
Z:\UnrealProjects\myProject\myProject.uproject
Нажмите Open Unreal Editor. Редактор Unreal открывает и загружает сцену из проекта.
Первый раз, когда вы открываете Редактор из Simulink, вас могут попросить перестроить UE4Editor
Файлы DLL или AutoVrtlEnv
модуль. Щелкните Yes, чтобы перестроить эти файлы или модули. Редактор также предлагает вам, чтобы новые плагины были доступны. Нажмите Manage Plugins и убедитесь, что плагин MathWorks Interface установлен. Этот плагин является MathWorksSimulation.uplugin
файл, скопированный в установку Редактор в разделе Install Support Package for Customizing Scenes.
Когда откроется редактор, можно игнорировать любые предупреждающие сообщения о файлах с именем '_BuiltData'
который не удалось загрузить.
Если вы получаете предупреждение о необходимости перестроения подсветки, на панели инструментов над окном редактора выберите Build > Build Lighting Only. Редактор выдает это предупреждение при первом открытии сцены или при добавлении новых элементов к сцене. Чтобы использовать подсветку, которое поставляется с AutoVrtlEnv
в разделе «Automated Driving Toolbox» см. раздел «Использование Подсветки проекта AutoVrtlEnv в пользовательской сцене».
Примечание
Если вы используете сцену из AutoVtrlEnv
или RRScene
проект, являющийся частью пакета поддержки Automated Driving Toolbox Interface for Unreal Engine 4 Projects, пропустите этот раздел. Однако, если вы создаете новую сцену, основанную на одной из сцен в этом проекте, то необходимо завершить этот раздел.
Первый раз, когда вы открываете пользовательскую сцену из Simulink, вам нужно связать, или reparent, этот проект с чертежом уровня Sim3dLevelScriptActor, используемым в Automated Driving Toolbox. Этот level blueprint управляет взаимодействием объектов со окружением Unreal Engine, когда они помещаются в нее. Simulink возвращает ошибку в начале симуляции, если проект не восстановлен. Необходимо репаратировать каждую сцену в пользовательском проекте отдельно.
Для повторного оформления проекта уровня выполните следующие шаги:
На панели редакторов выберите Blueprints > Open Level Blueprint.
В окне Концептуальный проект уровня выберите File > Reparent Blueprint.
Щелкните на Sim3dLevelScriptActor концептуальном проекте. Если вы не видите перечисленный Sim3dLevelScriptActor концептуальный проект, используйте эти шаги, чтобы проверить, есть ли у вас MathWorksSimulation
плагин установлен и включен:
На панели редакторов выберите Settings > Plugins.
В окне Plugins проверьте, что MathWorks Interface плагин указан в установленном окне. Если плагин еще не включен, установите флажок Enabled.
Если вы не видите MathWorks Interface плагина в этом окне, повторите шаги в разделе Копировать плагин MathWorksSimulation в Unreal Editor и снова откройте редактор из Simulink.
Закройте редактор и снова откройте его из Simulink.
Закройте окно Level Blueprint.
После открытия редактора из Simulink можно изменить сцены в проекте или создать новые сцены.
В редакторе Unreal Editor сцены в проекте называются levels. Уровни бывают нескольких типов, и сцены имеют тип map уровня.
Чтобы открыть предварительно построенную сцену из AutoVrtlEnv.uproject
или RRScene.uproject
Файл в Content Browser панели под окном редактора перейдите в папку Content > Maps. Затем выберите карту, которая соответствует сцене, которую вы хотите изменить.
В этой таблице показаны имена карт в AutoVrtlEnv
проект в том виде, в котором они появляются в редакторе Unreal. Он также показывает их соответствующие имена сцен, так как они появляются в параметре Scene name блока Simulation 3D Scene Configuration.
Нереальная карта редактора | Сцена Automated Driving Toolbox |
---|---|
HwCurve | Curved Road |
DblLnChng | Double Lane Change |
BlackLake | Open Surface |
LargeParkingLot | Large Parking Lot |
SimpleLot | Parking Lot |
HwStrght | Straight Road |
USCityBlock | US City Block |
USHighway | US Highway |
Примечание
The AutoVrtlEnv.uproject
файл не включает Virtual Mcity сцену.
The RRScene
проект содержит только одну сцену: RRHighway
. Эта сцена используется в примере Highway Lane Following with RoadRunner Scene и не выбирается из параметра Scene name блока Simulation 3D Scene Configuration.
Чтобы открыть сцену в рамках собственного проекта, на панели Content Browser перейдите к папке, которая содержит ваши сцены.
Чтобы создать новую сцену в проекте, в левом верхнем меню редактора выберите File > New Level.
Также можно создать новую сцену из существующей. Этот метод полезен, например, если вы хотите использовать одну из предварительно построенных сцен в AutoVtrlEnv
проект как начальная точка для создания собственной сцены. Чтобы сохранить версию текущей открытой сцены в проекте, в левом верхнем меню редактора выберите File > Save Current As. Новая сцена сохранена в том же месте, что и существующая сцена.
В ваших сценах можно задать траекторные точки пути, которым могут следовать транспортные средства в вашей сцене.
Если ваша сцена основана на одной из предварительно построенных сцен в AutoVrtlEnv
затем задайте путевые точки, используя процесс, описанный в примере Select Waypoints for Unreal Engine Simulation. В этом примере показано, как в интерактивном режиме рисовать путевые точки на 2-D сверху вниз картах предварительно построенных сцен.
Если ваша сцена не основана на предварительно построенной сцене, то перед использованием примера «Выбор путевых точек для Unreal Engine Simulation» необходимо сначала сгенерировать карту вашей сцены. Смотрите Создание карты сверху вниз нереальной сцены Engine.
В редакторе Unreal элементы в сцене называются assets. Чтобы добавить ресурсы в сцену, можно просмотреть или найти их в панели Content Browser внизу и перетащить их в окно редактора.
При добавлении активов к сцене, которая находится в AutoVrtlEnv
проект, вы можете выбрать из библиотеки активов, связанных с вождением. Эти активы создаются как static meshes и начинаются с префикса SM_
. Поиск этих объектов на панели Content Browser.
Например, добавьте знак остановки к сцене в AutoVrtlEnv
проект.
На панели Content Browser в нижней части редактора перейдите к папке Content.
В строке поиска выполните поиск SM_StopSign
. Перетащите знак упора из Content Browser в окно редактирования. Затем можно изменить положение знака упора в окне редактирования или на панели Details справа в разделе Transform.
Редактор нереальных данных использует левую Z систему координат вверх, где ось Y указывает вправо. В Automated Driving Toolbox используется правая система координат Z вверх, где ось Y указывает налево. При позиционировании объектов в сцене следует иметь в виду это различие в системе координат. В двух системах координат положительные и отрицательные знаки для значений Y оси и угла тангажа обращены назад.
Дополнительные сведения об изменении сцен и добавлении активов см. в документации Unreal Engine 4.
Как перенести ресурсы из AutoVrtlEnv
сцена в RRScene
проект или ваш собственный проект, см. Миграция активов в документации Unreal Engine.
Чтобы получить семантические данные сегментации из сцены, необходимо применить идентификаторы шаблона к объектам, добавленным к сцене. Для получения дополнительной информации см. раздел «Применение меток семантической сегментации к пользовательским сценам».
AutoVrtlEnv
Проектирование подсветки в пользовательской сценеЧтобы использовать подсветку, которое поставляется с AutoVrtlEnv
проект в Automated Driving Toolbox, выполните следующие шаги.
На вкладке World Settings очистите Force no precomputed lighting.
В разделе Build выберите Lighting Quality > Production, чтобы перестроить карты с качеством производства. Перестроение больших карт может занять время.
Проверьте, что модель Simulink и Unreal Editor сконфигурированы для совместного моделирования путем выполнения тестовой симуляции.
В модели Simulink нажмите Run.
Поскольку источником сцен является проект, открытый в Unreal Editor, симуляция не запускается. Вместо этого необходимо запустить симуляцию из редактора.
Убедитесь, что в окне Diagnostic Viewer в Simulink отображается следующее сообщение:
In the Simulation 3D Scene Configuration block, you set the scene source to 'Unreal Editor'. In Unreal Editor, select 'Play' to view the scene.
Это сообщение подтверждает, что Simulink создал экземпляры транспортных средств и других объектов в среде Unreal Engine.
В редакторе Unreal Editor нажмите Play. Симуляция выполняется в сцене, открытой в редакторе Unreal.
Если ваша модель Simulink содержит транспортные средства, эти транспортные средства перемещаются по сцене, которая открыта в редакторе.
Если ваша модель Simulink включает датчики, эти датчики захватывают данные из сцены, которая открыта в редакторе.
Чтобы управлять представлением сцены во время симуляции, в блоке Simulation 3D Scene Configuration выберите имя транспортного средства из параметра Scene view. Чтобы изменить вид сцены при выполнении симуляции, используйте числовую клавиатуру в редакторе. Таблица показывает положение камеры, отображающей сцену, относительно транспортного средства, выбранного в параметре Scene view.
Ключ | Поле зрения камеры | |
---|---|---|
1 | Назад налево |
|
2 | Назад | |
3 | Назад справа | |
4 | Левый | |
5 | Внутренний | |
6 | Правильно | |
7 | Спереди налево | |
8 | Фронт | |
9 | Передний правый | |
0 | Наверху |
Чтобы перезапустить симуляцию, щелкните Run в модели Simulink, подождите, пока Diagnostic Viewer не отобразит сообщение подтверждения, и затем нажмите Play в редакторе. Если нажать Play перед началом симуляции в модели, связь между Simulink и Unreal Editor не будет установлена, и редактор отобразит пустую сцену.
Если вы совместно моделируете пользовательский проект, чтобы включить числовую клавиатуру, скопируйте DefaultInput.ini
файл из папки установки пакета поддержки в пользовательскую папку проекта. Для примера скопируйте DefaultInput.ini
от:
C:\ProgramData\MATLAB\SupportPackages\<MATLABRelease>\toolbox\shared\sim3dprojects\driving\AutoVrtlEnv\Config
кому:
C:\<yourproject>.project\Config
После настройки пользовательской сцены на основе результатов симуляции можно упаковать сцену в исполняемый файл. Для получения дополнительной информации см. раздел «Упаковать пользовательские сцены в исполняемый файл».
Simulation 3D Scene Configuration