BIDS v202公開 ~openBVEへの対応など~

スポンサーリンク

どうも.  なんか久々の更新な気がします.

今日はBIDSのコアとなる部分の更新に関するお知らせです.

BIDS v202

自分でもバージョンがよくわからなくなってきてますが, v202です.
v202では, 以下の機能が実装されました.

  • openBVEへの対応
    • 専用構造体の定義, 共有メモリエリアの作成, 接頭辞情報の定義を行い, 他のデバイスと情報の共有ができるようになりました.
  • 接尾辞の削除
    • プロトコルによってはデータが分割されずに送信できる場合があるため, BIDSとして接尾辞を定義しないこととしました.
    • 必要に応じて, BIDSとUDP等の間にレイヤを挟み, 独自の手順/プロトコルを定義する形となります.

これ以外も色々ありますが, こまごまとしたものなので省略します.

BIDSSMemLib

BVEと各ソフトウェアを, BIDS共有メモリ領域を介して接続する機能を提供するライブラリです.
機能のデモ用に, BIDSDataChecker(共有されている情報を確認するソフトウェア)およびBIDSSMemInputTester(マスコン等操作命令を出力するソフトウェア)を同時に配布しております.

ソフトウェアを開発したいとお考えの方向けの情報は, GitHubのほうで後日書かせていただきます.  ここでは, プレイヤー向けのインストール方法を記載しておきます.

BVE5で使用するには

BVE5 version5.7.6224.40815の場合の操作です.  これ以外のバージョンの場合, 操作手順が異なる, あるいはそもそも使用できない可能性もございます.  ご注意ください.

  1. BIDSSMemLibをダウンロードし, 展開/解凍しておきます.
  2. 解凍したものからTR.BIDSSMemLib.bve5.dllをクリップボードに貼り付けておきます.
  3. BVE本体で読み込めるよう, ファイルを配置します.  なお, 以下の操作を実行する前に, BVEは終了しておいてください.
    BVEの実行ファイルがあるフォルダと同じフォルダにある「Input Devices」フォルダの中に, 先ほどのdllを貼り付けてください.
    これで, BVEからSMemLibが読み込めるようになりました.
  4. 車両側から車両情報(時間, 位置等)を取得できるよう, ファイルを配置し設定を行います.
    1. 好きな場所(例 : Vehicleファイルと同じフォルダなど)に, 先ほどのdllを貼り付けてください.
    2. AtsプラグインとしてSMemLibを読み込めるよう, 設定を行ってください. (例:AtsにSMemLibを設定, detailmodules.txtにSMemLibを追加など)
    3. これで車両への組み込みは完了です.
  5. BVEを起動し, 本体ウィンドウの中で右クリックし, 設定画面を開いてください.
  6. 設定ウィンドウ内「入力デバイス」タブより, 「追加の入力デバイス」リストを確認してください.
  7. インターフェイス名「BIDS Project」と書かれた, ファイル名が「TR.BIDSSMemLib.bve5.dll」となっている行の左端にあるチェックボックスにチェックを入れてください.
  8. 以上の作業により, BVE5でBIDSSMemLibが使用できるようになります.
    SMemLibを組み込んだ車両を参照するシナリオを読み込むと, 自動でデータの共有が開始されます.

なお, これは改造が禁止されている車両等の改造を推奨するものではありません.  車両作者様とトラブルが発生した場合について, 当方の故意あるいは重大な過失双方について存在することが明らかであり, それが立証された場合を除き, 立証に至る過程含めトラブル解決のためのいかなる行動も行う義務を負わないことをご了承ください.

openBVEで使用するには

openBVE version1.6.0.0の場合の操作です.  これ以外のバージョンの場合, 操作手順が異なる, あるいはそもそも使用できない可能性もございます.  ご注意ください.

  1. BIDSSMemLibをダウンロードし, 展開/解凍しておきます.
  2. 解凍したものからTR.BIDSSMemLib.obve.dllをクリップボードに貼り付けておきます.
  3. openBVE実行ファイルが格納されたフォルダ内にある「Data」フォルダを開きます.
  4. 「Data」フォルダ内にある「InputDevicePlugins」フォルダ内に, 先ほどのdllを貼り付けます.  なお, この際openBVEは終了させておいて下さい.
  5. openBVEを起動し, 「オプション」ページを表示させます.
  6. 「次のページへ」ボタン等を使用しページを切り替え, ページ下部にある「入力デバイスプラグイン」を確認します.
  7. 名称が「BIDS Shared Memory Library for openBVE」となっている行を選択し, リスト欄の下にある「この入力デバイスプラグインを有効化する」チェックボックスにチェックを入れます.
  8. 以上の作業により, openBVEでBIDSSMemLibを使用できるようになります.  好きな車両/路線を選択し, スタートしてください.
    なお, v202ではPanel/Soundの共有は行われません.  ご了承ください.

openBVEでは, 入力デバイスプラグインの機能を用いて車両情報の取得を行っているため, 車両側へのBIDSSMemプラグイン導入は不要です.  但しv203以降は車両側にも導入が必要になる可能性があります.

BIDS_Server

BIDS_Serverは, BIDS共有メモリの情報をほかのクライアント(スマホ, タブレット, PC, マイコンなど)と共有するための通信モジュールを管理するソフトウェアです.
とりあえずcommunication, udp, serialの3種類のモジュールを用いた共有機能を提供しております.

詳しい使用方法は, 後日作成予定のGitHub内解説ページをご確認ください.

License

BIDS_Server, BIDSSMemLibともMITライセンスの下で, 自由に再配布/改造など行うことができます.  つまり, BIDSSMemLibは車両に組み込んでの配布が可能です(但しライセンスファイルの同梱あるいは適切な表記が必要になります).  ぜひぜひ組み込んで公開してください.

Download

BIDS_Server, BIDSSMemLibともGitHubにて公開しております.  GitHubよりダウンロードしてください.

問い合わせなど

問い合わせや機能の要望等は, GitHubのIssue機能や, Twitterのリプライ機能を用いて, お気軽にお寄せください.

記事一覧

BIDS,BVE,お知らせ

Posted by Tetsu Otter