プログラム

PLATEAU SDK for Unityで地形作成

Unityでワールドを作るとき、最初に地形を作る必要があります。

UnityのTerrainを使ったり、地形作成のアセットを利用したりします。

自分が思い描いたワールドの地形を表現します。

  • Terrain、地形作成アセット

もう一つの方法として、PLATEAU SDK for Unityの利用があります。

PLATEAU SDK for Unityを使うと、日本の地形をワールドに取り込めます。

例えば、

  • Google ストリートビュー:面白い地形を発見 → その地形をワールドにする

 

 

PLATEAU SDK for Unity

PLATEAU(プラトー)は、国土交通省が推進している3D都市モデルプロジェクトのことです。

PLATEAU SDK for Unityとは、PLATEAUで提供されている3D都市モデルを、Unityで扱うツールキットです。

  • PLATEAU:3D都市モデル

 

PLATEAU SDK for Unityの使い方

優れたサイトや動画があるので、簡単に3D都市モデルをUnityで利用できました。

具体的な使い方は、以下のサイトや動画をご参照ください。

インストール方法から丁寧に解説されています。

 

インストール

詳しい方法は下記YouTubeをご参照ください。

PLATEAU SDKのダウンロード

まずは、GitHubから、PLATEAU SDK for Unity v3.4.2 (Latest)をダウンロードします。

必要なUnityスペックは、2022.3.25f1以上です。

  • GitHub → PLATEAU-SDK-for-Unity-v2.4.2.0.tgz

 

3Dプロジェクトの生成

PLATEAU SDKを導入するため、Unity Hubから新しい3Dプロジェクトを生成します。

ここでは、新プロジェクト名を「PlateauSdkTest」としました。

  • Unity Hub → 新プロジェクト:PlateauSdkTest

 

PLATEAU SDKの導入

起動したPlateauSdkTestのパッケージマネージャーで、tgzファイル使って、パッケージを加えます。

  • PLATEAU-SDK-for-Unity-v2.4.2.0.tgz → PlateauSdkTest

 

そうすると、Unityの画面に「PLATEAU」が表示されます。

Unity.PLATEAU
Unity.PLATEAU:画面クリックで拡大表示

 

 

地形をインポート

今回は地形を利用したいので、地形と道路だけをインポートします。

 

3D都市モデルデータのダウンロード

まずは、3D都市モデルポータルサイトから、3D都市モデルデータをダウンロードします。

 

PLATEAU.Kamakura
PLATEAU.Kamakura:画面クリックで拡大表示

 

今回は、鎌倉市の地形を使いたいので、「鎌倉市:2024」をクリックしてデータをダウンロードします。

  • 14204_kamakura-shi_city_2024_citygml_1_op.zip:448MB

ZIPファイルを解凍すると、4.16GBになります。

そして新たに、例えばCityDataというフォルダーを作って、その中に解凍した中身を入れます。

  • 14204_kamakura-shi_city_2024_citygml_1_op.zip → CityDataフォルダー

 

 

地形のインポート

PLATEAUをクリックして、プルダウンメニューから「PLATEAU SDK」を選択します。

そうすると、PLATEAU SDKウィンドウが立ち上がるので、ここで設定していきます。

フォルダパスの指定

項目「入力フォルダ」の「参照」ボタンをクリックして、先ほど作成したCityDataフォルダのパスを指定します。

  • 例えば、D:/Unity/PlateauSdkTest/CityData

 

 

PLATEAU.SDK.Map
PLATEAU.SDK.Map:画面クリックで拡大表示

 

そうしたら、続いて、モデルデータの配置を行います。

① 基準座標系の選択

鎌倉市は神奈川県なので、「09: 東京(本州), 福島, ・・・, 神奈川」を選びます。

② マップ範囲選択

画面の左上にある地図から、インストールしたい場所を選びます。

  • 例えば、52397379

そして、地図の左上にある「決定」ボタンをクリックすると選択した場所が表示されます。

 

PLATEAU.SDK.Objects
PLATEAU.SDK.Objects:画面クリックで拡大表示

 

③ 知物別設定

ここでどの地物をインストールするかを決めます。

設定項目の詳しい内容は、参考資料をご参照ください。

ここでは、土地起伏と道路だけをインポートしました。

  • インポート:土地起伏、道路

「モデルをインポート」ボタンをクリックすると、モデルがインポートされます。

 

Scaleを100倍にする

インポートした地形(土地起伏)と道路は小さいので、スケールを100倍にします。

CityDataのインスペクターで、Transformのスケールを100倍にします。

  • スケール: X:100, Y:100, Z:100
Unity.CityData.Scale
Unity.CityData.Scale:画像クリックで拡大表示

 

ここまでで、PlateauSdkTestプロジェクトのファイルサイズみると、6.34GBもあります。

使いたい地形と道路のデータはもっと小さいはずなので、一旦、地形と道路をエクスポートします。

 

 

地形をエクスポート

PLATEAU SDKを用いて都市モデルをエクスポートする際の詳細については、下記サイトをご参照ください。

 

PLATEAU SDK

まずは、PLATEAU SDKの「エクスポート」を選択します。

  • 「PLATEAU」-「PLATEAU SDK」-「エクスポート」

① 選択オブジェクト

エクスポート対象の後ろの空欄に、ヒエラルキーの「CityData」をアタッチ(ドラッグ&ドラッグ)します。

  • ヒエラルキー:CityData → エクスポート対象

 

② 出力形式

  • 出力形式:FBX

出力フォルダのファイルパスを指定します。

例えば、

  • ファイルパス: D:/Unity/PlateauSdkData

最後に、「エクスポート」ボタンをクリックします。

 

PLATEAU.SDK.Export
PLATEAU.SDK.Export:画像クリックで拡大表示

 

PlateauSdkDataの中身(エクスポート結果)を確認します。

  • 1,475 KB:523973_dem_6697_op.fbx
  • 7,058 KB:52397379_tran_6697_op.fbx

 

 

 

 

地形を利用

エクスポートした地形データを利用するため、Unity Hubで新たに3Dプロジェクトを作成します。

例えば、3Dプロジェクト名は以下としました。

  • 3Dプロジェクト名:Kamakura
    • 地形データ:523973_dem_6697_op.fbx
    • 道路データ:52397379_tran_6697_op.fbx

 

地形データの取り込み

Assetsに地形データを、ドラッグ&ドロップで取り込みます。

ここでは、Assetsの下に新たにPlateauSdkというフォルダを作り、地形データはその中に入れました。

  • Assets
    • PlateauSdk
      • 523973_dem_6697_op.fbx
      • 52397379_tran_6697_op.fbx

 

Kamakura.Plateau
Kamakura.Plateau:画像クリックで拡大表示

 

インスペクター調整

Assetsにある地形と道路のデータをクリックして、インスペクターを表示させます。

  • 523973_dem_6697_op.fbxと52397379_tran_6697_op.fbxをクリック

インスペクターにある、「単位を変換する」項目のチェックを外します。

  • 単位を変換する:▢   ← チェックを外す

「単位を変換する」にチェックが入っている✅と、地形と道路の3Dモデルが1/100になってしまいます。

 

シーン配置

ヒエラルキーにあるシーン(SampleScene)に、地形と道路のデータを配置します。

Assetsにある地形と道路のデータを、SampleSceneにドラッグ&ドロップします。

  • 523973_dem_6697_op.fbxと52397379_tran_6697_op.fbx → SampleScene

 

 

参照

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です