VITALIFY.ASIA logo

現実世界の地図データを活用したオープンワールドの自動生成

現実の地図(DEM)データを取り込み、Unity上に自然なオープンワールド地形を自動生成するプロシージャル技術。

現実世界の地図データを活用したオープンワールドの自動生成
目次

現在弊社で鋭意開発中のJoggleは、プレイヤーがスマホの前でその場ジョギングをすることによってキャラクターを動かすという世界初のフィットネスRPGです。

このゲームでは、現実世界の地図情報をオープンワールドの地形として活用しており、山や海など、地形の起伏はすべて現実世界の地図データが元になっています。

これはどのような技術に支えられているのでしょうか?

DEM (Digital Elevation Model)

地球の地形の起伏に関する情報は一般的にDEM(数値標高モデル)と呼ばれています。

地表面を等間隔の正方形に区切り、それぞれの正方形に中心点の標高値を持たせたデータです。

例として、富士山周辺のDEMを貼ってみました。

黒い点のように見えるのが富士山頂です。

一般的な地図には描かれていない精細な地形の起伏を確認できます。

富士山周辺のDEM画像

Joggleの地形生成には、DEMが使われています。

プレイヤーの座標情報からその周囲のDEMを取得し、瞬時にその3Dモデルを生成します。

DEMは多くの地図作製機関から有償または無償で配布されており、全世界を網羅するフリーのDEMを複数の機関から入手可能です。

有償のDEMは上記のフリーのDEMよりも高い分解能と品質を誇っていますが、非常に高価である場合がほとんどです。

ゲームで活用するには、フリーもしくは安価なDEMで十分でしょう。

ちなみに、フリーのDEMは地球だけではなく火星版も存在してます。

いつかJoggleの火星版を開発することができるかも知れません。

パーリンノイズ

ただし、現実世界の地形の起伏をゲームにそのまま使用してみると、どうしても退屈になりがちです。

関東平野のようなどこまでも平らな土地では、起伏が感じられない単調な地形が延々と続くことになります。

そこでJoggleでは、現実世界の起伏に少しノイズを与えることにより、単調さを克服しました。

このようなとき、ゲーム開発ではPerlin noise(パーリンノイズ)という技法がよく用いられます。

パーリンノイズとは、どこまでも続くランダムかつ自然なノイズを簡単な計算で得ることができるアルゴリズムです。

DEMから得られる現実の地形の起伏に、細かなパーリンノイズを混ぜることで、常に刺激に富んだ地形をプレイヤーに与えています。

Perlin Noiseの例
パーリンノイズにより細かな起伏を持たせた地形
パーリンノイズを除去した例

植物の自動生成

1/10サイズの地球を採用しているとはいえ、それだけの広さのあるオープンワールドに、何十億本もの木を一本一本植えていくことは現実的ではありません。

木や岩もまた、アルゴリズムにより自動生成されています。

このようなオブジェクトを完全なランダムで並べてしまうと、いかにも人工的な風景になります。

実際の植物の生え方は均一ではなく、植物が密集している箇所とまばらな箇所が適度に繰り返されていることが普通です。

ここでもまた、パーリンノイズを活用できます。

ノイズが白く見える辺りに植物を密集させ、ノイズが黒く見える辺りには植物を植えないようにすれば、完全なランダムよりもはるかに自然な風景になります。

もちろんそんな単純な話ではありませんが、ざっくりと言えば、そのような考え方がベースになっています。

ちなみに、世界的に有名ゲームであるマインクラフトの広大な地図もパーリンノイズにより生成されています。

ワールド内の各ブロックの標高だけではなく、「バイオーム」と呼ばれるエリアの種別、鉱石の分布、村などの特定の構造物の位置、といった情報が、すべてノイズから生み出されています。

パーリンノイズにより自然な密度で配置した植物
植物を完全にランダムに配置した例

"Joggle" - Fitness アプリのダウンロードはこちらから

Joggleは、スマホだけで楽しく運動できる、新しいジョギング体験です。あなたの走るスピードや顔の向きで、3D空間を走るキャラクターを操作し、オープンワールドメタバースの世界を冒険しましょう。運動が苦手な人にもオススメで、その場ジョギングで健康的なライフスタイルを手軽に始められます。

地図データを活用したUnity開発に参加させてください!!

Vitalify Asiaでは、Unityによる先進的な技術を使用したアプリを日々開発しています。

ゲーム開発、AR/VRアプリ開発、2Dイラスト制作、3Dモデリングを得意としています。

上記以外にも幅広い分野でのアプリケーション開発が可能ですので、お気軽にお問い合わせください。

1,000社以上の事業成長を支えた圧倒的な『スピードと柔軟性』で、御社のアイデアを最短で形にします。まずは無料で壁打ちしませんか?

ブログに戻る

関連記事

3D CADのモデリングとは?形状の作り方とデータ構造を解説CAD & Engineering

3D CADのモデリングとは?形状の作り方とデータ構造を解説

3D CADでは、形状を作る操作と、コンピューター内部で形状を表現するデータ構造は別の概念です。本記事では、スケッチ、押し出し、回転、フィレット、ロフトといった基本操作から、フィーチャー履歴、B-rep、CSG、NURBS、ソリッド・サーフェス・メッシュの違い、モデリングカーネル、STEP・STLによるデータ交換まで体系的に解説します。

Toshihiko Nagaoka
The Gundam Base Vietnam   眠っていた情熱が再び目を覚ます3D

The Gundam Base Vietnam 眠っていた情熱が再び目を覚ます

ホーチミン市のTHE GUNDAM BASE POP-UP WORLD TOURを、長年3Dデザインに携わる筆者が訪問。10年ぶりにガンプラへの情熱を取り戻した体験を通して、パーツ分割、関節構造、金型、射出成形、量産設計など、3Dデザイナーだからこそ見えるガンプラのものづくりの魅力を紹介します。

Son Phung
3D Tilesとは何か?基本概念から最新トレンド、活用事例まで徹底解説3D

3D Tilesとは何か?基本概念から最新トレンド、活用事例まで徹底解説

3D Tilesは、大規模な3D地理空間データをWebやモバイルへ効率的に配信するためのオープン規格です。HLOD、Bounding Volume、tileset.json、3D Tiles 1.0と1.1の違いを整理し、Project PLATEAU、Google Photorealistic 3D Tiles、BIM・点群での活用、CesiumJSによる複数タイルセットの重ね合わせとLOD制御まで解説します。

Toshihiko Nagaoka
ぼくはデューパー、なんでもきいてね!