Raspberlyのブログ

Raspberlyのブログ

Unityネタをメインとした技術系ブログです。にゃんこ大戦争や日常なども。そろそろブログタイトル決めたい

【Unityネタ】Project PLATEAUを使って東京の3Dモデルを表示する

今回はUnityネタをやっていきます。
Twitterで話題の3D都市モデル「PLATEAU」をUnityに取り込んで表示するところまでやってみます。

f:id:Raspberly:20210402041110p:plain

f:id:Raspberly:20210402041552p:plain

(例として本当は新宿区を全て表示したかったけどマシンパワーが足りないので一部のみ)

実行環境

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アプリです。
どういう感じのモデルなのかが大体わかると思います。

www.mlit.go.jp

www.youtube.com

 

 

利用規約

規約に従っている限り、複製、公衆送信、翻訳、変形の翻訳が自由にできます。商用利用もできます。

・コンテンツを利用する場合は出典を、加工する場合は加工している旨を記載すること
コンテンツ内に第三者著作権やその他の権利を有している場合があり、それらは利用者が許諾を得ること

建築物の中には看板企業ロゴが入っている場合があり、
それらを使う場合は個別に許諾を得ないといけないようです。
どれがセーフでどれがアウトなのか利用者側で判断するのが難しそうではあります。

f:id:Raspberly:20210402040326p:plain

 

原文はこちら

www.mlit.go.jp

 

 

 

PLATEAUのダウンロード

こちらのページからダウンロードできます。

www.geospatial.jp

現在はCityGML形式3D Tiles形式(建物)、FBX形式の3種類がダウンロードできます。
※3D Tiles形式(道路)、OBJ形式は近日公開予定

 

Unityでそのまま使えるFBX形式をダウンロードします。
CityGMLと3D Tilesは3D都市・地理用データフォーマットです。そのままUnityで扱うことはできません。

www.geospatial.jp

 

範囲図データとFBXデータの2つが置いてあります。

f:id:Raspberly:20210402152511p:plain

FBXデータの名前にある数値は範囲図データと結びついています。
例えば、新宿あたりのデータは533945になる。

f:id:Raspberly:20210401191445p:plain

今回は533945を使います。

 

ダウンロード後はファイルを解凍。その中にさらに圧縮ファイルがあるのでこれも解凍。
それぞれ種類ごとに分かれています。

f:id:Raspberly:20210402021716p:plain

 

 

 

Unityへの配置

UnityのAssets配下にそのままD&Dしてインポートする。容量がすさまじいので時間がかかる場合があります。
PCのスペックに不安があるのなら、小分けにインポートした方がいいです。
インポートが完了したらシーンに配置してみます。無事表示されればOK。

brid

調べてもよくわかりませんでした、橋とか高架とかのモデルっぽい?

f:id:Raspberly:20210402041645p:plain


dem

地形のデータです。(厳密には標高データのことらしい)

f:id:Raspberly:20210402041852p:plain

 

LOD1

テクスチャのないモデル群です。↓のスクショはプレハブ1つ分です。

f:id:Raspberly:20210402024802p:plain

これだけでもかなりの負荷です。

f:id:Raspberly:20210402024918p:plain


LOD2

LOD1よりも細かく分割されたモデル群でテクスチャ付きのものが多いのです。
ただしその分負荷は高め。

f:id:Raspberly:20210402025324p:plain

f:id:Raspberly:20210402025413p:plain
負荷がとてつもなく高いためつよつよマシンでない場合なんらかの軽量化が必須です。

 

 

インポート中にUnityが止まった場合

タスクキルなどで強制終了してUnityを開きなおすと正常にインポートできていない場合があります。
その時はProjectビューからFBXファイルを右クリックしReimportを選ぶと再度インポートが開始されます。

f:id:Raspberly:20210402030925p:plain

 

 

 

 

軽量化

Mesh Bakerやこちらの記事を参考に軽量化することをオススメします。

zenn.dev

上のLOD2の所で紹介したものを軽量化してみましたがドローコールがかなり減りました。

f:id:Raspberly:20210402031817p:plain

f:id:Raspberly:20210402031853p:plain

 


こっちの方法もよさそう

 

qiita.com



 

まとめ

・PLATEAUから東京23区の3DモデルがUnityで使える
・プロジェクトにインポートしてシーンに配置するだけ
・容量が大きく負荷も高いため軽量化した方がよい
TwitterでPLATEAUをキーワードに検索するとさまざまな知見が得られるのでオススメ

PLATEAU - Twitter Search

 

 

 

参考資料

www.moguravr.com

www.hcc.co.jp

qiita.com

 

www.gsi.go.jp

 

 

※出典:3D都市モデル(Project PLATEAU)東京都23区 (https://www.geospatial.jp/ckan/dataset/plateau-tokyo23ku)
※Project PLATEAUのリンク先は国土交通省が運営しているWebサイトです。