(57)【要約】【課題】仮想空間内でユーザが前進することも後退することも困難な状態になった場合にその状態であることを適切に判定すること。【解決手段】表示制御装置は、仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置であって、視点位置を仮想空間内で変位させるための操作入力を検出する操作検出部と、操作検出部が検出した操作入力に基づいて視点位置を変位させる指示をする変位指示部と、操作検出部が検出した操作入力に基づく操作量と、変位指示部による指示に基づいて変位させた視点位置の変位量とに基づいて、仮想空間内で特定の状態にあることを判定する状態判定部と、を備える。【選択図】図１
2019185358.tif 000002
【特許請求の範囲】
【請求項１】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置であって、
前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出部と、
前記操作検出部が検出した操作入力に基づいて前記視点位置を変位させる指示をする変位指示部と、
前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、
を備える表示制御装置。
【請求項２】
前記操作検出部は、
前記仮想空間内で前記視点位置を移動させるための移動操作の操作入力を検出し、
前記状態判定部は、
前記操作検出部が検出した操作入力に基づく移動操作量と、前記変位指示部による前記指示に基づいて移動させた前記視点位置の移動量とに基づいて、前記仮想空間内で特定の状態にあることを判定する、
請求項１に記載の表示制御装置。
【請求項３】
前記操作検出部は、
前記仮想空間内で前記視点位置からの視線方向を左右方向へ回転変位させるための回転操作の操作入力を検出し、
前記状態判定部は、
前記操作検出部が検出した操作入力に基づく回転操作量と、前記変位指示部による前記指示に基づいて回転させた前記視点位置の回転量とに基づいて、前記仮想空間内で特定の状態にあることを判定する、
請求項１または請求項２に記載の表示制御装置。
【請求項４】
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部、
を備え、
前記状態判定部は、
前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量と、前記動き検出部が検出した動き量とに基づいて、前記仮想空間内で特定の状態にあることを判定する、
請求項１から請求項３のいずれか一項に記載の表示制御装置。
【請求項５】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置であって、
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部と、
前記動き検出部が前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、
を備える表示制御装置。
【請求項６】
前記ユーザの操作入力を検出する操作検出部、
を備え、
前記状態判定部は、
前記操作検出部が前記ユーザによる特定の操作入力を検出した場合、前記特定のアクションを行ったと判定する、
請求項５に記載の表示制御装置。
【請求項７】
ユーザの発話を検出する発話検出部と、
前記発話検出部から検出する発話の中から語句を検出する語句検出部と、
を備え、
前記状態判定部は、
前記語句検出部が特定の語句を検出した場合、前記特定のアクションを行ったと判定する、
請求項５に記載の表示制御装置。
【請求項８】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置であって、
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部、
前記動き検出部の検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御部と、
前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、
を備える表示制御装置。
【請求項９】
ユーザの発話を検出する発話検出部と、
前記発話検出部が検出する発話の中から予め設定された語句を検出する語句検出部と、
を備え、
前記状態判定部は、
さらに、前記語句検出部の検出結果に基づいて、前記仮想空間内で特定の状態にあることを判定する、
請求項１から請求項８のいずれか一項に記載の表示制御装置。
【請求項１０】
前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記視点位置を変位させるための操作入力がなくとも、前記視点位置を現在の位置とは異なる所定の位置へ移動させる特定状態制御部、
を備える請求項１から請求項９のいずれか一項に記載の表示制御装置。
【請求項１１】
前記特定状態制御部は、
前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記所定の位置への移動を行うか否かをユーザが選択可能な選択メニューを前記表示部に表示させ、前記所定の位置への移動を行うことが選択された場合、前記視点位置を前記所定の位置へ移動させる、
請求項１０に記載の表示制御装置。
【請求項１２】
ユーザの発話を検出する発話検出部と、
前記発話検出部から検出する発話の中から予め設定された語句を検出する語句検出部と、
を備え、
前記特定状態制御部は、
前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記所定の位置への移動を行うか否かをユーザに問い合わせる音声案内を音出力部から出力させ、  前記語句検出部が前記音声案内に対応する発話の中から検出された語句が、前記所定の位置への移動を行うことの許諾を示す語句であると判定した場合、前記視点位置を前記所定の位置へ移動させる、
請求項１０に記載の表示制御装置。
【請求項１３】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法であって、
操作検出部が、前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出ステップと、
変位指示部が、前記操作検出部が検出した操作入力に基づいて前記視点位置の変位を指示する移動指示ステップと、
状態判定部が、前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を有する表示制御方法。
【請求項１４】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法であって、
動き検出部が、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、
状態判定部が、前記動き検出部が前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を有する表示制御方法。
【請求項１５】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法であって、
動き検出部が、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、
表示制御部が、前記動き検出部の検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御ステップと、
状態判定部が、前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を有する表示制御方法。
【請求項１６】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、
前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出ステップと、
前記操作検出ステップにおいて検出した操作入力に基づいて前記視点位置の変位を指示する移動指示ステップと、
前記操作検出ステップにおいて検出した操作入力に基づく操作量と、前記移動指示ステップにおける前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を実行させるためのプログラム。
【請求項１７】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、
前記動き検出ステップにおいて前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を実行させるためのプログラム。
【請求項１８】
仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、
前記動き検出ステップにおける検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御ステップと、
前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、表示制御装置、表示制御方法、及びプログラムに関する。
【背景技術】
【０００２】
仮想空間内の画像を表示部に表示する技術がある。例えば、特許文献１には、ユーザが頭部に装着したヘッドマウントディスプレイに、頭部の動きに対応した仮想空間内の画像を表示する技術が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第５７６７３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上述したような仮想空間内の画像を表示部に表示するものには、コントローラ等を操作することにより仮想空間内を移動することができるものがある。しかしながら、仮想空間内を移動していると、行き止まり等で、その場所から前進することも後退することも困難な状態に陥ることがある。このような場合、ユーザは、コントローラを操作してもその場所からなかなか抜け出すことができない状況が続き、フラストレーションを感じることがあった。
【０００５】
本発明は、上記した事情に鑑みてなされたもので、仮想空間内でユーザが前進することも後退することも困難な状態になった場合にその状態であることを適切に判定できる表示制御装置、表示制御方法、及びプログラムを提供することを目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明は上記の課題を解決するためになされたものであり、本発明の第１態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置は、前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出部と、前記操作検出部が検出した操作入力に基づいて前記視点位置を変位させる指示をする変位指示部と、前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、を備える。
【０００７】
前記操作検出部は、前記仮想空間内で前記視点位置を移動させるための移動操作の操作入力を検出し、前記状態判定部は、前記操作検出部が検出した操作入力に基づく移動操作量と、前記変位指示部による前記指示に基づいて移動させた前記視点位置の移動量とに基づいて、前記仮想空間内で特定の状態にあることを判定してもよい。
【０００８】
前記操作検出部は、前記仮想空間内で前記視点位置からの視線方向を左右方向へ回転変位させるための回転操作の操作入力を検出し、前記状態判定部は、前記操作検出部が検出した操作入力に基づく回転操作量と、前記変位指示部による前記指示に基づいて回転させた前記視点位置の回転量とに基づいて、前記仮想空間内で特定の状態にあることを判定してもよい。
【０００９】
前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部、を備え、前記状態判定部は、前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量と、前記動き検出部が検出した動き量とに基づいて、前記仮想空間内で特定の状態にあることを判定してもよい。
【００１０】
また、本発明の第２態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置は、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部と、前記動き検出部が前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、を備える。
【００１１】
上記表示制御装置は、前記ユーザの操作入力を検出する操作検出部、を備え、前記状態判定部は、前記操作検出部が前記ユーザによる特定の操作入力を検出した場合、前記特定のアクションを行ったと判定してもよい。
【００１２】
上記表示制御装置は、ユーザの発話を検出する発話検出部と、前記発話検出部から検出する発話の中から語句を検出する語句検出部と、を備え、前記状態判定部は、前記語句検出部が特定の語句を検出した場合、前記特定のアクションを行ったと判定してもよい。
【００１３】
また、本発明の第３態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置は、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出部、前記動き検出部の検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御部と、前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定部と、を備える。
【００１４】
上記表示制御装置は、ユーザの発話を検出する発話検出部と、前記発話検出部が検出する発話の中から予め設定された語句を検出する語句検出部と、を備え、前記状態判定部は、さらに、前記語句検出部の検出結果に基づいて、前記仮想空間内で特定の状態にあることを判定してもよい。
【００１５】
上記表示制御装置は、前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記視点位置を変位させるための操作入力がなくとも、前記視点位置を現在の位置とは異なる所定の位置へ移動させる特定状態制御部、を備えてもよい。
【００１６】
前記特定状態制御部は、前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記所定の位置への移動を行うか否かをユーザが選択可能な選択メニューを前記表示部に表示させ、前記所定の位置への移動を行うことが選択された場合、前記視点位置を前記所定の位置へ移動させてもよい。
【００１７】
上記表示制御装置は、ユーザの発話を検出する発話検出部と、前記発話検出部から検出する発話の中から予め設定された語句を検出する語句検出部と、を備え、前記特定状態制御部は、前記状態判定部により前記仮想空間内で特定の状態にあると判定された場合、前記所定の位置への移動を行うか否かをユーザに問い合わせる音声案内を音出力部から出力させ、前記語句検出部が前記音声案内に対応する発話の中から検出された語句が、前記所定の位置への移動を行うことの許諾を示す語句であると判定した場合、前記視点位置を前記所定の位置へ移動させてもよい。
【００１８】
また、本発明の第４態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法は、操作検出部が、前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出ステップと、変位指示部が、前記操作検出部が検出した操作入力に基づいて前記視点位置の変位を指示する移動指示ステップと、状態判定部が、前記操作検出部が検出した操作入力に基づく操作量と、前記変位指示部による前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を有する。
【００１９】
また、本発明の第５態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法は、動き検出部が、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、状態判定部が、前記動き検出部が前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を有する。
【００２０】
また、本発明の第６態様に係る仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置の表示制御方法は、動き検出部が、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、表示制御部が、前記動き検出部の検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御ステップと、状態判定部が、前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を有する。
【００２１】
また、本発明の第７態様に係るプログラムは、仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、前記視点位置を前記仮想空間内で変位させるための操作入力を検出する操作検出ステップと、前記操作検出ステップにおいて検出した操作入力に基づいて前記視点位置の変位を指示する移動指示ステップと、前記操作検出ステップにおいて検出した操作入力に基づく操作量と、前記移動指示ステップにおける前記指示に基づいて変位させた前記視点位置の変位量とに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を実行させる。
【００２２】
また、本発明の第８態様に係るプログラムは、仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、前記動き検出ステップにおいて前記ユーザの頭部が上を見上げる動きを検出し、且つ前記ユーザが特定のアクションを行ったことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を実行させる。
【００２３】
また、本発明の第９態様に係るプログラムは、仮想空間における視点位置からの画像を表示する表示部への表示を制御する表示制御装置としてのコンピュータに、前記表示部がヘッドマウントディスプレイとして装着されたユーザの頭部の動きを検出する動き検出ステップと、前記動き検出ステップにおける検出結果に基づいて、前記表示部に表示させる前記視点位置からの画像を前記ユーザの頭部の向きに応じた画像に変更するとともに、前記ユーザの操作入力が行われる操作部に対応する操作部画像を、現実空間における前記ユーザの視点位置と前記操作部との位置関係に応じて前記表示部に表示させる表示制御ステップと、前記表示部に表示された画像内の所定の範囲に前記操作部画像が一定時間以上表示されたことに基づいて、前記仮想空間内で特定の状態にあることを判定する状態判定ステップと、を実行させる。
【発明の効果】
【００２４】
本発明の上記態様によれば、仮想空間内でユーザが前進することも後退することも困難な状態になった場合にその状態であることを適切に判定できる。
【図面の簡単な説明】
【００２５】
【図１】第１の実施形態に係る表示システムの一例を示す図。
【図２】第１の実施形態に係るコントローラの一例を示す外観図。
【図３】第１の実施形態に係るユーザが進退不可状態になっている例を示す図。
【図４】ユーザが行った移動操作の操作量を示す図。
【図５】図４に示す軌跡のうち実際にユーザが移動できた部分を示す図。
【図６】実際にユーザが移動できた軌跡を示す図。
【図７】第１の実施形態に係る表示システムのハードウェア構成例を示す図。
【図８】第１の実施形態に係る表示制御装置の構成の一例を示す図。
【図９】第１の実施形態に係る変位処理の一例を示すフローチャート。
【図１０】第１の実施形態に係る状態判定処理の一例を示すフローチャート。
【図１１】第１の実施形態に係る脱出処理の一例を示すフローチャート。
【図１２】選択メニューの表示例を示す図。
【図１３】第２の実施形態に係るユーザが進退不可状態になっている例を示す図。
【図１４】ユーザが行った回転操作の操作量を示す図。
【図１５】図１４に示す回転角変位量のうち実際にユーザが回転できた部分を示す図。
【図１６】実際にユーザが回転できた回転角変位量を示す図。
【図１７】第２の実施形態に係る状態判定処理の一例を示すフローチャート。
【図１８】第３の実施形態に係る状態判定処理の一例を示すフローチャート。
【図１９】第４の実施形態に係る表示システムのハードウェア構成例を示す図。
【図２０】第４の実施形態に係る表示制御装置の構成の一例を示すブロック図。
【図２１】第４の実施形態に係る判定処理のイメージを示す図。
【図２２】第４の実施形態に係る状態判定処理の一例を示すフローチャート。
【図２３】第４の実施形態に係る状態判定処理の別の例を示すフローチャート。
【図２４】第５の実施形態に係るユーザの頭部の動きの判定の説明図。
【図２５】第５の実施形態に係る状態判定処理の一例を示すフローチャート。
【図２６】第６の実施形態に係るユーザがコントローラに視線を向けている状態の一例を示す図。
【図２７】コントローラに視線を向けている状態のときの視界画像の一例を示す図。
【図２８】第６の実施形態に係る状態判定処理の一例を示すフローチャート。
【発明を実施するための形態】
【００２６】
以下、図面を参照しながら本発明の実施形態について詳しく説明する。なお、各図において同一部分には同一符号を付している。
【００２７】
［第１の実施形態］
まず、本発明の第１の実施形態について説明する。
本実施形態では、３次元の仮想空間（以下、単に仮想空間という）の画像を表示するＨＭＤ（Ｈｅａｄ  Ｍｏｕｎｔｅｄ  Ｄｉｓｐｌａｙ）を装着したユーザが、コントローラを操作することにより、仮想空間内を移動可能な表示システムについて説明する。
【００２８】
図１は、第１の実施形態に係る表示システム１の一例を示す図である。図示する表示システム１は、ＨＭＤ１０と、コントローラ２０と、表示制御装置３０と、を備えている。図示する例では、ＨＭＤ１０及びコントローラ２０と、表示制御装置３０とは、画像や制御に必要な信号等を通信するために有線で接続されているが、有線接続に限らず、無線接続であってもよい。表示制御装置３０は、例えば、ゲーム機、パーソナルコンピュータ等といった電子機器である。なお、表示制御装置３０は、ＨＭＤ１０と一体に構成されていてもよい。例えば、ＨＭＤ１０は、表示制御装置３０としての機能を有する携帯端末装置（例えば、スマートフォン）をユーザの頭部に装着可能なアタッチメントに装着して利用する構成であってもよい。
【００２９】
ＨＭＤ１０は、表示部の他にジャイロ等のセンサを搭載しており、装着されているユーザの頭部の動きの変化などを検知する。表示制御装置３０は、検知結果に基づいて、そのユーザの頭部の動きの変化に応じて仮想空間の視界を変化させた画像をＨＭＤ１０に表示させる。図１に示すように、ユーザの左右方向の軸をＸ軸、上下方向の軸をＹ軸、視線方向の軸をＺ軸とすると、Ｘ軸を中心とした回転方向の動きがユーザの頭部の上下方向（ピッチ方向）の動きに相当し、Ｙ軸を中心とした回転方向の動きがユーザの頭部の左右方向（ヨー方向）の動きに相当する。また、Ｚ軸を中心とした回転方向の動きがユーザの頭部の傾き（ロール方向）の動きに相当する。
【００３０】
例えば、ＨＭＤ１０に表示される画像は、ユーザの頭部が右方向（または、左方向）を向けば仮想空間内の右方向（または、左方向）に見える画像に変化し、上方向（または、下方向）を向けば仮想空間内の上方向（または、下方向）に見える画像に変化する。また、表示制御装置３０は、ユーザがコントローラ２０を操作することにより仮想空間内を移動させ、当該移動に応じた画像をＨＭＤ１０に表示させることができる。そのため、表示システム１は、ＶＲ（Ｖｉｒｔｕａｌ  Ｒｅａｌｉｔｙ）コンテンツをＨＭＤ１０に表示させることで、あたかも当該コンテンツによる仮想空間内を実際に移動しているような没入感をユーザに与えることができる。
【００３１】
図２は、第１の実施形態に係るコントローラ２０の一例を示す外観図である。図示するコントローラ２０は、各種の操作ボタンや操作レバーなどの操作子を備えている。操作レバー２１は、レバーを上下左右のいずれかの方向へ傾けることにより、仮想空間内におけるユーザの位置（すなわち、視点位置）を移動させるための移動操作の指示が可能な操作子である。以下では、仮想空間内におけるユーザの位置のことを、単に「ユーザの位置」或いは「視点位置」とも記載する。例えば、操作レバー２１を上方向へ１回傾けるたびに、予め設定された距離の分、ユーザの位置（すなわち、視点位置）を前進させる指示を受け付ける。また、操作レバー２１を下方向へ１回傾けるたびに、予め設定された距離の分、ユーザの位置（すなわち、視点位置）を後退させる指示を受け付ける。また、操作レバー２１を左方向へ１回傾けるたびに、予め設定された距離の分、ユーザの位置（すなわち、視点位置）を左へ移動させる（向きは変更せずに）指示を受け付ける。また、操作レバー２１を右方向へ１回傾けるたびに、予め設定された距離の分、ユーザの位置（すなわち、視点位置）を右へ移動させる（向きは変更せずに）指示を受け付ける。なお、操作レバー２１を継続的に傾けた場合には、傾けている時間に応じた複数回分の指示を受け付けてもよい。
【００３２】
一方、操作レバー２２は、仮想空間内におけるユーザの向き（すなわち、視点位置からの視線方向）を変位（回転変位）させるための回転操作の指示が可能な操作子である。以下では、仮想空間内におけるユーザの向きのことを、単に「ユーザの向き」とも記載する。例えば、操作レバー２２を右方向へ１回傾けるたびに、予め設定された回転角変位量（回転角度）の分、右方向へ回転変位させる指示を受け付ける。また、操作レバー２２を左方向へ１回傾けるたびに、予め設定された回転角変位量の分、左方向へ回転変位させる指示を受け付ける。なお、操作レバー２２を継続的に傾けた場合には、傾けている時間に応じた複数回分の指示を受け付けてもよい。また、操作レバー２２は、レバーを傾けながら右回転または左回転させることにより、回転方向へ回転変位させる指示を受け付けてもよい。例えば、操作レバー２２を所定の角度以上回転させるたびに、予め設定された回転角変位量（回転角度）の分、回転方向へ回転変位させる指示を受け付けてもよい。
【００３３】
なお、コントローラ２０は、図示するようなコントローラ面上に操作ボタンや操作レバーが配置されたものに限られるものではなく、操作レバーが中心となって構成されたジョイスティック型のコントローラであってもよいし、キーボード、モーションセンサを利用したコントローラ等であってもよい。また、操作レバーに限られるものではなく、例えば上下左右それぞれのボタンを有する十字ボタンなどが、前進及び後退の移動操作の指示または回転操作の指示を受け付ける操作子として機能してもよい。
【００３４】
例えば、コントローラ２０を操作して、ＶＲコンテンツの仮想空間内を移動していると、行き止まり等で、その場所から前進することも後退することも困難な特定の状態に陥ることがある。特定の状態とは、その場所から抜け出せない状態または抜け出しにくい状態である。具体的には、特定の状態とは、移動操作を行っても移動操作に応じた移動ができない移動不可の状態または移動しにくい状態であったり、回転操作を行っても回転操作に応じた回転変位ができない回転不可の状態または回転しにくい状態である。以下では、この特定の状態のことを、その場所から前進することも後退することも困難であることから「進退不可状態」とも記載する。進退不可状態に陥る例としては、仮想空間内において、移動可能な領域のうち隅の方の周囲が壁などで囲まれた狭い凹形状の場所に入ってしまった場合や、長く曲がり角の多い狭い道の奥まで移動してしまった場合等がある。このような場合、ユーザは、脱出するための正確な操作手順をふめば脱出が可能であったとしても、その状況を俯瞰して見ているわけではなく、その仮想空間内での視点で見ているため、正確な操作手順を行うことは非常に困難である。そのため、ユーザは、コントローラ２０を操作して移動の指示をしても、周囲の壁等によって移動可能な距離が制限されて進退不可状態に陥る場合がある。
【００３５】
本実施形態では、表示システム１において、進退不可状態に陥った場合にその状態を検知して、その場所から脱出可能なようにする。具体的には、表示システム１は、進退不可状態の判定を、ユーザが移動させる操作をした割に仮想空間上で移動しないことを利用して行い、進退不可状態と判定した場合には、進退不可状態に陥った場所より少し前の時刻にいた位置等にユーザの位置を移動させる。これにより、仮想空間内で進退不可状態になったことを適切に判定できるとともに、進退不可状態になった場合でも、進退不可状態に陥った場所より少し前の時刻にいた位置等にユーザの位置を移動させることにより進退不可状態から脱出させるため、フラストレーションを軽減することができる。以下、詳細に説明する。
【００３６】
（進退不可状態の判定方法）
図３は、第１の実施形態に係るユーザが進退不可状態になっている例を示す図である。図示する例は、周囲が境界または障害物など（例えば、壁など）で囲まれた狭い凹形状の場所に入ってしまい進退不可状態になっている例を示している。符号ＲＹが示す領域は、仮想空間内の境界または障害物などで囲まれた領域を示している。ユーザは、この領域内では移動できるが、領域外へは、移動できないように制限されている。符号Ｕ１は、時刻ｔ１のユーザの位置を示している。符号Ｕ２は、時刻ｔ１から所定時間経過後の時刻ｔ２のユーザの位置を示している。ユーザは、コントローラ２０を操作して移動の指示を行うものの、実際は矢印に示す移動（符号Ｕ１の示すユーザの位置から符号Ｕ２の示すユーザの位置までの移動）しかできず、この凹形状の場所から脱出できていない。
【００３７】
図４は、時刻ｔ１から時刻ｔ２までにユーザが行った移動操作の操作量を示す図である。図示する例は、時刻ｔ１から時刻ｔ２までにユーザが行った移動操作に対して、境界や障害物などがなければ（移動が制限されない状態であれば）移動できた軌跡を示している。この境界や障害物などがなければ移動できた軌跡の長さが、時刻ｔ１から時刻ｔ２までの「操作した分の移動距離」（すなわち、操作量）に相当する。例えば、移動距離の値は、１回の移動操作で移動する距離と時刻ｔ１から時刻ｔ２までの操作回数との乗算によって求めることができる。
【００３８】
また、図５は、図４に示す軌跡のうち実際にユーザが移動できた部分を示す図である。図示する例では、図４に示す軌跡のうち実際にユーザが移動できた部分を矢印Ｙ１、Ｙ２、Ｙ３で示している。図６は、実際にユーザが移動できた軌跡（矢印Ｙ１＋矢印Ｙ２＋矢印Ｙ３）を示す図である。実際にユーザが移動できた軌跡（矢印Ｙ１＋矢印Ｙ２＋矢印Ｙ３）の長さが時刻ｔ１から時刻ｔ２までの「実際の移動距離」に相当する。例えば、「実際の移動距離」は、表示制御装置３０が時刻ｔ１から時刻ｔ２までに受け付けた移動操作ごとに、仮想空間内で実際に移動させた距離（境界や障害物など制限を考慮して、移動させることが可能であった距離）を積算することによって求めることができる。
【００３９】
例えば、表示制御装置３０は、「実際の移動距離」が閾値Ａ以下であり（図６参照）、且つ「操作した分の移動距離」が閾値Ｂ以上であり（図４参照）、且つ「操作した分の移動距離」に対する「実際の移動距離」が閾値Ｃ以下である場合（図５参照）、進退不可状態であると判定する。閾値Ａは、ほとんど移動できていないと判定する際の移動距離の上限値として予め設定された値である。閾値Ｂは、進退不可状態を判定する基準となる最低操作回数に相当する操作した分の移動距離として予め設定された値である。閾値Ｃは、操作した割には移動できていないと判定する基準として予め設定された値である。つまり、表示制御装置３０は、ある程度以上操作したのに、その割に移動できていないと判定した場合に、進退不可状態であると判定する。なお、上記の閾値は、仮想空間内の状況や１回の移動操作で移動する距離などに基づいて任意に定めることができる。また、上記の閾値は、後から変更可能であってもよく、ユーザが任意に設定できるようにしてもよい。
【００４０】
（表示システムの構成）
次に、図７及び図８を参照して、表示システム１の構成について説明する。図７は、第１の実施形態に係る表示システム１が備える各装置のハードウェア構成の一例を示すブロック図である。また、図８は、第１の実施形態に係る表示制御装置３０の構成の一例を示すブロック図である。図７に示すＨＭＤ１０は、センサ１１と、表示部１２とを備えている。センサ１１は、ＨＭＤ１０が装着されているユーザの頭部の動きを検知するセンサである。例えば、センサ１１は、物体の角度、角速度、角加速度等を検知するジャイロセンサである。なお、センサ１１は、ジャイロセンサに限られるものではなく、加速度センサ、傾斜センサ、地磁気センサ等であってもよいし、それらの組み合わせであってもよい。
【００４１】
表示部１２は、表示制御装置３０から出力される画像を表示するディスプレイであり、例えば、液晶ディスプレイパネル、有機ＥＬ（ＥｌｅｃｔｒｏＬｕｍｉｎｅｓｃｅｎｃｅ）ディスプレイパネルなどを含んで構成される。例えば、表示部１２は、ＶＲコンテンツによる仮想空間におけるユーザの位置（すなわち、視点位置）から見える視界画像を表示する。なお、表示部１２は、両眼視差を利用した立体視画像（右目用画像及び左目用画像）を表示可能なディスプレイであってもよい。
【００４２】
表示制御装置３０は、入出力ＩＦ（Ｉｎｔｅｒｆａｃｅ）３１と、記憶部３２と、ＣＰＵ３３とを備えている。入出力ＩＦ３１は、ＨＭＤ１０とコントローラ２０とのそれぞれと接続可能な接続端子を含んで構成される。例えば図８に示すように、入出力ＩＦ３１は、機能構成として、ＨＭＤ入出力部３１１と、コントローラ入力部３１２と、音出力部３１３とを備えている。ＨＭＤ入出力部３１１は、ＨＭＤ１０への画像出力と、ＨＭＤ１０が有するセンサ１１のセンサ出力の入力とを行う。コントローラ入力部３１２は、コントローラ２０に対する移動操作や回転操作などの操作入力を示す操作入力信号を受け付ける。また、音出力部３１３は、音声出力端子を含んで構成されてもよく、外部に有線または無線で接続されるスピーカに音声信号を出力してもよい。なお、外部装置としてのスピーカは、ＨＭＤ１０に内蔵されてもよい。また、音出力部３１３にスピーカが含まれてもよい。
【００４３】
記憶部３２は、例えば、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ-Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ-Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などを含み、ＶＲコンテンツによる仮想空間データなどを記憶する。仮想空間データには、仮想空間内の境界や障害物のデータ、各種オブジェクトのデータ、画像データなどが含まれる。これらのデータは、仮想空間に定義されている座標値と関連付けられており、仮想空間内を移動するユーザの位置との位置関係がわかるようになっている。
【００４４】
なお、記憶部３２は、少なくとも一部が表示制御装置３０とは別の記憶装置として構成されてもよい。例えば、記憶部３２に記憶されるデータの少なくとも一部は、有線または無線通信で接続される外部の記憶装置、またはインターネットを介して接続されるサーバ装置に記憶されてもよい。
【００４５】
ＣＰＵ３３は、表示制御装置３０が備える各部を制御する制御中枢として機能する。例えば、ＣＰＵ３３は、記憶部３２に記憶されたＶＲコンテンツによる仮想空間データ内を移動するための制御プログラムを実行することで、図８に示す制御部３３０が備える各部の機能を実行する。例えば、制御部３３０は、操作検出部３３１と、動き検出部３３２と、変位指示部３３３と、変位制御部３３４と、画像生成部３３５と、状態判定部３３６と、特定状態制御部３３７とを備えている。
【００４６】
操作検出部３３１は、コントローラ入力部３１２に入力された操作入力信号を取得し、取得した操作入力信号に基づいてコントローラ２０に対する操作入力を検出する。例えば、操作検出部３３１は、仮想空間内のユーザの位置（すなわち、視点位置）を変位させるための移動操作や回転操作などの操作入力を検出する。
【００４７】
動き検出部３３２は、ＨＭＤ入出力部３１１に入力されたＨＭＤ１０のセンサ出力に基づいて、ＨＭＤ１０が装着されたユーザの頭部の動きを検出する。具体的には、動き検出部３３２は、ユーザの頭部（視線位置からの視線方向）の動きとして、上下左右方向への動き（ピッチ方向またはヨー方向への動き）や、傾ける動き（ロール方向への動き）などを検出する。
【００４８】
変位指示部３３３は、操作検出部３３１が検出したコントローラ２０に対する操作入力に基づいて、仮想空間内のユーザの位置（すなわち、視点位置）を変位させる変位指示を生成する。例えば、変位指示部３３３は、１回の移動操作の操作入力に対しては、１回分の移動指示（前進または後退の指示）を生成し、変位制御部３３４へ受け渡す。また、変位指示部３３３は、１回の回転操作の操作入力に対しては、１回分の回転変位指示（左回転または右回転の指示）を生成し、変位制御部３３４へ受け渡す。
【００４９】
変位制御部３３４は、変位指示部３３３が生成した変位指示に基づいて、仮想空間内のユーザの位置（すなわち、視点位置）を変位させる。例えば、変位制御部３３４は、変位指示部３３３から移動指示を受け取った場合、１回分の前進の移動指示であれば、１回分の移動距離を算出し、算出した移動距離の分、現在のユーザの位置から前進させる。また、変位制御部３３４は、変位指示部３３３から移動指示を受け取った場合、１回分の後退の移動指示であれば、１回分の移動距離を算出し、算出した移動距離の分、現在のユーザの位置から後退させる。このとき、変位制御部３３４は、１回分の移動距離を算出する場合、境界や障害物などとの接触判定を行った上で決定する。例えば、変位制御部３３４は、まず現在位置から予め設定された１回分の移動距離を変位させた場合に、変位を妨げる境界や障害物などがあるか否か（すなわち、境界や障害物などと接触するか否か）を判定する。変位を妨げる境界や障害物などがない（接触しない）と判定された場合には、変位制御部３３４は、現在位置から１回分の移動指示（前進または後退の指示）に基づいて、当該移動指示に対応する移動距離（予め設定された１回分の移動距離）を変位（前進または後退）させる。一方、変位を妨げる境界や障害物などがある（接触する）と判定された場合には、変位制御部３３４は、境界や障害物などとの接触を考慮して、１回分の移動指示（前進または後退の指示）に対応する移動距離（予め設定された１回分の距離）よりも接触するまでの距離に短縮した移動距離（移動させない場合もある）に決定する。
【００５０】
また、変位制御部３３４は、変位指示部３３３から回転変位指示を受け取った場合も同様に、境界や障害物などがあるか否かによって回転角変位量を決定する。変位制御部３３４は、まず現在位置から予め設定された１回分の回転角変位量を変位させた場合に、変位を妨げる境界や障害物などがあるか否か（すなわち、境界や障害物などと接触するか否か）を判定する。変位を妨げる境界や障害物などがない（接触しない）と判定された場合には、変位制御部３３４は、現在位置から１回分の回転変位指示（左回転または右回転の指示）に基づいて、当該回転変位指示に対応する回転角変位量（予め設定された１回分の回転角変位量）を変位（左回転または右回転）させる。一方、変位を妨げる境界や障害物などがある（接触する）と判定された場合には、変位制御部３３４は、境界や障害物などとの接触を考慮して、１回分の回転変位指示（左回転または右回転の指示）に対応する回転角変位量（予め設定された１回分の回転角変位量）よりも接触するまでの回転角変位量に短縮した回転角変位量（回転させない場合もある）に決定する。
【００５１】
画像生成部３３５は、記憶部３２に記憶されている仮想空間データに基づいて、ユーザの位置（すなわち、視点位置）から見える視界に対応する画像（視界画像）を生成する。例えば、画像生成部３３５は、変位制御部３３４の制御に応じて、ユーザの位置が移動や回転変位した場合、当該移動や回転変位に応じて視界を変更した画像（視界画像）を生成する。そして、画像生成部３３５は、生成した画像（視界画像）を、入出力ＩＦ３１（ＨＭＤ入出力部３１１）を介してＨＭＤ１０へ出力する。
【００５２】
状態判定部３３６は、操作検出部３３１が検出した操作入力に基づく操作量と、変位指示部３３３による指示に基づいて変位させた変位量とに基づいて、仮想空間内で進退不可状態にあることを判定する。例えば、状態判定部３３６は、操作検出部３３１が検出した操作入力に基づく移動距離と、変位指示部３３３による指示に基づいて移動させた実際の移動距離とに基づいて、仮想空間内で進退不可状態にあることを判定する。
【００５３】
具体的には、図３〜図６を参照して説明したように、状態判定部３３６は、時刻ｔ１から時刻ｔ２までの「操作した分の移動距離」と「実際の移動距離」とに基づいて、進退不可状態にあるか否かを判定する。例えば、状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であり（図６参照）、且つ「操作した分の移動距離」が閾値Ｂ以上であり（図４参照）、且つ「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下である場合（図５参照）、進退不可状態であると判定する。
【００５４】
例えば、状態判定部３３６は、変位指示部３３３による指示に基づく操作した分の移動距離（或いは、移動操作の回数）の履歴と、変位制御部３３４が移動させた実際の移動距離の履歴とを、少なくとも所定の期間（判定に必要な期間）記憶部３２に記憶させておく。そして、状態判定部３３６は、これらの履歴情報に基づいて進退不可状態の判定処理を所定のタイミングで繰り返し実行する。所定のタイミングとは、一定時間毎（予め設定された時間間隔）でのタイミングでもよいし、操作入力が行われる毎のタイミングでもよい。
【００５５】
特定状態制御部３３７は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、変位指示部３３３による指示によらず（すなわち、ユーザの操作入力がなくとも）、ユーザの位置（すなわち、視点位置）を現在の位置とは異なる所定の位置へ移動（ジャンプ）させる。例えば、特定状態制御部３３７は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、進退不可状態から脱出するか否か（所定の位置への移動を行うか否か）をユーザが選択可能な選択メニューをＨＭＤ１０の表示部１２に表示させるように画像生成部３３５に指示する。これにより、画像生成部３３５は、上記選択メニューの画像を生成し、入出力ＩＦ３１を介してＨＭＤ１０の表示部１２に表示させる。ユーザの操作（例えば、コントローラ２０による操作）により、進退不可状態から脱出すること（所定の位置への移動を行うこと）が選択された場合、ユーザの位置（すなわち、視点位置）を所定の位置へ移動させる。
【００５６】
ここで、上記所定の位置とは、例えば、現在より少し前の時刻にいた位置であって、進退不可状態に陥る前の位置である。例えば、特定状態制御部３３７は、進退不可状態と判定した場合、判定に用いた判定時間（例えば、図３〜６に示す時刻ｔ１から時刻ｔ２の時間）より予め設定された時間分遡った時刻の位置へユーザの位置を移動させてもよい。なお、所定の位置とは、進退不可状態と判定された判定期間の最初の位置から予め設定された操作回数分戻した位置であってもよいし、当該最初の位置から予め設定された方向及び距離へ離れた位置であってもよい。また、所定の位置とは、仮想空間内のユーザが移動可能な領域のいずれであってもよく、例えば、スタート地点、ホーム地点、セーブ地点（ユーザの活動状況を保存可能な地点）などであってもよい。
【００５７】
なお、特定状態制御部３３７は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、ユーザが選択可能な選択メニューを表示させることなく（すなわち、ユーザの確認をとらずに）、ユーザの位置（すなわち、視点位置）を所定の位置へ移動させてもよい。
【００５８】
（表示制御装置３０の処理例）
次に、図９を参照して、表示制御装置３０が仮想空間内でユーザの位置（すなわち、視点位置）を変位させる変位処理の動作について説明する。図９は、第１の実施形態に係る変位処理の一例を示すフローチャートである。
【００５９】
（ステップＳ１０１）操作検出部３３１は、コントローラ入力部３１２に入力された操作入力信号に基づいてコントローラ２０に対するユーザの操作入力を検出すると、ステップＳ１０３の処理に進む。
【００６０】
（ステップＳ１０３）変位指示部３３３は、操作検出部３３１が検出したコントローラ２０に対する操作入力に基づいて、仮想空間内のユーザの位置（すなわち、視点位置）を変位させる変位指示を生成する。例えば、変位指示部３３３は、１回の移動操作の操作入力に対しては、１回分の移動指示（前進または後退の指示）を生成し、変位制御部３３４へ受け渡す。また、変位指示部３３３は、１回の回転操作の操作入力に対しては、１回分の回転変位指示（左回転または右回転の指示）を生成し、変位制御部３３４へ受け渡す。そして、ステップＳ１０５の処理に進む。
【００６１】
（ステップＳ１０５）変位制御部３３４は、まず現在位置から予め設定された１回分の変位指示に対応する変位量（１回分の移動距離または１回分の回転角変位量）を変位させた場合に、変位を妨げる境界や障害物などがあるか否か（すなわち、境界や障害物などと接触するか否か）を判定する。変位を妨げる境界や障害物などがないと判定された場合（ＮＯ）、ステップＳ１０７の処理に進む。一方、変位を妨げる境界や障害物などがあると判定された場合（ＮＯ）、ステップＳ１０９の処理に進む。
【００６２】
（ステップＳ１０７）変位制御部３３４は、変位を妨げる境界や障害物などが無いため、変位指示に対応する変位量（移動距離または回転角変位量）を算出する。例えば、変位制御部３３４は、１回分の変位指示に対応する１回分の変位量（予め設定された１回分の移動距離または回転角変位量）を算出する。そして、ステップＳ１１１の処理に進む。
【００６３】
（ステップＳ１０９）変位制御部３３４は、変位を妨げる境界や障害物などがあるため、変位指示に対して障害物を考慮した変位量（移動距離または回転角変位量）を算出する。例えば、変位制御部３３４は、１回分の変位指示に対応する１回分の変位量（予め設定された１回分の移動距離または回転角変位量）よりも境界や障害物などに接触するまでの短縮した変位量（移動距離または回転角変位量）を算出する。そして、ステップＳ１１１の処理に進む。
【００６４】
（ステップＳ１１１）変位制御部３３４は、ステップＳ１０７またはステップＳ１０９において算出した変位量に基づいて、仮想空間内のユーザの位置（すなわち、視点位置）を操作内容に応じた方向（前進方向または後退方向、左回転または右回転など）へ変位（移動または回転変位）させる。つまり、変位を妨げる境界や障害物などが無い場合には、変位制御部３３４は、現在位置から１回分の変位量（移動距離または回転角変位量）を変位させる。一方、変位を妨げる境界や障害物などがある場合には、変位制御部３３４は境界や障害物などに接触するまでの短縮した変位量（移動距離または回転角変位量）を変位させる。
【００６５】
（第１の実施形態の状態判定処理）
次に、図１０を参照して、表示制御装置３０が仮想空間内でユーザが進退不可状態にあるか否かを判定する状態判定処理の動作について説明する。図１０は、第１の実施形態に係る状態判定処理の一例を示すフローチャートである。例えば、この状態判定処理は、一定時間毎（予め設定された時間間隔）に実行される。
【００６６】
（ステップＳ２０１）状態判定部３３６は、図６に示す時刻ｔ１から時刻ｔ２までの「実際の移動距離」を算出する。例えば、時刻ｔ２は、状態判定処理を開始する時刻である。時刻ｔ１は、時刻ｔ２より予め設定された時間遡った時刻である。例えば、この時刻ｔ１と時刻ｔ２との間隔は、この状態判定処理を実行する時間間隔に対応する。なお、時刻ｔ１と時刻ｔ２との間隔は、当該時間間隔より短い時間間隔であってもよいし、長い時間間隔であってもよい。そして、ステップＳ２０３の処理に進む。
【００６７】
（ステップＳ２０３）状態判定部３３６は、ステップＳ２０１で算出した「実際の移動距離」が閾値Ａ以下であるか否かを判定する。状態判定部３３６は、「実際の移動距離」が閾値Ａ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であると判定した場合（ＹＥＳ）、ステップＳ２０５の処理に進む。
【００６８】
（ステップＳ２０５）状態判定部３３６は、図４に示す時刻ｔ１から時刻ｔ２までの「操作した分の移動距離」を算出する。そして、ステップＳ２０７の処理に進む。
【００６９】
（ステップＳ２０７）状態判定部３３６は、ステップＳ２０５で算出した「操作した分の移動距離」が閾値Ｂ以上であるか否かを判定する。状態判定部３３６は、「操作した分の移動距離」が閾値Ｂ以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「操作した分の移動距離」が閾値Ｂ以上であると判定した場合（ＹＥＳ）、ステップＳ２０９の処理に進む。
【００７０】
（ステップＳ２０９）状態判定部３３６は、ステップＳ２０５で算出した「操作した分の移動距離」とステップＳ２０１で算出した「実際の移動距離」とに基づいて、「操作した分の移動距離」に対する「実際の移動距離」の割合を算出する。そして、ステップＳ２１１の処理に進む。
【００７１】
（ステップＳ２１１）状態判定部３３６は、ステップＳ２０９で算出した「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下であるか否かを判定する。状態判定部３３６は、「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下であると判定した場合（ＹＥＳ）、ステップＳ２１３の処理に進む。
【００７２】
（ステップＳ２１３）状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であり、且つ「操作した分の移動距離」が閾値Ｂ以上であり、且つ「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下であるため、進退不可状態にあると判定し、処理を終了する。
【００７３】
（脱出処理）
次に、図１１を参照して、表示制御装置３０が進退不可状態にあると判定した場合に実行する脱出処理の動作について説明する。図１１は、第１の実施形態に係る脱出処理の一例を示すフローチャートである。
【００７４】
（ステップＳ２５１）特定状態制御部３３７は、状態判定部３３６により進退不可状態にあると判定されたか否かを判定する。進退不可状態にあると判定されていない場合には（ＮＯ）、特定状態制御部３３７は、脱出処理の必要がないため処理を終了する。一方、進退不可状態にあると判定された場合（ＹＥＳ）、特定状態制御部３３７は、ステップＳ２５３の処理に進む。
【００７５】
（ステップＳ２５３）特定状態制御部３３７は、進退不可状態から脱出するか否か（所定の位置への移動を行うか否か）の選択メニューを、ＨＭＤ１０の表示部１２に表示させる。具体的には、特定状態制御部３３７は、上記選択メニューをＨＭＤ１０の表示部１２に表示させるように画像生成部３３５に指示する。これにより、画像生成部３３５は、上記選択メニューの画像を生成し、入出力ＩＦ３１を介してＨＭＤ１０の表示部１２に表示させる。図１２は、選択メニューの表示例を示す図である。ユーザは、コントローラ２０で操作することにより、脱出するか（はい）、或いは脱出が不要であるか（いいえ）を選択することができる。そして、ステップＳ２５５の処理に進む。
【００７６】
（ステップＳ２５５）特定状態制御部３３７は、操作検出部３３１が検出した操作入力に基づいて、ユーザにより進退不可状態から脱出することが選択されたか否かを判定する。特定状態制御部３３７は、進退不可状態から脱出しないことが選択されたと判定した場合（ＮＯ）、脱出処理の必要がないため処理を終了する。一方、特定状態制御部３３７は、進退不可状態から脱出することが選択されたと判定した場合（ＹＥＳ）、ステップＳ２５７の処理に進む。
【００７７】
（ステップＳ２５７）特定状態制御部３３７は、進退不可状態から脱出することが選択されたため、ユーザの位置（すなわち、視点位置）を所定の位置（進退不可状態に陥った場所より少し前の時刻にいた位置）へ移動（ジャンプ）させる。
【００７８】
なお、図１１に示す脱出処理において、ステップＳ２５３及びステップＳ２５５の処理を省略してもよい。つまり、特定状態制御部３３７は、状態判定部３３６により進退不可状態にあると判定された場合、ユーザの意思を確認することなく、ユーザの位置（すなわち、視点位置）を所定の位置へ移動させて、進退不可状態から脱出させてもよい。
【００７９】
以上説明してきたように、第１の実施形態によれば、表示制御装置３０は、ユーザの位置（すなわち、視点位置）を仮想空間内で変位させるための操作入力を検出する操作検出部３３１と、操作検出部３３１が検出した操作入力に基づいてユーザの位置（すなわち、視点位置）を変位させる指示をする変位指示部３３３と、操作検出部３３１が検出した操作入力に基づく操作量と、変位指示部３３３による指示に基づいて変位させたユーザの位置（すなわち、視点位置）の変位量とに基づいて、仮想空間内で進退不可状態（特定の状態の一例）にあることを判定する状態判定部３３６と、を備えている。
【００８０】
これにより、表示制御装置３０は、ユーザの位置（すなわち、視点位置）を変位させるための操作量と実際に変位した変位量との差に基づいて、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合にその状態であることを適切に判定できる。
【００８１】
例えば、操作検出部３３１は、仮想空間内でユーザの位置（すなわち、視点位置）を移動させるための移動操作の操作入力を検出する。そして、状態判定部３３６は、操作検出部３３１が検出した操作入力に基づく移動操作量（操作した分の移動距離）と、変位指示部３３３による指示に基づいて移動させたユーザの位置（すなわち、視点位置）の移動量（実際の移動距離）とに基づいて、仮想空間内で進退不可状態にあることを判定する。
【００８２】
これにより、表示制御装置３０は、ユーザの位置（すなわち、視点位置）を移動させるための移動操作量（操作した分の移動距離）と実際に移動した移動量（実際の移動距離）との差に基づいて、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合にその状態であることを適切に判定できる。
【００８３】
また、表示制御装置３０は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、ユーザの位置（すなわち、視点位置）を変位させるユーザの操作入力がなくとも（つまり、変位指示部３３３による指示によらず）、ユーザの位置（すなわち、視点位置）を現在の位置とは異なる所定の位置（例えば、進退不可状態に陥った場所より少し前の時刻にいた位置）へ移動させる特定状態制御部３３７を備えている。
【００８４】
これにより、表示制御装置３０は、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合に、ユーザの位置（すなわち、視点位置）を変位させる操作なしに、進退不可状態から脱出させることができる。よって、表示制御装置３０は、ユーザが進退不可状態になった場合のフラストレーションを軽減することができる。
【００８５】
例えば、特定状態制御部３３７は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、現在の位置とは異なる所定の位置への移動を行うか否かをユーザが選択可能な選択メニューをＨＭＤ１０の表示部１２に表示させる。そして、特定状態制御部３３７は、上記所定の位置への移動を行うことがユーザの操作によって選択された場合、ユーザの位置（すなわち、視点位置）を上記所定の位置へ移動させる。
【００８６】
これにより、表示制御装置３０は、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合に、選択メニューから選択するだけの簡単な操作のみで、進退不可状態から脱出させることができる。また、この場合、表示制御装置３０は、ユーザの意思を確認したうえで、進退不可状態から脱出させることができる。よって、表示制御装置３０は、ユーザが進退不可状態になった場合のフラストレーションを軽減することができる。
【００８７】
なお、表示制御装置３０は、選択メニューの表示に代えて、音声ガイダンスによって脱出する方法を案内してもよい。例えば、表示制御装置３０は、「ここでは、身動きが取れません。少し前にいた場所に戻りますか？」という音声ガイダンスを出力した後、ユーザが許諾を示す音声コマンド（例えば、「はい」、「ＯＫ」など）を発話した場合、ユーザの位置（すなわち、視点位置）を上記所定の位置へ移動させてもよい。例えば、発話の検出は、表示制御装置３０が、ユーザの発話を検出する発話検出部と、発話検出部から検出する発話の中から予め設定された語句を検出する語句検出部とを備えることにより行うことができる。
【００８８】
例えば、特定状態制御部３３７は、状態判定部３３６により仮想空間内で進退不可状態にあると判定された場合、上記所定の位置への移動を行うか否かをユーザに問い合わせる音声ガイダンス（音声案内）を音出力部３１３から出力させてもよい。そして、特定状態制御部３３７は、上記語句検出部が音声ガイダンスに対応する発話の中から検出された語句が、上記所定の位置への移動を行うことの許諾を示す語句（例えば、「はい」、「ＯＫ」など）であると判定した場合、ユーザの位置（すなわち、視点位置）を上記所定の位置へ移動させてもよい。一方、特定状態制御部３３７は、上記語句検出部が音声ガイダンスに対応する発話の中から検出された語句が、上記所定の位置への移動を行うことの許諾しないことを示す語句（例えば、「いいえ」など）であると判定した場合、ユーザの位置（すなわち、視点位置）を上記所定の位置へは移動させず、そのままの位置とする。なお、ユーザの発話を検出する発話検出部と発話の中から予め設定された語句を検出する語句検出部の構成については、後述する第４の実施形態（図２０参照）で説明する。
【００８９】
これにより、表示制御装置３０は、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合に、音声ガイダンスに対して予め設定された音声コマンドを応答するだけで、進退不可状態から脱出させることができる。また、この場合も、表示制御装置３０は、ユーザの意思を確認したうえで、進退不可状態から脱出させることができる。よって、表示制御装置３０は、ユーザが進退不可状態になった場合のフラストレーションを軽減することができる。
【００９０】
［第２の実施形態］
次に、本発明の第２の実施形態について説明する。
第２の実施形態に係る表示システム１の基本的な構成は、図７及び図８に示す第１の実施形態で説明した構成と同様であるため、その説明を省略する。第２の実施形態は、第１の実施形態に対して進退不可状態の判定方法が異なる。具体的には、第１の実施形態では、移動操作において「操作した分の移動距離」と「実際の移動距離」とに基づいて進退不可状態を判定したが、第２の実施形態では、回転操作において「操作した分の回転角変位量」と「実際の回転角変位量」とに基づいて進退不可状態を判定する。
【００９１】
図１３〜図１６を参照して、第２の実施形態に係る進退不可状態の判定処理について説明する。図１３は、第２の実施形態に係るユーザが進退不可状態になっている例を示す図である。図示する例は、図３の例と同様に、周囲が境界または障害物など（例えば、壁など）で囲まれた狭い凹形状の場所に入ってしまい進退不可状態になっている例を示している。符号ＲＹが示す領域は、仮想空間内の境界または障害物などで囲まれた領域を示している。ユーザは、この領域内では移動できるが、領域外へは、移動できないように制限されている。符号Ｕ１は、時刻ｔ１のユーザの位置を示している。符号Ｕ２は、時刻ｔ１から所定時間経過後の時刻ｔ２のユーザの位置を示している。ユーザは、コントローラ２０を操作して左右方向への回転の指示を行うものの、実際は矢印に示す回転角変位（符号Ｕ１の示すユーザの位置から符号Ｕ２の示すユーザの位置までの移動）しかできず、この凹形状の場所から脱出できていない（より具体的には、脱出できる方向を向くことができていない）。
【００９２】
図１４は、時刻ｔ１から時刻ｔ２までにユーザが行った回転操作の操作量を示す図である。図示する例は、時刻ｔ１から時刻ｔ２までにユーザが行った回転操作に対して、境界や障害物などがなければ（回転が制限されない状態であれば）回転できた軌跡を示している。例えば、１回の回転操作での回転角変位量（設定角速度）を１０°（１０度）とした場合、時刻ｔ１から時刻ｔ２まで順に、左回転操作を６回（左６０°）、右回転操作を２回（右２０°）、左回転操作を９回（左９０°）、右回転操作を２回（右２０°）、左回転操作を１８回（左１８０°）、右回転操作を９回（右９０°）行ったことを示している。この場合、境界や障害物などがなければ回転できた回転角変位量を回転方向に関係なく積算したものが時刻ｔ１から時刻ｔ２までの「操作した分の回転角変位量」（すなわち、操作量）に相当する。ここでは、「操作した分の回転角変位量」は、上記それぞれの回転操作の回転角変位量を積算した４６０°となる。
【００９３】
また、図１５は、図１４に示すそれぞれの回転操作の回転角変位量のうち実際にユーザが回転できた部分を示す図である。図示する例では、図１４に示す回転操作の回転角変位量のうち実際にユーザが回転できた部分を太字の矢印Ｙ２１、Ｙ２２、Ｙ２３、Ｙ２４、Ｙ２５で示している。図１６は、実際にユーザが回転できた回転角変位量（矢印Ｙ２１、Ｙ２２、Ｙ２３、Ｙ２４、Ｙ２５）を示す図である。図示する例では、各回転操作において実際に回転できた部分の回転角変位量は、矢印Ｙ２１、Ｙ２２、Ｙ２３、Ｙ２４、Ｙ２５の順に、０°、右２０°、左２０°、右２０°、左２０°、右６０°であったことを示している。実際にユーザが回転できた回転角変位量のそれぞれを回転方向に関係なく積算したものが時刻ｔ１から時刻ｔ２までの「実際の回転角変位量」に相当する。ここでは、「実際の回転角変位量」は、１４０°となる。
【００９４】
例えば、表示制御装置３０は、「実際の回転角変位量」が閾値Ｄ以下であり（図１６参照）、且つ「操作した分の回転角変位量」が閾値Ｅ以上であり（図１４参照）、且つ「操作した分の回転角変位量」に対する「実際の回転角変位量」が閾値Ｆ以下である場合（図１５参照）、進退不可状態であると判定する。閾値Ｄは、ほとんど回転できていないと判定する際の回転角変位量の上限値として予め設定された値である。閾値Ｅは、進退不可状態を判定する基準となる最低操作回数に相当する操作した分の回転角変位量として予め設定された値である。閾値Ｆは、操作した割には回転できていないと判定する基準として予め設定された値である。つまり、表示制御装置３０は、ある程度以上操作したのに、その割には回転できていないと判定した場合に、進退不可状態であると判定する。なお、上記の閾値は、仮想空間内の状況や１回の回転操作で回転する回転角変位量（設定角速度）などに基づいて任意に定めることができる。また、上記の閾値は、後から変更可能であってもよく、ユーザが任意に設定できるようにしてもよい。
【００９５】
例えば、状態判定部３３６は、操作検出部３３１が検出した操作入力に基づく回転角変位量と、変位指示部３３３による指示に基づいて回転させた実際の回転角変位量とに基づいて、仮想空間内で進退不可状態にあることを判定する。
【００９６】
具体的には、図１３〜図１６を参照して説明したように、状態判定部３３６は、時刻ｔ１から時刻ｔ２までの「操作した分の回転角変位量」と「実際の回転角変位量」とに基づいて、進退不可状態にあるか否かを判定する。例えば、状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下であり（図１６参照）、且つ「操作した分の回転角変位量」が閾値Ｅ以上であり（図１４参照）、且つ「操作した分の回転角変位量」に対する「実際の回転角変位量」の割合が閾値Ｆ以下である場合（図１５参照）、進退不可状態であると判定する。
【００９７】
例えば、状態判定部３３６は、変位指示部３３３による指示に基づく操作した分の回転角変位量（或いは、回転操作の回数）の履歴と、変位制御部３３４が移動させた実際の回転角変位量の履歴とを、少なくとも所定の期間（判定に必要な期間）記憶部３２に記憶させておく。そして、状態判定部３３６は、これらの履歴情報に基づいて進退不可状態の判定処理を所定のタイミングで繰り返し実行する。第１の実施形態と同様に、所定のタイミングとは、一定時間毎（予め設定された時間間隔）でのタイミングでもよいし、操作入力が行われる毎のタイミングでもよい。
【００９８】
（第２の実施形態の状態判定処理）
次に、図１７を参照して、表示制御装置３０が仮想空間内でユーザが進退不可状態にあるか否かを判定する状態判定処理の動作について説明する。図１７は、第２の実施形態に係る状態判定処理の一例を示すフローチャートである。例えば、この状態判定処理は、一定時間毎（予め設定された時間間隔）に実行される。
【００９９】
（ステップＳ３０１）状態判定部３３６は、図１６に示す時刻ｔ１から時刻ｔ２までの「実際の回転角変位量」を算出する。例えば、時刻ｔ２は、状態判定処理を開始する時刻である。時刻ｔ１は、時刻ｔ２より予め設定された時間遡った時刻である。例えば、この時刻ｔ１と時刻ｔ２との間隔は、この状態判定処理を実行する時間間隔に対応する。なお、時刻ｔ１と時刻ｔ２との間隔は、当該時間間隔より短い時間間隔であってもよいし、長い時間間隔であってもよい。そして、ステップＳ３０３の処理に進む。
【０１００】
（ステップＳ３０３）状態判定部３３６は、ステップＳ２０１で算出した「実際の回転角変位量」が閾値Ｄ以下であるか否かを判定する。状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下であると判定した場合（ＹＥＳ）、ステップＳ３０５の処理に進む。
【０１０１】
（ステップＳ３０５）状態判定部３３６は、図１４に示す時刻ｔ１から時刻ｔ２までの「操作した分の回転角変位量」を算出する。そして、ステップＳ３０７の処理に進む。
【０１０２】
（ステップＳ３０７）状態判定部３３６は、ステップＳ３０５で算出した「操作した分の回転角変位量」が閾値Ｅ以上であるか否かを判定する。状態判定部３３６は、「操作した分の回転角変位量」が閾値Ｅ以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「操作した分の回転角変位量」が閾値Ｅ以上であると判定した場合（ＹＥＳ）、ステップＳ３０９の処理に進む。
【０１０３】
（ステップＳ３０９）状態判定部３３６は、ステップＳ３０５で算出した「操作した分の回転角変位量」とステップＳ３０１で算出した「実際の回転角変位量」とに基づいて、「操作した分の回転角変位量」に対する「実際の回転角変位量」の割合を算出する。そして、ステップＳ３１１の処理に進む。
【０１０４】
（ステップＳ３１１）状態判定部３３６は、ステップＳ３０９で算出した「操作した分の回転角変位量」に対する「実際の回転角変位量」の割合が閾値Ｆ以下であるか否かを判定する。状態判定部３３６は、「操作した分の回転角変位量」に対する「実際の回転角変位量」の割合が閾値Ｆ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「操作した分の回転角変位量」に対する「実際の回転角変位量」の割合が閾値Ｆ以下であると判定した場合（ＹＥＳ）、ステップＳ３１３の処理に進む。
【０１０５】
（ステップＳ３１３）状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下であり、且つ「操作した分の回転角変位量」が閾値Ｅ以上であり、且つ「操作した分の移動距離」に対する「実際の回転角変位量」の割合が閾値Ｆ以下であるため、進退不可状態にあると判定し、処理を終了する。
【０１０６】
以上説明してきたように、第２の実施形態によれば、表示制御装置３０の状態判定部３３６は、操作検出部３３１が検出した回転操作の操作入力に基づく回転操作量（操作した分の回転角変位量）と、変位指示部３３３による指示に基づいて回転させたユーザの位置（すなわち、視点位置）の回転量（実際の回転角変位量）とに基づいて、仮想空間内で進退不可状態にあることを判定する。
【０１０７】
これにより、表示制御装置３０は、ユーザの位置（すなわち、視点位置）を移動させるための回転操作量（操作した分の回転角変位量）と実際に回転した回転量（実際の回転角変位量）との差に基づいて、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合にその状態であることを適切に判定できる。
【０１０８】
なお、第１及び第２の実施形態を組み合わせることで、表示制御装置３０は、移動操作及び回転操作の両方に基づいて進退不可状態にあることを判定してもよい。例えば、表示制御装置３０は、操作検出部３３１が検出した操作入力に基づく移動操作量（操作した分の移動距離）及び回転操作量（操作した分の回転角変位量）と、変位指示部３３３による指示に基づいて変位させたユーザの位置（すなわち、視点位置）の移動量（実際の移動距離）及び回転量（実際の回転角変位量）とに基づいて、仮想空間内で進退不可状態にあることを判定してもよい。
【０１０９】
［第３の実施形態］
次に、本発明の第３の実施形態について説明する。
第１及び第２の実施形態では、「操作した分の変位量（移動距離または回転角変位量）」と「実際の変位量（移動距離または回転角変位量）」とに基づいて進退不可状態であることを判定したが、第３の実施形態では、さらにユーザの頭部の動きを考慮して判定する例を説明する。
【０１１０】
ユーザが必要以上にきょろきょろしているようであれば、進退不可状態に陥っている可能性がより高くなる。そこで、状態判定部３３６は、動き検出部３３２が検出した頭部の動き（ＨＭＤ１０が装着されたユーザの頭部の動き）の動き量に基づいて、一定時間あたりに頭部が動いた回数を検出する。例えば、頭部が動いたと判定する判定基準は、図１に示すＸ軸、Ｙ軸、Ｚ軸それぞれについて回転角変位量（回転角度）の閾値（動き判定閾値）として設定されている。そして、状態判定部３３６は、検出された頭部の動きの動きベクトルのＸ、Ｙ、Ｚ軸成分のいずれかの値が閾値（動き判定閾値）を超えるごとに、頭部が１回動いたと判定する。
【０１１１】
例えば、ＶＲコンテンツの内容ごとに区切られたステージについて、各ステージで期待されるユーザアクションから、一定時間あたりの頭部を動かす回数の閾値（動き回数閾値）が設定されている。例えば敵と戦うアクションゲームであれば動き回数閾値が大きく設定され、外国の風景を見ながら進むような観光コンテンツであれば動き回数閾値が小さく設定される。状態判定部３３６は、一定時間あたりに頭部の動き回数（頭部が上下左右（斜めも含む）に動いた回数）を計測し、計測値がそのステージの動き回数閾値を超えているか否かを判定する。そして、状態判定部３３６は、上記計測値が動き回数閾値を超えていると判定した場合には、頭部の動きが頻繁である（必要以上にきょろきょろしている）と判定する。一方、状態判定部３３６は、上記計測値が動き回数閾値を超えていないと判定した場合には、頭部の動きが通常の動きである（必要以上にきょろきょろしていない）と判定する。なお、動き回数閾値は、後から変更可能であってもよく、ユーザが任意に設定できるようにしてもよい。
【０１１２】
この頭部の動き量の判定結果を第１の実施形態に適用すると、状態判定部３３６は、移動操作をしている割に移動できておらず、且つユーザが必要以上にきょろきょろしている場合に、進退不可状態にあると判定することができる。また、頭部の動き量の判定結果を第２の実施形態に適用すると、状態判定部３３６は、回転操作をしている割に回転できておらず、且つユーザが必要以上にきょろきょろしている場合に、進退不可状態にあると判定することができる。
【０１１３】
（第３の実施形態の状態判定処理）
ここでは、頭部の動き量の判定結果を第１の実施形態に適用したときの状態判定処理の動作について図１８を参照して説明する。図１８は、第３の実施形態に係る状態判定処理の一例を示すフローチャートである。この図に示すステップＳ４０１〜Ｓ４１１、Ｓ４１５の各処理は、図１０に示すステップＳ２０１〜Ｓ２１１、Ｓ２１３の処理と同様であり、その説明を省略する。
【０１１４】
（ステップＳ４１３）状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であり、且つ「操作した分の移動距離」が閾値Ｂ以上であり、且つ「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下であった場合、一定時間あたりに頭部の動き回数の計測値を取得し、ステップＳ４１５の処理に進む。
【０１１５】
（ステップＳ４１５）状態判定部３３６は、ステップＳ４１３で取得した頭部の動き回数が動き回数閾値（閾値Ｈ）以上であるか否かを判定する。状態判定部３３６は、頭部の動き回数が動き回数閾値（閾値Ｈ）以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、頭部の動き回数が動き回数閾値（閾値Ｈ）以上であると判定した場合（ＹＥＳ）、ステップＳ４１７の処理に進み、進退不可状態にあると判定し、処理を終了する。
【０１１６】
なお、頭部の動き量の判定結果を第２の実施形態に適用したときの状態判定処理は、図１８のステップＳ４０１〜Ｓ４１１の各処理を、図１７のステップＳ３０１〜Ｓ３１１の各処理とすればよい。さらには、第１、第２及び第３の実施形態を組み合わせることで、移動操作及び回転操作をしている割に移動及び回転できておらず、且つユーザが必要以上にきょろきょろしている場合に、進退不可状態にあると判定することもできる。
【０１１７】
以上説明してきたように、第３の実施形態によれば、表示制御装置３０の状態判定部３３６は、操作検出部３３１が検出した操作入力に基づく操作量（操作した分の変位量（移動距離または回転角変位量））と、変位指示部３３３による指示に基づいて変位させたユーザの位置（すなわち、視点位置）の変位量（実際の変位量（移動距離または回転角変位量））と、動き検出部３３２が検出したユーザの頭部の動き量（例えば、頭部を動かす回数）とに基づいて、仮想空間内で進退不可状態にあることを判定する。
【０１１８】
これにより、表示制御装置３０は、操作量（操作した分の変位量（移動距離または回転角変位量））と、ユーザの位置（すなわち、視点位置）の変位量（実際の変位量（移動距離または回転角変位量））とに加えて、ユーザが必要以上にきょろきょろしているか否かを考慮して進退不可状態か否かを判定するため、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合にその状態であることを適切に判定できる。
【０１１９】
［第４の実施形態］
次に、本発明の第４の実施形態について説明する。
第４の実施形態では、ユーザの発話の内容に基づいて進退不可状態を判定する例を説明する。図１９及び図２０を参照して、第４の実施形態に係る表示システム１Ａの構成について説明する。図１９は、第４の実施形態に係る表示システム１Ａのハードウェア構成の一例を示すブロック図である。また、図２０は、第４の実施形態に係る表示制御装置３０Ａの構成の一例を示すブロック図である。
【０１２０】
図１９に示す表示システム１Ａでは、ＨＭＤ１０Ａが音声を収音するマイク１３をさらに備えている点が、図７に示すＨＭＤ１０と異なる。また、表示制御装置３０Ａの入出力ＩＦ３１Ａは、ＨＭＤ入出力部３１１及びコントローラ入力部３１２に加えてマイク入力部３１４を備えている。マイク入力部３１４には、マイク１３で収音された音声の音声入力信号（マイク１３の出力信号）が入力される。また、表示制御装置３０Ａの制御部３３Ａは、発話検出部３３８と、語句検出部３３９とをさらに備えている点が、図７に示す制御部３３と異なる。
【０１２１】
発話検出部３３８は、マイク入力部３１４に入力された音声入力信号に基づいて、ユーザの発話を検出する。例えば、発話検出部３３８は、音声信号のうち人間の発話に相当する周波数成分の音声信号の区間を検出する。
【０１２２】
語句検出部３３９は、発話検出部３３８が検出する発話の中から予め設定された語句（キーワード）を検出する。例えば、語句検出部３３９は、発話検出部３３８が検出する発話に相当する周波数成分の音声信号の区間において、さらに周波数成分を解析することにより予め設定された語句を抽出する。予め設定された語句とは、進退不可に関する語句であり、進退不可状態にあるユーザが発話しそうな語句（例えば、「進まない」、「動かない」、「おかしい」など）である。この予め設定された語句は、表示制御装置３０Ａの記憶部３２Ａに語句データ３２２として記憶されている。
【０１２３】
状態判定部３３６は、語句検出部３３９の検出結果に基づいて、仮想空間内で進退不可状態にあることを判定する。例えば、状態判定部３３６は、語句検出部３３９の検出結果に基づいて、一定時間毎に、進退不可に関する語句（進退不可状態にあるユーザが発話しそうな語句）が音声入力された回数の和を算出する。そして、状態判定部３３６は、一定時間あたりの進退不可に関する音声入力の回数の和が閾値Ｊ以上と判定した場合、進退不可状態にあると判定する。
【０１２４】
図２１は、第４の実施形態に係る判定処理のイメージを示す図である。図示する例では、時刻ｔ１から時刻ｔ２までの間の音声入力のうち、「動かない」、「進まないよ」、「おかしいな」の３語が進退不可に関する語句として予め設定されている（その他の語句は、進退不可に関する語句の対象外）。状態判定部３３６は、時刻ｔ１から時刻ｔ２までの間の音声入力の中から進退不可に関する音声入力の回数の和を検出し（ここでは、３回）、進退不可に関する音声入力の回数の和が閾値Ｊ以上であるか否かにより、進退不可状態であるか否かを判定する。なお、閾値Ｊは、進退不可状態を判定する基準となる進退不可に関する音声入力の最低回数として予め設定された値である。この閾値Ｊは、判定時間（時刻ｔ１から時刻ｔ２まで）の長さなどによって任意に定めることができる。また、閾値Ｊは、後から変更可能であってもよく、ユーザが任意に設定できるようにしてもよい。
【０１２５】
また、状態判定部３３６は、このユーザの発話の内容（語句）に基づいて進退不可状態を判定する処理を第１、第２、及び第３の実施形態に適用してもよい。すなわち、状態判定部３３６は、第１、第２、及び第３の実施形態において、さらにユーザの発話の内容（語句）に基づいて進退不可状態を判定してもよい。例えば、状態判定部３３６は、第１の実施形態に適用して、移動操作をしている割に移動できておらず、且つ進退不可に関する音声入力の回数（ユーザの特定の発話の回数）が多い場合に、進退不可状態にあると判定することができる。
【０１２６】
（第４の実施形態の状態判定処理）
図２２は、第４の実施形態に係る状態判定処理の一例を示すフローチャートである。この図に示すステップＳ５０１〜Ｓ５１１、Ｓ５１５の各処理は、図１０に示すステップＳ２０１〜Ｓ２１１、Ｓ２１３の処理と同様であり、その説明を省略する。
【０１２７】
（ステップＳ５１３）状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であり、且つ「操作した分の移動距離」が閾値Ｂ以上であり、且つ「操作した分の移動距離」に対する「実際の移動距離」の割合が閾値Ｃ以下であった場合、一定時間あたりの進退不可に関する音声入力の回数の和を算出し、ステップＳ５１５の処理に進む。
【０１２８】
（ステップＳ５１５）状態判定部３３６は、ステップＳ５１３で算出した進退不可に関する音声入力の回数の和が閾値Ｊ以上であるか否かを判定する。状態判定部３３６は、進退不可に関する音声入力の回数の和が閾値Ｊ以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、進退不可に関する音声入力の回数の和が閾値Ｊ以上であると判定した場合（ＹＥＳ）、ステップＳ５１７の処理に進み、進退不可状態にあると判定し、処理を終了する。
【０１２９】
なお、頭部の動き量の判定結果を第２の実施形態に適用したときの状態判定処理は、図２２のステップＳ５０１〜Ｓ５１１の各処理を、図１７のステップＳ３０１〜Ｓ３１１の各処理とすればよい。この場合、状態判定部３３６は、回転操作をしている割に回転できておらず、且つ進退不可に関する音声入力の回数（ユーザの特定の発話の回数）が多い場合に、進退不可状態にあると判定することができる。さらには、第１、第２及び第３の実施形態を組み合わせることで、移動操作及び回転操作をしている割に移動及び回転できておらず、且つ、ユーザが必要以上にきょろきょろしており、且つ、進退不可に関する音声入力の回数（ユーザの特定の発話の回数）が多い場合に、進退不可状態にあると判定することもできる。
【０１３０】
また、状態判定部３３６は、一定時間あたりの実際の変位量（移動距離または回転変位量）と進退不可に関する音声入力の回数の和とに基づいて、進退不可状態にあることを判定してもよい。例えば、状態判定部３３６は、一定時間において（時刻ｔ１から時刻ｔ２まで）、実際の移動距離が閾値Ａ以下であり（図６参照）、且つ、実際の回転角変位量が閾値Ｄ以下であり（図６参照）、且つ進退不可に関する音声入力の回数の和が閾値Ｊ以上である（図２１参照）と判定した場合、進退不可状態にあると判定してもよい。この状態判定処理の動作について、図２３を参照して説明する。
【０１３１】
図２３は、第４の実施形態に係る状態判定処理の別の例を示すフローチャートである。この図２３に示すステップＳ６０１〜Ｓ６０３の処理は、図１０に示すステップＳ２０１〜Ｓ２０３の処理と同様である。また、図２３に示すステップＳ６０５〜Ｓ６０７の処理は、図１７に示すステップＳ３０１〜Ｓ３０３の処理と同様である。また、図２３に示すステップＳ６１３〜Ｓ６１７の処理は、図２２に示すステップＳ５１３〜Ｓ５１７の処理と同様である。
【０１３２】
（ステップＳ６０１）状態判定部３３６は、図６に示す時刻ｔ１から時刻ｔ２までの「実際の移動距離」を算出する。そして、ステップＳ６０３の処理に進む。
（ステップＳ６０３）状態判定部３３６は、ステップＳ６０１で算出した「実際の移動距離」が閾値Ａ以下であるか否かを判定する。状態判定部３３６は、「実際の移動距離」が閾値Ａ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であると判定した場合（ＹＥＳ）、ステップＳ６０５の処理に進む。
【０１３３】
（ステップＳ６０５）状態判定部３３６は、図１６に示す時刻ｔ１から時刻ｔ２までの「実際の回転角変位量」を算出する。そして、ステップＳ６０７の処理に進む。
（ステップＳ６０７）状態判定部３３６は、ステップＳ６０５で算出した「実際の回転角変位量」が閾値Ｄ以下であるか否かを判定する。状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、「実際の回転角変位量」が閾値Ｄ以下であると判定した場合（ＹＥＳ）、ステップＳ６１３の処理に進む。
【０１３４】
（ステップＳ６１３）状態判定部３３６は、「実際の移動距離」が閾値Ａ以下であり、且つ「実際の回転角変位量」が閾値Ｄ以下であった場合、一定時間あたりの進退不可に関する音声入力の回数の和を算出し、ステップＳ６１５の処理に進む。
【０１３５】
（ステップＳ６１５）状態判定部３３６は、ステップＳ６１３で算出した進退不可に関する音声入力の回数の和が閾値Ｊ以上であるか否かを判定する。状態判定部３３６は、進退不可に関する音声入力の回数の和が閾値Ｊ以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、進退不可に関する音声入力の回数の和が閾値Ｊ以上であると判定した場合（ＹＥＳ）、ステップＳ６１７の処理に進み、進退不可状態にあると判定し、処理を終了する。
【０１３６】
以上説明してきたように、第４の実施形態によれば、表示制御装置３０Ａは、ユーザの発話を検出する発話検出部３３８と、発話検出部３３８が検出する発話の中から予め設定された語句（例えば、進退不可に関する語句）を検出する語句検出部３３９とを備えている。そして、状態判定部３３６は、さらに、語句検出部３３９の検出結果に基づいて、仮想空間内で進退不可状態にあることを判定する。
【０１３７】
これにより、表示制御装置３０Ａは、操作量（操作した分の変位量（移動距離または回転角変位量））と、ユーザの位置（すなわち、視点位置）の変位量（実際の変位量（移動距離または回転角変位量））とに加えて、ユーザが予め設定された語句（例えば、進退不可に関する語句）を発話しているか否かを考慮して進退不可状態か否かを判定するため、仮想空間内でユーザが前進することも後退することも困難な進退不可状態になった場合にその状態であることを適切に判定できる。
【０１３８】
なお、表示制御装置３０Ａは、ユーザが予め設定された語句（例えば、進退不可に関する語句）を発話しているか否かのみに基づいて、進退不可状態か否かを判定してもよい。
【０１３９】
［第５の実施形態］
次に、本発明の第５の実施形態について説明する。
第５の実施形態では、ユーザの頭部の動きと特定のアクションがなされることに基づいて進退不可状態を判定する例を説明する。具体的には、状態判定部３３６は、ユーザが上（例えば、天井）を見上げた状態で特定のアクションを行ったことに基づいて進退不可状態であることを判定する。
【０１４０】
ユーザが上（例えば、天井）を見上げた状態の判定は、ユーザの頭部の動きに基づいて判定される。図２４は、第５の実施形態に係るユーザの頭部の動きの判定の説明図である。ユーザが上（例えば、天井）を見上げたか否かは、水平方向に対する視線方向の回転角変位量が閾値Ｋ以上であるか否かにより判定される。このときの回転角変位量は、Ｘ軸を中心とした上下方向（ピッチ方向）への回転の回転角変位量である。閾値Ｋは、ユーザが上（例えば、天井）を見上げたと判定する最小の回転角変位量として予め設定されている。状態判定部３３６は、動き検出部３３２が検出した頭部の動き（ＨＭＤ１０が装着されたユーザの頭部の動き）の動き方向と動き量に基づいて、上下方向（ピッチ方向）への回転角変位量を算出し、算出した回転角変位量が閾値Ｋ以上である場合、ユーザが上（例えば、天井）を見上げた状態にあると判定する。
【０１４１】
また、特定のアクションとは、コントローラ２０に対する特定の操作である。この特定の操作は、例えば一つの操作ボタンに対して一回操作するような基本的な操作よりは複雑な操作であり、予め設定された操作である。例えば、特定の操作は、コントローラ２０の任意のボタンを所定回数以上連打することであってもよいし、或いは、コントローラ２０の十字ボタン２１の左ボタンと右ボタンとを同時に押下する等であってもよく、任意に定めることができる。
【０１４２】
また、特定のアクションとは、ユーザが特定の発話を行うことであってもよい。特定の発話とは、ユーザが進退不可状態にある場合に発話する可能性が高い発話内容であり、予め設定された発話内容である。具体的には、特定の発話とは、例えば「助けて」、「出られない」、「出たい」等であってもよい。
【０１４３】
特定のアクションが特定の操作である場合は、図７及び図８に示す表示システム１の構成と、図１９及び図２０に示す表示システム１Ａの構成とのいずれも適用できる。また、特定のアクションがユーザの特定の発話である場合は、図１９及び図２０に示す表示システム１Ａの構成を適用できる。
【０１４４】
（第５の実施形態の状態判定処理）
図２５は、第５の実施形態に係る状態判定処理の一例を示すフローチャートである。
（ステップＳ７０１）状態判定部３３６は、動き検出部３３２が検出した頭部の動き（ＨＭＤ１０が装着されたユーザの頭部の動き）の動き方向と動き量に基づいて、上下方向（ピッチ方向）への回転角変位量を算出する。そして、ステップＳ７０３の処理に進む。
【０１４５】
（ステップＳ７０３）状態判定部３３６は、ステップＳ７０１で算出した上下方向（ピッチ方向）への回転角変位量が閾値Ｋ以上であるか否かを判定する。状態判定部３３６は、閾値Ｋ以上ではないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、閾値Ｋ以上であると判定した場合（ＹＥＳ）、ステップＳ７０５の処理に進む。
【０１４６】
（ステップＳ７０５）状態判定部３３６は、特定のアクションがなされたか否かを判定する。特定のアクションが特定の操作である場合、状態判定部３３６は、操作検出部３３１が検出した操作入力に基づいて、特定のアクション（特定の操作）がなされたか否かを判定する。また、特定のアクションがユーザの特定の発話である場合、状態判定部３３６は、語句検出部３３９の検出結果に基づいて、特定のアクション（ユーザの特定の発話）がなされたか否かを判定する。状態判定部３３６は、特定のアクションがなされていないと判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、特定のアクションがなされたと判定した場合（ＹＥＳ）、ステップＳ７０７の処理に進む。
【０１４７】
（ステップＳ７０７）状態判定部３３６は、ユーザが上（例えば、天井）を見上げた状態（上下方向（ピッチ方向）への回転角変位量が閾値Ｋ以上）であり、且つ特定のアクションがなされたと判定したため、ユーザが移動操作及び回転操作をあきらめていると判断し、進退不可状態にあると判定する。
【０１４８】
以上説明してきたように、第５の実施形態によれば、表示制御装置３０（または、表示制御装置３０Ａ）の状態判定部３３６は、動き検出部３３２がユーザの頭部が上を見上げる動きを検出し、且つユーザが特定のアクションを行ったことに基づいて、仮想空間内で進退不可状態にあることを判定する。例えば、状態判定部３３６は、操作検出部３３１がユーザによる特定の操作入力を検出した場合、前記特定のアクションを行ったと判定する。
【０１４９】
これにより、表示制御装置３０（または、表示制御装置３０Ａ）は、ユーザが上（例えば、天井）を見上げた状態で特定の操作をした場合、ユーザが通常の操作を行えない状態にあることの意思表示の一つと判断して進退不可状態にあると判定するため、仮想空間内でユーザが前進することも後退することも困難な進退不可状態にあることを適切に判定できる。
【０１５０】
また、表示制御装置３０Ａは、ユーザの発話を検出する発話検出部３３８と、発話検出部３３８から検出する発話の中から語句を検出する語句検出部３３９と、を備えている。この場合、表示制御装置３０Ａの状態判定部３３６が、語句検出部３３９が特定の語句を検出した場合、特定のアクションを行ったと判定してもよい。
【０１５１】
これにより、表示制御装置３０Ａは、ユーザが上（例えば、天井）を見上げた状態で特定の発話（例えば、「助けて」）をした場合、ユーザが通常の操作を行えない状態にあることの意思表示の一つと判断して進退不可状態にあることを判定するため、仮想空間内でユーザが前進することも後退することも困難な進退不可状態にあることを適切に判定できる。
【０１５２】
［第６の実施形態］
次に、本発明の第６の実施形態について説明する。
第６の実施形態では、ユーザが頻繁にコントローラ２０を見ながら操作している場合に進退不可状態にあると判定する例を説明する。この第６の実施形態では、図７及び図８に示す表示システム１の構成と、図１９及び図２０に示す表示システム１Ａの構成とのいずれも適用できる。ただし、コントローラ２０が自身の動きを検知可能なセンサを備え、動き検出部３３２がコントローラ入力部３１２を介してコントローラ２０の動きの検知結果を取得してコントローラ２０の動きを検出する構成が付加される。
【０１５３】
図２６は、第６の実施形態に係るユーザがコントローラ２０に視線を向けている状態の一例を示す図である。図示する例では、ユーザが頭部を下方へ向けてコントローラ２０を持つ手元の方を見ている状態を表している。なお、ユーザがコントローラ２０に視線を向けている状態としては、ユーザが頭部を下方へ向ける場合だけではなく、コントローラ２０を持つ手を眼前の方へ上げる場合もある。いずれの場合であっても、仮想空間におけるユーザの視界に対応する実空間の範囲にコントローラ２０が存在する状態となる。
【０１５４】
上述したように、コントローラ２０は、コントローラ２０の動きを検知可能なセンサを備えている。そして、表示制御装置３０（３０Ａ）は、コントローラ２０の動きに基づいて、実空間におけるコントローラ２０の位置に対応する仮想空間内の位置にコントローラ画像を加えた画像（仮想空間の視界画像にコントローラ画像を重畳した画像）をＨＭＤ１０に表示させる。コントローラ画像は、コントローラ２０に相当するものとして予め用意されている画像であって、実際のコントローラ２０の外観を模した画像である。なお、コントローラ画像は、実際のコントローラ２０の外観を簡略化した画像でもよい。
【０１５５】
例えば、画像生成部３３５は、変位制御部３３４の制御に応じて仮想空間におけるユーザの視線方向の視界画像を生成するとともに、動き検出部３３２により検出されたコントローラ２０の動きに基づいて、仮想空間におけるユーザの視界に対応する実空間の範囲にコントローラ２０が存在する場合、実空間のコントローラ２０の位置に対応する仮想空間の位置にコントローラ画像を表示させる。
【０１５６】
図２７は、ユーザがコントローラ２０に視線を向けている状態のときにＨＮＤ１０に表示される視界画像の一例を示す図である。図示する例では、視界画像ＧＲには、コントローラ画像ＣＧが表示されている。なお、破線で囲まれた領域ＨＲは、ユーザがコントローラ２０に視線を向けている状態であると判定するための予め設定された領域である。例えば、視界画像ＧＲにおいて領域ＨＲ内にコントローラ画像ＣＧが入っている場合に、ユーザがコントローラ２０に視線を向けている状態であると判定される。なお、判定方法としては、領域ＨＲ内にコントローラ画像ＣＧのすべてが入っているか否かとしてもよいし、或いは、領域ＨＲ内にコントローラ画像ＣＧの一部が入っているか否かとしてもよい。また、判定方法としては、コントローラ画像ＣＧ内の特定の位置（例えは、中央の位置）が領域ＨＲ内に入っているか否かとしてもよい。領域ＨＲの大きさは、各判定方法によって、任意に設定することができる。
【０１５７】
領域ＨＲ内にコントローラ画像ＣＧが入っている場合、仮想空間においてユーザの手元にあるコントローラ２０に視線を向けて操作していることになるため、操作がわからない状態か、或いは思った通りの操作ができていない状態であると考えられる。そこで、状態判定部３３６は、一定時間内に領域ＨＲ内にコントローラ画像ＣＧが入っている時間（すなわち、コントローラ２０に視線を向けている時間）が閾値Ｌ以上である場合に、進退不可状態にあると判定する。閾値Ｌは、進退不可状態にあると判定する際の、一定時間内にコントローラ２０に視線を向けている時間の割合の閾値として予め設定された値である。
【０１５８】
（第６の実施形態の状態判定処理）
図２８は、第６の実施形態に係る状態判定処理の一例を示すフローチャートである。
（ステップＳ８０１）状態判定部３３６は、一定時間内に領域ＨＲ内にコントローラ画像ＣＧが入っている時間を検出する。そして、ステップＳ８０３の処理に進む。
【０１５９】
（ステップＳ８０３）状態判定部３３６は、一定時間内に領域ＨＲ内にコントローラ画像ＣＧが入っている時間が閾値Ｌ以上であるか否かを判定する。状態判定部３３６は、閾値Ｌ未満であると判定した場合（ＮＯ）、進退不可状態と判定しないため処理を終了する。一方、状態判定部３３６は、閾値Ｌ以上であると判定した場合（ＹＥＳ）、ステップＳ８０５の処理に進む。
【０１６０】
（ステップＳ８０５）状態判定部３３６は、一定時間内に領域ＨＲ内にコントローラ画像ＣＧが入っている時間（すなわち、コントローラ２０に視線を向けている時間）が閾値Ｌ以上であるため、進退不可招待にあることを判定する。
【０１６１】
以上説明してきたように、第６の実施形態によれば、表示制御装置３０（３０Ａ）の画像生成部３３５（表示制御部の一例）は、動き検出部３３２の検出結果に基づいて、ＨＭＤ１０（表示部１２）に表示させるユーザの位置（すなわち、視点位置）からの画像を当該ユーザの頭部の向きに応じた画像に変更するとともに、当該ユーザの操作入力が行われるコントローラ２０（操作部の一例）に対応するコントローラ画像（操作部画像の一例）を、現実空間における当該ユーザの視点位置とコントローラ２０との位置関係に応じてＨＭＤ１０（表示部１２）に表示させる。そして、状態判定部３３６は、ＨＭＤ１０（表示部１２）に表示された画像内の所定の範囲にコントローラ画像が一定時間以上表示されたことに基づいて、仮想空間内で進退不可状態にあることを判定する。
【０１６２】
これにより、表示制御装置３０（または、表示制御装置３０Ａ）は、コントローラ２０に視線を向けている時間が長い場合には、思った通りの操作ができていない状態であるものと判断して進退不可状態にあると判定するため、仮想空間内でユーザが前進することも後退することも困難な進退不可状態にあることを適切に判定できる。
【０１６３】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。例えば、上述の第１〜６の実施形態において説明した各構成は、任意に組み合わせてもよい。
【０１６４】
なお、上記実施形態ではＨＭＤ１０の表示部１２に仮想空間の表示（例えば、ＶＲコンテンツの表示）を行う例を説明したが、第１〜第４の実施形態については、ＨＭＤ１０に限られるものではなく、その他の表示装置の表示部に仮想空間の表示（例えば、ＶＲコンテンツの表示）を行ってもよい。そのほかの表示装置とは、例えば、テレビジョン装置、パーソナルコンピュータ用のモニター装置、表示部を備えたゲーム機、スマートフォン、タブレット端末などである。
【０１６５】
なお、上述した実施形態における表示制御装置３０（３０Ａ）の一部、例えば、制御部３３０（３３０Ａ）をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、表示制御装置３０（３０Ａ）に内蔵されたコンピュータシステムであって、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
また、上述した実施形態における表示制御装置３０（３０Ａ）の一部、例えば、制御部３３０（３３０Ａ）を、ＬＳＩ（Ｌａｒｇｅ  Ｓｃａｌｅ  Ｉｎｔｅｇｒａｔｉｏｎ）等の集積回路として実現してもよい。また、例えば、制御部３３０（３３０Ａ）のそれぞれを集積してプロセッサ化してもよい。また、集積回路化の手法はＬＳＩに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりＬＳＩに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【符号の説明】
【０１６６】
１，１Ａ  表示システム、１０  ＨＭＤ、１１  センサ、１２  表示部、２０  コントローラ、３０，３０Ａ  表示制御装置、３１，３１Ａ  入出力ＩＦ、３１１  ＨＭＤ入出力部、３１２  コントローラ入力部、３１３  音出力部、３１４  マイク入力部、３２，３２Ａ  記憶部、３３  ＣＰＵ、３３０，３３０Ａ  制御部、３３１  操作検出部、３３２  動き検出部、３３３  変位指示部、３３４  変位制御部、３３５  画像生成部、３３６  状態判定部、３３７  特定状態制御部、３３８  発話検出部、３３９  語句検出部
【図１】
2019185358.tif 000003
【図２】
2019185358.tif 000004
【図３】
2019185358.tif 000005
【図４】
2019185358.tif 000006
【図５】
2019185358.tif 000007
【図６】
2019185358.tif 000008
【図７】
2019185358.tif 000009
【図８】
2019185358.tif 000010
【図９】
2019185358.tif 000011
【図１０】
2019185358.tif 000012
【図１１】
2019185358.tif 000013
【図１２】
2019185358.tif 000014
【図１３】
2019185358.tif 000015
【図１４】
2019185358.tif 000016
【図１５】
2019185358.tif 000017
【図１６】
2019185358.tif 000018
【図１７】
2019185358.tif 000019
【図１８】
2019185358.tif 000020
【図１９】
2019185358.tif 000021
【図２０】
2019185358.tif 000022
【図２１】
2019185358.tif 000023
【図２２】
2019185358.tif 000024
【図２３】
2019185358.tif 000025
【図２４】
2019185358.tif 000026
【図２５】
2019185358.tif 000027
【図２６】
2019185358.tif 000028
【図２７】
2019185358.tif 000029
【図２８】
2019185358.tif 000030