Vehicle Structure
自列車ストラクチャープラグイン
自列車の動きに追随するストラクチャーを設置するプラグインです。
BveEX車両プラグインとして実装されています。
プラグインの特長
ストラクチャーはプラグインから動的に読み込まれる仕様ですので、路線データにストラクチャーを同梱する必要はありません。 車両データにストラクチャーを同梱することで、路線データには全く依存せず動作させることが可能です。
また、車両のストラクチャーは車体の揺れに合わせた振動に対応。 一部分のみを振動させることもできるので、例えば「車体は振動させるが、台車は振動させない」といったように組み合わせて使用することもできます。
プラグインをデータに組み込む手順
1. プラグインを車両に配置する
下のボタンよりダウンロードしたファイルをゾーン識別子を削除した上で解凍し、車両ファイル(Vehicle.txtなど)に対する位置関係が次の画像のようになるように配置します。

※「AtsExPlugins」フォルダは「BveExPlugins」と読み替えてください。
ゾーン識別子の削除を忘れずに!
この手順を飛ばしたままパッケージを解凍してしまうと、不可解なエラーの原因となる場合があります。
そのままパッケージを解凍し、プラグインを配置してしまった場合は、ゾーン識別子を削除した上でもう一度解凍からやり直してください。
既にVehiclePluginUsing.xmlなどのBveEX車両プラグインリストファイルが存在する場合
本プラグインに同梱のVehiclePluginUsing.xmlは使用せず、既存のプラグインリストファイルに以下のコードを追記してください。
<Assembly Path="BveExPlugins\VehicleStructure.dll" />
2. 車両ストラクチャーを配置し、設定ファイルに記述する
自列車ストラクチャーとして使用するストラクチャーを車両データ内に配置し、その設定をVehicleStructure.Config.xmlに記述します。
設定ファイルの文法は以下を参照してください。
設定ファイルの文法
コードの例
各要素・属性の解説
| 要素・属性 | 初期値 | 内容 |
|---|---|---|
| DoorAnimations → DoorAnimation(要素) | ||
| ├ Key | - | アニメーションのキー。Door要素のAnimationKey属性から参照される |
| └ OpenDiagram・CloseDiagram(要素) | ||
| └ (各属性・子要素) | アニメーションの方法を定義。詳細はこちらで解説 | |
| VehicleTrain → StructureGroups → StructureGroup(要素) | ||
| ├ Vibrate | false | このグループのストラクチャーを、自列車の揺れに合わせて振動させるか。trueで振動させる、falseで振動させない |
| ├ FirstStructureFront | 0 | (Vibrate="true"の場合のみ)自列車原点から車両3Dモデルの原点までの符号付き距離 [m] |
| └ Structure(要素) | ||
| ├ Model | - | 車両3Dモデルの相対パス |
| ├ Distance | 0 | 他列車ファイルの同名キーに対応。 他列車原点から後側軌道交点(台車中心など)までの符号付き距離 [m] |
| ├ Span | 0 | 他列車ファイルの同名キーに対応。 後側軌道交点と前側軌道交点の間の符号付き距離 [m] |
| ├ Z | 0 | 他列車ファイルの同名キーに対応。 後側軌道交点から車両3Dモデル原点までの符号付き距離 [m] |
| └ Doors → Door(要素) | ||
| ├ Model | - | ドア3Dモデルの相対パス |
| ├ X | 0 | 車両3Dモデルの原点を基準とした、ドア3DモデルのX座標 [m] |
| ├ Y | 0 | 車両3Dモデルの原点を基準とした、ドア3DモデルのY座標 [m] |
| ├ Z | 0 | 車両3Dモデルの原点を基準とした、ドア3DモデルのZ座標 [m] |
| ├ Side | Left | どちら側のドアか。LeftかRightで指定 |
| ├ OpenWidth | 0 | ドアが完全に開き切ったときの符号付き移動距離 [m] |
| └ AnimationKey | - | このドアに適用するアニメーションのキー。 キーが見つからない場合は既定のアニメーションを使用 |
ライセンス
本ソフトウェアは、PolyForm Noncommercial License 1.0.0のもとで使用を許諾されています。
このライセンスにおいて許可されない方法での使用を希望される場合は、個別対応となりますので、お問い合わせください。