iniファイルの構造

iniファイルはRacerのほとんどの機能において使われるファイルで、ユーザーが自分で設定できることはすべてこのファイルを記述して設定するようになっています。

そのため、これから先Racerの各部分の設定方法を解説していく上で「iniファイルの書き方」に関する知識があることが前提になってしまいます。そうは言っても非常に単純な構造ですし、普通のテキストエディタ(メモ帳でもWordでも秀丸でも何でもいいです)で開けるファイルだということもあるのでかなりいじりやすいものですよ。

それでは、マツダのRX-7のcar.iniファイルを例に見ていきます。わかりやすいように多少変えました。

RX-7の「enigine」の項目

engine
{
  mass=100
  max_rpm=9000
  ;これはコメントです
  idle_rpm=900
  stall_rpm=350
  ;stall_rpm=200
  start_rpm=900
  autoclutch_rpm=1000
  starter=1
  starter_torque=40
  curve_torque=torque.crv
  ;314 NM - 15% drive loss
  shifting
  {
    automatic=0
    shift_up_rpm=5500
    shift_down_rpm=1800
    ;zmiana
    time_to_declutch=150
    time_to_clutch=150
  }
  inertia
  {
    engine=0.17
    final_drive=0.1
  }
}

ツリー構造

まず、一番外側の  と  (中かっこ)で囲まれた部分だけが「engine」の項目であるということに注意してください。もちろんここに書いてあるのはengineの項目だけですから、一番上の{から一番下の}までがengineの項目であるということになります。

さて、engineの項目の中ほどにある「shifiting」という文字の下にも  と  で囲まれた部分があります。inertiaのところも同じですね。これこそがツリー構造なのです。「engine」という項目の下に、さらに「shifting」や「inertia」という項目があるわけです。

パラメーターの入力

さて、それぞれの項目の中にはたくさんのパラメーターがあります。例えばengineにはmax_rpmというパラメーターがあります。「max_rpm=9000」と書いてあるので、これはつまりrpm(エンジンの毎分回転数)のmax値(最大値)が、9000rpm(毎分9千回転)に設定されているということになるわけです。

また、具体的な数字を入れるものだけでなく、機能のオン・オフなどを決める場合もあります。engineの中のshiftingの項目には、「automatic=0」と書いてあります。これはギアのオートシフト(というかオートマ)をオフにしているわけです。ここでautomaticの値を0ではなくて1にしてやればオートシフトはオンになります。

そしてもう一つ。ファイル名を入れてやるような場合もあります。engine項目内の「curve_torque」を見てやりましょう。ここではcurve_torque=torque.crvとなっているので、エンジンのトルクのデータを「torque.crv」から読み込む、というように設定してやっているというわけです。

コメント

行の中で「;」(セミコロン)を打つと、セミコロンより右側にある部分はすべてコメントになります。パラメータについての説明などはこの機能を使って書かれることがよくあります。

また、「stall_rpm」のところでは、下にコメントで「;stall_rpm=200」と書いています。この行のセミコロンを消して、「stall_rpm=350」の左側にセミコロンを足せば、手早くstall_rpmを350から200に変えられるという技も。これもしょっちゅう使われるテクニックですよ。

ツリーの参照機能

これは多少高度な機能なのですが、あるツリーの内容を他のツリーと同じ内容にしたいとき、いちいち同じことをかかなくてもいいように出来る機能です。例を書いてみます。

susp_front
{
  y=-.13
  z=1.28
  restlen=.31
  minlen=.1
  maxlen=.45
  k=47040
  roll_center
  {
    x=0
    y=-0.75
    z=0
  }
}
susp0~susp_front
{
  x=0.72
}
susp1~susp_front
{
  x=-0.72
}

これはサスペンションの項目です。サスペンションの設定はタイヤ一つ一つごとにしなければならず、本来は

susp0
{
 x=....
 ....
 ....
}
susp1
{
 ......
 
}

てな感じに、0から3までの4輪全てに値を設定しなければいけないのです。しかし、「susp0~susp_front」と書くことにより、「susp0」の項目(ツリー)を、「susp_front」の項目(ツリー)に書いておいた内容でそのまま埋めることが出来るのです。こうすることによって、一度前輪のサスペンションの設定を書いてから、左前輪と右前輪にそれを参照させるというふうに、すっきりとした形で記述できるんですね。

まとめますと、まず一度ツリーを書く。次に、他のツリーの名前の後に「~」(チルダ)を入れてから参照したいツリーの名前を入れる。こういう流れになります。チルダはシフトキーを押しながら(かな入力の)「へ」を押すと打てます。

一度susp_frontの内容を参照させたはいいが、いくつかのパラメーターを変更したくなった場合。このときは単純に、ツリー内にパラメータを打ち込んでやればいいだけです。例えばsusp0内のX=-0.72というパラメーターは、susp_frontには書かれていないパラメーターになっています。


「Racerの解説」の目次