(57)【要約】【課題】本発明は、仮想空間内でユーザが違和感なく対象オブジェクトを選択することが可能な情報処理方法を提供すること、特に、現実の手に近い感覚で対象オブジェクトを把持することが可能な情報処理方法を提供することを目的とする。【解決手段】本発明の情報処理方法の一の実施形態は、コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法であって、前記コンピュータのプロセッサにおいて、前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得するステップと、前記異なる２点の仮想空間内座標の中点を算出するステップと、前記中点から最も近い対象オブジェクトを選択するステップと、を実行する。【選択図】図５
2020204873.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法であって、
前記コンピュータのプロセッサにおいて、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得するステップと、
前記異なる２点の仮想空間内座標の中点を算出するステップと、
前記中点から最も近い対象オブジェクトを選択するステップと、
を実行することを特徴とする情報処理方法。
【請求項２】
前記操作オブジェクトにより前記選択された前記対象オブジェクトを把持するステップをさらに含む、請求項１に記載の情報処理方法。
【請求項３】
前記操作オブジェクトにより前記選択された前記対象オブジェクトを挟持するステップをさらに含む、請求項１に記載の情報処理方法。
【請求項４】
前記操作オブジェクトは、仮想空間内でユーザが操作可能なプレイヤーの手である、請求項２または３に記載の情報処理方法。
【請求項５】
前記操作オブジェクトの一部の異なる２点は、前記プレイヤーの手の親指と人差し指である、請求項４に記載の情報処理方法。
【請求項６】
前記操作オブジェクトは、仮想空間内でユーザがプレイヤーの手を介して間接的に操作可能な物である、請求項２または３に記載の情報処理方法。
【請求項７】
前記操作オブジェクトの一部の異なる２点は、前記間接的に操作可能な物の先端部である、請求項６に記載の情報処理方法。
【請求項８】
コンピュータに、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法を実行させるためのプログラムであって、
前記情報処理方法は、
前記コンピュータのプロセッサにおいて、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得するステップと、
前記異なる２点の仮想空間内座標の中点を算出するステップと、
前記中点から最も近い対象オブジェクトを選択するステップと、
を実行することを特徴とするプログラム。
【請求項９】
コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理システムであって、
前記コンピュータのプロセッサは、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得する座標取得部と、
前記異なる２点の仮想空間内座標の中点を算出する中点算出部と、
前記中点から最も近い対象オブジェクトを選択する選択部と、
を含むことを特徴とする情報処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法等に関する。
【背景技術】
【０００２】
従来から、ユーザがヘッドマウントディスプレイ（以下、「ＨＭＤ」）を装着し、ユーザが把持するコントローラによる入力を介して、仮想空間におけるプレイヤーの制御が行われている。
【０００３】
そのようなプレイヤーにおいて、例えば仮想空間内の対象オブジェクトを把持する場合、現実でユーザが手にしているコントローラのボタンを押した際に、プレイヤーの手に触れている対象オブジェクト、もしくはその周辺にあるいずれかの対象オブジェクトを選択して把持するという技術が一般的である。
【０００４】
また、例えば特許文献１には、仮想空間内で対象オブジェクトを把持する際に、プレイヤーの手などの操作オブジェクトの位置に基づいて、対象オブジェクトの向きまたは位置を補正する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１８−３２２１７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述の一般的な制御の場合、対象オブジェクトの周辺に複数の把持ことが可能なオブジェクトが存在する場合に、意図しないものを選択して把持してしまうため、仮想空間内での体験の質が損なわれる。また、上記特許文献１に開示の技術では、選択して把持する際に対象オブジェクトの向きが変更されるという現実では生じえない動作が表示されるため、仮想空間内での体験の質を保つための対策として十分ではなかった。
【０００７】
そこで、本発明は、仮想空間内でユーザが違和感なく対象オブジェクトを選択することが可能な情報処理方法を提供することを目的とする。さらに、本発明は、特に操作オブジェクトがプレイヤーの手であり、対象オブジェクトを把持する場合には、現実の手に近い感覚で対象オブジェクトを把持することが可能な情報処理方法ことを目的とする。
【課題を解決するための手段】
【０００８】
本発明の一の実施形態は、コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法であって、前記コンピュータのプロセッサにおいて、前記操作オブジェクトの一部の異なる２点の仮想空間内座標を取得するステップと、前記異なる２点の仮想空間内座標の中点を算出するステップと、前記中点から最も近い対象オブジェクトを選択するステップと、を実行する。
【発明の効果】
【０００９】
本発明によれば仮想空間内でユーザが違和感なく対象オブジェクトを選択することが可能な情報処理方法を提供すること、特に、現実の手に近い感覚で対象オブジェクトを把持することが可能な情報処理方法を提供することが可能である。
【図面の簡単な説明】
【００１０】
【図１】本実施形態にかかるＨＭＤの外観の模式図の一例である。
【図２】本実施形態にかかるコントローラの外観の模式図の一例である。
【図３】本実施形態にかかるＨＭＤの構成図の一例である。
【図４】本実施形態にかかるＨＭＤのプロセッサの機能構成図の一例である。
【図５】本実施形態にかかる情報処理を示したフローチャート図の一例である。
【図６】本実施形態にかかるＨＭＤに表示される表示画面の一例である。
【発明を実施するための形態】
【００１１】
本発明の実施形態の内容を列記して説明する。本発明の実施の形態による情報処理方法等は、以下のような構成を備える。
［項目１］
コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法であって、
前記コンピュータのプロセッサにおいて、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得するステップと、
前記異なる２点の仮想空間内座標の中点を算出するステップと、
前記中点から最も近い対象オブジェクトを選択するステップと、
を実行することを特徴とする情報処理方法。
［項目２］
前記操作オブジェクトにより前記選択された前記対象オブジェクトを把持するステップをさらに含む、項目１に記載の情報処理方法。
［項目３］
前記操作オブジェクトにより前記選択された前記対象オブジェクトを挟持するステップをさらに含む、項目１に記載の情報処理方法。
［項目４］
前記操作オブジェクトは、仮想空間内でユーザが操作可能なプレイヤーの手である、項目２または３に記載の情報処理方法。
［項目５］
前記操作オブジェクトの一部の異なる２点は、前記プレイヤーの手の親指と人差し指である、項目４に記載の情報処理方法。
［項目６］
前記操作オブジェクトは、仮想空間内でユーザがプレイヤーの手を介して間接的に操作可能な物である、項目２または３に記載の情報処理方法。
［項目７］
前記操作オブジェクトの一部の異なる２点は、前記間接的に操作可能な物の先端部である、項目６に記載の情報処理方法。
［項目８］
コンピュータに、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理方法を実行させるためのプログラムであって、
前記情報処理方法は、
前記コンピュータのプロセッサにおいて、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得するステップと、
前記異なる２点の仮想空間内座標の中点を算出するステップと、
前記中点から最も近い対象オブジェクトを選択するステップと、
を実行することを特徴とするプログラム。
［項目９］
コンピュータにおける、仮想空間内で操作オブジェクトが対象オブジェクトを選択するための情報処理システムであって、
前記コンピュータのプロセッサは、
前記操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得する座標取得部と、
前記異なる２点の仮想空間内座標の中点を算出する中点算出部と、
前記中点から最も近い対象オブジェクトを選択する選択部と、
を含むことを特徴とする情報処理システム。
【００１２】
以下、本発明の実施の形態による情報処理方法等について、図面を参照しながら例示する。なお、同一の参照番号を有する構成については、繰り返しの説明を省略する場合がある。
【００１３】
図１は、本実施形態にかかるヘッドマウントディスプレイ（以下：ＨＭＤ）１１０の外観の模式図を例示する。ＨＭＤ１１０はユーザの頭部に装着され、ユーザの左右の眼前に配置されるよう表示パネル１２０を備える。表示パネルとしては、光学透過型と非透過型のディスプレイが考えられるが、本実施形態では、より没入感を提供可能な非透過型の表示パネルを例示する。表示パネル１２０には、左目用画像と右目用画像とが表示され、両目の視差を利用することにより立体感のある画像をユーザに提供することができる。左目用画像と右目用画像とを表示することができれば、左目用ディスプレイと右目用ディスプレイとを個別に備えることも可能であるし、左目用及び右目用の一体型のディスプレイを備えることも可能である。
【００１４】
さらに、ＨＭＤ１１０の筐体部１３０は、センサ１４０を備える。センサは、ユーザの頭部の向きや傾きといった動きを検出するために、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。ユーザの頭部の垂直方向をＹ軸とし、Ｙ軸と直交する軸のうち、表示パネル１２０の中心とユーザとを結ぶ、ユーザの前後方向に相当する軸をＺ軸とし、Ｙ軸及びＺ軸と直交し、ユーザの左右方向に相当する軸をＸ軸とするとき、センサ１４０は、Ｘ軸まわりの回転角（いわゆる、ピッチ角）、Ｙ軸まわりの回転角（いわゆる、ヨー角）、Ｚ軸まわりの回転角（いわゆる、ロール角）を検出することができる。
【００１５】
また、ＨＭＤ１１０の筐体部１３０は、センサ１４０に代えて、複数の光源１５０（例えば、赤外光ＬＥＤ、可視光ＬＥＤ）を備えることもできる。ＨＭＤ１１０の外部（例えば、室内等）に設置されたカメラ（例えば、赤外光カメラ、可視光カメラ）がこれらの光源を検出することで、特定の空間におけるＨＭＤ１１０の位置や向き、傾きを検出することができる。さらに、同じ目的で、ＨＭＤ１１０に、ＨＭＤ１１０の筐体部１３０に設置された光源を検出するためのセンサ等を備えることもできる。なお、ユーザの頭部の位置や向き、傾きを検出可能であればどのような構成でもよく、上記の構成に限定されない。
【００１６】
さらに、ＨＭＤ１１０の筐体部１３０は、アイトラッキング・センサを備えることもできる。アイトラッキング・センサは、ユーザの左目及び右目の視線方向及び注視点を検出するために用いられる。アイトラッキング・センサとしては様々な方式が考えられるが、例えば、左目および右目に弱い赤外光を照射してできる角膜上の反射光の位置を基準点とし、反射光の位置に対する瞳孔の位置により視線方向を検出し、左目及び右目の視線方向の交点を注視点として検出する方法などが考えられる。
【００１７】
図２は、本実施形態にかかるコントローラ２１０の外観の模式図を例示する。コントローラ２１０により、仮想空間内において、ユーザが所定の入力を行うことをサポートすることができる。コントローラ２１０は、左手用２２０及び右手用２３０のコントローラのセットとして構成することができる。左手用コントローラ２２０及び右手用コントローラ２３０は、例えば、操作用トリガーボタン２４０、赤外線ＬＥＤ２５０、センサ２６０、ジョイスティック２７０、メニューボタン２８０をそれぞれ有することができる。
【００１８】
操作用トリガーボタン２４０は、コントローラ２１０のグリップ２３５を把持したときに、中指及び人差し指でトリガーを引くような操作を行うことを想定した位置に２４０ａ、２４０ｂとして配置される。コントローラ２１０の両側面から下方にリング状に形成されるフレーム２４５には、複数の赤外線ＬＥＤ２５０が備えられ、コントローラ外部に備えられるカメラ（図示せず）により、これらの赤外線ＬＥＤの位置を検出することで、特定の空間におけるコントローラ２１０の位置、向き及び傾きを検出することができる。
【００１９】
また、コントローラ２１０は、コントローラ２１０の向きや傾きといった動きを検出するために、センサ２６０を内蔵することもできる。センサ２６０として、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。さらに、コントローラ２１０の上面には、ジョイスティック２７０及びメニューボタン２８０を備えることができる。ジョイスティック２７０は、基準点を中心に３６０度方向に動かすことができ、コントローラ２１０のグリップ２３５を把持したときに、親指で操作されることが想定される。メニューボタン２８０もまた同様に、親指で操作されることが想定される。さらに、コントローラ２１０は、コントローラ２１０を操作するユーザの手に振動を与えるためのバイブレータ（図示せず）を内蔵することもできる。ボタンやジョイスティックを介したユーザの入力内容やセンサ等を介したコントローラ２１０の位置、向き及び傾きといった情報を出力するため、また、ホストコンピュータからの情報を受信するために、コントローラ２１０は、入出力部及び通信部を有する。
【００２０】
ユーザがコントローラ２１０を把持し、各種ボタンやジョイスティックを操作することの有無、及び赤外線ＬＥＤやセンサにより検出される情報によって、システムはユーザの手の動きや姿勢を決定し、ユーザの手を仮想空間内において擬似的にプレイヤーの手として表示させ、動作させることができる。なお、コントローラの形状等の具体的な構成は、図２に示されるものに限らず、仮想空間内において表示されたプレイヤーの手によって対象オブジェクトを把持または挟持することが可能であればよい。
【００２１】
図３は、本実施形態にかかる、ＨＭＤの構成図である。図３に例示するように、ＨＭＤ１１０は、少なくとも、表示パネル１２０、センサ１４０または光源１５０の少なくとも一方、プロセッサ３１０、メモリ３１１、ストレージ３１２、表示制御部３１３、送受信部３１４、入出力部３１５、スピーカ３１６等を備え、これらはバス３１９を通じて相互に電気的に接続される。
【００２２】
プロセッサ３１０は、ＨＭＤ１１０全体の動作を制御し、各要素間におけるデータの送受信の制御やアプリケーションの実行、認証処理に必要な情報処理等を行う演算装置である。例えば制御部３１０はＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、ストレージ３１２に格納されメモリ３１１に展開されたプログラム等を実行して各情報処理を実施する。
【００２３】
メモリ３１１は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性記憶装置で構成される主記憶と、フラッシュメモリやＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）等の不揮発性記憶装置で構成される補助記憶と、を含む。メモリ３１１は、プロセッサ３１０のワークエリア等として使用され、また、ネットワークで接続されたサーバの起動時に実行されるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、及び各種設定情報等を格納する。
【００２４】
ストレージ３１２は、アプリケーションプログラム等の各種プログラムを格納する。各処理に用いられるデータを格納したデータベース（図示せず）がストレージ３１２に構築されていてもよい。
【００２５】
表示制御部３１３は、例えば、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であり、主に画像処理に係る演算処理を実行する。例えば、表示制御部３１３は、仮想空間を構成する空間画像及び各種オブジェクト画像を生成及び合成などを実行する。なお、図３ではプロセッサ３１０と表示制御部３１３とが分かれて図示されているが、これに限らず、例えばプロセッサ３１０の構成の一部として、表示制御部３１３が構成されていてもよい。また、プロセッサ３１０の表示に関する一部または全部の処理機能を表示制御部３１３に持たせてもよい。
【００２６】
送受信部３１４は、ＨＭＤ１１０をネットワークに接続する。なお、送受信部３１４は、Ｂｌｕｅｔｏｏｔｈ（登録商標）及びＢＬＥ（Ｂｌｕｅｔｏｏｔｈ  Ｌｏｗ  Ｅｎｅｒｇｙ）の近距離通信インターフェースを備えていてもよい。送受信部３１４は、コントローラ２１０からの指示信号をネットワーク経由で受信する。
【００２７】
入出力部３１５は、画像生成装置や表示装置等を外部に設ける場合、画像信号や音信号等を入出力するためのインターフェースである。
【００２８】
スピーカ３１６は、（図示しない）音生成部から入力される音声データ等の音信号を出力する。
【００２９】
さらに、バス３１９は、上記各要素に共通に接続され、例えば、アドレス信号、データ信号及び各種制御信号を伝達する。
【００３０】
なお、ＨＭＤ１１０は、サーバや画像処理装置等の外部処理装置とネットワーク連携しながら、アプリケーションを実行し、データを送受信することもできるし、外部処理装置に依存せずに、ＨＭＤ単体として、内蔵されたプログラムを実行する、スタンドアローン型の装置として機能することもできる。
【００３１】
図４は、本実施形態にかかるＨＭＤ１１０のプロセッサ３１０の機能構成図を例示する。プロセッサ３１０において、本実施形態に係るアプリケーションプログラムの実行がされ、この実行されるプログラムのモジュールは、図示のとおり、いくつかの機能ブロックに分けられる。また、本制御部で実行される機能ブロックの全部又は一部は、その性質に応じて同ＨＭＤ１１０の表示制御部３１３や外部装置の制御部等によって実行することも可能である。また、ストレージ３１２については、本例のように、ＨＭＤ１１０に内蔵することもできるし、ＨＭＤ１１０とネットワーク接続する、サーバに内蔵するストレージまたはその他外部のストレージに代替することもできる。
【００３２】
表示画像生成部３２１は、仮想空間を構成する空間画像や操作オブジェクト及び対象オブジェクトなどの各種オブジェクト画像の生成及び合成などを実行する。生成された各種画像は、図示しない画像処理部または表示画像生成部３２１により、仮想空間内の３次元座標と関連付けられて表示パネル１２０に表示される。
【００３３】
また、表示画像生成部３２１は、操作オブジェクトが、後述する選択部３２４により選択された対象オブジェクトに対して所定動作（例えば、把持や挟持）を実行しているように表示パネル１２０に表示する。
【００３４】
座標取得部３２２は、少なくとも把持や挟持などの所定動作のための情報処理に必要となる、操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得する。
【００３５】
中点算出部３２３は、操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標からその中点を算出する。中点の算出方法は、既知の３次元座標の計算処理方法が採用される。
【００３６】
選択部３２４は、算出された中点から最も近い対象オブジェクトを選択する。
【００３７】
図５は、本実施形態にかかる情報処理を示したフローチャート図を例示する。本処理は、例えば、ＨＭＤ１１０のメモリ３１１に格納されたプログラムをプロセッサ３１０において実行することで実現される。また、本処理は、ＨＭＤ１１０とネットワーク接続されたサーバや外部装置の制御部等において実行することで実現されてもよい。
【００３８】
まず、ＨＭＤ１１０の制御部３１０は、コントローラ２１０による対象オブジェクト選択要求（図示しない）を受信した場合、操作オブジェクトの一部の異なる２点の仮想空間内の３次元座標を取得する（Ｓ１０１）。一例として、操作オブジェクトの一部の異なる２点は、プレイヤーの親指と人差し指の先端である。他の一例として、操作オブジェクトの一部の異なる２点は、プレイヤーが操作する手を模した道具の親指と人差し指の先端であったり、箸やトング等の挟持のための道具の各先端である。
【００３９】
次に、異なる２点の仮想空間内座標の中点を算出する（Ｓ１０２）。
【００４０】
最後に、当該中点から最も近い対象オブジェクトを選択する（Ｓ１０３）。
【００４１】
また、その後、コントローラ２１０による操作オブジェクト動作要求（図示しない）を受信した場合には、選択された対象オブジェクトに対して所定動作（例えば、把持や挟持）を実行しているように表示パネル１２０に表示する（Ｓ１０４）。
【００４２】
図６は、本実施形態にかかるＨＭＤに表示される表示画面の一例を示す。図６では、理解のために３次元座標や操作オブジェクトの一部の異なる２点を結ぶ線分、中点を記載しているが、実際の表示画面において表示される情報はこの限りでない。
【００４３】
図６では、仮想空間内のプレイヤーの手Ｈの親指の３次元座標Ａと人差し指の３次元座標Ｂから中点Ｍを算出し、該中点Ｍから最も近い対象オブジェクトＴを選択する。その後、対象オブジェクトＴをプレイヤーの手Ｈにより把持する。
【００４４】
以上により、仮想空間内でユーザが違和感なく対象オブジェクトを選択することが可能な情報処理方法を提供すること、特に、現実の手に近い感覚で対象オブジェクトを把持することが可能な情報処理方法を提供することができる。
【００４５】
上述した実施の形態は、本発明の理解を容易にするための例示に過ぎず、本発明を限定して解釈するためのものではない。本発明は、その趣旨を逸脱することなく、変更、改良することができると共に、本発明にはその均等物が含まれることは言うまでもない。
【符号の説明】
【００４６】
１１０        ＨＭＤ
２１０        コントローラ
３１０        プロセッサ
【図１】
2020204873.tif 000003
【図２】
2020204873.tif 000004
【図３】
2020204873.tif 000005
【図４】
2020204873.tif 000006
【図５】
2020204873.tif 000007
【図６】
2020204873.tif 000008