おわらサーキットをAssetto Corsaに実装する〜開発編〜
2021年10月01日
子どもの頃に最も熱中したゲームのひとつはグランツーリスモでした。当時としては実写と見紛うほど美しいグラフィックと「リアル」な挙動に感動したものです。それから免許を取ってみると、やはり実車とゲームとの乖離に満足できず、すっかりゲームをプレイすることはなくなりました。
それからしばらくして、中古でハンドルコントローラー(以下、ハンコン)が5,000円で売っているのを見つけて、何となく購入。たまたまセールで400円になっていた「Assetto Corsa」というソフトを入れて遊んだところ、「ゲーム」の価値観ががらっと変わってしまったのでした。最初こそは、やはり実車のように運転はできずに危険運転を繰り返していましたが、慣れてくると不思議なことに実車に乗っているような感覚になってきたのです。
後になって分かったのですが、このAssetto Corsaはプロのレーサーも使うシミュレーターだといいます。挙動のリアルさなどシミュレーターとしての完成度の高さはもちろん、有志によるMODが豊富で、世界中のサーキットを走れることから人気ソフトになっているようです。そうなってくる当然、自分が住んでいる町にあるサーキットが欲しくなってくるのですが、富山のおわらサーキットMODはまだありませんでした。

MOD制作に必要なもの
ならば作るしかないとは思ったものの、知識が全くありません。調べてみるとBlenderがあれば作れるようでしたが、このソフトもまた触ったことがないので、YouTubeのチュートリアルを見ながらイチから操作方法を習得していきます。
1日かけてソフトを触って基本操作が分かったところで、簡単なコースを作ってみます。Assetto Corsaのコースには最低限、路面とスタート位置のオブジェクトが必要で、以下の命名規則に従う必要があります。
- 1ROAD:メインのコース
- 1GRASS:オフトラック
- 1WALL:壁(衝突しても動かない)
- 1POBJECT_0:当たり判定つきのオブジェクト(衝突すると動く)
- 1OBJECT_0:当たり判定のないオブジェクト
- AC_PIT_0:ピットの位置
- AC_START_0:スタート位置
AC_PIT_0などの数字は0ベースで、2台走行させる場合はAC_PIT_1というオブジェクトを作成して任意の位置に配置します。
テクスチャはDDS形式のものが必要で、PhotoshopかBlenderにプラグインを入れて変換できます。今回はデフォルトのコースから拝借。

コースのモデルができたらfbx形式で出力(スケールを0.01にする)して、ksEditorというSDKに読み込ませてマテリアルの設定をしていきます。

この記事では割愛しますが、フォルダや設定ファイルの記述もしてAssetto Corsaに読み込むと無事に起動。しかし、車両が底なし沼に落ちていきます。どうやら、AC_PIT_0などのスポーン位置は路面から1mほどZ軸方向に高くしなければならないようです。

調整後に再び起動してみると、ようやくクルマを動かすことができるようになりました。MOD制作の流れが分かり、動作することが確認できたところで、目的のおわらサーキットを作っていきます。
現地調査
まずは資料がないことには始まりません。おわらサーキットさんの協力を得て、コース内を歩きながら写真を撮りまくります。

そしてドローンを飛ばして真俯瞰の空撮写真も作成。これで最新のコースの形状をトレースすることができるようになりました。

そして何よりも自分自身で走ってみることが大切。カートをレンタルして走ってみると、路面の起伏などがよく分かります。
資料が集まったところで、ようやくBlenderで制作開始。OpenStreetMapの地形情報とドローンの空撮写真をベースに、路面を敷いていきます。しかし、どうやってもうまくいかない。変なねじれが発生したり、メッシュが重なったりして、ぐちゃぐちゃです。
1週間近く、いろんなチュートリアルやブログを見たりするも、解決する気がしません。

どうにもできずに諦めかけていたところ、Race Track Builderというソフトを発見。6,000円以上というお値段でしたが、Blenderの技術が追いつかずにどうしようもないいま、これにすがるしかありません。
Race Track Builderで簡単に作成
早速購入して、GoogleMap APIと連携すると、サーキット周辺の地形と衛星写真を取得できました。そしてコースを作成するツールで衛星画像をトレースしていくと、1時間足らずでコースが完成。あまりにも簡単で、Blenderでの時間は何だったんだと…

ベジェ曲線のようにコントロールポイントを操作するだけでコースの微調整ができ、バンプやカントまで簡単につくれてしまいます。すごいぞ、RaceTrackBuilder。

資料や実際に走行したフィーリングをもとに調整とテスト走行を繰り返していき、コースの土台ができたら、再びBlenderで建物などのアセット制作に入ります。
Blenderで修正とアセット制作
まだまだ基本操作もまともにできない中、立方体を無理やり組み合わせながらアセットを作っていきます。


建物だけあっても殺風景なので、草木も必要です。制作当時、スキャッターなどの技術はなかったので、数千本の草木を根気よく植えていくという力技で解決。(後に、Custom Shader PatchというMODで草を自動生成できることが判明)。


そんなこんなでBlenderの知識がほぼゼロのところから1ヶ月ほどでver.1が完成。

それからさらに2ヶ月ほど別のプロジェクトでBlenderの触り方を覚えながら修正を加えて、ver.2が完成したのでした。

そんな「おわらサーキットMOD」の影響はいかに?次回の記事で全貌と他のユーザーのインプレッションを紹介します。