Proton Bus Simulator におけるバス MOD のフェーズ 2 の準備
このドキュメントは草案です。より包括的になるにはしばらく時間がかかります。これは空き時間に作成されたインディープロジェクトであることを忘れないでください。MOD がどのように作られているかを理解する最良の方法は、サンプル MOD を調べることです。私たちの MOD のほとんどは、編集と分析のために 3D が公開されています。それらはサイトに投稿されます:www.busmods.com
バス MOD システムのフェーズ 2 では、以前はネイティブバスでのみ利用可能だったいくつかのアニメーションが導入されています。ほとんどのことは、3D に特定の名前を持つ新しいパーツを配置するだけで済みます。他のいくつかのプロパティとコマンドが追加されました。最も重要なものはこのドキュメントで説明されていますが、より単純なものはサンプル MOD で直接調べることができます。
このガイドを進めるには、フェーズ 1 で MOD を変換する方法をすでに知っている必要があります。そうでない場合、理解できない可能性があります。ゼロから始める場合は、フェーズ 1 のチュートリアルをご覧ください:http://blog.protonbus.com.br/2018/09/primeira-fase-do-sistema-de-mods-de.html
特に明記されていない限り(ドア、サウンド、ライトなど)、ほとんどの設定はメインのバスファイルで行われます。
[mod]
name=MiBRTS
busModVersion=2
preview=preview.png
busModVersion 項目を 2 に変更します。これは将来、フェーズ 3 が新しいものをサポートするときに役立ちます... 現在のゲームはこれを読み取って、MOD がサポートされていないという警告をプレイヤーに発行します(そこに 3 または 5、あるいはそれより高い数字でテストすると、すでにこれが発生します)。
preview 項目は、選択画面に表示する画像を示します。画像は textures ではなく、バスのベースフォルダ(baseDir)にあります。この項目を省略すると、ゲームは自動的に preview.png という名前の画像を検索します。
大きなファイルにならないように、画像には 1280x720 またはその半分など、16:9 のアスペクト比を使用することをお勧めします:640x360。
[config]
useStandardShader=1
0 = 無効1 = 有効このオプションは、Unity の現在のシェーダーである Standard Shader の使用を強制します。バスの内部は少しきれいに見えるかもしれませんが、携帯電話では重くなる可能性があります。重くなった場合に削除できるオプションです。0 のままにするか省略すると、色がよりあせていて、輝き/スペキュラがない以前の標準(Legacy/Diffuse シェーダー)のままになります。
実験的なオプションであるため、メタリック、スペキュラなどのパラメータを変更することはまだできず、デフォルトの 0.5 のままになります。
[reverseCamera]
posX=0
posY=3.22161
posZ=-6.11213
rotX=30
rotY=180
rotZ=0
ミラーに似たコマンドですが、この場合は後ろを向いたカメラで、バス後部のどこかに配置されています。x 軸でわずかに下に回転させることができます。後ろを向くように、垂直軸(Unity では Y、Blender では Z)で 180 度回転していることに注意してください。
バックカメラモニターは基本的に平面であり、画面がある場所に配置されています。ゲームでは無効のままで、バックしているときにのみ表示されます。バックしていないときに穴が開かないように、その下に背景がある必要があります。ちらつき(ゲームでの従来の Z-fighting)を避けるために、平面は背景より少し上にある必要があります。
スクリーンパーツの名前は次のようにする必要があります:_reverse_camera_screen_
UV 内のテクスチャ全体にマッピングする必要がありますが、マテリアルやテクスチャを関連付ける必要はありません。ミラーとは異なり、カメラは反転画像を生成しないため、マッピングで x のミラーを使用しないでください。
[posSmoke1]
enabled=1
posX=-1.0966
posY=3.08716
posZ=-6.1505
rotX=0
rotY=0
rotZ=0
multiplier=0.5
colorR=0.2
colorG=0.2
colorB=0.2
colorA=0.1

