MAJOR CHANGES
旧作からの大きな変更点
大きな変更点を記載しています。
レイアウトファイル
VRM5のvrxファイルを変換して読み込むことができます。保存は、NXシステムのレイアウトファイル(vrmnx)です。VRM5とNXシステムでは、機能面で違いがあります。
レンダリング
VRMNX専用に開発した新型のディファードレンダリングエンジンを搭載しています。 被写界深度、新アンビエントオクルージョン、夜景の光源計算、ガラスシェーダーなど最新鋭のレンダリングをお楽しみいただけます。
背景の時間変化
旧世代では別れていた夜間シェーダーが、メインシェーダーに統合され、背景、太陽光をスクリプトで制御できるようになりました。時間によって変化するシーンを表現できます。
レイアウトサイズ
完全な64ビット化により、より大きなレイアウトを作成できます。 大型のレイアウトを作成する場合は、レイアウトが展開できる十分なメインメモリー、VRAMを搭載してください。
センサー
旧作レイアウトをロードしたときに、旧型センサーは自動センサーにリプレースされます。スクリプトは、変換されませんので、Pythonコードに書き換えてください。
スクリプト
Pythonに変更しています。Pythonは、学習が比較的容易です。Pythonを採用していますが、部品ごとにスクリプトを記述します。ビュワー起動時にスクリプトが、Pythonシステムにロードされ、実行可能な状態になります。そのときにimportが行われ、vrmapiモジュールが使用可能になります。VRM-NXの命令は、すべてvrmapiモジュールに組み込まれています。
Pythonのモジュールを利用したAI運用など単なるスクリプトを超えた可能性があります。
現在は、3.7のシステムとあわせて配布されているLIBを組み込んでいます。
Python付属のLIBの使用については、VRMNXではサポートしていません。importしても問題ないか確認いないため、サポート外としてご利用ください。(UI、時間のかかる処理は、NXシステムが正常に動作しなくなります。)
スクリプトは、イベントドリブンで呼び出されます。イベントのレシーバーは、システムによって自動生成されます。イベントを受け取った場合は、短時間で処理を返すようにしてください。
(将来、マルチスレッドに対応できるよう、イベント処理は、それぞれ独立してください。)
スクリプトの記述によっては、アプリがエラー終了する場合があります。
スクリプトは、実行時にエラーが記録されます。エラーは、スクリプトログに記録されます。
地形
地形高度は、固定小数点方式から浮動小数点数に変更しました。微細な高低差をもった精密な地形を作成できます。
地形テクスチャーは、4レイヤー構造になりました。レイヤー間でテクスチャーを合成表示できます。また、VRM5方式の地形表現を再現するVRM5地形エミュレーターを搭載しています。
UNDO
地形などいくつかのUNDOは、メモリー消費の調整のため、機能しません。
ゲームパッド
サイドワインダーシリーズは対象外になります。XInput対応ゲームパッドをご利用ください。
車輌の挙動について
第5世代以前は、台車を基準に車体位置を計算しています。本バージョンより、車輪基準になります。車体位置は、実車に近い挙動になりますが、いくつか相違点があります。
位置
第5世代と基準点がことなるため、旧作レイアウトをロードした場合、編成位置が微妙に移動します。列車の位置に依存するレイアウトの場合は、調整を行ってください。
車輪
蒸気機関車の動輪など大型の台枠で固定されている車輪の場合、カーブ区間での挙動が実車とは異なります。実車では、左右動を一部の動輪を除いて固定しています。カーブレール側に余裕をもたせています。模型では、カーブレールは固定のため、車輪側が左右に移動できるようになっています。模型は、この仕組で急カーブも通過できるようになっています。
VRM-NXは、模型タイプの計算+仮想区間の組み合わせで、物理的な挙動以上に許容をもたせています。このため、急カーブでは、車輪が台枠、ロッドに重なりますが、仮想空間のため進行には問題ありません。
連結器
車輌は、連結器を介して接続されます。実車、模型では、連結器が物理的な制限事項になります。一般的なNゲージでは、連結器は、台車に直結され、台車の動きに合わせて首を振ります。VRM-NXは、計算上は、Nゲージと同じ挙動 になります。見た目は、実車と同じ構造の連結器になります。急な曲率変化などにより、計算上の位置と見た目がずれる場合がありますが、進行には問題ありません。
ドア開閉など
ドア開閉、EG灯など新機能は、新機能対応モデルで動作します。
ビュワーのカメラ
視点計算は、全面的に変更しています。旧バージョンと挙動に互換性はありません。
列車に搭載されているカメラが変更されています。スクリプトで切り替える場合は、タグで変更します。(順次切り替えは、カメラの種類が将来増えた際に変更先が異なります。)
地上カメラは、追尾関連の挙動がことなります。操作対象と表示対象を明確に分離管理するようになりました。
ビュワーの操作
列車、ポイントにタグを表示できます。タグをクリックすることで、対象部品を直接操作できます。(ポイントの切替、操作対象列車の直接指定)
ビュワーのウィンドウを表示させると、各部品の詳細な操作、太陽位置の変更などが行なえます。
ミニマップの搭載は、現時点では検討項目になります。
モーションパス
モーションパスは、ノードのハンドル編集ができます。
エミッター
Direct3Dのバージョン変更により、特殊効果のかかり方がかわりました。また、時間変化する要素が増えています。旧作レイアウトを変換する場合は、調整してください。
ATS
自動センサーのコマンドは、一部廃止、統合されています。また、コマンドのパラメータは、複数設定できるようになりました。パラメータは、",“で区切ります。
パラメータの設定例
100, 0, 200
数値、文字列、ラベルが設定できます。
200.0, "文字列サンプル", labelsample1
ラベルは、共通ステータス、部品ステータスの名前TAGを表します。(スクリプトでの変数参照に相当)
共通ステータス、部品ステータスは、番号管理ではなく名前TAGでの管理になりました。
また、部品ごとに固有の部品ステータスを設定できます。