ライトを点ける

車両にヘッドライトやテールライトをつけるには、次の2つの要素をモデルに組み込みます。

Emissive マテリアル。Emissive マテリアルは、オブジェクト自身が発光しているかのように、周囲の空間の色までぼんやりと色を反映させることができるマテリアルです。オブジェクトに Emissive マテリアルを割り当てるには、ライトとして発光させたいメッシュを独立したオブジェクトとして用意しておき、モデルエディタ上でマテリアルの種類を Emissive にします。

メタデータ。オブジェクトをメタデータ上でヘッドライトやテールライトに指定すると、そのオブジェクトは先頭車や最後尾車両になったときにだけ表示されるようになります。Emissive マテリアルを設定したオブジェクトをヘッドライトやテールライトとして指定しておけば、車両の方向に応じてライトを点灯させたり消灯したりすることができます。

以上の2つの要素を組み合わせることで、車両のライトを実現します。この2つの要素はもちろん個別に使うこともできるため、たとえば方向によらず点灯する車内灯をつけたり、進行方向によって向きが変わる座席などを作ることにも利用できます。

1. Emissive マテリアル

まず、Blender 上で発行させるメッシュを独立したオブジェクトとして用意し、独自のマテリアルを割り当てます(ここでは headlight とします)。この状態でモデルを fbx として出力します。

その後、TpF1モデルとして出力する で説明したようにモデルエディタ上でマテリアルを設定するときに、headlight マテリアルには種別 Emissive を割り当てます。

マテリアルの項目のうち、Emissive scale に RGB 値を指定することで、発光する色を変えることができます。また、Map emissive にテクスチャ画像を指定することで、テクスチャの色を発光色に反映させることもできます。Emissive scale は発光の強さを表しており、0.0 が真っ暗、1.0 がオリジナルの色(発光なし)となるため、テクスチャ画像を使用する場合でも Emissive scale の値を(1 より大きな値に)設定する必要があります。

2. メタデータ

ヘッドライト・テールライトを設定するメタデータの項目は、Rail vehicle/config/1 の下にある Forward lights, Backward lights, Forward end lights, Backward end lights です(1はLODのレベルです)。ここにヘッドライトやテールライトとして設定したいオブジェクトの オブジェクトID を指定します。

オブジェクトID は、オブジェクトの階層構造をフラットにして、0から順に上から振った番号です。モデルエディタの MODEL メニューから確認できます。

ここで確認したヘッドライトのオブジェクトIDを Forward lights と Backward lights、テールライトのオブジェクトIDを Forward end lights と Backward end lights に設定します。

forward / backward は車両の前進方向・後進方向を表しており、lights / end lights は先頭・最後尾のライトであることを表します。したがって、たとえば Forward lights は、機能的には「前進時かつ先頭車両の時に表示するオブジェクト」という意味になります。

なお、車両モデルの reversible が true の場合は、Forward lights と Backward End lights の2つだけが使用され、Backward lights と Forward end lights は使用されなくなります。

以上でライトの設定は完了です。実際にゲームの中で走らせ、駅での折り返しの様子を観察してください。

最終更新