メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

CARLA へのエクスポート

CARLA エクスポートの概要

RoadRunner では、シーンを CARLA シミュレーターにエクスポートできます。CARLA のエクスポートには、次の 2 つのオプションがあります。

  • CARLA: Unreal® Datasmith (.udatasmith) ファイルと ASAM OpenDRIVE® (.xodr) ファイルをエクスポートします。

  • CARLA Filmbox: Filmbox (.fbx) ファイル、一部メタデータの XML、および ASAM OpenDRIVE (.xodr) ファイルをエクスポートします。XML ファイルには、シーンのマテリアルのデータが含まれます。

CARLA 側または Unreal 側で、RoadRunner からエクスポートされたシーンのインポートを支援するプラグインが提供されています。

"CARLA プラグイン" を使用してエクスポートされたシーンの場合、Unreal 側で提供されているプラグインは、次を処理します。

  • マテリアルの設定

    • マテリアル データは Datasmith (.udatasmith) ファイルから読み込まれ、プラグインに含まれたベース マテリアルの 1 つの新しいインスタンスにデータをマッピングします。

    • 透明なマテリアルでは、拡散色の透過性に基づいて、半透明モードかマスク ブレンド モードのいずれかが選択されます。

  • インポートされた静的メッシュでコライダーを調整

    • インポート中に、新しく作成された静的メッシュ アセットの [Collision Complexity] オプションは、[Use Complex Collision As Simple] に設定されます。

  • 信号機の外観の設定

    • 信号機ロジックは、シミュレーターに設定されています。

  • ソフトウェア要件

    • CARLA 0.9.13

"CARLA Filmbox プラグイン" を使用してエクスポートされたシーンの場合、Unreal 側で提供されるプラグインは、XML ファイルに格納された情報を使用して、FBX® ファイルのインポートを支援します。このプラグインは次を処理します。

  • マテリアルの設定

    • マテリアル データは XML ファイルから読み込まれ、プラグインに含まれたベース マテリアルの 1 つの新しいインスタンスにデータをマッピングします。

    • 特定のマテリアルは、いずれかの CARLA マテリアルからインスタンス化されます。

    • 透明なマテリアルでは、拡散色の透過性に基づいて、半透明モードかマスク ブレンド モードのいずれかが選択されます。

  • インポートされた静的メッシュでコライダーを調整

    • インポート中に、新しく作成された静的メッシュ アセットの [Collision Complexity] オプションは、[Use Complex Collision As Simple] に設定されます。

  • 信号機の外観の設定

    • 信号機ロジックは、シミュレーターに設定されていません。

  • ソフトウェア要件

    • CARLA 0.9.13

プラグインのインストール

このセクションの手順に従って、Unreal プラグインをインストールします。

  1. CARLA をそのソースから構築します。詳細については、Building CARLA の手順にある「Windows® build」ページを参照してください。

  2. このプラグインの最新バージョンをダウンロードする手順については、プラグインのダウンロードを参照してください。

  3. RoadRunner Plugins zip ファイルを解凍し、"Unreal/Plugins" の下の RoadRunnerImporterRoadRunnerCarlaIntegrationRoadRunnerRuntimeRoadRunnerDatasmithRoadRunnerCarlaDatasmith、および RoadRunnerMaterials フォルダーを探します。

  4. RoadRunnerImporterRoadRunnerCarlaIntegrationRoadRunnerRuntimeRoadRunnerDatasmithRoadRunnerCarlaDatasmith、および RoadRunnerMaterials フォルダーを、(Carla フォルダーの横の) <carla>/Unreal/CarlaUE4/Plugins にある CarlaUE4 プロジェクト ディレクトリの下の Plugins フォルダーにコピーします。

    Plugins folder under CarlaUE4 project that contains the pasted RoadRunner folders

  5. プラグインを再構築します。まず、プロジェクト ファイルを生成します。

    • Windows を使用している場合には、.uproject ファイルを右クリックし、Generate Visual Studio project files を選択します。

    • Linux® を使用している場合には、コマンド ラインで次のコマンドを実行します。

      $UE4_ROOT/GenerateProjectFiles.sh -project="<CarlaFolderPath>/Unreal/CarlaUE4/CarlaUE4.uproject" -game -engine

      UE4_ROOT を Unreal Engine® インストール ディレクトリに設定します。

    次に、プロジェクトを開き、プラグインを構築します。Windows を使用している場合は、"x64 Native Tools Command Prompt for VS 2019" で "make launch" を実行して、プラグインをコンパイルし、エディターを起動します。

  6. プラグインが、[Edit][Plugins] の下に表示されます。このメニューに表示されない場合には、[Enabled] チェックボックスが有効になっているか確認します。

    Unreal Plugins window with RoadRunner Carla Integration and RoadRunner Importer plugins enabled

