このページの本文へ移動

iPhoneが発売された頃から、Googleマップで自分のよく知っているルートをレースゲームのコースにできたら面白いだろうな…と、ずっと考えていました。

当時の技術では、Googleマップの位置情報、iPhoneで撮影した映像からの解析、そしてセンサー系のデータを使えば実現可能ではないかと思いつつも、技術的なハードルがあまりにも高かったため、実際に挑戦することはありませんでした。

しかし、近年のAI技術を利用すれば、最終的な理想形にたどり着くまでは時間がかかるかもしれませんが、十分クオリティの高いものが作れそうだ、と感じていました。そこで、試しに簡易的なものを作ってみようと、Geminiを利用して挑戦してみました!

3Dマップのカーシミュレーター

まず最初に試したのは、スタート地点とゴール地点を指定してルートを作成し、その道を3Dマップで車が自動的に走る、というものでした。

最初は非常にシンプルなものだったのですが、最終的には次のことができるようになりました。

  • スタート地点とゴール地点を指定してコースを作成
  • 3D地図内で車がバードビューのように自動走行
  • ミニマップを右下に表示
  • 2Dの衛星写真にも切り替え可能(APIの制限上、3Dのテクスチャ等にはできなかった模様)
  • 2台の車でバトルしているような演出を実現(コーナーで距離を詰めるなど、見せる走り)
  • YouTubeをBGMに設定可能
  • 速度をスライダーで変更できる
  • 時間、残り時間、走行距離、2台の車間距離の表示

という感じで、ルートの走行シミュレーター+αとしてはとりあえず良い感じになったかと思います。

ここまでにかかった時間は4時間程度。私は一切コードを書かず、Geminiとやりとりしただけでした。

3Dマップで自分で操作できるカーレースゲーム

続いて、実際に操作できるようにしてゲームらしくしようと、これをベースに開発を進めてみました。

完成したものがこちらです!

  • WASDまたは矢印キーで操作可能
  • スマートフォンの場合はバーチャルボタンを表示して操作可能(メニューの都合上、横向きプレイを推奨)
  • スペースキーを押すとドリフトが可能
  • コースに幅を持たせ、壁に当たると減速するように設定
  • 加速に合わせてギアが切り替わり、エンジン音も変化
  • おすすめコースをいくつか設定、または従来通り自分で指定可能
  • 自車と敵車の選択機能
  • 敵車のレベル(速度)を3段階で選択可能に
  • BGMはAIでオリジナル曲を作成
  • スタートのカウントダウンとゴールの演出を追加

実際にプレイできるページはこちらです!

Google Maps 3Dカーシミュレーション(スマホ・PC両対応版)

シンプルではありますが、ゲームらしくなったかなと思います。

この実装もトライ&エラーを繰り返しながら4時間ほどで完成しました。トータル1日程度でこんなものが作れるとは!と、かなり衝撃を受けました…

GoogleマップのAPIでは、車の中から運転しているようなアングルは制限があり実現できず、ストリートビュー版も試してみましたが、当然ながら滑らかには動かず…。ということで、当初の目標であった本格的なレースゲームにするためには、別のアプローチが必要だと感じています。

PCのレースゲームでModなども含め長くプレイされているAssetto Corsaでは、サードパーティからGoogleマップからコースを作れるWebサービスもあるようですが、個人的にはもっと簡単にリアルでそれらしいコースを作れる仕組みができそうな気がします。

世界中の人が自分たちの地元などの、このルートは走ったら面白いぜ!というコースをシェアして無限のコースがある本格的なレースゲームを作ってみたいなーと思う次第です。