国交省の都市3Dデータ、PLATEAU [プラトー]をUE4(Unreal Engine 4)へ③

PLATEAUを別のワークフローで変換してみました。
Twinmotionを経由してみようと思います。
https://www.unrealengine.com/ja/twinmotion

TwinmotionにPLATEAUのFBXをインポートするだけです。凄いのはUE4が未対応のTIFFフォーマットテクスチャがインポート可能なことです。
2区画やりましたが、かなり高速に変換します。看板などかなりテクスチャーが表示できます。

これをTwinmotion Importer for Unreal Engine (Beta)プラグインでUE4へ変換します。
https://www.unrealengine.com/marketplace/ja/product/21cab2d84a794b7bab359eb1ba5d3e74

ここで1つ注意点があります。ベータ1(UE4.25対応)で20GB、ベータ2(UE4.26対応・Mac版もあります)が30GBあります。ダウンロードに待たされるのと、ディスクの容量がかなり不足しますので注意です。
マニュアルもここにあります(英語版のみ)

ダウンロードした膨大なデータをUE4のプロジェクトのPluginsフォルダを作成してコピーします。(EnigneのPluginsに入れてもOKです。)

かなり綺麗に変換できました。かかる時間も今まで試した方法では一番早く終わると思います。
プロジェクトのサイズは22GBと膨大です。その中のプラグインが20GBです。

この方法ですとアセットがビル単位なので、UVのずれやディテイル調整などもしやすいと思われます。

どの変換方法でも頭が痛いのが、ピボットがかなり離れていることです。上の図の右の塊が新宿です。

国交省の都市3Dデータ、PLATEAU [プラトー]をUE4(Unreal Engine 4)へ②

前回の変換ではプロジェクトが重すぎてしまい、実用レベルになっていませんでした。
以下のサイトにPLATEAUのドキュメントがあります。
https://www.mlit.go.jp/plateau/libraries/

前回もこのマニュアルを使ってDataSmith変換をしたのですが、この資料の後半に以下の記載があったのを見逃しておりました。

処理が重い理由の1つにメッシュのアセット数が多すぎる問題があります。1つのビルでも複数のメッシュで構成されているので、膨大になります。

FME-Desktopを再び起動して、CityGMLをOBJとFBXに変換します。これも一区画を一気に変換すると、クラッシュの危険があるので、4つに別けました。

このようにOBJファイル、FBXファイルが1つづつ生成されます。FBXは公式からダウンロードできますが、膨大なファイル数です。

「materials_textures」は図のようにPNGファイルが入ってます。
「d1_model.fbm」の中にはTIFFファイルが入ってます。

Mayaでそれぞれを開いてみました。図はOBJです。なんと既に1メッシュにマージされています。座標系がZ-UPですが、UE4では問題ありません。ポリゴン数もさほど多くないです。
これで一区画の1/4です。
FBXですが、残念ながら各建物がバラバラなままでアウトライナーで表示されます。結局Mayaでマージする手間が発生します。
さらに困ったことに、TIFFテクスチャーをリンクしています。UE4でTIFFは読めません。
同じファイル名でPNGもあるので、MELを使って全て変更する処理をすれば可能ではありますが、これも手間です。

これを4回繰り返し、UE4へインポートしました。大体9時間くらいかかりました・・・
1地区全て4ファイルをアセットを配置してもクラッシュしませんでした。

RTX2060で5~7FPS程度で再生可能です。RTX3000シリーズなら余裕でしょう。
アセット数は約3万2千まで削減。4メッシュのみにマージして、それぞれ約100万ポリゴン。
地面は前回のDataSmith変換のまま流用したのですが、無駄に多く300万ポリゴン。
プロジェクトも10GBまで軽量化しました。

かなり実用レベルまで最適化できます。ただ、まだマテリアル・テクスチャー数が膨大なので、それを何とかするのが今後の課題です。