プラグインのコンテンツ

  • RoadRunnerImporter モジュール:

    • メタデータ ファイルが存在する場合に、既定の FBX インポーターをオーバーライドする

    • メタデータ ファイルを使用して新しいマテリアルで既定のマテリアルを上書きするオプション

    • 信号のデータとタイミングをインポートする

  • RoadRunnerRuntime モジュール:

    • 信号機の外観をコントロールするコンポーネントを含む

  • RoadRunnerCarlaIntegration モジュール:

    • 新しいマップを作成し、FBX をレベルにインポートする

    • セグメンテーション タイプに基づいて静的メッシュ アセットを移動する

    • CARLA マテリアルからインスタンス化された、天候効果用のマテリアルを作成する

    • ASAM OpenDRIVE ファイルからルートを生成する

  • RoadRunnerMaterials プラグイン:

    • インスタンスを作成するベース マテリアル

  • RoadRunnerDatasmith プラグイン:

    • メタデータの事後処理を実行する Dataprep アセット

    • 信号のデータとタイミングをインポートする

  • RoadRunnerCARLADatasmith プラグイン:

    • RoadRunner シーンを CARLA にインポートして、信号機を自動的に設定する。

RoadRunner から CARLA へエクスポート

CARLA プラグインを使用したエクスポート

CARLA プラグイン (.udatasmith + .xodr) は、CARLA へのエクスポートの推奨方法です。CARLA (.udatasmith + .xodr) プラグインを使用して RoadRunner シーンを CARLA にエクスポートすると、ASAM OpenDRIVE データを Datasmith ファイルとともにエクスポートすることができ、メタデータを Datasmith エクスポートに追加することもできます。メタデータには、信号化と ASAM OpenDRIVE ID が保存されます。CARLA エクスポート オプションは、著しく大きいシーンを CARLA にインポートする時間を短縮します。

CARLA (.udatasmith + .xodr) を使用して RoadRunner から Unreal にシーンをエクスポートするには、次の手順に従います。

  1. RoadRunner でシーンを開きます。

  2. CARLA (.udatasmith + .xodr) オプションを使用してシーンをエクスポートします。メニュー バーから、[File][Export][CARLA (.udatasmith, .xodr)] の順に選択します。

  3. [Export CARLA Road] ダイアログ ボックスで、メッシュ マージ オプションとタイル オプションを設定し、[Export] をクリックします。

  4. [Browse] を選択して [File] ダイアログ ボックスを開き、エクスポートしたファイルの名前とパスを設定します。Datasmith ファイルが、指定したフォルダーにエクスポートされます。

    • メッシュをセグメンテーション タイプで分割できます。メッシュの名前には、<segmentation type>Node が付いています。

    • [Export To Tiles] オプションが選択されていると、メッシュはタイルごとに分割されます。プロップは属するタイルごとにグループ化されます。

      • 既定の設定では、1 つのファイルのみがエクスポートされます。タイルは、個別のノードに格納されます。

      • [Export Individual Tiles] が有効な場合、各タイルはそれ自体の Datasmith ファイルに格納されます。

CARLA Filmbox を使用したエクスポート

より古いパイプラインによるエクスポートを使用する場合は、CARLA プラグイン (.fbx + .rrdata.xml + .xodr) オプションを使用します。CARLA Filmbox プラグイン (.fbx + .rrdata.xml + .xodr) オプションを使用して RoadRunner から CARLA にシーンをエクスポートするには、次の手順に従います。

  1. RoadRunner でシーンを開きます。

  2. [CARLA] オプションを使用してシーンをエクスポートします。メニュー バーから [File][Export][CARLA Filmbox (.fbx, .xodr, .rrdata.xml)] の順に選択します。

  3. [Export CARLA] ダイアログ ボックスで、必要に応じ、[FBX] タブでメッシュ タイルを、[OpenDRIVE] タブで ASAM OpenDRIVE のオプションを設定します。次に、[Export] をクリックします。

  4. [File] ダイアログ ボックスを表示し、エクスポートしたファイルの名前とパスを設定します。FBX、テクスチャ、XML、ASAM OpenDRIVE ファイルが同じフォルダーにエクスポートされます。

    • メッシュは、セグメンテーション タイプで分割できます。メッシュには、その名前に「<segmentation type>Node」が付いています。

    • [Export To Tiles] オプションが選択されていると、メッシュはタイルごとに分割され、プロップは属するタイルごとにグループ化されます。

      • 既定の設定では、1 つのファイルのみがエクスポートされます。タイルは、個別のノードに格納されます。

      • [Export Individual Tiles] が選択されていると、各タイルはそれ自体の FBX ファイルに格納されます。

    • メモ

      プラグインは、[Export Individual Tiles] オプションを完全にはサポートしていません。

CARLA へのインポート

CARLA へのインポート

