(57)【要約】      （修正有）【課題】車両の１つ以上の車両システムから車両動力学データを受信し、バーチャルリアリティデバイスからユーザデータを受信する車載動的バーチャルリアリティのための方法を提供する。【解決手段】バーチャル世界モデルが、バーチャルビューを定義する１つ以上の構成要素を含み、バーチャルビューを生成する、車両データ及びユーザデータのうちの少なくとも１つに従って、バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む工程と、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングする工程と、を含む。【選択図】図１
2015072687.tif 000002
【特許請求の範囲】
【請求項１】
車載動的バーチャルリアリティのためのコンピュータ実装方法であって、
車両の１つ以上の車両システムから車両データを受信する工程であって、前記車両データが、前記車両の車両動力学データを含む、受信する工程と、
携帯デバイスからユーザデータを受信する工程であって、前記ユーザデータが、ユーザの少なくとも配向及び位置情報を含む、受信する工程と、
前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、前記バーチャル世界モデルが、前記バーチャルビューを定義する１つ以上の構成要素を含み、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記バーチャルビューを前記出力デバイスにレンダリングする工程と、を含む、方法。
【請求項２】
車載動的バーチャルリアリティのためのコンピュータ実装方法であって、
車両の１つ以上の車両システムから車両データを受信する工程であって、前記車両データが、車両動力学データを含む、受信する工程と、
バーチャルリアリティデバイスからユーザデータを受信する工程と、
前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、前記バーチャル世界モデルが、前記バーチャルビューを定義する１つ以上の構成要素を含み、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記バーチャルビューを前記出力デバイスにレンダリングする工程と、を含む、方法。
【請求項３】
前記車両データに基づいて前記車両の配向及び位置を決定する工程を含む、請求項１または２に記載のコンピュータ実装方法。
【請求項４】
前記ユーザデータ及び前記車両データに基づいて前記車両に対する前記ユーザの配向及び位置を決定する工程を含む、請求項３に記載のコンピュータ実装方法。
【請求項５】
前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程が、前記車両の前記配向及び前記位置、並びに前記ユーザの前記配向及び前記位置のうちの少なくとも１つに基づく、請求項４に記載のコンピュータ実装方法。
【請求項６】
前記車両動力学データに基づいて車両運動データを決定する工程を含む、請求項１または２に記載のコンピュータ実装方法。
【請求項７】
前記ユーザデータ及び前記車両データに基づいて前記車両に対する前記ユーザの運動を表すユーザ運動データを決定する工程を含む、請求項６に記載のコンピュータ実装方法。
【請求項８】
前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程が、前記ユーザ運動データ及び前記車両運動データのうちの少なくとも１つに基づく、請求項７に記載のコンピュータ実装方法。
【請求項９】
前記車両運動データ及び前記ユーザ運動データに基づいて一時的運動レンダリング速度を決定する工程を含む、請求項７に記載のコンピュータ実装方法。
【請求項１０】
前記バーチャルビューを前記出力デバイスにレンダリングする工程が、前記一時的運動レンダリング速度に基づいて前記バーチャルビューの表示を更新するように、前記出力デバイスを制御する工程を含む、請求項９に記載のコンピュータ実装方法。
【請求項１１】
前記出力デバイスが、前記携帯デバイスである、請求項１または２に記載のコンピュータ実装方法。
【請求項１２】
車載動的バーチャルリアリティのためのコンピュータシステムであって、
コンピュータ通信のために、車両の１つ以上の車両システム及び携帯デバイスに動作的に接続されるプロセッサを備え、前記プロセッサが、
車両の前記１つ以上の車両システムから車両データを受信し、かつ前記携帯デバイスからユーザデータを受信するバーチャルリアリティデータモジュールであって、前記車両データが前記車両の車両動力学データを含み、前記ユーザデータが前記携帯デバイスを所有するユーザに関する少なくとも配向及び位置情報を含む、バーチャルリアリティデータモジュールと、
前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいて前記バーチャルビューを生成する動的バーチャルリアリティモジュールであって、前記バーチャル世界モデルが、前記バーチャルビューを定義する１つ以上の構成要素を含み、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、動的バーチャルリアリティモジュールと、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記動的リアリティモジュールからの前記バーチャルビューを前記出力デバイスにレンダリングするレンダリングモジュールと、を含む、システム。
【請求項１３】
車載動的バーチャルリアリティのためのコンピュータシステムであって、
バーチャル世界モデルを記憶するデータストアであって、前記バーチャル世界モデルが、バーチャルビューを定義する１つ以上の構成要素を含む、データストアと、
コンピュータ通信のために、前記データストア、車両の１つ以上の車両システム、及びバーチャルリアリティデバイスに動作的に接続されるプロセッサと、を備え、前記プロセッサが、
車両の前記１つ以上の車両システムから車両データを受信し、かつ前記バーチャルリアリティデバイスからユーザデータを受信する、バーチャルリアリティデータモジュールであって、前記車両データが車両動力学データを含む、バーチャルリアリティデータモジュールと、
前記データストアからの前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいて前記バーチャルビューを生成する動的バーチャルリアリティモジュールであって、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、動的バーチャルリアリティモジュールと、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記動的リアリティモジュールからの前記バーチャルビューを前記出力デバイスにレンダリングするレンダリングモジュールと、を含む、システム。
【請求項１４】
前記動的バーチャルリアリティモジュールが、前記車両データ及び前記ユーザデータに基づいて前記バーチャル世界モデルの前記構成要素のうちの１つ以上の１つ以上のプロパティを拡張する、請求項１２または１３に記載のシステム。
【請求項１５】
前記１つ以上のプロパティが、前記構成要素の運動を定義する運動プロパティを含む、請求項１４に記載のシステム。
【請求項１６】
前記レンダリングモジュールが、前記車両動力学データに基づいて車両運動データを決定する、請求項１２または１３に記載のシステム。
【請求項１７】
前記レンダリングモジュールが、前記ユーザデータ及び前記車両データに基づいて前記車両に対する前記ユーザの運動を表すユーザ運動データを決定する、請求項１６に記載のシステム。
【請求項１８】
前記レンダリングモジュールが、前記車両運動データ及び前記ユーザ運動データに基づいて一時的運動レンダリング速度を決定する、請求項１７に記載のシステム。
【請求項１９】
前記レンダリングモジュールが、前記一時的運動レンダリング速度に基づいて前記バーチャルビューの表示を更新するように、前記出力デバイスを制御することによって、前記バーチャルビューを前記出力デバイスにレンダリングする、請求項１８に記載のシステム。
【請求項２０】
前記動的バーチャルリアリティモジュールが、前記一時的運動レンダリング速度に基づいて前記バーチャル世界モデルの前記構成要素のうちの１つ以上の１つ以上のプロパティを拡張する、請求項１９に記載のシステム。
【請求項２１】
車両コンピュータによって実行されるとき、前記コンピュータに、
車両の１つ以上の車両システムから車両データを受信する工程であって、前記車両データが、前記車両の車両動力学データを含む、受信する工程と、
携帯デバイスからユーザデータを受信する工程であって、前記ユーザデータが、ユーザの少なくとも配向及び位置情報を含む、受信する工程と、
前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、前記バーチャル世界モデルが、前記バーチャルビューを定義する１つ以上の構成要素を含み、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記バーチャルビューを前記出力デバイスにレンダリングする工程と、を実施させる命令を記憶する、非一時的コンピュータ可読記憶媒体。
【請求項２２】
車両コンピュータによって実行されるとき、前記コンピュータに、
車両の１つ以上の車両システムから車両データを受信する工程であって、前記車両データが、車両動力学データを含む、受信する工程と、
バーチャルリアリティデバイスからユーザデータを受信する工程と、
前記車両データ、前記ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、前記バーチャル世界モデルが、前記バーチャルビューを定義する１つ以上の構成要素を含み、前記バーチャルビューを生成する工程が、前記車両データ及び前記ユーザデータのうちの少なくとも１つに従って、前記バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、
前記車両動力学データに従って、前記バーチャルビューの表示を更新するように、出力デバイスを制御することによって、前記バーチャルビューを前記出力デバイスにレンダリングする工程と、を実施させる命令を記憶する、非一時的コンピュータ可読記憶媒体。
【請求項２３】
前記車両動力学データ及び前記ユーザデータに基づいて一時的運動レンダリング速度を判定する工程を含み、前記バーチャルビューを出力デバイスにレンダリングする工程が、前記一時的運動レンダリング速度に基づいて前記バーチャルビューの表示を更新するように、前記出力デバイスを制御する工程を含む、請求項２１または２２に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、２０１３年１０月３日出願の米国仮出願第６１／８８６２４０号の優先権を主張し、それは、参照により本明細書に明示的に組み込まれる。
【背景技術】
【０００２】
真の没入型バーチャルリアリティ及び拡張現実システムは、ユーザの知覚システムをコンピュータ生成刺激に没入する環境（例えば、バーチャル世界及び／又はバーチャルビュー）を作成する。典型的に、これらの没入型システムは、ユーザの感覚を捕らえつつ、物質的世界からの刺激を遮断する。バーチャル世界は、ユーザからの入力、及び／又はバーチャル世界とユーザの相互作用の結果として変化し得る。
【０００３】
これらのシステムの目的は、没入型環境を作成することであるが、物理的世界が依然として没入型環境のための状況を提供するために使用され得る。具体的に、ユーザの環境及び状況を考慮することが重要である。例えば、車両中のユーザの状況において、没入型バーチャルリアリティ及び拡張現実システムは、ユーザ、車両、及び車両に対するユーザに関する情報を考慮することができる。この情報は、ユーザ及びユーザの環境にカスタマイズされる没入型環境を生成するために使用され得、ユーザが快適に没入型環境を知覚することを可能にし得る。
【発明の概要】
【課題を解決するための手段】
【０００４】
一態様に従って、車載動的バーチャルリアリティのための方法は、車両の１つ以上の車両システムから車両データを受信する工程であって、車両データが車両動力学データを含む、受信する工程と、バーチャルリアリティデバイスからユーザデータを受信する工程と、を含む。この方法は、車両データ、ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、バーチャル世界モデルが、バーチャルビューを定義する１つ以上の構成要素を含み、バーチャルビューを生成する工程が、車両データ及びユーザデータのうちの少なくとも１つに従って、バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングする工程と、を含む。
【０００５】
別の態様に従って、車載動的バーチャルリアリティのための車両コンピュータシステムは、バーチャル世界モデルを記憶するデータストアであって、バーチャル世界モデルが、バーチャルビューを定義する１つ以上の構成要素を含む、データストアと、コンピュータ通信のために、データストア、車両の１つ以上の車両システム、及びバーチャルリアリティデバイスに動作的に接続される、プロセッサと、を含む。プロセッサは、車両の１つ以上の車両システムから車両データを受信し、かつバーチャルリアリティデバイスからユーザデータを受信する、バーチャルリアリティデータモジュールを含み、車両データは、車両動力学データを含む。プロセッサは、データストアからの車両データ、ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する動的バーチャルリアリティモジュールも含み、バーチャルビューを生成する工程は、車両データ及びユーザデータのうちの少なくとも１つに従って、バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む。プロセッサは、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、動的リアリティモジュールからのバーチャルビューを出力デバイスにレンダリングするレンダリングモジュールも含む。
【０００６】
別の態様に従って、非一時的コンピュータ可読記憶媒体は、車両コンピュータによって実行されるとき、コンピュータに、車両の１つ以上の車両システムから車両データを受信する工程であって、車両データが車両動力学データを含む、受信する工程と、バーチャルリアリティデバイスからユーザデータを受信する工程と、を実施させる命令を記憶する。これらの工程は、車両データ、ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程であって、バーチャル世界モデルが、バーチャルビューを定義する１つ以上の構成要素を含み、バーチャルビューを生成する工程が、車両データ及びユーザデータのうちの少なくとも１つに従って、バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む、生成する工程と、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングする工程と、を含む。
【図面の簡単な説明】
【０００７】
【図１】例示的な実施形態に従う、車載動的バーチャルリアリティシステム及び方法に対する動作環境の概略図である。
【図２】例示的な実施形態に従う、車載バーチャルリアリティシステム及び方法を実装する車両及び車両乗員の概略図である。
【図３】例示的な実施形態に従う、図１のバーチャルリアリティエンジンのブロック図である。
【図４】例示的な実施形態に従う、データフローを含むバーチャル世界モデル図である。
【図５】例示的な実施形態に従う、図４のバーチャル世界モデルを含む、バーチャルリアリティ世界の概略クラス図である。
【図６】例示的な実施形態に従う、車載動的バーチャルリアリティのための方法のフローチャート図である。
【図７Ａ】例示的な実施形態に従う、バーチャルビューの例示的な実施形態である。
【図７Ｂ】例示的な実施形態に従う、別のバーチャルビューの例示的な実施形態である。
【発明を実施するための形態】
【０００８】
以下は、本明細書において使用される選択された用語の定義を含む。この定義は、用語の範囲内に収まるとともに実施のために使用することができる、構成要素の様々な実施形態及び／又は形態を含む。この実施形態は、制限的なものであることを意図していない。
【０００９】
本明細書で用いる「バス」は、コンピュータの内部の、又はコンピュータの間の他のコンピュータ構成要素に動作可能に接続された、相互に連結されるアーキテクチャを指す。バスは、コンピュータの構成要素の間でデータを転送することができる。このバスは、メモリバス、メモリコントローラ、周辺バス、外部バス、クロスバースイッチ、及び／又はローカルバス等であり得る。このバスは、コントローラエリアネットワーク（ＣＡＮ）、ローカルインターコネクトネットワーク（ＬＩＮ）等のプロトコルを用いて、車両内部の構成要素を相互接続する車両用バスでもあり得る。
【００１０】
本明細書で用いる「コンピュータ通信」は、２つ以上のコンピューティングデバイス（例えば、コンピュータ、パーソナルデジタル補助装置、携帯電話、ネットワークデバイス）の間の通信を指し、例えば、ネットワーク転送、ファイル転送、アプレット移転、電子メール、ハイパーテキスト転送プロトコル（ＨＴＴＰ）転送であり得る。コンピュータ通信は、例えば、無線システム（例えば、ＩＥＥＥ  ８０２．１１）、イーサネット（登録商標）システム（例えば、ＩＥＥＥ  ８０２．３）、トークンリングシステム（例えば、ＩＥＥＥ  ８０２．５）、ローカルエリアネットワーク（ＬＡＮ）、ワイドエリアネットワーク（ＷＡＮ）、ポイントツーポイント方式、回線交換方式、パケット交換方式等にわたって生じることがあり得る。
【００１１】
本明細書で用いる「ディスク」は、例えば、磁気ディスクドライブ、ソリッドステートディスクドライブ、フロッピー（登録商標）ディスクドライブ、テープドライブ、Ｚｉｐドライブ、フラッシュメモリカード、及び／又はメモリスティックであり得る。更にまた、ディスクは、ＣＤ−ＲＯＭ（コンパクトディスクＲＯＭ）、ＣＤレコーダブルドライブ（ＣＤ−Ｒドライブ）、ＣＤリライタブルドライブ（ＣＤ−ＲＷドライブ）及び／又はデジタルビデオＲＯＭドライブ（ＤＶＤ  ＲＯＭ）であり得る。このディスクは、コンピューティングデバイスのリソースを制御又は割り当てるオペレーティングシステムを書き込むことができる。
【００１２】
本明細書で用いる「データベース」は、表、表のセット、データストアのセット、並びに／又はそれらのデータストアにアクセスする、及び／若しくはそれらを操作するための方法を指し得る。
【００１３】
本明細書で用いる「メモリ」は、揮発性メモリ及び／又は不揮発性メモリを含むことができる。不揮発性メモリは、例えば、ＲＯＭ（読出し専用メモリ）、ＰＲＯＭ（プログラマブル読出し専用メモリ）、ＥＰＲＯＭ（消去可能なＰＲＯＭ）及びＥＥＰＲＯＭ（電気的消去可能ＰＲＯＭ）を含むことができる。揮発性メモリは、例えばＲＡＭ（ランダムアクセスメモリ）、シンクロナスＲＡＭ（ＳＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、シンクロナスＤＲＡＭ（ＳＤＲＡＭ）、ダブルデータレートＳＤＲＡＭ（ＤＤＲ  ＳＤＲＡＭ）、ダイレクトＲＡＭバスＲＡＭ（ＤＲＲＡＭ）を含むことができる。メモリは、コンピューティングデバイスのリソースを制御又は割り当てるオペレーティングシステムを記憶することができる。
【００１４】
本明細書で用いる「モジュール」には、機能若しくは動作を実行し、並びに／又は別のモジュール、方法、及び／若しくはシステムからの機能若しくは動作を引き起こすためのハードウェア、ファームウェア、機械上で実行されるソフトウェア、及び／又はそれぞれの組み合わせが含まれるが、これらに限定されない。モジュールには、ソフトウェア制御されるマイクロプロセッサ、個別論理回路、アナログ回路、デジタル回路、プログラムされた論理デバイス、実行命令を含有するメモリデバイスなどが含まれ得る。
【００１５】
「動作可能な接続」又は実体が「動作可能に接続される」とは、信号、物理的な通信及び／又は論理的通信を送信及び／又は受信することができる接続である。動作可能な接続は、物理的なインターフェース、データインターフェース及び／又は電気的インターフェースを含むことができる。
【００１６】
本明細書で用いる「プロセッサ」は、信号を処理し、一般的な計算及び算術関数を実行する。プロセッサによって処理される信号には、デジタル信号、データ信号、計算機命令、プロセッサ命令、メッセージ、ビット、ビットストリーム、又は受信し、送信し及び／又は検出することができる他の手段を含めることができる。一般に、プロセッサは、マルチ、シングル及びマルチコアのプロセッサ及びコプロセッサ、並びに他のマルチ、シングル及びマルチコアのプロセッサ及びコプロセッサのアーキテクチャを含む様々なプロセッサであり得る。プロセッサは、様々な機能を実行するために様々なモジュールを含むことができる。
【００１７】
本明細書で用いる「携帯デバイス」は、ユーザ入力（例えば、タッチ、キーボード）を有する表示画面及び計算のためのプロセッサを典型的に有するコンピューティングデバイスである。携帯デバイスには、ハンドヘルドデバイス、モバイルデバイス、スマートフォン、ラップトップ、タブレット、及び電子書籍リーダーが含まれるが、これらに限定されない。
【００１８】
本明細書で用いる「車両」は、１人以上の乗員を乗せることが可能であり、任意の形態のエネルギーによって電力供給される、任意の移動車両を指す。「車両」という用語には、車、トラック、バン、ミニバン、ＳＵＶ、オートバイ、スクータ、ボート、パーソナルウォータークラフト、及び航空機が含まれるが、これらに限定されない。場合によっては、自動車は、１つ以上のエンジンを含む。
【００１９】
本明細書で用いる「車両システム」には、車両、運転、及び／又は安全を強化するために使用され得る、任意の自動又は手動システムが含まれ得るが、これらに限定されない。例示的な車両システムには、電子安定制御システム、アンチロックブレーキシステム、ブレーキ補助システム、自動ブレーキプレフィルシステム、低速追従システム、クルーズ制御システム、衝突警報システム、衝突軽減ブレーキシステム、自動クルーズ制御システム、車線逸脱警報システム、ブラインドスポットインジケータシステム、車線維持支援システム、ナビゲーションシステム、変速システム、ブレーキペダルシステム、電子パワーステアリングシステム、視覚デバイス（例えば、カメラシステム、近接センサシステム）、気象制御システム、電子プリテンションシステム等が含まれ得るが、これらに限定されない。
【００２０】
ここで図面を参照すると、表示は１つ以上の例示的な実施形態を示す目的であり、それらを制限する目的ではなく、図１は、例示的な実施形態に従う、車載動的バーチャルリアリティシステム及び方法を実装する、動作環境１００の概略図である。システム１００の構成要素、並びに本明細書で論じられる他のシステム、ハードウェアアーキテクチャ、及びソフトウェアアーキテクチャの構成要素は、種々の実施形態のために、組み合わされ得るか、省略され得るか、又は異なるアーキテクチャに組織化され得る。更に、動作環境１００の構成要素は、車両で実装され得るか、又は車両と関連付けられ得る。例えば、図２は、本明細書で更に詳述される、車載動的バーチャルリアリティシステム及び方法を実装する車両２００を示す。
【００２１】
図１の例示的な実施形態では、図１の環境１００は、車両（例えば、図２の車両２００）の種々の構成要素及び環境１００の他の構成要素を処理する、それらと通信する、及びそれらと相互作用するための規定付きで、車両コンピュータデバイス（ＶＣＤ）１０２（例えば、テレマティックスユニット、ヘッドユニット、ナビゲーションユニット、インフォテインメントユニット、電子コントロールユニット）を含む。概して、ＶＣＤ  １０２は、プロセッサ１０４、メモリ１０６、ディスク１０８、グローバルポジショニングシステム（ＧＰＳ）１１０、及び入力／出力（Ｉ／Ｏ）インターフェース１１２を含み、それぞれは、バス１１４（例えば、コントローラエリアネットワーク（ＣＡＮ）若しくはローカル相互接続ネットワーク（ＬＩＮ）プロトコルバス）、並びに／又は他の有線及び無線技術を介して、コンピュータ通信のために動作可能に接続される。Ｉ／Ｏインターフェース１１２は、ＶＣＤ  １０２の構成要素と他の構成要素、ネットワークとデータソースとの間のデータ入力及び出力を促進するために、ソフトウェア及びハードウェアを提供し、それらは、本明細書に記載される。加えて、本明細書で論じられるシステム及び方法に関して更に詳細に論じられるように、プロセッサ１０４は、環境１００の構成要素によって促進される、ユーザ（例えば、車両乗員）に車載動的バーチャルリアリティ環境を提供するのに好適なバーチャルリアリティ（ＶＲ）エンジン１１６を含む。
【００２２】
ＶＣＤ  １０２はまた、１つ以上の車両システム１１８とのコンピュータ通信（例えば、バス１１４及び／又はＩ／Ｏインターフェース１１２を介した）のために動作可能に接続される。車両システムには、車両、運転、及び／又は安全を強化するために使用され得る、任意の自動又は手動システムが含まれ得るが、これらに限定されない。車両システム１１８は、種々の車両センサ１２０を含み、及び／又はコンピュータ通信のためにそれらに動作可能に接続され、車両センサ１２０は、車両、車両環境、及び／又は車両システム１１８と関連する情報を提供及び／又は感知する。センサ１２０には、車両状態センサ、車両システム状態センサ、近接センサ、視覚センサ、音声センサ、ＧＰＳセンサ（例えば、ＧＰＳ  １１０）、及び他のセンサが含まれ得るが、これらに限定されない。特定の車両システムセンサには、車両速度センサ、アクセルペダルセンサ、ブレーキセンサ、スロットル位置センサ、車輪センサ、アンチロックブレーキセンサ、カムシャフトセンサ等が含まれ得るが、これらに限定されない。センサ１２０は、車両、車両環境、車両システム１１８、及び／又は車両の乗員と関連したデータの測定を感知するように動作可能であり、データの前述の測定を示すデータ信号を生成する。これらのデータ信号は、他のデータ基準及びパラメータを生成するために、他のデータ形式（例えば、値）に変換され得る、及び／又は車両システム１１８及び／又はＶＣＤ  １０２によって使用され得る。具体的に、ＶＣＤ  １０２及びその構成要素は、複数の車両システム１１８及び／又はセンサ１２０から、データ（例えば、車両データ、ユーザデータ、他のデータ（図３））にアクセスする、及び／又はそれを受信することができる。
【００２３】
再び図１を参照すると、ＶＣＤ  １０２は、コンピュータ通信のために、種々のネットワーク１２２及びバーチャルリアリティ（ＶＲ）デバイス１２４にも動作的に接続される。ネットワーク１２２は、例えば、データネットワーク、インターネット、広域ネットワーク、又はローカルエリアネットワークである。ネットワーク１２２は、種々のリモートデバイス（例えば、ウェブサーバ、リモートサーバ、アプリケーションサーバ、中間サーバ、クライアントマシン、他の携帯デバイス（図示せず））との通信媒体としての機能を果たす。ＶＲデバイス１２４は、車載動的バーチャルリアリティ環境を促進し、それをユーザに提供するために、ＶＣＤ  １０２、及び具体的にＶＲエンジン１１６に入力及び／又は出力を提供するデバイスを含む。例えば、ＶＲデバイス１２４には、バーチャルリアリティ追跡デバイス、頭装着型ディスプレイ、バーチャルリアリティ衣服、バーチャルリアリティ入力デバイス、バーチャルリアリティメガネ、ユーザ、車両、及び／又は車両環境を監視するための車両中のカメラ追跡システム、携帯デバイス、モバイルデバイス等のうちの１つ以上が含まれ得るが、これらに限定されない。
【００２４】
一実施形態では、ＶＲデバイス１２４は、ユーザの身体（例えば、頭）上に配置され得るか、又はヘルメット若しくはゴーグル上に取り付けられ得る、頭装着型ディスプレイ（ＨＭＤ）である。例えば、図２を参照すると、車両２００のシート２０４に位置付けられる車両乗員２０２は、車両乗員２０２の頭に配置されるＨＭＤ  ２０６を装着している。ＨＭＤ  ２０６は、車両乗員２０２に関する情報、例えば、追跡情報、入力情報、運動情報等を、ＶＲエンジン１１６に提供することができる。ＨＭＤ  ２０６はまた、ＶＲエンジン１１６によって生成されるバーチャルビューを、車両乗員２０２に提供する。別の実施形態では、車両乗員２０２は、携帯デバイス２０８を所有していてもよい。携帯デバイス２０８は、単独で又はＨＭＤ  ２０６と組み合わせて、車両乗員２０２に関する情報を提供することができ、携帯デバイス２０８上にＶＲエンジン１１６によって生成されたバーチャルビューを提供することができる。例えば、携帯デバイス２０８は、携帯デバイス２０８を所有している車両乗員２０２に関する追跡情報を提供することができる、加速度計、ジャイロスコープ、及び／又はコンパスを含むことができる。ＨＭＤ  ２０６及び／又は携帯デバイス２０８はまた、音声入力及び出力のためのスピーカ又はヘッドフォンを含むことができる。ＨＭＤ  ２０６及び／又は携帯デバイス２０８は、ＶＣＤ  １０２とのコンピュータ通信のために、無線又は有線技術を利用することができる。種々の入力／出力技術が、本明細書に記載されるシステム及び方法で実装され得る。ＶＲデバイス１２４の他の構成及び使用法も利用され得る。例えば、車両乗員２０２はまた、コントローラ（図示されないが、携帯デバイス２０８として実装され得る）を使用することができるか、又は携帯デバイス２０８を単独で、又はＨＭＤ  ２０６とともに使用することができる。
【００２５】
図１のＶＲエンジン１１６、及び車載動的バーチャルリアリティのためのシステムは、これから図３及び図１を参照して詳細に論じられる。図３は、例示的な実施形態に従う、バーチャルリアリティ（ＶＲ）エンジン３００（例えば、ＶＲエンジン１１６）のブロック図を示す。簡単にするために、図１の全ての構成要素が図３に示されるわけではない。ＶＲエンジン３００は、バーチャルリアリティデータモジュール３０２、動的バーチャルリアリティ（ＶＲ）モジュール３０６、及びレンダリングモジュール３０８を含む。図１を参照した上記の機能性に加えて、上記のモジュールは、車両データ３１８、ユーザデータ３２０、及び他のデータ３２２にアクセス、及び／又はそれらを受信することができ、かつ車両システム３１４及びＶＲデバイス３１６と通信することができる。上述のように、ＶＲデバイス３１６は、入力及び／又は出力をＶＲエンジン３００に提供する。具体的に、ＶＲデバイス３１６は、入力及び／又は出力をユーザ３１２（例えば、車両乗員２０２（図２））に提供することができる。例えば、図１とともに上で論じられるように、ＶＲデバイスは、バーチャルリアリティ追跡デバイス、頭装着型ディスプレイ（例えば、ＨＭＤ  ２０６）、携帯デバイス（例えば、携帯デバイス２０８）、バーチャルリアリティ衣服、バーチャルリアリティ入力デバイス等を含むことができる。
【００２６】
バーチャルリアリティデータモジュール３０２は、車両の１つ以上の車両システムから、車両データを受信する。車両データは、車両動力学データを含む。例えば、バーチャルリアリティデータモジュール３０６は、例えば、車両システム３１４から、車両データ３１８を受信することができる。車両データ３１８は、車両センサ１２０から得られる車両データ基準及びパラメータを含む。例えば、車両データには、車両位置データ（例えば、ＧＰＳ  １１０から）、車両配向データ、車両システム状態データ、１つ以上の車両システム並びに／又は構成要素に関するデータ、車両環境データ（例えば、内部及び外部環境データ）等が含まれ得るが、これらに限定されない。車両データ３１８は、ナビゲーションデータ、例えば、位置データ、方向データ（例えば、起点、目的地、及び関心点）等も含むことができる。
【００２７】
車両データ３１８はまた、車両の動力学及び車両の運動（例えば、速度、方向、加速度、ヨーレート、ステアリング速度、ステアリング角）を説明する、車両動力学データを含むことができる。車両動力学データには、車両の速度レベル、加速度、ヨーレート、ハンドル位置、ブレーキ位置、スロットル位置、変速ギア位置、ドライバのコマンド、動的車両反応、タイヤ及び道路等の力等に関するリアルタイムデータが含まれ得るが、これらに限定されない。いくつかの実施形態では、車両データ３１８は、リモートソース、例えば、ネットワーク１２２（図１）から受信され得る。一実施形態では、ＶＲデータモジュール３０２は、予測車両データを受信することができるか、又は車両データ３１８及び／若しくは車両動力学データに基づいて予測車両データを決定することができる。例えば、車両予測運動データは、ペダル位置、車両システム状態／制御、現在車両位置、車両目的地情報等に基づき得る。
【００２８】
バーチャルリアリティデータモジュール３０６もまた、ユーザデータ３２０を受信する。例えば、ユーザデータ３２０は、ＶＲデバイス３１６から受信され得る。ユーザデータ３２０は、例えば、ＶＲデバイス３１６からの追跡データ、相互作用データ、ユーザ入力データを含む。例えば、ユーザデータは、視覚センサ（例えば、センサ１２０、カメラ、ジェスチャー／運動センサ）、追跡システム、ＨＭＤ  ２０６、携帯デバイス２０８、並びにユーザの相互作用、姿勢、配向、位置、及び運動に関するデータを提供する他のセンサ及びシステムからのデータに、少なくとも部分的に基づき得る。例えば、ユーザデータ３２０は、ユーザに関する姿勢、配向、及び位置情報を含むことができる。別の実施形態では、ユーザデータ３２０は、例えば、車両データ３１８（車両動力学データを含む）に少なくとも部分的に基づいて、車両に関連したユーザに関する姿勢、配向、及び位置情報を含むことができる。したがって、一実施形態では、ユーザデータ３２０は、ユーザの運動及び姿勢に関する、並びにユーザの運動及び姿勢がどのように車両動力学の影響を受けるかに関する情報を提供することができる。ユーザデータはまた、例えば、健康監視デバイス（例えば、ユーザによって装着される携帯医療デバイス、車載生物学的健康監視デバイス）からの、ユーザに関する健康データを含むことができる。いくつかの実施形態では、ユーザデータはまた、他のネットワーク１２２及び／又は車両システム３１４から受信され得る。
【００２９】
別の実施形態では、バーチャルリアリティデータモジュール３０２はまた、車載動的バーチャルリアリティを促進するために他のデータを受信する。他のデータ３２２は、車両システム３１４、ＶＲデバイス３１６、及び／又は他のネットワーク１２２からのビッグデータを含むことができる。例えば、他のデータ３２２は、車両（例えば、内部、外部）、道路状況（例えば、凸凹道、滑りやすい道路、交通状況）、天候状態、車両温度等に関連した環境データを含むことができる。別の実施形態では、他のデータ３２２は、ドライバ動作データ、例えば、運転履歴、燃費、他の車両システムとの相互作用、ジェスチャー、車両に対する運動等を含むことができる。更に、いくつかの実施形態では、他のデータ３２２は、例えば、他のネットワーク１２２からのソーシャルメディアデータを含むことができる。
【００３０】
再び図３を参照すると、動的ＶＲデータモジュール３０６は、車両データ、ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する。一実施形態では、データストアは、バーチャル世界モデルを記憶し、バーチャル世界モデルは、バーチャルビューを定義する１つ以上の構成要素を含む。例えば、図３において、データストア３１０は、バーチャル世界モデル及び設計データを記憶することができる。バーチャル世界モデル及び設計データは、バーチャル世界及び／又はバーチャルビューを定義及び生成するためのゲームテーマ、ソフトウェア、又はプログラム命令を含むことができる。別の実施形態では、メモリ１０６及び／又はディスク１０８（図１）は、上記のバーチャル世界モデル及び設計データの一部又は全部を記憶することができる。別の実施形態では、バーチャル世界モデル及び設計データは、リモートソース、例えば、ネットワーク１２２から受信される。
【００３１】
ここで、例示的なバーチャル世界モデルを、図４及び５を参照して説明する。図４は、例示的な実施形態に従う、データフローを含む例示的なバーチャル世界データモデル４００の図を示す。図５は、例示的な実施形態に従う、図４のバーチャル世界モデルのノードクラスのグループ５０４を含む、バーチャルリアリティ世界５０２の概略的クラス図５００である。図４及び５とともに論じられるノードクラス、オブジェクト、プロパティ、参照、方法、及びイベント（すなわち、バーチャルビューを定義する１つ以上の構成要素）は、本質的に例示的であり、制限することを目的としていない。概して、バーチャル世界モデルは、バーチャル世界及び１つ以上のバーチャルビューを定義する、多くの個々の動作及びオブジェクトの集合体である。バーチャル世界モデルは、種々のモデリング及びプログラミング言語、例えば、バーチャルリアリティモデリング言語（ＶＲＭＬ）、ＤｉｒｅｃｔＸ、ＯｐｅｎＧＬ、Ｕｎｉｔｙ等で定義され得る。図５に示されるように、バーチャル世界５０２は、１つ以上のバーチャルビュー５０６を含むことができる。バーチャル世界５０２及びバーチャルビュー５０６はまた、１つ以上のバーチャルオブジェクト５１０を含むことができる。バーチャルビュー５０６及びバーチャルオブジェクト５１０は、ノードクラス、及び図５の実施形態において、ノードクラスのグループ５０４によって定義される。いくつかの実施形態では、ノードは、階層構造中で、グループ化され、１つ以上のバーチャルビュー５０６及び／又はバーチャルオブジェクト５１０に適用され得る。例えば、ノードクラスのグループ５０４は、ノードの特定のグループ（すなわち、ノードクラスのグループ５０４）と関連した、バーチャルビュー５０６及び／又はバーチャルオブジェクト５１０の親及び子ノードに適用することができる。
【００３２】
図５の例示された実施形態では、ノードクラスのグループ５０４は、ビューノードクラス５１２、世界構造ノードクラス５１４、イベントインノードクラス５１６、及びイベントアウトノードクラス５１８を含む。各ノードクラスは、ノードクラスを定義及び／又は修正する構成要素、例えば、他のノード、プロパティ、フィールド、方法、及び／又は参照を含むことができる。いくつかの実施形態では、ノード、プロパティ、フィールド、方法、及び／又は参照は、例えば、特定のテーマ、ゲーム等に対するバーチャル世界に基づいて、予め定義され得る。加えて、いくつかの実施形態では、ノード、プロパティ、フィールド、方法、及び／又は参照は、ユーザに基づいて、例えば、ユーザ選好に基づいて、予め定義され得る。図４及び５に含まれない他のノードクラス、プロパティ、フィールド、方法、及び／又は参照が実装されてもよく、かつ上記とは異なるモデリング及びプログラミング言語に基づいてもよい。
【００３３】
図５のノードクラスのグループ５０４は、これから詳細に論じられる。ビューノードクラス５１２は、バーチャルビュー５０６、バーチャルオブジェクト５１０、並びに／又はバーチャルビュー５０６及び／若しくはバーチャルオブジェクト５１０と関連した動作の位置並びに／又は配向を定義する。例えば、図５において、幾何学的変換を実施するために変換ノードが使用され得、特性、位置、回転、及びスケールを含む。画像効果ノードは、画像後処理効果を取り扱う。例示的な画像後処理効果は、被写界深度、動き、及びぶれ等を含む。挙動ノードは、異なる挙動、例えば、アニメーション及び運動を可能及び不可能にするために使用され得る。視覚効果ノードは、視覚効果、例えば、ラインレンダラ、ハロー効果、トレイルレンダ等を定義するために使用され得る。レンダリングノードは、ゲーム内及びユーザインターフェース要素をレンダリングするための設定及び構成要素を定義するために使用され得る。
【００３４】
世界構造クラスノード５１４は、バーチャルビュー５０６、バーチャルオブジェクト５１０、並びに／又はバーチャルビュー５０６及び／若しくはバーチャルオブジェクト５１０と関連した動作の構造並びに／又は外観を定義する。例えば、形状ノードは、形を定義するために使用され得る。外観ノードは、質感及び材料を定義するために使用され得る。地勢ノードは、地勢及び景色の特徴を定義するために使用され得る。衝突ノードは、バーチャルビュー中のどのオブジェクトが衝突可能であるかを定義する。
【００３５】
イベントインクラスノード５１６は、各ノードが受信又は生成することができるイベントの種類及び名前を定義する。例えば、イベントマネージャノードは、カスタムイベントを定義することができ、特定のイベントを初期化するために、イベントトリガ（例えば、ユーザデータ（例えば、ユーザ入力）、車両データから決定される）を決定する、イベントハンドラ及びリスナを含む。タイプフィールドは、イベントの種類を定義し、ノードフィールドは、イベントがどのノードに適用するかを定義し、ｓｅｔ＿ｆｉｅｌｄｎａｍｅ方法は、イベント中にフィールド値を修正するために使用され得る。イベントアウトクラスノード５１８は、イベントの実行及びルーティングを管理する。ｆｉｅｌｄｎａｍｅ＿ｃｈａｎｇｅｄフィールドは、何のフィールドがイベント中に変更されるかを示し、タイプフィールドは、イベントの種類を定義し、ノードフィールドは、イベントがどのノードに適用するかを定義し、ルート方法は、イベントがどのようにノードに送信されるか、並びにイベントがどのようにノードによって受信及び生成されるかを定義する。この場合もやはり、図５のクラスノード及び構成要素は、本質的に例示的であり、他のクラスノード及び構成要素は、本明細書で論じられるシステム及び方法で実装され得る。クラスノード及び構成要素は、ユーザに動的バーチャル世界及び／又はバーチャルビューを生成するために、車両データ及びユーザデータのうちの少なくとも１つに従って拡張され得る。具体的に、車両データ及びユーザデータは、ノードを初期化し、プロパティ及びフィールドを設定し、かつイベントを初期化又は定義するために使用され得る。
【００３６】
再び図４を参照すると、モデル４００は、バーチャルビューを定義する１つ以上の構成要素を含む。例えば、図４において、モデルは、ビュークラスノード４０２、世界構造クラスノード４０４、イベントインクラスノード４０６、及びイベントアウトクラスノード４０８を含む。図４のクラスノードは、図５に記載されるクラスノードと同様の方法、プロパティ、フィールド、及び参照を含むことができる。図４はまた、例えば、クラスノードを拡張するための、クラスノードへの例示的なデータフローを示す。具体的に、動的ＶＲモジュール３０６は、特定のクラスノードを拡張するために、これらの種類のデータを使用することができる。図３で論じられるように、データは、車両データ３１８、ユーザデータ３２０、及び／又は他のデータ３２２を含むことができる。図４に示されるデータの種類は、図３の車両データ３１８、ユーザデータ３２０、及び／又は他のデータ３２２の種類である。具体的に、図４において、データには、車両運動データ（車両動力学データを含む）４１２、ユーザ運動データ４１３、車両運動予測データ４１４、ナビゲーションデータ４１６、ビッグデータ４１８、及びドライバ動作データ４１２が含まれるが、これらに限定されない。
【００３７】
動的ＶＲモジュール３０６は、車両データ及びユーザデータのうちの少なくとも１つに基づいて、バーチャル世界モデル４００の１つ以上の構成要素を修正及び／又は拡張する。異なる種類のデータからＶＲモデル構成要素への図４中の矢印は、特定のＶＲモデル構成要素を拡張するために使用され得る、データの例示的なフローを示す。例えば、車両運動データ４１２（例えば、車両動力学データ、車両速度、方向、加速度、車両乗員運動データ）は、ビュークラスノード４０２の構成要素を拡張するために使用され得る。ユーザ運動データ４１３（例えば、姿勢、配向、位置、入力）は、ビュークラスノード４０２の構成要素を拡張するために使用され得る。更に、車両運動予測データ４１４（例えば、ペダル位置、自動クルーズコントロール）もまた、ビュークラスノード４０２を拡張するために使用され得る。別の実施形態では、ナビゲーションデータ４１６（例えば、ナビゲーション位置、方向）が、世界構造クラスノード４０４を拡張するために使用され得る。ビッグデータ４１８（例えば、スピードバンプ、道路状況、ステアリング状況）もまた、世界構造クラスノード４０４を拡張するために使用され得る。更に、ビッグデータ４１８は、イベントインクラスノード４０６を拡張するために使用され得る。ドライバ動作データ４２０（例えば、燃費、ドライバ入力、音声）もまた、イベントインクラスノード４０６を拡張するために使用され得る。
【００３８】
上述のように、ビュークラスノード４０２、世界構造クラスノード４０４、イベントインクラスノード４０６、及びイベントアウトクラスノード４０８は、バーチャルビューを定義し、動的バーチャルビューをユーザに提供するために、車両データ及びユーザデータのうちの少なくとも１つを使用して、拡張され得る。具体的に、図４のデータの種類は、バーチャル世界モデル４００の構成要素を拡張するために使用され得、それにより、１つ以上のバーチャルイベント４１０を含むことができる、バーチャルビューを生成する。一実施形態では、動的ＶＲモデル３０６は、車両データ及びユーザデータに基づいて、バーチャル世界モデルの構成要素の１つ以上のプロパティを拡張する。例えば、１つ以上の構成要素の１つ以上のプロパティは、図５に示されるクラスノードのプロパティを含むことができる。一実施形態では、プロパティのうちの１つ以上は、構成要素の運動を定義する運動プロパティを含むことができる。例えば、ビュークラスノード４０２は、プロパティ、例えば、オブジェクトの位置、回転、及び／又はスケールを定義する変換クラスノードを含むことができる。車両データ及びユーザデータのうちの少なくとも１つに基づいて、変換クラスノードは、オブジェクトの位置、回転、及び／又はスケールを変更するために拡張され得る。例示的な実施形態として、かつ図４及び５を参照して、ＶＲオブジェクト５１０は、ボールとして定義され得る（すなわち、世界構造クラスノード５１４、例えば、形状クラスノードによって定義される）。車両運動データ４１２（例えば、車両動力学データ）は、ボールの特徴を拡張するために使用され得る。例えば、ビュークラスノード４０２及び変換クラスノードを使用して、ボールの位置、回転、及び／又はスケールは、車両運動データ４１２に基づいて設定され得る。結果的に、ＶＲオブジェクト５１０（すなわち、ボール）は、車両運動データ４１２と同期化される。
【００３９】
再び図３を参照すると、レンダリングモジュール３０８は、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、動的ＶＲモジュール３０６からのバーチャルビューを出力デバイスにレンダリングする。例えば、動的リアリティモジュール３０６は、バーチャルビューをＶＲデバイス３１６の１つ以上（すなわち、ＨＭＤ  ２０６、携帯デバイス２０８）にレンダリングする。一実施形態では、レンダリングモジュール３０８は、車両動力学データ（すなわち、車両データ３１８）に基づいて車両運動データ４１２を決定する。レンダリングモジュール３０８はまた、ユーザデータ３２０及び車両データ３１８に基づいて車両に対するユーザの運動を表すユーザ運動データ４１２を決定することができる。例えば、一実施形態では、ＶＲデバイス３１６は、車両に対するユーザの姿勢、位置、及び／又は配向を決定するのに役立つ、加速度計センサ及び／又はジャイロスコープセンサを含むことができる。車両運動データ４１２及び／又はユーザ運動データ４１２は、車両動力学データに従って、バーチャルビューの表示を更新するために、バーチャル世界モデル４００の１つ以上の構成要素を拡張し、それにより、出力デバイスを制御するために使用され得る。別の実施形態では、レンダリングモジュール３０８は、車両運動データ４１２及び／又はユーザ運動データ４１２に基づいて、ＶＲデバイス３１６のレンダリング速度（例えば、グラフィックスレンダリングハードウェア／ソフトウェアによって定義及び実装される、１秒当たりのフレーム数、フレーム速度、フレーム更新速度）を直接拡張することができる。
【００４０】
更なる実施形態では、レンダリングモジュール３０８は、車両運動データ及びユーザ運動データに基づいて一時的運動レンダリング速度を決定する。一時的運動レンダリング速度は、車両運動データとユーザ運動データとの間の相関である。別の実施形態では、一時的運動レンダリング速度は、車両データからの時間構成要素も考慮する。一時的運動レンダリング速度は、車両運動データとユーザ運動データとの間の差を最小限に抑える、画像後処理及びレンダリングプロパティ（例えば、１秒当たりのフレーム数、フレーム速度、フレーム更新速度）である。レンダリングモジュール３０８は、一時的運動レンダリング速度に基づいてバーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングすることができる。例えば、ＶＲデバイス３１６のグラフィックスハードウェア及び／又はソフトウェアによって実装されるレンダリング速度（例えば、１秒当たりのフレーム数、フレーム速度、フレーム更新速度）は、一時的運動レンダリング速度に基づいて拡張され得る。別の実施形態では、動的ＶＲモジュール３０６は、一時的運動レンダリング速度に基づいてバーチャル世界モデルの１つ以上の構成要素の１つ以上のプロパティを拡張する。例えば、ビュークラスノード４０２は、レンダリングプロパティ及び／又は運動に関するプロパティを含むことができる（図５を参照されたい）。一実施形態では、これらのプロパティは、フレーム数、フレーム速度、及び／又はフレーム更新速度を含むことができる。
【００４１】
リアルタイムで車両動力学データに従ってバーチャルビューを更新することによって、ユーザに示されるバーチャルビューは動的であり、車両運動及びユーザ運動を考慮し、それにより、リアルタイムでバーチャルビュー中の車両運動及びユーザ運動をシミュレーションする。言い換えれば、バーチャル世界モデルの１つ以上の構成要素は、車両動力学データ及びユーザ運動データを含む、少なくとも車両データ及びユーザデータに基づいて同期化される。これがユーザのための真の没入型バーチャルリアリティ環境を提供するだけでなく、バーチャルビューが車両動力学及びユーザ運動を考慮するため、バーチャルリアリティ酔いが最小限に抑えられ得る。
【００４２】
ここで、動作中の上記の図１〜５に示される車載動的バーチャルリアリティシステムを、図６の方法を参照して、説明する。図１〜５を参照して上で論じられるシステム及び構成要素は、図６の方法で同様に実装され得ることが理解されるであろう。図６の方法は、ブロック６０２において、車両の１つ以上の車両システムから車両データを受信する工程を含み、車両データは、車両動力学データを含む。例えば、図３を参照すると、ＶＲデータモジュール３０２は、車両データ３１８を受信することができる。車両データ３１８は、車両動力学データを含むことができる。ブロック６０２はまた、バーチャルリアリティデバイスからユーザデータを受信する工程を含む。例えば、ＶＲデータモジュール３０２はまた、ユーザデータ３２０を受信することができる。
【００４３】
図６に戻って参照すると、ブロック６０４において、車両データ、ユーザデータ、及びバーチャル世界モデルに基づいてバーチャルビューを生成する工程を含む。バーチャル世界モデルは、バーチャルビューを定義する１つ以上の構成要素を含む。図４は、例示的な実施形態に従う、データフローを含む例示的なバーチャル世界モデル４００の図を示す。バーチャル世界モデル４００は、バーチャルビューを定義する１つ以上の構成要素を含む。例えば、ビューノードクラス４０２、世界構造ノードクラス４０４、イベントインノードクラス４０６、及びイベントアウトノードクラス４０８が、バーチャルビューを定義する例示的な構成要素である。具体的に、これらのノードクラスは、バーチャル世界の１つ以上のバーチャルビュー及び１つ以上のバーチャルオブジェクトを定義する。ノードクラスは、他のノード、プロパティ、フィールド、方法、及び参照を含有することができる（図５を参照されたい）。
【００４４】
一実施形態では、バーチャルビューを生成する工程は、車両データ及びユーザデータのうちの少なくとも１つに従って、バーチャル世界モデルの１つ以上の構成要素を拡張する工程を含む。例えば、ビューノードクラス４０２、世界構造ノードクラス４０４、イベントインノードクラス４０６、及びイベントアウトノードクラス４０８、並びに／又はこれらのノードと関連したノード、プロパティ、フィールド、方法、及び参照が、車両データ及びユーザデータのうちの少なくとも１つに基づいて拡張され得る。図４において、車両運動データ４１２、ユーザ運動データ４１３、車両運動予測データ４１４、ナビゲーションデータ４１６、ビッグデータ４１８、及びドライバ動作データ４２０は、バーチャル世界モデル４００の構成要素のうちの１つ以上を拡張するために使用され得る、データの例示的な種類である。
【００４５】
一実施形態では、方法は、車両データに基づいて車両の配向及び位置を決定する工程を含む。例えば、ナビゲーションデータ４１６（例えば、ＧＰＳ  １１０から）が、車両の配向及び位置を決定するために使用され得る。動的ＶＲモジュール３０６及び／又はレンダリングモジュール３０８は、車両データ３１８に基づいて車両の配向及び位置を決定することができる。方法はまた、ユーザデータ及び車両データに基づいて車両に対するユーザの配向及び位置を決定する工程を含むことができる。例えば、動的ＶＲモジュール３０６及び／又はレンダリングモジュール３０８は、ユーザデータ３２０及び車両データ３１８に基づいて車両に対するユーザの配向及び位置を決定することができる。例えば、ＶＲデバイス（例えば、追跡デバイス、ＨＭＤ  ２０２、携帯デバイス２０８）は、車両に対するユーザの配向及び位置を決定するためのユーザデータを提供する、センサ（例えば、加速度計、ジャイロスコープ、コンパス）を含むことができる。
【００４６】
バーチャル世界モデルの１つ以上の構成要素を拡張する工程は、車両の配向及び位置、並びにユーザの配向及び位置のうちの少なくとも１つに基づき得る。非限定的実施形態として、動的ＶＲモジュールは、リアルタイム世界構造を提供するために、車両の配向及び位置、並びに車両に対するユーザの配向及び位置で、世界構造クラスノード４０４を拡張することができる。例えば、地勢クラスノード（図５を参照されたい）は、車両の配向及び位置、並びに車両に対するユーザの配向及び位置に基づいて構成要素を含むバーチャルビュー中の地勢又は景色を提供するように拡張され得る。
【００４７】
別の実施形態では、１つ以上のバーチャルイベント４１０は、車両データ３１８及びユーザデータ３２０のうちの少なくとも１つに基づいて拡張又は作成され得る。例示的な実施形態として、ドライバ動作データ４２０は、イベントインクラスノード４０６を拡張するために使用され得る。ドライバ動作データ４２０は、例えば、ドライバ動作データ、例えば、運転履歴、燃費、他の車両システムとの相互作用、ジェスチャー、車両に対する運動等を含むことができる。非限定的な例示的な実施形態として、ユーザ３１２（すなわち、車両乗員２０２）は、車両の窓（図示せず）を下げてもよい。このドライバ動作は、ユーザ３１２が車両の窓を下げたことを示す、車両システム３１４（例えば、パワーウィンドウ車両システム）からの車両データ３１８、及びＶＲデバイス３１６（例えば、追跡デバイス）からのユーザデータ３２０に基づいて決定される。それに応じて、動的ＶＲモジュール３０６は、車両の窓を下げるユーザ３１２と関連したバーチャルビュー中のイベントをトリガーするために、例えば、イベントインクラスノード４０６を拡張することができる。例えば、車両の窓からの風のシミュレーションが、バーチャルビュー等に示され得る。別の例示的な実施形態として、動的ＶＲモジュール３０６は、車両データ３１８から決定される温度に基づいて風のシミュレーションの構造を定義することができる。例えば、温度がある特定の温度である場合、バーチャルビュー中の風のシミュレーションは、雪の粒子を含んでもよい。これは、世界構造クラスノード４０４のイベントインクラスノード４０６を拡張することによって定義され得る。次いで、イベントアウトノード４０８は、バーチャルイベント４１０を作成するために、イベントをルーティングすることができる。
【００４８】
更なる実施形態では、方法は、車両動力学データに基づいて車両運動データを決定する工程を含む。動的ＶＲモジュール３０６及び／又はレンダリングモジュール３０８は、車両動力学データを含む車両データ３１８に基づいて車両運動データを決定することができる。上述のように、車両運動データ４１２は、車両のリアルタイム運動を定義する。更に、車両運動データは、車両データ３１８、ユーザデータ３２０、及び／又は他のデータ３２２に基づいて決定される予測車両運動データも含むことができる。例えば、予測車両運動データは、ペダル位置、クルーズコントロール、目的地情報等に基づき得る。更に、方法は、ユーザデータ及び車両データに基づいて車両に対するユーザの運動を表すユーザ運動データを決定する工程も含むことができる。ユーザ運動データは、車両データ及びユーザデータ３２０に基づき得、動的ＶＲモジュール３０６及び／又はレンダリングモジュール３０８によって決定され得る。
【００４９】
ブロック６０８において、方法は、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングする工程を含む。例えば、動的リアリティモジュール３０６は、バーチャルビューをＶＲデバイス３１６の１つ以上（すなわち、ＨＭＤ  ２０６、携帯デバイス２０８）にレンダリングする。一実施形態では、レンダリングモジュール３０８は、車両運動データ４１２及びユーザ運動データ４１３に従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングする。これは、一実施形態では、ＶＲデバイス３１６のグラフィックスハードウェア及び／又はソフトウェアによって実装される、レンダリング速度（例えば、１秒当たりのフレーム数、フレーム速度、フレーム更新速度）を直接拡張することによって達成され得る。ブロック６０６に示される別の実施形態では、動的ＶＲモジュール３０６は、車両運動データ４１２及びユーザ運動データ４１３に従って、バーチャル世界モデル４００の１つ以上の構成要素を拡張する。
【００５０】
別の実施形態では、方法は、車両運動データ及びユーザ運動データに基づいて一時的運動レンダリング速度を決定する工程を含む。バーチャルビューをレンダリングする工程は、一時的運動レンダリング速度に基づいてバーチャルビューの表示を更新するように、出力デバイスを制御する工程を含むことができる。一時的運動レンダリング速度は、車両運動データ４１２とユーザ運動データ４１３の間の相関である。別の実施形態では、一時的運動レンダリング速度はまた、車両データからの時間構成要素を考慮する。一時的運動レンダリング速度は、車両運動データ４１２とユーザ運動データ４１３との間の差を最小限に抑える、画像後処理及びレンダリングプロパティ（例えば、１秒当たりのフレーム数）である。レンダリングモジュール３０８は、一時的運動レンダリング速度に基づいてバーチャルビューの表示を更新するように、出力デバイスを制御することによって、バーチャルビューを出力デバイスにレンダリングすることができる。例えば、ＶＲデバイス３１６のグラフィックスハードウェア及び／又はソフトウェアによって実装されるレンダリング速度（例えば、１秒当たりのフレーム数、フレーム速度、フレーム更新速度）は、一時的運動レンダリング速度に基づいて拡張され得る。
【００５１】
ブロック６０６に示される更なる実施形態では、動的ＶＲモジュール３０６は、一時的運動レンダリング速度に基づいてバーチャル世界モデルの１つ以上の構成要素の１つ以上のプロパティを拡張する。例えば、ビュークラスノード４０２は、レンダリングプロパティ及び／又は運動に関するプロパティを含むことができる（図５を参照されたい）。一実施形態では、これらのプロパティは、フレーム数、フレーム速度、及び／又はフレーム更新速度を含むことができる。このようにして、ユーザに示されるバーチャルビューは動的であり、リアルタイムで車両運動をシミュレーションする。言い換えれば、バーチャル世界モデルの１つ以上の構成要素は、車両動力学データ及びユーザ運動データを含む、少なくとも車両データ及びユーザデータに基づいて同期化される。これがユーザのための真の没入型バーチャルリアリティ環境を提供するだけでなく、バーチャルビューが車両動力学及びユーザ運動を考慮するため、バーチャルリアリティ酔いも最小限に抑えられ得る。更に、ユーザに示される各バーチャルビューは、車両動力学データに基づいて更新及び維持され得る。例えば、バーチャルビューがユーザ設定を示す（すなわち、ゲームプレイモードではない）場合、バーチャルビューは常に、車両動力学データに基づいて更新及び維持される。
【００５２】
いくつかの実施形態では、バーチャルリアリティオブジェクト及び／又は動作は、予め定義されたレンダリング速度を有することができる。例示的な実施形態として、ある特定のオブジェクト又はある特定のバーチャル世界が、２５ｍｓのレンダリング速度に設定されてもよい。この予め定義されたレンダリング速度は、上述の車両動力学データに基づいて調節され得る。したがって、いくつかの実施形態では、一時的運動レンダリング速度は、予め定義されたレンダリング速度、車両運動、及びユーザ運動に基づき得る。更に、一時的運動レンダリング速度は、ユーザに基づく他の種類のデータも考慮し得る。例えば、上述のように、他のデータ３２２は、ユーザ３１２と関連した健康データを含むことができる。例えば、健康データが運動又は感覚の問題（例えば、見当識障害、めまい、乗物酔い）を示す場合、一時的運動レンダリング速度は、運動又は感覚の問題を最小限に抑えるために、健康データに基づいて調節され得る。
【００５３】
本明細書で論じられる方法及びシステムによって生成される動的バーチャルビューの例示的な実施形態が、これから図７Ａ及び７Ｂを参照して説明される。フィッシングバーチャルリアリティゲームから、図７Ａは、バーチャルビュー７０２を示し、図７Ｂは、バーチャルビュー７０４を示し、そのオブジェクト及び動作は、バーチャル世界モデル、例えば、図４のバーチャル世界モデル４００、及び図５のバーチャルリアリティ世界の概略的クラス図５００によって定義される。具体的に、バーチャルビュー７０２、７０４は、車両データ、ユーザデータ、及びバーチャル世界モデルに基づいて生成され、バーチャル世界モデルは、バーチャルビュー７０２、７０４を定義する１つ以上の構成要素を含む。バーチャルビュー７０２、７０４は、車両２００中の１つ以上のＶＲデバイス３１４、例えば、ＨＭＤ  ２０６及び／又は携帯デバイス２０８上に表示され得る。
【００５４】
バーチャルビュー７０２は、景色７０６、太陽７０８、魚７１０、及び水面オブジェクト７１２を含む、１つ以上のバーチャルリアリティオブジェクトを含む。水面オブジェクト７１２は、１つ以上の波７１４を含む。この場合もやはり、バーチャルビュー７０２のオブジェクト及び動作は、バーチャル世界モデルによって定義される。バーチャル世界モデルの１つ以上の構成要素は、車両データ及びユーザデータのうちの少なくとも１つに従って拡張され得る。具体的に、一実施形態では、バーチャル世界モデルは、車両動力学データに基づいて拡張され得、及び／又はバーチャルビュー７０２は、車両動力学データに従って、バーチャルビューの表示を更新するように、出力デバイスを制御することによって、出力デバイスにレンダリングされ得る。このようにして、バーチャルビューのバーチャルビュー及びオブジェクトは、車両データ及び／又はユーザデータによって影響を受け、バーチャルビュー及びバーチャルビューのオブジェクトは、車両動力学データと同期化される。例えば、動的ＶＲモジュール３０６は、車両２００の位置及び配向、並びに車両乗員２０２の位置及び配向に基づいて、オブジェクトでバーチャルビュー７０２を動的に生成及び更新するために、世界構造クラスノード４０４（例えば、地勢クラスノード）を拡張することができる。例示的な実施形態として、車両２００は、日中、山岳地帯を走っている。結果的に、車両データ３１８から決定された車両２００の位置及び配向、並びに時間構成要素に基づいて、バーチャルビュー７０２中の景色オブジェクト７０６の外観及び地勢は、山及び太陽７０８を含む。これは、車両データ３１８から決定された車両２００の位置及び配向、並びに時間構成要素で、世界構造クラスノード４０４を拡張することによって達成される。
【００５５】
別の実施形態として、魚オブジェクト７１０は、車両２００の位置及び配向、並びに車両乗員２０２の位置及び配向に元からある種類の魚として生成され得る。更に、魚オブジェクト７１０の位置もまた、車両２００の位置及び配向、並びに車両乗員２０２の位置及び配向に基づいて生成され得る。例えば、魚オブジェクト７１０の位置及び配向を定義するビュークラスノード４０２は、車両２００の位置及び配向、並びに車両乗員２０２の位置及び配向に基づいて、車両乗員２０２に視点を示すように拡張され得る。
【００５６】
更なる実施形態として、バーチャルビュー７０２中の水面オブジェクト７１２は、車両動力学データに基づいて生成され得る。例示的な実施形態として、車両データ３１８は、一定の速度及び真っ直ぐの方向を示すヨーレートを示すことができる。更に、ユーザデータ３２０は、一定のユーザ運動を示すことができる。結果的に、図７Ａにおいて、波７１４は、車両データ３１８及びユーザデータ３２０に基づいて、穏やかで一定のように見える。しかしながら、車両２００が、図７Ｂに示されるように急に速度を増した場合、１つ以上の波７２０を含む水面オブジェクト７２４は、荒れているように見える。他の実施形態では、１つ以上の波７２０を含む水面オブジェクト７２４は、車両動力学データに基づいてビュークラスノード４０２のパララックス運動又は運動の深度を変更することによって生成され得る。
【００５７】
別の実施形態では、車両２００のヨーレート及び車両乗員２０２の運動は、車両２００のヨーレート及びユーザ２０２の運動に基づいてボートが向きを変えるか、又は移動するバーチャルビューを生成するように、ボートオブジェクトのビュークラスノード４０２を拡張するために使用され得る。明らかなように、バーチャルビューの多くの変化形が、車両データ３１８、ユーザデータ３２０、及び他のデータ３２２に基づいて生成され得る。加えて、バーチャルビューがゲームプレイモードではない（すなわち、バーチャルビューが、ゲーム設定、ユーザ設定、スタートアップ命令を示す）状況において、バーチャルビューは、依然として車両動力学データに従って生成及び更新される。結果的に、リアルタイムで車両動力学データに従ってバーチャルビューを更新することによって、ユーザに示されるバーチャルビューは動的であり、車両運動及びユーザ運動を考慮し、それにより、リアルタイムでバーチャルビュー中の車両運動及びユーザ運動をシミュレーションする。これがユーザのための真の没入型バーチャルリアリティ環境を提供するだけでなく、バーチャルビューが車両動力学及びユーザ運動を考慮するため、バーチャルリアリティ酔いが最小限に抑えられ得る。
【００５８】
本明細書で論じられる実施形態は、コンピュータ実行可能命令を記憶するコンピュータ可読記憶媒体との関連で記載及び実装され得る。コンピュータ可読記憶媒体は、コンピュータ記憶媒体及び通信媒体を含む。例えば、フラッシュメモリドライブ、デジタル多用途ディスク（ＤＶＤ）、コンパクトディスク（ＣＤ）、フロッピー（登録商標）ディスク及びテープカセットである。コンピュータ可読記憶媒体は、コンピュータ可読命令、データ構造、モジュール、若しくは他のデータ等の情報を記憶するための任意の方法又は技術において実装される、揮発性及び不揮発性の取り外し可能及び取り外し不能な媒体を含むことができる。コンピュータ可読記憶媒体は、非一時的有形媒体及び伝播されるデータ信号を除外する。
【００５９】
上で開示される種々の実装例、並びに他の特性及び機能、又はその代替案若しくは変形は、多くの他の異なるシステム又は適用に望ましく組み合わせられ得ることが理解されよう。また、種々の現在予期されていない、若しくは予想されていない代替案、修正、変形、又は改善が、後に当業者によって行われてもよく、それらも、以下の「特許請求の範囲」によって包含されるよう意図される。
【符号の説明】
【００６０】
１００  システム
１０４  プロセッサ
１０６  メモリ
１０８  ディスク
１１２  入力／出力（Ｉ／Ｏ）インターフェース
１１４  バス
１１６  エンジン
１１８  車両システム
１２０  車両センサ
１２２  ネットワーク
１２４  デバイス
【図１】
2015072687.tif 000003
【図２】
2015072687.tif 000004
【図３】
2015072687.tif 000005
【図４】
2015072687.tif 000006
【図５】
2015072687.tif 000007
【図６】
2015072687.tif 000008
【図７Ａ】
2015072687.tif 000009
【図７Ｂ】
2015072687.tif 000010