UC-win/Road上の車両や歩行者のモデルの動きを記録し、再生(リプレイ)することができるプラグインです。運転シミュレーションによるマニュアルドライブにおいて、車両同士の衝突、ガードレールと接触するなどのアクシデントを運転席や車外から確認したい場合(図1)や、交差点における交通シミュレーションの状況を詳しく確認したい場合に威力を発揮します。
|
|
|
■図1 運転シミュレーション中のアクシデントを車外から確認 |
|
刻々と動く車両や歩行者などを、1秒間に数十回(使用PCの性能に依存)にわたってリアルタイムに記録し再生します。
車両については、図2のような挙動(ロール/ピッチ/ヨー)を細かく記録するため、路面の段差での車の動きや、衝突時の状況などを正確に、そしてリアルに再現できます。
■図2 車の挙動
記録対象は表1のとおりです。車両や歩行者と併せて、交通信号やコンテキストの記録も行います。
車両 |
座標,ロール,ピッチ,ヨー,ウインカー,ブレーキランプなど |
歩行者 |
座標,動作,ロール,ピッチ,ヨー |
交通信号 |
点灯状況 |
コンテキスト |
シナリオ実行時のコンテキスト |
■表1 リプレイの記録対象
|
操作パネル
メニューの[ツール|リプレイプラグイン]より、図3の操作パネルが開きます。操作方法は一般的なCDプレーヤーと同様で、早送りやスロー再生、逆再生も可能です。トラックバーにより指定した時刻への移動もできます。なお、記録直後であればそのまま再生することも可能ですが、ファイルに保存し、後から再生することもできます。
ツールバー
メイン画面にツールバーを表示した場合、ツールバー上で記録・再生が行えます(図4)。操作パネルがメイン画面の背面に隠れることがないため、操作性が向上します。
オプション
再生時の視点(運転席や車両背面など)の指定や、自車から一定の距離の車両、歩行者のみを記録対象とする機能の選択などを行います。
|
|
|
■図3 操作パネル |
|
■図4 ツールバー |
|
本プラグインはシナリオプラグインと連帯することにより、イベント発生のタイミングで記録を開始したり、再生することが可能になります。たとえば、車両の接触などのアクシデントが発生した場合に、その数秒前からアクシデント発生までの確認を行った後で、元のシナリオに戻る、あるいは、駐車場などの所定の場所に車両を停車した場合、それまでの運転走行を最初から確認するなどの設定が可能です。
■図5 シナリオの設定
|
多数の車両や歩行者の動きをリアルタイムに記録します。数百から数千のモデルが記録対象となることもありますが、このようなケースでは必然的に記録データが大きくなり、場合によっては1GBを超えるケースも想定されることから、本プラグインでは、ZLib(ZIPなどに使われている圧縮アルゴリズム)による記録データの圧縮を行っています。
また、再生前に記録データファイルをすべてメモリ上に読み込んだ場合、メモリ領域を圧迫することになるため、図6のように、必要な再生データを小さな単位で先読みする方法を採用しています。
これにより、メモリ負担の軽減、データ読込みによる遅延を抑え、多数のモデルの再生においても高いパフォーマンスを実現しています。
■図6 再生データの管理方法
|
UC-win/Road SDKと本プラグインを組み合わせた場合、SDK側から記録,再生を制御できるようになります。
また、運転シミュレーションを記録したデータを再生した場合、自車の位置やステアリングなどの運転操作量、速度などを逐次取得することも可能です。表2に、SDK側から制御できるコマンドの例を示します。
Rec |
記録を開始する |
Replay |
再生を開始する |
Stop |
記録を終了する。再生を停止する |
Jump |
指定した時刻から再生を行う |
LoadFromFile |
指定したファイルを読み込む |
DrivingCar |
自車の情報を取得する |
■表2 リプレイプラグインのコマンド例
|
今後は、再生データの読み込み処理をスレッド化し、バックグラウンドで読み込むことにより、より高いパフォーマンスを発揮できるよう改善する予定です。
また、シナリオプラグインとの連帯時に、メッセージを表示する機能の追加や、視点制御の拡張などを行っていく予定です。どうぞご期待ください。 |
|
>> 製品総合カタログ
>> プレミアム会員サービス
>> ファイナンシャルサポート
|