RoadRunner シーンを CARLA (.udatasmith + .xodr) オプションを使用してエクスポートした場合は、次の手順でシーンを CARLA にインポートします。

  1. BaseMap のコピーを作成し、Maps フォルダーに保存します。新しいマップの名前を変更します。

    BaseMap replica created.

  2. 前の手順で作成した新しいマップを開きます。

  3. Unreal の [Content Browser] ウィンドウ内で右クリックします。メニューから [Show Plugin Content] を選択します。

    Content Browser

  4. CARLA で、Datasmith FBX Importer プラグインと Datasmith Importer プラグインを有効にします。

  5. [RoadRunner CARLADatasmith Content] をクリックします。[RRCARLADataprep Asset] をダブルクリックします。これにより、Datasmith でのインポートとすべての後処理ステップを扱う新しいエディターが開きます。

    RR CARLADataprep Asset

  6. [Import] ボタンをクリックして、シーンを Unreal にインポートします。たとえば、次のイメージでは、FourWaySignal シーン ファイルを読み込んでいます。これは、RoadRunner プロジェクトの Scenes フォルダーにあるシーンの 1 つです。

    Imported scene in Unreal

  7. エディターのツールストリップで [Execute] をクリックし、インポートしたシーンの事後処理ステップを実行します。

  8. エディターのツールストリップで [Commit] をクリックし、シーンに対するこれらの変更を確定します。

  9. シーンがインポートされ、シーンでシミュレーションできるようになりました。

CARLA (Filmbox) へのインポート

RoadRunner シーンのエクスポート中に CARLA Filmbox プラグインを使用した場合は、次の手順に従います。

  • ファイルを [Content Browser] にドラッグします。

  • [Import] ボタンを使用し、FBX ファイルを選択します。

プラグインは、インポートするファイルに関連付けられた RoadRunner XML ファイルがあるかどうかを確認し、対応する XML ファイルが見つからない場合には通常どおりにインポートします。

[File][Import Into Level] を選択してもエクスポートされた RoadRunner XML は使用されず、代わりに Unreal インポーターが使用されます。

RoadRunner の [Import Options] ダイアログ ボックスが開く場合

Import Options in Unreal Engine with Overwrite Materials and Import Signal Visuals selected.

  • Overwrite Materials

    • 既定のマテリアル インポートをオーバーライドします。道路や木々のための、CARLA マテリアルからのインスタンス。

    • 次のダイアログ ボックスで、マテリアルを [Use Existing] に設定するには、この選択を解除する必要があります。

  • Import Signal Visuals

    • 次のダイアログ ボックスで、[Create one Blueprint asset] オプションが選択されている場合にのみ機能します。

メモ

[Importing Signal Visuals] オプションは、交通シミュレーションには影響をもたらしません。

[FBX Scene Import Options] ダイアログ ボックスが開く場合

  1. [Scene][Hierarchy Type] を [Create One Blueprint Asset] (既定の選択) に設定します。

    メモ

    [Create one Blueprint asset] インポート オプションのみが、マテリアル、信号、透過性ソートで機能します。[Create one Actor with Components] オプションと [Create Level Actors] オプションは、マテリアルのみをインポートします。

  2. 必要に応じ、[Invert Normal Maps] を選択します。

    FBX Scene Import Options dialog box. On the Scene tab, Hierarchy Type and Invert Normal Maps are highlighted.

  3. [Static Meshes][Normal Import Method][Import Normals] に設定します。

    FBX Scene Import Options dialog box. On the Static Meshes tab, the Remove Degenerates and Normal Import Method options are selected.

  4. (オプション) [Remove Degenerates] の選択を解除します。このオプションは、大きなスケールで作成された一部のプロップで役立つことがあります。

  5. [Import] をクリックします。

Unreal への信号機のインポートについて.  RoadRunner で信号機を設定した場合には、それらは RoadRunnerTrafficJunction コンポーネントとして Unreal にインポートされます。これらのコントローラーは、インポート中に自動的に作成され、作成されたブループリントに含まれます。

RoadRunnerTrafficJunction コンポーネントは、信号の状態間で切り替えるためのロジックを処理します。UUID は、シーン内の特定のゲーム オブジェクトと照合するために使用されます。

FBX の詳細.  FBX ファイルは、次の理由により、セグメンテーションおよび透過性ソート レイヤーでメッシュを自動的に分割します。

  • セグメンテーション:CARLA は、静的メッシュ アセットでセグメンテーションを判断します。

  • 透過性ソート: Unreal は、静的メッシュ コンポーネントに [Translucency Sort Priority] の値を格納します。

マップのテスト

  1. エディターで [Play] をクリックします ([Play] をクリックするのが初めての場合には、マップの構築に余分な時間がかかります)。

    Unreal Editor Play button

  2. サンプルの Python® スクリプトを実行します。

    Python window showing the scenario simulation. A red car drives through an interesction.Python window showing the scenario simulation. A red car drives through an interesction.