新しい車づくりに着手しました。
フリーの3Dデータをダウンロードして、assettocorsaで走れるcar modにしていきます。
Blenderにfbxデータを読み込み、各マテリアルに画像テクスチャを貼るところまでは終わっています。Serenaですね。
とりあえずテクスチャだけ貼り付けてkn5を作成した状態↑
一番最初の基本になりますが、タイヤの設定方法です。
タイヤ(というかホイール)は、エンプティ名が決められています。
フロント左 WHEEL_LF
リア左 WHEEL_LR
フロント右 WHEEL_RF
リア右 WHEEL_RR
です。
それぞれのエンプティの位置ですが、エンプティの原点がそれぞれのホイールの中心と一致するようにします。
これをしないとタイヤが回転したとき、中心がずれて回転し、ガタガタになりスムーズに走れません。
目で見て調整しても良いのですが、ぴったり合わせるのは難しいので、私のやり方です。
(フロント左を例に)
1)タイヤの中心(今回はロゴマーク)を複製(オブジェクト選択&Shift+D)ー①
2)①のオブジェクトを右クリックして「原点を設定」→「原点をジオメトリに移動」を選択 →原点がオブジェクトと同じ場所に来ます。
3)「Shift+S」→「カーソルー>選択物」を線選択→3Dカーソルが①の原点のところに来ます。
4)「追加」→「エンプティ」→「十字」でエンプティを追加。
5)エンプティ名を「WHEEL_LF」に変更
6)①は不要になるので削除
7)WHEEL_LFの回転をX=90度、Y=0度、Z=180度に設定
(assetto corsaは+z方向が前、+y方向が上なので、これが必要です。すべて初期の0度のまま進むと、ゲームスタートしたとき、タイヤが裏返ります。)
8)フロント左に属するオブジェクトをすべてWHEEL_LFエンプティの中に移動。
です。これを4つのタイヤそれぞれに対して実施します。
次にタイヤ回りの設定です。
作り方の参考になるのでぜひ見てください。(英語ですが)
TUTORIAL - Your FIRST car in Assetto Corsa - Basic Guide | Assetto Corsa Mods
このサイトにあるacm_tutorial_basic.7z
https://assettocorsamods.net/attachments/acm_tutorial_basic-7z.1951/
をダウンロードすると、チュートリアルで作られているcar modデータが得られるので、基本的に車を作るのに必要な設定ファイルが一式そろいます。(ありがたいです!)
作成するcar modのdataフォルダ(今回はassettocorsa/content/cars/nissan_serena/data)の中のファイルを編集します。
【lod.ini】
これは車のkn5オブジェクトを距離に合わせて選択するものです。
本来ゲームの負荷軽減のため、視点からの距離が離れるほどサイズの小さいkn5データを作成して切り替えるのですが、今回はそこまでやらず、1個のkn5ですべての距離を表示させています。(ゲームには優しくないです。)
[LOD_0]
FILE=serena.kn5
IN=0
OUT=5000
【car.ini】
車の基本情報を設定します。(今回の車用)
[BASIC]
GRAPHICS_OFFSET=0,-0.35,0.428 ; 3 axis correction (x,y,z), applies only to the 3D object of the car (meters)
GRAPHICS_PITCH_ROTATION=0.7 ; Changes 3D object rotation in pitch (degrees)
TOTALMASS=2070 ; Total vehicle weight in kg with driver and no fuel
INERTIA=1.695,1.865,4.69 ; Car polar inertia. Calculated from the car dimensions. Start with the generic width,height,length and modify accordingly to the car's configuration
GRAPHICS_OFFSETのYパラメータを調整すると車高長を調整できます。マイナスで下げればどんどんシャコタンになります。(笑
GRAPHINC_PITCH_ROTATIONは車の前後の傾きを調整できます。プラスの値にすると前が沈み、マイナスの値にすると後ろが沈みます。
TOTALMASSは車重、INERTIAは車体の大きさです。この辺は実車のスペックあたりからコピーでしょうか。3Dデータのサイズを測って入れてもOKです。
【suspensions..ini】
次はサスペンション回りです。
[BASIC]
WHEELBASE=2.95 ; Wheelbase distance in meters
CG_LOCATION=0.35 ; Front Weight distribution in percentage
WHEELBASEは前後のタイヤの間隔(メートル)です。
CG_LOCATIONはタイヤの前後をどれくらいずらすかをパーセントで設定します。
(数字が小さいほどタイヤは前に、大きいほど後ろに行きます。程よい場所を探してください。)
[FRONT]
TYPE=DWB ; Suspension type. DWB Double Wish Bones. STRUT McPherson strut
BASEY=-0.020 ; Distance of CG from the center of the wheel in meters. Front Wheel Radius+BASEY=front CoG. Actual CG height =(FWR+FBasey)+(RWR+Rbasey))/CG_LOCATION%
TRACK=1.65
フロントの設定です。TRACKはフロント左右のタイヤの間隔です。数字を小さくすると車の中心寄りに、大きくすると外側に寄ります。タイヤがタイヤハウスから飛び出さない程度になるように設定します。
[REAR]
TYPE=DWB
BASEY=-0.020 ; Distance of CG from the center of the wheel in meters. Rear Wheel Radius+BASEY=Rear CoG Actual CG height =(FWR+FBasey)+(RWR+Rbasey))/CG_LOCATION%
TRACK=1.7
リア側の設定です。同じくリアタイヤの間隔をTRACKで調整します。
【tyres.ini】
最後にタイヤの設定です。
[COMPOUND_DEFAULT]
INDEX=0
複数のタイヤの設定が記載できるのですが、デフォルトではどのタイヤを使うのかを選択します。INDEX=0は一つ目に設定されているタイヤを使います。
[FRONT]
NAME=Slicks Soft
SHORT_NAME=S
WIDTH=0.195
RADIUS=0.31725 ; tyre radius in meters
RIM_RADIUS=0.1905
フロントタイヤです。WIDTHはタイヤの幅、RADIUSはタイヤの半径、RIM_RADIUSはホイールの半径です。すべて単位はメートル。
15インチのホイールは0.381mなので、RIM_RADIUSはその半分の0.1905m。
195/65R15のタイヤでは、タイヤの幅が0.195m、タイヤの厚さが0.195 x 0.65=0.12675mなので、ホイールと合わせてタイヤの半径は0.12675+0.1905=0.31725m ですね。
[REAR]
NAME=Slicks Soft
SHORT_NAME=S
WIDTH=0.195
RADIUS=0.31725
RIM_RADIUS=0.1905
リアタイヤも同じように設定します。同じサイズのタイヤを使っているならば、前も後ろも同じになります。
以上です。すべてにおいてもっともっとパラメータはたくさんあるのですが、
とりあえず走れるようにするためのタイヤ回りの設定は以上です。
タイヤの位置を調整した結果がこれです。↑