(57)【要約】      （修正有）【課題】三次元（３Ｄ）仮想環境のグラフィックスを生成するための方法を提供する。【解決手段】方法は、プロセッサによって、３Ｄ仮想環境における第１のカメラポジション及び３Ｄ仮想環境における第１の視方向を受け取ること、プロセッサによって、３Ｄ仮想環境における第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取ること、プロセッサによって、第１の視方向で第１のカメラポジションから第１の距離にある第１のポジションに、第１の視方向で第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義すること及びプロセッサによって、境界ジオメトリ内だけで降水を描画する３Ｄ仮想環境に、第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングすることを含む。【選択図】図２
2019175458.tif 000002
【特許請求の範囲】
【請求項１】
三次元（３Ｄ）仮想環境のグラフィックスを生成するための方法であって、
プロセッサによって、３Ｄ仮想環境における第１のカメラポジション及び３Ｄ仮想環境における第１の視方向を受け取ること、
前記プロセッサによって、前記３Ｄ仮想環境における前記第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取ること、
前記プロセッサによって、前記第１の視方向で前記第１のカメラポジションから第１の距離にある第１のポジションに、前記第１の視方向で前記第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義すること、及び、
前記プロセッサによって、前記境界ジオメトリ内だけで降水を描画する前記３Ｄ仮想環境に、前記第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングすること
を含む、
三次元（３Ｄ）仮想環境のグラフィックスを生成するための方法。
【請求項２】
さらに、
前記プロセッサによって、前記３Ｄ仮想環境における第２のカメラポジション及び前記３Ｄ仮想環境における第２の視方向を受け取ること、
前記プロセッサによって、前記第２の視方向で前記第２のカメラポジションから前記第１の距離にある第２のポジションへ前記境界ジオメトリを移動させること、及び、
前記プロセッサによって、前記３Ｄパーティクルシステムのパーティクルが、移動された前記境界ジオメトリ内だけでレンダリングされるように、前記降水を描画する前記３Ｄパーティクルシステムの前記レンダリングを更新すること
を含む、
請求項１に記載の方法。
【請求項３】
前記３Ｄパーティクルシステムの前記レンダリングを更新することは、
前記第１のポジションでは前記境界ジオメトリ内にあったが、前記境界ジオメトリが前記第２のポジションに移動した後では前記境界ジオメトリ外にある前記３Ｄパーティクルシステムのパーティクルを除去すること、
前記第１のポジションでは前記境界ジオメトリ内にあり、前記境界ジオメトリが前記第２のポジションに移動した後も前記境界ジオメトリ内に留まっている前記３Ｄパーティクルシステムのパーティクルをレンダリングし続けること、及び、
前記境界ジオメトリが前記第２のポジションに移動した後では前記境界ジオメトリ内にあるが、前記第１のポジションでは前記境界ジオメトリ外にあったポジションに、前記３Ｄパーティクルシステムの新たなパーティクルを作り出すこと
を含む、
請求項２に記載の方法。
【請求項４】
前記３Ｄパーティクルシステムをレンダリングすることはさらに、
前記３Ｄパーティクルシステムのパーティクルの（ｉ）形状、（ｉｉ）色及び（ｉｉｉ）不透明度のうちの少なくとも１つを、前記第１の降水情報により表される降水タイプに基づきレンダリングすること
を含む、
請求項１に記載の方法。
【請求項５】
前記３Ｄパーティクルシステムをレンダリングすることはさらに、
（ｉ）前記３Ｄパーティクルシステムのパーティクルサイズ及び（ｉｉ）前記３Ｄパーティクルシステムのパーティクル密度のうちの少なくとも一方を、前記第１の降水情報により表される降水強度に基づきレンダリングすること
を含む、
請求項１に記載の方法。
【請求項６】
前記境界ジオメトリを定義することはさらに、
前記境界ジオメトリを前記第１のポジションにセンタリングされた球体として定義すること
を含み、
前記球体は、前記第１の視方向で前記第１のカメラポジションからの前記視野をカバーするように設定された直径を有する、
請求項１に記載の方法。
【請求項７】
当該方法はさらに、
前記プロセッサによって、視界及び視角のうちの少なくとも一方を受け取ること、及び、
前記プロセッサによって、前記視界及び前記視角のうちの少なくとも一方に基づき、前記境界ジオメトリの前記第１の距離及び寸法のうちの少なくとも一方を調節すること
を含む、
請求項１に記載の方法。
【請求項８】
前記天候データは風情報を含み、前記３Ｄパーティクルシステムをレンダリングすることはさらに、
前記風情報により表される風速及び風向のうちの少なくとも一方に基づき、前記３Ｄパーティクルシステムのパーティクルの動きをレンダリングすること
を含む、
請求項１に記載の方法。
【請求項９】
前記３Ｄパーティクルシステムの前記パーティクルは、雪片を描画するように設定されている、
請求項１に記載の方法。
【請求項１０】
三次元（３Ｄ）仮想環境のグラフィックスを生成するためのシステムであって、
３Ｄ仮想環境のグラフィックスを表示するように構成されたディスプレイデバイス、
ネットワークデバイス、
プログラミングされた命令を記憶するように構成されたメモリ、並びに、
前記ディスプレイデバイス、ワイヤレスの前記ネットワークデバイス及び前記メモリと動作可能に接続されたプロセッサ
を含み、
前記プロセッサは、前記プログラミングされた命令を実行して、
前記３Ｄ仮想環境における第１のカメラポジション及び前記３Ｄ仮想環境における第１の視方向を受け取り、
前記ネットワークデバイスを介して、前記３Ｄ仮想環境における前記第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取り、
前記第１の視方向で前記第１のカメラポジションから第１の距離にある第１のポジションに、前記第１の視方向で前記第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義し、
前記境界ジオメトリ内だけで降水を描画する前記３Ｄ仮想環境に、前記第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングする
ように構成されている、
三次元（３Ｄ）仮想環境のグラフィックスを生成するためのシステム。
【請求項１１】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
前記３Ｄ仮想環境における第２のカメラポジション及び前記３Ｄ仮想環境における第２の視方向を受け取り、
前記第２の視方向で前記第２のカメラポジションから前記第１の距離にある第２のポジションへ前記境界ジオメトリを移動させ、
前記３Ｄパーティクルシステムのパーティクルが、移動された前記境界ジオメトリ内だけでレンダリングされるように、前記降水を描画する前記３Ｄパーティクルシステムの前記レンダリングを更新する
ように構成されている、
請求項１０に記載のシステム。
【請求項１２】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
前記第１のポジションでは前記境界ジオメトリ内にあったが、前記境界ジオメトリが前記第２のポジションに移動した後では前記境界ジオメトリ外にある前記３Ｄパーティクルシステムのパーティクルを除去し、
前記第１のポジションでは前記境界ジオメトリ内にあり、前記境界ジオメトリが前記第２のポジションに移動した後も前記境界ジオメトリ内に留まっている前記３Ｄパーティクルシステムのパーティクルをレンダリングし続け、
前記境界ジオメトリが前記第２のポジションに移動した後では前記境界ジオメトリ内にあるが、前記第１のポジションでは前記境界ジオメトリ外にあったポジションに、前記３Ｄパーティクルシステムの新たなパーティクルを作り出す
ように構成されている、
請求項１１に記載のシステム。
【請求項１３】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
前記３Ｄパーティクルシステムのパーティクルの（ｉ）形状、（ｉｉ）色及び（ｉｉｉ）不透明度のうちの少なくとも１つを、前記第１の降水情報により表される降水タイプに基づきレンダリングする
ように構成されている、
請求項１０に記載のシステム。
【請求項１４】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
（ｉ）前記３Ｄパーティクルシステムのパーティクルサイズ及び（ｉｉ）前記３Ｄパーティクルシステムのパーティクル密度のうちの少なくとも一方を、前記第１の降水情報により表される降水強度に基づきレンダリングする
ように構成されている、
請求項１０に記載のシステム。
【請求項１５】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
前記境界ジオメトリを前記第１のポジションにセンタリングされた球体として定義する
ように構成されており、
前記球体は、前記第１の視方向で前記第１のカメラポジションからの前記視野をカバーするように設定された直径を有する、
請求項１０に記載のシステム。
【請求項１６】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
視界及び視角のうちの少なくとも一方を受け取り、
前記視界及び前記視角のうちの少なくとも一方に基づき、前記境界ジオメトリの前記第１の距離及び寸法のうちの少なくとも一方を調節する
ように構成されている、
請求項１０に記載のシステム。
【請求項１７】
前記プロセッサはさらに、前記プログラミングされた命令を実行して、
風情報により表される風速及び風向のうちの少なくとも一方に基づき、前記３Ｄパーティクルシステムのパーティクルの動きをレンダリングする
ように構成されている、
請求項１０に記載のシステム。
【請求項１８】
前記３Ｄパーティクルシステムの前記パーティクルは雪片を描画するように設定されている、
請求項１０に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は全般的には、運転者情報及び運転者支援システム（これらは車載情報システムとしても知られる）の分野に関し、さらに詳細には、マッピングアプリケーション及びナビゲーションアプリケーションのために車両操作者にグラフィック表示を提供するシステム及び方法に関する。
【背景技術】
【０００２】
背景
本明細書において別段の指示がない限り、このセクションで説明する題材は本願の特許請求の範囲に対する従来技術ではなく、これらをこのセクションに含めたからといって従来技術であると認められるものではない。
【０００３】
最近の自動車は、１つ又は複数の運転者情報システム及び運転者支援システム（以下では車載情報システムと称する）を含むことが多く、これによって多種多様な情報及びエンターテイメントオプションが車両内の乗員に提供される。車載情報システムによって提供される一般的なサービスとしては、以下に限定されるものではないが、車両状態及び診断情報、マッピングアプリケーション及びナビゲーションアプリケーション、ハンズフリー電話、ラジオ及び音楽再生、並びに、交通状況警報が挙げられる。車載情報システムは、複数の入力デバイス及び出力デバイスを含むことが多い。たとえば、ラジオシステム及びオーディオシステムを操作するために使用される慣用のボタン及び制御ノブが、車載情報システムにおいて共通に使用される。車両における入力のごく最近の形態として挙げられるのは、入力及び表示を単一の画面に統合したタッチスクリーン入力デバイス、並びに、車載情報システムが音声命令に応答する音声作動機能である。出力システムの例としては、機械的な計器類、液晶ディスプレイ（ＬＣＤ）パネルなどのような出力ディスプレイパネル、及び、合成音声を作成するオーディオ出力デバイスが挙げられる。
【０００４】
三次元（３Ｄ）グラフィックス方法は、種々の運転者支援アプリケーション及び運転者情報アプリケーションにおいて広く使用されてきた。１つの典型例は、３Ｄマップに基づくナビゲーションシステムである。慣用の二次元（２Ｄ）マップと比べて３Ｄマップは、容易な運転者オリエンテーション及び高速なロケーション認識のために、より有用なものであるとみなされている。たとえば写真のようにリアルな３Ｄのマッピングサービス及びナビゲーションサービスが、Ａｐｐｌｅ，Ｇｏｏｇｌｅ及びＮｏｋｉａにより提供されるサービスを含め、複数のオンラインサービス及びオフラインサービスによって用意されている。最新の３Ｄグラフィックスによれば、高度にリアルな幅広いグラフィックエフェクトを作成することができる。３Ｄのマッピングアプリケーション及びナビゲーションアプリケーションという状況において、グラフィックス表示システムは、地勢、道路、建物などのような目印及びその他の目印を、極めて詳細に生成することができる。しかも一部の３Ｄマッピングシステムによれば、マッピングアプリケーションにおいて再現される現実の地理的領域における現在の天候状況に対応する天候状況及び照射状況を、３Ｄ仮想環境において描画するグラフィックエフェクトを適用することができる。たとえば３Ｄグラフィックスシステムは、ある地理的領域における現在の天候状況に基づき、降水のグラフィックレンダリングを作成することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
最新の３Ｄグラフィックスのハードウェア及びソフトウェアは、幅広いグラフィックスを再現可能である一方、降水などのようなグラフィックエフェクトの生成は一般に、３Ｄマッピングアプリケーションを使用するのに妥当なレンダリング速度でそれらのグラフィックエフェクトを作成するために、かなりのハードウェア実行リソースを必要とする。リアルな降水の複雑なグラフィックレンダリングを実行可能なグラフィックス処理ユニット（ＧＰＵ）を含む最新の処理デバイスが存在するけれども、自動車に組み込まれたグラフィックスシステム及び安価なモバイル電子デバイスのグラフィックスシステムを含む多くのハードウェアプラットフォームには、降水のリアルなグラフィック描画を作成するのに必要とされるハードウェアが欠けている可能性がある。しかも、いまや高性能のグラフィックスハードウェアがますます含まれるようになってきている一部のモバイル電子デバイスでさえ、グラフィックスを作成するために不所望に大量の電力を消費してしまう可能性があり、その結果、バッテリを消耗させることが多く、これは走行中にマッピングアプリケーション及びナビゲーションアプリケーションを使用するためには非生産的なものとなる可能性がある。したがって、３Ｄ仮想環境に降水のグラフィックレンダリングを作成するための方法及びシステムを、計算上効率的な手法で改善することが有用となるであろう。
【課題を解決するための手段】
【０００６】
概要
三次元（３Ｄ）仮想環境のグラフィックスを生成するための方法が開示される。この方法は、プロセッサによって、３Ｄ仮想環境における第１のカメラポジション及び３Ｄ仮想環境における第１の視方向を受け取ること、プロセッサによって、３Ｄ仮想環境における第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取ること、プロセッサによって、第１の視方向で第１のカメラポジションから第１の距離にある第１のポジションに、第１の視方向で第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義すること、及び、プロセッサによって、境界ジオメトリ内だけで降水を描画する３Ｄ仮想環境に、第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングすることを含む。
【０００７】
三次元（３Ｄ）仮想環境のグラフィックスを生成するためのシステムが開示される。このシステムは、３Ｄ仮想環境のグラフィックスを表示するように構成されたディスプレイデバイス、ネットワークデバイス、プログラミングされた命令を記憶するように構成されたメモリ、並びに、これらのディスプレイデバイス、ワイヤレスネットワークデバイス及びメモリと動作可能に接続されたプロセッサを含む。このプロセッサは、プログラミングされた命令を実行して、３Ｄ仮想環境における第１のカメラポジション及び３Ｄ仮想環境における第１の視方向を受け取り、ネットワークデバイスを介して、３Ｄ仮想環境における第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取り、第１の視方向で第１のカメラポジションから第１の距離にある第１のポジションに、第１の視方向で第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義し、さらに境界ジオメトリ内だけで降水を描画する３Ｄ仮想環境に、第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングするように構成されている。
【図面の簡単な説明】
【０００８】
方法及びシステムの上述の態様及びその他の特徴について、添付の図面を参照しながら以下の記載で説明する。
【図１】現実世界の地理的ロケーションにおける現在の天候状況を反映する降水表現を含む３Ｄ仮想環境のグラフィック表示を生成するように構成された、車載情報システムの概略図である。
【図２】３Ｄ仮想環境に降水又は他の同様の天候エフェクトを描画する３Ｄパーティクルシステムを、計算上効率的な手法でレンダリングするための方法を示す図である。
【図３】仮想カメラに関して定義された例示的な境界ジオメトリを示す図である。
【図４】定義された境界ジオメトリ内だけの３Ｄパーティクルシステムの例示的なレンダリングを示す図である。
【図５】カメラポジション又は視方向が変更されたときに３Ｄパーティクルシステムを更新するための、図２の方法の続きとなる方法を示す図である。
【図６】元の境界ジオメトリの例示的な動き及び３Ｄパーティクルシステムに対する更新を示す図である。
【発明を実施するための形態】
【０００９】
詳細な説明
次に、本開示の原理を理解しやすくする目的で、図面に例示され以下に記載された明細書中で説明される実施形態について言及する。自明のとおり、本開示の範囲に対する限定がこれによって意図されるものではない。さらに自明のとおり、本開示には、例示した実施形態に対するあらゆる代案や変更が含まれ、また、本開示が属する技術分野の当業者であれば通常想定するであろう本開示の原理のさらなる応用も含まれる。
【００１０】
車載情報システム
図１には、３Ｄ仮想環境のグラフィック表示を生成する車載情報システム１０４（本明細書ではこれを「グラフィック表示システム」と称することもある）を含むシステム１００が示されており、このグラフィック表示には、現実世界の地理的ロケーションにおける現在の天候状況を計算上効率的な手法で反映する降水表現が含まれる。車載情報システム１０４には、プロセッサ１０８、メモリ１２０、ディスプレイ１４４、任意選択のポジショニングシステム１４８、及び、任意選択のネットワークデバイス１５２が含まれる。車載情報システム１０４のハードウェアの実施形態には、以下に限定されるものではないが、パーソナルコンピュータ（ＰＣ）のハードウェア、自動車において使用するための組み込みコンピューティングハードウェアを含む組み込みシステムのハードウェア、並びに、スマートフォン及びタブレットコンピューティングデバイスを含むモバイル電子デバイスが含まれる。システム１００においてワイヤレスデータネットワーク１８０により、車載情報システム１０４が１つ又は複数のオンライン天候情報源１９０と接続されている。
【００１１】
車載情報システム１０４において、プロセッサ１０８は１つ又は複数の集積回路を含み、この回路は、中央処理ユニット（ＣＰＵ）１１２とグラフィックス処理ユニット（ＧＰＵ）１１６の機能を実装する。一部の実施形態によれば、プロセッサは、ＣＰＵ１１２及びＧＰＵ１１６の機能、さらに任意選択でメモリ１２０、ネットワークデバイス１５２及びポジショニングシステム１４８を含む他の構成要素の機能を単一の集積デバイスに集積するシステム・オン・チップ（ＳｏＣ）であるのに対し、他の実施形態によれば、ＰＣＩエクスプレスなどのような周辺接続デバイス又は他の適切な周辺データ接続を介して、ＣＰＵ１１２及びＧＰＵ１１６が互いに接続されている。１つの実施形態によれば、ＣＰＵ１１２は、ｘ８６、ＡＲＭ、Ｐｏｗｅｒ又はＭＩＰＳの命令セットファミリーのうちの１つなどのような命令セットを実装する市販の中央処理デバイスである。ＧＰＵは、２Ｄグラフィックス及び３Ｄグラフィックスの双方を表示するためのハードウェア及びソフトウェアを含む。１つの実施形態によれば、プロセッサ１０８はソフトウェアドライバを実行し、たとえばＯｐｅｎＧＬ、ＯｐｅｎＧＬ ＥＳ，Ｖｕｌｋａｎ又はＤｉｒｅｃｔ３Ｄのグラフィックスアプリケーションプログラミングインタフェース（ＡＰＩ）を用いて、３Ｄグラフィックスを生成するための、ＧＰＵ１１６におけるハードウェア機能を含む。たとえばＧＰＵ１１６は、１つ又は複数のハードウェア実行ユニットを含み、このユニットは、フラグメントシェーダ、頂点シェーダ、及び、任意選択的にジオメトリシェーダ、テッセレーションシェーダを実装し、２Ｄグラフィックス及び３Ｄグラフィックスを処理及び表示するためにシェーダを計算する。動作中、ＣＰＵ１１２及びＧＰＵ１１６は、メモリ１２０から取り出されたストアドプログラム方式の命令１４０を実行する。１つの実施形態によれば、ストアドプログラム方式の命令１４０は、オペレーティングシステムソフトウェアと、マッピングアプリケーション及びナビゲーションアプリケーションを含め３Ｄグラフィックスを生成する１つ又は複数のソフトウェアアプリケーションプログラムとを含む。ストアドプログラム方式の命令１４０は、本明細書で説明する実施形態に基づき降水のグラフィック描画を生成するために、ＣＰＵ１１２及びＧＰＵ１１６の動作を制御するソフトウェアを含む。
【００１２】
プロセッサ１０８は、マッピングプログラム及びナビゲーションプログラムを実行し、マップフィーチャと、車両外部の地理的領域における降水を含む天候状況とを、直観的な手法で描画するグラフィック変換によって、３Ｄグラフィック出力を生成する。プロセッサ１０８は、ソフトウェア及びハードウェアの機能と共に構成されており、この場合、プログラミングされた命令がプロセッサ１０８と動作可能に接続された１つ又は複数のメモリに記憶され、以下で説明するプロセス及びシステムの実施形態をプロセッサが実装できるようにする目的で、センサ又はデータソースからデータを供給するために、ハードウェアの機能がプロセッサ及び／又は他の電子的、電気機械的又は機械的な構成要素と動作可能に接続される。
【００１３】
メモリ１２０は、不揮発性メモリと揮発性メモリの双方を含む。不揮発性メモリは、ＮＡＮＤフラッシュメモリなどのような半導体メモリ、磁気記憶媒体及び光学記憶媒体、又は、車載情報システム１０４がデアクティベートされたとき若しくは電力を失ったときにデータを保持する他の何らかの適切なデータストレージデバイスを含む。揮発性メモリは、車載情報システム１０４の動作中、ソフトウェアと、グラフィックスデータ及びマップフィーチャデータを含むデータとを記憶するスタティックランダムアクセスメモリ及びダイナミックランダムアクセスメモリ（ＲＡＭ）を含む。一部の実施形態によれば、ＧＰＵ１１６及びＣＰＵ１１２は各々、別個のＲＡＭデバイス（たとえばＣＰＵ１１２についてはＤＤＲ ＳＤＲＡＭの一種、ＧＰＵ１１６についてはＧＤＤＲ，ＨＢＭの一種又はその他のＲＡＭ）へのアクセスを有する一方、他の実施形態によれば、ＣＰＵ１１２及びＧＰＵ１１６は共有メモリデバイスにアクセスする。プログラミングされた命令１４０に加えてメモリ１２０は、三次元仮想環境グラフィックスデータ１２４を記憶している。グラフィックスデータ１２４は、幾何学的モデル、テクスチャ、及び、３Ｄ仮想環境の三次元グラフィックスを生成するためにプロセッサ１０８が使用するその他のデータを含む。
【００１４】
車載情報システム１０４は、任意選択のネットワークデバイス１５２を含み、このデバイスはデータネットワーク１８０を介して、オンライン天候情報源１９０などのような外部のコンピューティングシステムからの天候データを送信及び受信するように構成されている。ネットワークデバイス１５２の例として挙げられるのは、イーサネットアダプタ及び汎用シリアルバス（ＵＳＢ）アダプタといった有線ネットワークアダプタ、並びに、ワイヤレスワイドエリアネットワーク（ＷＷＡＮ）アダプタ、８０２．１１アダプタ、又は、ブルートゥースワイヤレスローカルエリアネットワーク（ＷＬＡＮ）アダプタなどのような無線ネットワークアダプタである。
【００１５】
図１に示されているように、オンライン天候情報源１９０は、データネットワーク１８０を介して車載情報システム１０４によりアクセス可能な手法でデータを提供する任意のオンラインサービスを含む。たとえばオンライン情報源１９０は、雲翳、風、温度、降水及び道路ハザード状況を含め、車両周囲の地理的領域における天候に関連する情報を提供するライブ天候サービスを含む。他のオンライン情報源１９０は、交通量、事故及びその他の交通情報に関する報告を作成するオンライン交通サービスである。
【００１６】
車載情報システム１０４は、プロセッサ１０８と動作可能に接続された任意選択のポジショニングシステム１４８を含む。ポジショニングシステムの例として挙げられるのは、１つ又は複数の衛星航法システムを使用するグローバルポジショニングシステム（ＧＰＳ）受信機、定置されたワイヤレス送信機に対する車載情報システム１０４のロケーションを特定する無線三角測量受信機、及び、慣性航法システムである。動作中、プロセッサ１０８は、マッピングソフトウェアアプリケーション及びナビゲーションソフトウェアアプリケーションを実行し、これによりポジショニングシステム１４８からロケーション情報を取り出して、車載情報システム１０４の地理的ロケーションを特定し、車載情報システム１０４のロケーションに対応するよう仮想環境の表示を調節する。ナビゲーションアプリケーションにおいてプロセッサ１０８は、車載情報システム１０４のロケーション及び運動を特定して、選択された目的地までのルートを生成し、３Ｄ仮想環境においてルートを表示する。
【００１７】
動作中、プロセッサ１０８は、複数のソースから車両周囲の環境に対応するデータを受信する。図１の実施形態によれば、それらのソースには車両センサ１７０、オンライン天候情報源１９０及びポジショニングシステム１４８が含まれる。プロセッサ１０８は、いくつかの環境データを間接的に使用する。たとえばポジショニングシステム１４８は、車両ロケーションに関連するデータを提供し、プロセッサ１０８は、ポジションデータをオンライン情報源１９０へのクエリの一部として使用して、たとえば、車両周囲の地理的領域又は車両のルート沿いにあり車両が今後走行することになる他の地理的領域における天候状況及び交通を特定する。
【００１８】
車載情報システム１０４においてディスプレイ１４４は、車載情報システム１０４のハウジングと一体化された統合型ディスプレイデバイス、たとえばＬＣＤ又は他のビジュアルディスプレイデバイスであり、又は、ディスプレイ１４４は、有線又は無線のインタフェースを介して車載情報システム１０４と動作可能に接続された外部ディスプレイデバイスであり、これはプロセッサ１０８から出力信号を受信して、３Ｄ仮想環境の表示を生成する。車載情報システム１０４が車載組み込みコンピューティングデバイスである実施形態の場合、ディスプレイ１４４は、車両のコンソールに配置されたＬＣＤ若しくは他のフラットパネルディスプレイであり、又は、ディスプレイ１４４は、ヘッドアップディスプレイ（ＨＵＤ）又はフロントガラス若しくは車両における他の表示面上に３Ｄ仮想環境を表示する他のプロジェクションディスプレイである。他のディスプレイデバイスの実施形態にはたとえば、仮想環境の本物の三次元表示をシミュレートするために、３Ｄ仮想環境の２つの異なる２Ｄイメージを形成する立体ディスプレイが含まれる。
【００１９】
車載情報システム１０４において車両センサ１７０は、車両のコンディション又は車両周囲の環境に対応するディジタルデータを生成する車両内の任意のデバイスを含み、プロセッサ１０８はこのデータを使用して、静的なマップフィーチャの仮想描画を調節する。種々の車両構成において使用されるセンサの例として挙げられるのは、以下に限定されるものではないが、カメラ、光センサ、温度計、湿度計、モーションセンサ、速度計、距離測定センサなどである。一部の実施形態によれば、車載時計は、車両周囲の時刻を記録するさらに他のセンサである。一部の実施形態によれば、ポジショニングシステム１４８又はネットワークデバイス１５２は、時刻データを受信して時計を設定し、車両が種々の地理的ロケーションにあるときに、種々の時刻での空における太陽又は月のポジションを特定する。図１の例によれば、ポジショニングシステム１４８は、車両のロケーション及び任意選択的に走行方向及び速度を表すセンサとしても動作する。一部の車両の場合には、車両において他の機能を実施するサブシステムから間接的に、付加的なセンサデータを供給することができる。
【００２０】
天候エフェクト用の３Ｄパーティクルシステムを効率的にレンダリングするための方法
降水又は他の同様の天候エフェクトを描画する３Ｄパーティクルシステムをレンダリングするための様々な方法及びプロセスについて、以下で説明する。方法の説明において、方法が何らかのタスク又は機能を実施するという記述は、このタスク又は機能を実施するためにコントローラ又は汎用プロセッサが、コントローラ又はプロセッサと動作可能に接続された非一時的コンピュータ可読媒体に記憶されたプログラミングされた命令を実行して、車載情報システム１０４においてデータを操作する、又は、１つ又は複数の構成要素を動作させる、ということを指す。詳細には、上述のプロセッサ１０８、ＣＰＵ１１２及び／又はＧＰＵ１１６を、かかるコントローラ又はプロセッサとすることができ、実行されるプログラム命令を、メモリ１２０に記憶されたプログラミングされた命令１４０とすることができる。これに加え方法のステップを、図面に示されている順序又はステップを説明する順序にかかわらず、実現可能な任意の時間順序で実施することができる。
【００２１】
図２には、３Ｄ仮想環境に降水又は他の同様の天候エフェクトを描画する３Ｄパーティクルシステムを、計算上効率的な手法でレンダリングするための方法２００が示されている。詳細には、上述のマッピングアプリケーション及びナビゲーションアプリケーションに対して適用されるならば、方法２００は、車両周囲の現実世界の地理的ロケーションにおける現在の天候状況を反映する降水表現を含む３Ｄ仮想環境のグラフィック表示を生成する。方法２００は、３Ｄ仮想環境に降水又は他の同様の天候エフェクトを描画する３Ｄパーティクルシステムを効率的にレンダリングするために、プロセッサ１０８が特定のルールのセットを実行できるようにすることによって、車載情報システム１０４の機能を改善する。これに加え方法２００は、処理能力が相対的に制限されている組み込みデバイス及びモバイルデバイスにおいて使用するのに十分に効率的なものである。
【００２２】
本明細書で用いられる用語「降水」は、雨、霧雨、着氷性の雨、雪、みぞれ、雹など、及び、ここで挙げた天候状況の任意の組み合わせのことを指す。降水に対して適用されるならば、３Ｄパーティクルシステムの「パーティクル」によって、雪片、粒雪、雪あられ、雨滴、凍結した雨滴、凍雨などを描画することができる。ただし、方法２００を、砂嵐、霧、風、竜巻、暴風、火災、閃光などのように、３Ｄパーティクルシステムとして描画できるであろう他の任意の天候状況に適用可能である。
【００２３】
方法２００は、３Ｄ仮想環境における第１のカメラポジション及び３Ｄ仮想環境における第１の視方向を受け取るステップ（ブロック２１０）によって始まる。詳細には、本明細書で詳述する実施形態に関しては、プロセッサ１０８は、３Ｄ仮想環境における仮想カメラの現在のカメラポジション及び現在の視方向を受け取るように構成されている。一部の実施形態によれば、プロセッサ１０８はさらに、３Ｄ仮想環境における仮想カメラの現在の視界及び／又は現在の視角を受け取るように構成されている。カメラポジション、視方向、視界及び視角は、仮想カメラの各パラメータであり、地理的領域の視覚化においてユーザを支援する目的で、プロセッサ１０８によりレンダリングされてディスプレイ１４４において表示されるべき３Ｄ仮想環境のビュー及び／又はパースペクティブが、これらによって定義される。少なくとも１つの実施形態によれば、プロセッサ１０８は、仮想カメラのパラメータをメモリ１２０から読み出すように構成されており、ただし、何らかの他のシステム又はプロセッサからそれらを受け取ることもできる。一部の実施形態によれば、プロセッサ１０８は、ポジショニングシステム１４８によって表される車両及び／又は車載情報システム１０４のポジション及び／又は移動方向に基づき、仮想カメラのパラメータを自動的に調節するように構成されている。さらに一部の実施形態によれば、プロセッサ１０８は、車載情報システム１０４のタッチスクリーン、ボタン、ノブ又は他の入力デバイスからなど、ユーザからの入力に基づき、仮想カメラのパラメータを調節するように構成されている。一部の実施形態によれば、プロセッサ１０８は、３Ｄ仮想環境をレンダリングする付加的な情報を受け取るように構成されており、そのような情報には、３Ｄ仮想環境における物体に対するメッシュデータ、道路及びナビゲーションの情報、３Ｄ仮想環境の地面又は地表面に関する情報、及び、３Ｄ仮想環境のフィーチャをレンダリングするために使用される重力方向が含まれる。
【００２４】
本明細書で用いられる仮想カメラの「カメラポジション」（これを視野の「ポジション」又は「原点」と称することもある）は、３Ｄ仮想環境における以下のようなポジションのことを指し、即ち、このポジションから３Ｄ仮想環境のビューがレンダリングされる。カメラポジションを、３Ｄ仮想環境における座標セットたとえば（Xcam, Ycam, Zcam）として、又は、他の任意の適切な手法で、定義することができる。一部の実施形態によれば、カメラポジションに対しいくつかの境界条件を課すことができ、たとえば３Ｄ仮想環境の地面よりも上であること、あるいはポジショニングシステム１４８により表される車両及び／又は車載情報システム１０４のポジションから予め定められた距離内にあることなどである。
【００２５】
本明細書で用いられる仮想カメラの「視方向」（これを視野の「方向」と称することもある）は、カメラポジションからの以下の方向のことを指し、即ち、この方向で３Ｄ仮想環境のビューがレンダリングされる。視角を、カメラポジションから延びる方向ベクトルたとえば<Xview, Yview, Zview>として、又は、他の任意の適切な手法で、定義することができる。
【００２６】
本明細書で用いられる仮想カメラの「視角」（これを視野の「角度」と称することもある）は、３Ｄ仮想環境の地面に対する以下の角度のことを指し、即ち、この角度から３Ｄ仮想環境のビューがレンダリングされる。視角は一般に、カメラポジション及び視方向の関数である。１つの例によれば、垂直方向の俯瞰ビューと平行な水平ビューとの間で定義された角度範囲に関して、視角を定義することができる。垂直方向の俯瞰ビューは、視方向がカメラポジションから真下にかつ３Ｄ仮想環境の地面と垂直に向けられたビューである。平行な水平ビューは、視方向が３Ｄ仮想環境の地面と平行に向けられたビューである。ただし、視角を、他の任意の適切な手法で定義することができる。
【００２７】
本明細書で用いられる仮想カメラの「視界」（これを視野の「範囲」又は「幅」と称することもある）は、３Ｄ仮想環境の視野の幅のことを指し、又は、選択的に、３Ｄ仮想環境のビューにおける物体及び／又は地面からのカメラポジションの距離のことを指す。視界は一般に、カメラポジション及び視方向の関数である。一般的には視界が広がると、３Ｄ仮想環境のビューにおいて地理的領域のより広い部分が表現される。
【００２８】
方法２００は、３Ｄ仮想環境における第１のカメラポジションに対応する第１の地理的領域に応じた第１の降水情報を含む天候データを受け取るステップ（ブロック２２０）によって続けられる。詳細には、プロセッサ１０８は、ネットワークデバイス１５２を動作させて、カメラポジションの地理的領域に応じた１つ又は複数のオンライン天候情報源１９０から、データネットワーク１８０を介して天候データを受け取る及び／又は取り出すように構成されている。天候データには少なくとも、たとえば降水中であるか否か、及び、降水中であるならば、降水のタイプ（たとえば雨、雪、みぞれ等）及び降水強度（たとえば弱い、中くらい、又は、強い）を表す降水情報が含まれる。一部の実施形態によれば、天候データにはさらに、たとえば風速及び風向を表す風情報が含まれる。
【００２９】
方法２００は、第１の視方向で第１のカメラポジションから第１の距離にある第１のポジションに、第１の視方向で第１のカメラポジションからの視野をカバーするように寸法選定された境界ジオメトリを定義するステップ（ブロック２３０）によって続けられる。詳細には、プロセッサ１０８は、現在の視方向で現在のカメラポジションから予め定められた距離にあるポジションに、境界ジオメトリを定義するように構成されている。プロセッサ１０８は、現在の視方向で現在のカメラポジションからの視野をカバー及び／又は包含するように設定された寸法で、境界ジオメトリを定義するように構成されている。図３には、仮想カメラ３０４に関して定義された例示的な境界ジオメトリ３０２が示されている。境界ジオメトリ３０２は、視方向３０８で仮想カメラ３０４のポジションから距離Ｌにあるポジション３０６に位置決めされている。図示されているように、境界ジオメトリ３０２は、距離Ｌのところで仮想カメラ３０４の視野３１０の幅よりも大きい直径Ｄをもつ球体を有する。このようにして境界ジオメトリ３０２は、仮想カメラの前方に定義され、仮想カメラ３０４の視野３１０を包含するように寸法選定される。他の実施形態によれば、球体とは異なる適切な境界ジオメトリを用いることができる。
【００３０】
一部の実施形態によれば、仮想カメラ３０４に対し境界ジオメトリ３０２の可視性を最大化するように、プロセッサ１０８は、予め定められた関数を基礎として現在の視方向、現在の視角及び／又は現在の視界に基づき、境界ジオメトリの予め定められた距離（たとえば距離Ｌ）及び／又は寸法（たとえば球状の境界ジオメトリ３０２の直径Ｄ）を、周期的又は連続的に調節するように構成されている。たとえば、カメラがある領域の全体ビュー（即ち、ズームアウト）をもたらすように設定されている場合には、カメラが狭いエリアのクローズアップビュー（即ち、ズームイン）をもたらすように設定されている場合と比べて、境界ジオメトリの予め定められた距離及び／又は寸法が大きくなるよう調節するように、プロセッサ１０８を構成することができる。このようにすることで３Ｄパーティクルシステムは、カメラがズームアウトされたときには、より離れて見えるようになり、カメラがズームインされたときには、より近づいて見えるようになる。
【００３１】
図２を参照すると、方法２００は、境界ジオメトリ内だけで降水を描画する３Ｄ仮想環境に、第１の降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングするステップ（ブロック２４０）によって続けられる。詳細には、プロセッサ１０８は、又は、より詳細には、ＧＰＵ１１６は、定義された境界ジオメトリ内だけで降水を描画する３Ｄ仮想環境に、３Ｄパーティクルシステムをレンダリングするように構成されている。少なくとも１つの実施形態によれば、プロセッサ１０８は、カメラポジション周囲の地理的領域において降水が存在することを降水情報が表している場合のみ、３Ｄパーティクルシステムをレンダリングするように構成されている。１つの実施形態によれば、プロセッサ１０８は、降水情報により表される降水強度に基づき、降水密度と共に境界ジオメトリ内でパーティクルをランダムに作り出すことによって、３Ｄパーティクルシステムをレンダリングするように構成されている。少なくとも１つの実施形態によれば、プロセッサ１０８はさらに、道路、建物、目印など３Ｄ仮想環境のフィーチャを付加的にレンダリングするように構成されている。
【００３２】
図４には、定義された境界ジオメトリ３０２内だけの３Ｄパーティクルシステム３１２の例示的なレンダリングが示されている。この図からわかるように境界ジオメトリ３０２は、実施しなければならないレンダリング量を低減することにより３Ｄパーティクルシミュレーションを最適化するための効率的な手法である。
【００３３】
さらにプロセッサ１０８は、受け取った天候データの降水情報に依存するフィーチャを有する３Ｄパーティクルシステムをレンダリングするように構成されている。１つの実施形態によれば、プロセッサ１０８は、３Ｄパーティクルシステムのパーティクルの（ｉ）形状、（ｉｉ）色及び（ｉｉｉ）不透明度のうちの少なくとも１つを、降水情報により表される降水タイプに依存して様々にレンダリングするように構成されている。たとえば、カメラポジション周囲の地理的領域において降雪中であることを降水情報が表しているならば、３Ｄパーティクルシステムのパーティクルを不透明な白色の雪片形状としてレンダリングするように、プロセッサ１０８を構成することができる。同様に、カメラポジション周囲の地理的領域において降雨中であることを降水情報が表しているならば、３Ｄパーティクルシステムのパーティクルを半透明な青色の雨滴形状としてレンダリングするように、プロセッサ１０８を構成することができる。
【００３４】
１つの実施形態によれば、プロセッサ１０８は、（ｉ）３Ｄパーティクルシステムのパーティクルサイズ及び（ｉｉ）３Ｄパーティクルシステムのパーティクル密度のうちの少なくとも一方を、降水情報により表される降水タイプ及び／又は降水強度に依存して様々にレンダリングするように構成されている。たとえば、カメラポジション周囲の地理的領域において雹が降っていることを降水情報が表している場合には、カメラポジション周囲の地理的領域においてみぞれが降っていることを降水情報が表している場合と比べて、相対的に大きいパーティクルサイズで３Ｄパーティクルシステムのパーティクルをレンダリングするように、プロセッサ１０８を構成することができる。同様に、降水強度が強いことを降水情報が表している場合には、降水強度が弱いことを降水情報が表している場合と比べて、３Ｄパーティクルシステムにおいて、より多くのパーティクルをレンダリングするように、プロセッサ１０８を構成することができる。
【００３５】
１つの実施形態によれば、プロセッサ１０８は、風情報によって表される風速及び風向のうちの少なくとも一方並びに３Ｄ仮想環境の重力方向に基づき、３Ｄパーティクルシステムのパーティクルの動きをレンダリングするように構成されている。一部の実施形態によれば、パーティクルに及ぼされる風の影響を、降水情報により表される降水のタイプに依存させることができる（たとえば雪片は雨滴よりも風によって、より多くの影響を受ける）。
【００３６】
図５には、カメラポジション又は視方向が変更されたときに３Ｄパーティクルシステムを更新するための、方法２００の続きとなる方法３００が示されている。方法３００は、カメラポジション又は視方向が変更されたときに、仮想環境に降水又は他の同様の天候エフェクトを描画する３Ｄパーティクルシステムを効率的に更新するために、プロセッサ１０８が特定のルールセットを実行できるようにすることによって、車載情報システム１０４の機能を改善する。
【００３７】
方法３００は、３Ｄ仮想環境における第２のカメラポジション及び３Ｄ仮想環境における第２の視方向を受け取るステップ（ブロック２５０）によって始まる。詳細には、本明細書で詳述する実施形態に関しては、プロセッサ１０８は、３Ｄ仮想環境の仮想カメラの更新された現在のカメラポジション及び更新された現在の視方向を受け取るように構成されている。一部の実施形態によれば、プロセッサ１０８はさらに、３Ｄ仮想環境の仮想カメラの更新された現在の視界及び／又は更新された現在の視角を受け取るように構成されている。
【００３８】
方法３００は、第２の視方向で第２のカメラポジションから第１の距離にある第２のポジションへ境界ジオメトリを移動させるステップ（ブロック２６０）によって続けられる。詳細には、プロセッサ１０８は、更新された現在の視方向で更新された現在のカメラポジションから予め定められた距離（たとえば距離Ｌ）にある更新されたポジションへ、境界ジオメトリのポジションを移動及び／又は再定義するように構成されている。図６には、元の境界ジオメトリ３０２の例示的な移動及び／又は再定義が示されている。詳細には、図示されているように仮想カメラ３０４が、同様の視方向３０８’を有する新たなポジションへ移動され、新たなポジションのところで３０４’として表されている。境界ジオメトリ３０２は、新たなポジション３０６’へ移動及び／又は再定義され、新たなポジション３０６’のところで３０２’として表されている。この図からわかるように境界ジオメトリ３０２は、その中でレンダリングされる３Ｄパーティクルシステムが常に可視状態となるように、実質的に仮想カメラ３０４の前方に置かれる。
【００３９】
図５を参照すると、方法３００は、３Ｄパーティクルシステムのパーティクルが移動された境界ジオメトリ内だけでレンダリングされるように、降水を描画する３Ｄパーティクルシステムのレンダリングを更新するステップ（ブロック２７０）によって続けられる。詳細には、プロセッサ１０８は、３Ｄパーティクルシステムのパーティクルが移動された境界ジオメトリ内だけでレンダリングされるように、降水を描画する３Ｄパーティクルシステムのレンダリングを更新するように構成されている。少なくとも１つの実施形態によれば、プロセッサ１０８は、古いポジションでは境界ジオメトリ内にあったが、境界ジオメトリが新たなポジションに移動された後では境界ジオメトリ外にある３Ｄパーティクルシステムのパーティクルを除去することによって、レンダリングを更新するように構成されている。さらにプロセッサ１０８は、境界ジオメトリが新たなポジションに移動された後では境界ジオメトリ内にあるが古いポジションでは境界ジオメトリ外であったポジションに、３Ｄパーティクルシステムの新たなパーティクルを所望の降水強度に基づく密度でランダムに作り出すことによって、レンダリングを更新するように構成されている。最後にプロセッサ１０８は、古いポジションでは境界ジオメトリ内にあり、境界ジオメトリが新たなポジションに移動された後でも境界ジオメトリ内に留まっている３Ｄパーティクルシステムのパーティクルのレンダリングを継続するように構成されている。一部の実施形態によれば、除去されたパーティクルをリサイクルして再利用することができる。たとえば、個々のパーティクルを生成し、次いで除去することは、一般に計算上コストがかかるので、予め規定された個数のパーティクルを生成し、それらのパーティクルが境界ジオメトリ３０２内にあれば、それらにライブとラベリングし、又は、それらのパーティクルが境界ジオメトリ３０２外にあれば、それらにデッドとラベリングするように、プロセッサ１０８を構成することができる。デッドとラベリングされたパーティクルを、新たなジオメトリ内の新たなパーティクルを「クリエート」するために使用することができる。
【００４０】
図６には、境界ジオメトリ３０２が新たなポジション３０６’に移動された後の例示的な更新された３Ｄパーティクルシステム３１２’が示されている。詳細には、この図からわかるように、新たな境界ジオメトリ３０２’内にあるが古い境界ジオメトリ３０２内にはない領域Ａに、新たなパーティクルがランダムに作り出される。同様に、古い境界ジオメトリ３０２内にあるが新たな境界ジオメトリ３０２’内にはない領域Ｂから、パーティクルが除去される。最後に、新たな境界ジオメトリ３０２’と古い境界ジオメトリ３０２の双方の中にある領域Ｃ内のパーティクルは、何も変化を受けず、引き続きレンダリングされる。
【００４１】
図面及びこれまでの記載において本開示について説明し詳述してきたけれども、これは例示的なものとしてみなされるべきであり、限定的な性格のものとしてみなされるべきではない。自明のとおり、好ましい実施形態だけをこれまで呈示してきたのであって、本開示の着想内に入るあらゆる変更、修正及びさらなる応用は、保護されるべきものである。
【図１】
2019175458.tif 000003
【図２】
2019175458.tif 000004
【図３】
2019175458.tif 000005
【図４】
2019175458.tif 000006
【図５】
2019175458.tif 000007
【図６】
2019175458.tif 000008
【外国語明細書】
2019175458.tif 000009
2019175458.tif 000010
2019175458.tif 000011
2019175458.tif 000012
2019175458.tif 000013
2019175458.tif 000014
2019175458.tif 000015
2019175458.tif 000016
2019175458.tif 000017
2019175458.tif 000018
2019175458.tif 000019
2019175458.tif 000020
2019175458.tif 000021
2019175458.tif 000022
2019175458.tif 000023
2019175458.tif 000024
2019175458.tif 000025
2019175458.tif 000026
2019175458.tif 000027
2019175458.tif 000028
2019175458.tif 000029
2019175458.tif 000030
2019175458.tif 000031
2019175458.tif 000032
2019175458.tif 000033
2019175458.tif 000034
2019175458.tif 000035
2019175458.tif 000036
2019175458.tif 000037
2019175458.tif 000038
2019175458.tif 000039
2019175458.tif 000040
2019175458.tif 000041
2019175458.tif 000042
2019175458.tif 000043