今回はUnityネタをやっていきます。
Twitterで話題の3D都市モデル「PLATEAU」をUnityに取り込んで表示するところまでやってみます。
(例として本当は新宿区を全て表示したかったけどマシンパワーが足りないので一部のみ)
実行環境
Unity 2020.3.0f1
3D都市モデル(Project PLATEAU)東京都23区(FBX 2020年度) バージョン1.0.0
PLATEAUとは
PLATEAU(プラトー)は3D都市モデルのオープンデータ化プロジェクトです。
現在は東京23区のみですが、今後増えるようです。
PLATEAU は、国土交通省が進める3D都市モデル整備のリーディングプロジェクトである。都市活動のプラットフォームデータとして3D都市モデルを整備し、オープンデータとして公開することで、誰もが自由に都市のデータを引き出し、活用できるようになる。
www.mlit.go.jp
PLATEAU VIEW
PLATEAUの3Dモデルをブラウザ上で確認できるWebアプリです。
どういう感じのモデルなのかが大体わかると思います。
利用規約
規約に従っている限り、複製、公衆送信、翻訳、変形の翻訳が自由にできます。商用利用もできます。
・コンテンツを利用する場合は出典を、加工する場合は加工している旨を記載すること
・コンテンツ内に第三者が著作権やその他の権利を有している場合があり、それらは利用者が許諾を得ること
建築物の中には看板や企業ロゴが入っている場合があり、
それらを使う場合は個別に許諾を得ないといけないようです。
どれがセーフでどれがアウトなのか利用者側で判断するのが難しそうではあります。
3D都市モデルの #PLATEAU、おもしろそうだけど開発者が権利者に個別に許諾取らなきゃいけないデータがそうと明示されずに混ざってるらしく、なかなかこわい。現実の建物や看板の写り込みは法令上特別な規定があるが、仮想都市には現実にはない難しさがある pic.twitter.com/yRsqmO7hOr
— はまぐち / Code Village塾長 / 案件紹介グループ主宰 (@hmgchk) 2021年3月29日
原文はこちら
PLATEAUのダウンロード
こちらのページからダウンロードできます。
現在はCityGML形式、3D Tiles形式(建物)、FBX形式の3種類がダウンロードできます。
※3D Tiles形式(道路)、OBJ形式は近日公開予定
Unityでそのまま使えるFBX形式をダウンロードします。
CityGMLと3D Tilesは3D都市・地理用データフォーマットです。そのままUnityで扱うことはできません。
範囲図データとFBXデータの2つが置いてあります。
FBXデータの名前にある数値は範囲図データと結びついています。
例えば、新宿あたりのデータは533945になる。
今回は533945を使います。
ダウンロード後はファイルを解凍。その中にさらに圧縮ファイルがあるのでこれも解凍。
それぞれ種類ごとに分かれています。
Unityへの配置
UnityのAssets配下にそのままD&Dしてインポートする。容量がすさまじいので時間がかかる場合があります。
PCのスペックに不安があるのなら、小分けにインポートした方がいいです。
インポートが完了したらシーンに配置してみます。無事表示されればOK。
brid
調べてもよくわかりませんでした、橋とか高架とかのモデルっぽい?
dem
地形のデータです。(厳密には標高データのことらしい)
LOD1
テクスチャのないモデル群です。↓のスクショはプレハブ1つ分です。
これだけでもかなりの負荷です。
LOD2
LOD1よりも細かく分割されたモデル群でテクスチャ付きのものが多いのです。
ただしその分負荷は高め。
負荷がとてつもなく高いためつよつよマシンでない場合なんらかの軽量化が必須です。
インポート中にUnityが止まった場合
タスクキルなどで強制終了してUnityを開きなおすと正常にインポートできていない場合があります。
その時はProjectビューからFBXファイルを右クリックしReimportを選ぶと再度インポートが開始されます。
軽量化
Mesh Bakerやこちらの記事を参考に軽量化することをオススメします。
上のLOD2の所で紹介したものを軽量化してみましたがドローコールがかなり減りました。
こっちの方法もよさそう
3D都市モデルについて、CityGMLデータをOBJやFBXなどのデータ形式へ変換する方法を「3D都市モデルのデータ変換マニュアル」にまとめています。データ変換ツール(FME Desktop)を用いることで、変換過程でテクスチャなどの重いデータの軽量化を図ることも可能です。https://t.co/PxTjbyfsrB #PLATEAU pic.twitter.com/HVFud6GT8j
— Project PLATEAU (@ProjectPlateau) 2021年3月30日
まとめ
・PLATEAUから東京23区の3DモデルがUnityで使える
・プロジェクトにインポートしてシーンに配置するだけ
・容量が大きく負荷も高いため軽量化した方がよい
TwitterでPLATEAUをキーワードに検索するとさまざまな知見が得られるのでオススメ
参考資料
※出典:3D都市モデル(Project PLATEAU)東京都23区 (https://www.geospatial.jp/ckan/dataset/plateau-tokyo23ku)
※Project PLATEAUのリンク先は国土交通省が運営しているWebサイトです。