排気制御に新しいパラメータが追加されました:multiplier は強度の乗数であり、より多くまたはより少ない粒子を放出します。プレイヤーにとって重くなる可能性があるため、値を過度に大きくしないでください。0.5 に設定すると本来の半分、2 に設定すると 2 倍、1.2 に設定すると少し多くなります。テストを続けてください。ただし、5、10 などの非常に大きな数字は使用しないでください。
specialTextures セクションでは、particleSystemSmoke1 パラメータで使用される煙のテクスチャを定義できます。
[specialTextures]
particleSystemSmoke1=ParticleCloudWhite.png
いくつかの新しいコマンドは色のカスタマイズを受け入れます。エンジンは、0(なし)から 1(フルカラー)までの値を持つ RGBA 形式の色を使用します。
例:
colorR=1
colorG=0
colorB=0
colorA=1
上記の色は赤になります。G を 1、R と B を 0 にすると、緑になります。B を 1、R と G を 0 にすると、青になります。そこから値を混ぜて、目的の色にすることができます。
C を押すか、Android でコマンドカメラアイコンをクリックすると、ゲームは、プレイヤーがボタンをクリックできるダッシュボード領域に焦点を合わせたビューを変更します。
これらのカメラ位置は、コマンド command_camera_ とそれに続く各位置の増分番号によって識別されます。
[command_camera_1]
posX=-0.174367
posY=1.76852
posZ=5.27041
rotX=-62.1665d
rotY=-13.3138
rotZ=-0.000039
[command_camera_2]
posX=-0.344243
posY=1.85677
posZ=5.22591
rotX=-66.1773
rotY=-15.7203
rotZ=-0.00003
このタイプのカメラは無制限に配置できます(command_camera_3 などを使用)。設定にはかなり時間がかかり、多くの忍耐が必要です。これはオプションですが、望ましいものです。
エアコンシステムの設定は、いくつかのファイルに分散しています。エアコン制御は、メインのバスファイルに配置されています。
[air_conditioner]
enabled=1
posX=-0.761969
posY=2.74968
posZ=5.72929
rotX=-18
rotY=0
rotZ=0
scaleX=0.0025
scaleY=0.0025
scaleZ=1
[air_conditioner_screen_on]
colorR=0
colorG=1
colorB=0
colorA=1
[air_conditioner_screen_off]
colorR=0
colorG=0.25
colorB=0
colorA=0.75
強調表示されているのは enabled=1 です。0 のままにすると無効になります。
最後の 2 つは、スクリーンドットの色を定義します。バックカメラのスクリーンとは異なり、これには平面は必要なく、システムが動的に生成します。

エアコンオンボタンと強制ファンボタンの上に、これらのボタンがアクティブになったときに点灯する小さなライト用の座標をさらに 2 つ取得します。これらのライトは、次のようにライトファイル (lights) で定義されます:
[air_conditioner_on_1]
posX=-0.683482
posY=2.77392
posZ=5.72009
rotX=-18.6
scaleX=0.01
scaleY=0.01
scaleZ=0.01
picture=Z_LuzAr.png
[air_conditioner_fan_1]
posX=-0.651946
posY=2.77392
posZ=5.72009
rotX=-18.6
scaleX=0.01
scaleY=0.01
scaleZ=0.01
picture=Z_LuzAr.png

air_conditioner_on_1:エアコンオンボタンのライト。air_conditioner_fan_1:強制ファンボタンのライト。サウンドファイル (sounds) 内:
[airConditioningSlow]
file=sounds/airConditioningSlow.wav
...
[airConditioningFast]
file=sounds/airConditioningFast.wav
...
_airconditioner_button1_:オン/オフボタン_airconditioner_button2_:強制ファンボタン_airconditioner_down_:温度を下げるボタン_airconditioner_up_:温度を上げるボタンProton の反射は構成ファイル (.bus) で定義されており、metallic および glossiness パラメータを変更します。
//側面の反射
[ref001]
metallic=0.4
glossiness=0.8
//マスクの反射
[ref002]
metallic=1
glossiness=1

上記の反射を使用するパーツの名前には、_ を使用した識別子が必要です。例:_ref001_。例:_ref001_skin001_body。
ガラスに反射を使用したい場合は、次のようにガラスを定義します(今のところ 10 個の制限があります):
[glass001]
enabled=1
shininess=0.9
specColorR=0.3
specColorG=0.3
specColorB=0.3
specColorA=0
refColorR=0.2
refColorG=0.2
refColorB=0.2
refColorA=0

次に、3D 内のパーツに _glass001_ などの名前を付けます。
enabled=0 のままにすると、ガラスは反射を失い、以前のモードの使用に戻ります。
重要: 雨の付いたガラスパーツには、反射を使用しないでください!通常のガラスにのみ使用する必要があります。雨の付いたガラスは _transparent_ を使用する必要があります。
一部の最新のバスには、ソフトボタン付きの電子パネル(マルチプレックス)があります。

テクスチャは、specialTextures セクションで定義されています:
[specialTextures]
multiplexOff=MultiTextura.png
multiplexOn=MultiTextura.png
multiplexActive=MultiTextura_ON.png
簡単にするために、マニュアルとオートマチックの両方のパーツを配置することが可能であり、ゲームはプレイヤーの選択に応じて表示を切り替えます。パーツに適切な名前を付けるだけです。
オートマチックトランスミッションの場合、123DNR を持つ Scania はサポートされていません。アクティブなものは 3 になります。

理解するために、サンプル MOD を調べて探索してください。
_anim001_on、_click001_on。.3ds ファイルに保持してください。