JP7300569B2 - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP7300569B2
JP7300569B2 JP2022550598A JP2022550598A JP7300569B2 JP 7300569 B2 JP7300569 B2 JP 7300569B2 JP 2022550598 A JP2022550598 A JP 2022550598A JP 2022550598 A JP2022550598 A JP 2022550598A JP 7300569 B2 JP7300569 B2 JP 7300569B2
Authority
JP
Japan
Prior art keywords
user
virtual space
movement
change
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022550598A
Other languages
English (en)
Other versions
JPWO2022059730A5 (ja
JPWO2022059730A1 (ja
Inventor
謙一郎 丸山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
YUKIGUMO CO., LTD.
Original Assignee
YUKIGUMO CO., LTD.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by YUKIGUMO CO., LTD. filed Critical YUKIGUMO CO., LTD.
Publication of JPWO2022059730A1 publication Critical patent/JPWO2022059730A1/ja
Publication of JPWO2022059730A5 publication Critical patent/JPWO2022059730A5/ja
Application granted granted Critical
Publication of JP7300569B2 publication Critical patent/JP7300569B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/20Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/00Three-dimensional [3D] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/60Extraction of image or video features relating to illumination properties, e.g. using a reflectance or lighting model
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/90Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2004Aligning objects, relative positioning of parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Signal Processing (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • Optics & Photonics (AREA)
  • Computing Systems (AREA)
  • Geometry (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)

Description

本発明は、情報処理装置、情報処理方法およびプログラムに関する。
特許文献1に記載された仮想現実プログラムに係るゲームシステムは、プレイヤーの視界を覆うようにプレイヤーの頭部に装着される頭部装着型ディスプレイと、プレイヤーの身体的な動きを検出可能な入力受付装置と、コンピュータと、を備える。
特開2019-005564号公報
氏家 弘裕, 多田 充徳, 兵頭 啓一郎, S7-2 頭部運動を伴うHMDでの映像観察によるVR酔い, 人間工学, 2018, 54 巻, Supplement 号, p. S7-2, 2018/07/10
非特許文献1によると、近年のヘッドマウントディスプレイ(以下、HMD)の一般市場への流入により、仮想現実、人工現実感(以下、VR)環境が一般に身近なものになりつつある。一方、時にVR環境での酔い、すなわちVR酔いが生じ得る。本発明は、VR環境におけるVR酔いを防ぐ情報処理装置等を提供することを目的とする。
本発明の実施形態の一側面は、情報処理装置によって例示される。
本情報処理装置は、表示装置によってユーザから視認可能な仮想空間を形成し、
前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段と、
前記取得された情報を基に、前記仮想空間内において前記ユーザが視認する光景を所定の時間の範囲で変化させる画像を前記表示装置に出力する制御手段と、を備える。
本発明の実施形態の他の側面としては、本情報処理装置は、表示装置によってユーザから視認可能な仮想空間を形成し、
前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段と、
前記取得された情報を基に、前記仮想空間内における前記ユーザの視線の移動方向において、移動元よりも移動先が相対的に明るくなるように画像を形成し、前記表示装置に出力する制御手段と、を備える。
本発明の実施形態の他の側面は、上記情報処理装置等の少なくとも1つのコンピュータが実行する情報処理方法によっても例示される。
本発明の実施形態の更なる他の側面は、上記情報処理装置等の少なくとも1つのコンピュータに実行させるためのプログラムによっても例示される。
以上説明したように、本発明は、VR環境におけるVR酔いを防ぐ情報処理装置等を提供することができる。
本発明における情報処理装置のブロック図である。 本発明の実施例1における、ユーザの移動方向の遷移図である。 本発明の実施例1における、ユーザの視点方向の遷移図である。 本発明の実施例1において、出力される画像の遷移図である。 本発明の実施例1において、ユーザが高さ方向に移動方向を変更する例を示す図である。 本発明の実施例2において、ユーザが右に回転した場合の画像出力例を 示す図である。 本発明の実施例2において、ユーザが左に回転した場合の画像出力例を 示す図である。 本発明の実施例1における、処理の一例を示すフローチャートである。 本発明の実施例2における、処理を示すフローチャートである。 本発明の実施例3における、ユーザの移動方向の遷移図である。 本発明の実施例3における、処理の一例を示すフローチャートである。 本発明の実施例4における、ユーザの移動時の座標補間イメージを示す図である。 本発明の実施例4における、ユーザの方向転換時の補間イメージを示す図である。 本発明の実施例4における、処理の一例を示すフローチャートである。
以下、図面に基づいて、本発明の一実施の形態(実施例ともいう)における情報処理装置及び情報処理方法を説明する。
<第1の実施例>
図1~図5及び図8を用いて、第1の実施例(実施例1ともいう)について説明する。
図1は、本実施例における情報処理装置のハードウェア構成を例示するブロック図である。情報処理装置10は、CPU(Central Processing Unit)101と、主記憶部102と、各種インターフェースを通じて接続される入出力部品を有する。CPU101は、主記憶部102に記憶されるプログラムにより情報処理を実行する。
情報処理装置10は、例えば、有線インターフェース(以下、有線I/Fという)103と、無線インターフェース(以下、無線I/Fという)104と、通信インターフェース(以下、通信I/Fという)105と、外部記憶部106と、ヘッドマウントディスプレイ(以下、HMDという)107と、コントローラA108AおよびコントローラB108Bと、を備える。ここで、情報処理装置10は、例えば、パーソナルコンピュータ,ゲーム機器、スマートフォン、携帯情報端末と呼ばれる電子機器である。
CPU101は、制御回路1011を含み、主記憶部102に実行可能に展開されたコンピュータプログラムを実行し、情報処理装置10の機能を提供する。CPU101は、マルチコアであってもよいし、信号処理等を実行する専用プロセッサを含んでもよい。CPU101は、信号処理、積和演算、ベクトル演算、その他の処理を実行する専用のハードウェア回路を含んでもよい。
制御回路1011は、CPUやMPU(Micro Processing Unit)、GPU(Graphics Processing Unit)等の各種プロセッサを含む。制御回路1011は、情報処理装置10全体を制御する機能を有する。
制御回路1011は、情報処理装置10が備える主記憶部102、又は、有線I/F103を経由して接続された外部記憶部106に格納された所定のアプリケーションを実行することにより、HMD107の表示装置1071に仮想空間を提供する。これにより、制御回路1011は、ユーザを3次元仮想空間(VR空間)に没入させるための動作を、HMD107に実施させることができる。
主記憶部102は、CPU101が実行するコンピュータプログラム、CPU101が処理するデータ等を記憶する。主記憶部102は、ROM(Read Only Memory)やRAM(Random Access Memory)など揮発性記憶装置を含んで構成され、CPU101が使用するプログラムや演算パラメータなどの制御用データを一時的に記憶する。主記憶部102は、例えば、主メモリと、読取専用メモリとを含む。主記憶部102はまた、動的ランダムアクセスメモリ(DRAM)および高速キャッシュメモリを含む。動作および使用時、主記憶部102は、処理データが主記憶部102内に記憶されると、CPU101による実行のための命令の少なくとも一部を記憶する。
情報処理装置10は、主記憶部102の他に外部記憶部106を有してもよい。外部記憶部106は、例えば、主記憶部102を補助する記憶領域として使用され、CPU101が実行するコンピュータプログラム、CPU101が処理するデータ等を記憶する。外部記憶部106は、フラッシュメモリ、HDD(Hard Disk Drive)で例示されるディスクドライブなどの不揮発性記憶装置を含む。外部記憶部106は、ユーザの認証プログラムや、各種画像やオブジェクトに関するデータを含むゲームプログラム等を格納する。外部記憶部106には、さらに、各種データを管理するためのテーブルを含むデータベースが構築されていてもよい。
有線インターフェース(以下、有線I/Fという)103は、CPU101と外部記憶部106の間における情報を伝達する。伝達される情報は、例えば、CPU101が実行するコンピュータプログラム、CPU101が処理するデータ等の情報である。有線I/F103は、USB(Universal Serial Bus)端子、DVI(Digital Visual Interface)端子及びHDMI(登録商標)(High-Definition Multimedia Interface)端子等の各種接続端子を含んで構成され、CPU101と外部記憶部106等を接続する。これに限らず、有線I/F103は、CPU101とHMD107、コントローラA108A、コントローラB108Bを接続してもよい。
無線インターフェース(以下、無線I/Fという)104は、CPU101とHMD107、コントローラA108A及びコントローラB108Bを無線で接続し、両者間の情報を伝達する。伝達される情報は、例えば、HMD107に備えられた加速度センサ1072が検知した情報、ユーザがコントローラA108A又はコントローラB108Bに入力した情報、制御回路1011が生成し、HMD107に出力する画像の情報である。これに限らず、無線I/F104は、CPU101と外部記憶部106を無線で接続し、両者間の情報を伝達してもよい。無線I/F104は、例えば、Bluetooth Low Energy (BLE)(登録商標)、無線LAN等である。なお、図1の構成は、情報処理装置10の一例であって、実施例1および後述する実施例2乃至4において、情報処理装置10が図1の構成に限定される訳ではない。例えば、HMD107、コントローラA108A及びコントローラB108Bのいずれか、または、これら総てが有線I/F103を介してCPU101に接続されるものであってもよい。HMD107、コントローラA108A及びコントローラB108Bのいずれかが有線I/F103を介してCPU101に接続されるものであっても、CPU101は、実施例1乃至実施例4に例示した処理を実施できる。
通信インターフェース(以下、通信I/Fという)105は、ネットワークNを介して他の装置とデータを授受する。通信I/F105は、例えば、携帯電話網の基地局と接続可能な端末側の通信装置である。通信I/F105は、無線LAN(Local Area Network)へのインターフェース、Bluetooth(登録商標), Bluetooth Low Energy (BLE) (登録商標)のインターフェースを含んでもよい。
HMD107は、両眼に覆いかぶせるように装着し、目を完全に覆う「非透過型」や「透過型」といったタイプがある。HMD107は、これに限らず、単眼に覆いかぶせるように装着するものであってもよい。本実施例において、HMD107は、表示装置1071及び加速度センサ1072を含む。なお、HMD107に加速度センサ1072を設けずに、HMD107とは独立した加速度センサ1072を設けてもよい。
表示装置1071は、例えば、液晶ディスプレイ、エレクトロルミネッセンスパネル等である。表示装置1071は、信号処理専用のプロセッサとメモリ等に記憶されたプログラムによって形成されてもよい。表示装置1071が専用のハードウェア回路を含んでもよい。実施例1、後述する実施例2乃至4では、HMD107は、情報処理装置10に含まれ、CPU101と連携して仮想空間をユーザに提供する。ただし、実施例1、後述する実施例2乃至4の処理は、ネットワークN上の他の情報処理装置によって実行されてもよい。この場合には、HMD107は、他の情報処理装置と連携して仮想空間をユーザに提供する。本実施例では、表示装置1071はHMD107に備えられているが、表示装置1071は眼鏡を含んでもよい。
表示装置1071は、HMD107を装着したユーザの視界(視野)を完全に覆うよう構成された非透過型の表示装置を備えている。これにより、ユーザは表示装置1071に表示される画像のみを観察する。すなわち、ユーザは、外界の視野を失うため、制御回路1011が生成し、表示装置1071に表示される仮想空間の画像に没入しうる。
加速度センサ1072は、所定の時間の範囲における速度変化(加速度)を測定するセンサである。加速度センサ1072は、リアルタイム(1/80秒ごと)に変化を検知し、検知した情報を無線I/F104を経由してCPU101の制御回路1011に送る。加速度センサ1072は、HMD107の表示装置1071の近傍に搭載され、制御回路1011に通信可能に接続される。加速度センサ1072は、地磁気センサ、加速度センサ、傾きセンサ、角速度(ジャイロ)センサのうち少なくとも1つを含み、ユーザの頭部に装着されたHMD107の各種動きを検出することができる。加速度センサ1072はHMD107に備えられることに限らず、例えば外部に設けられたポジション・トラッキング・カメラ(位置センサ)等で代替されてもよい。
加速度センサ1072は、HMD107に設けられた図示しない複数の検知点の位置や傾きに関する情報を検出する機能を有する。ただし、加速度センサ1072は、HMD107を撮影するポジション・トラッキング・カメラを含むものであってもよい。ポジション・トラッキング・カメラは、HMD107に設けられた図示しない複数の検知点の位置、速度、加速度等を検出する。検知点は、例えば赤外線や可視光を発する発光部である。加速度センサ1072としてのポジション・トラッキング・カメラは、赤外線センサや複数の光学カメラを含む。制御回路1011は、加速度センサ1072からHMD107の位置情報を取得することによって、仮想空間における仮想カメラの位置と、現実空間におけるHMD107を装着したユーザの位置を正確に対応付けることができる。
次に、HMD107の位置や傾き(視軸の向き)に関する情報の取得方法を説明する。HMD107を装着したユーザの頭部の動きに基づくHMD107の位置や傾きに関する情報は、HMD107に搭載される加速度センサ1072で検知可能である。HMD107を装着したユーザの頭部を中心として、3次元座標系(XYZ座標)が規定される。ユーザが直立する垂直方向をY軸、Y軸と直交し表示装置1071の中心とユーザとを結ぶ方向をZ軸、Y軸およびZ軸と直交する方向をX軸とする。
加速度センサ1072は、各軸回りの角度(すなわち、Y軸を軸とした回転を示すヨー角、X軸を軸とした回転を示すピッチ角、Z軸を軸とした回転を示すロール角で決定される傾き)を検知する。加速度センサ1072は、その経時的な変化により、制御回路1011が視野情報を定義(制御)するための角度(傾き)情報データを決定する。
コントローラA108AおよびコントローラB108Bは、ユーザが左右各々の手で保持し、又は、ユーザの左右各々の手に装着した状態で操作を行い、ユーザの指示を入力する機器であり、情報取得手段の一例である。本実施例では、コントローラA108A及びコントローラB108Bの各々が、ユーザの指示を入力する手段としてスティックを備えている。例えば、ユーザがコントローラA108A又はコントローラB108Bのスティックを左側に倒すことにより、ユーザは仮想空間内で自身の体の軸、すなわち視認する方向を左手方向に回転したときの光景を視認する。また、ユーザが、スティックを右側に倒すことにより、ユーザは仮想空間内で体の軸、すなわち視認する方向を右手方向に回転したときの光景を視認する。ユーザによる指示の入力手段は、コントローラのスティックを指で倒すことに限定されず、コントローラがボタンを備えており、ユーザの指がボタンを押すことにより指示を入力する手段でもよい。
本実施例では、ユーザがコントローラA108A及びコントローラB108Bを左右それぞれの手で保持しながら、又は、手に装着しながら操作することを想定しているため、情報処理装置10は2台のコントローラを有している。ただし、コントローラの台数は2台に限定されず、1台のコントローラを両手で保持、又は、両手に装着した状態でユーザが指示を入力してもよい。また、情報処理装置10は、3台以上のコントローラを備え、ユーザの両手以外の部分(例えば両足)でコントローラを保持、又は、装着することによって、ユーザが指示を入力してもよい。コントローラは、タッチパネルディスプレイを備え、ユーザの指がタッチパネルに触れることにより、ユーザが指示を入力する構成でもよい。コントローラは、例えば、ゲーム用コンソールの他、スマートフォン、PDA(Personal Digital Assistant)、タブレット型コンピュータ、ノートPC(Personal Computer)のようなタッチ・ディスプレイを備える携帯型デバイスであってもよい。
次に、第1の実施例における、ユーザの向き、視線及びユーザが視認する光景が遷移する状態を、図2~図4を用いて説明する。
図2は、実施例1における、ユーザが仮想空間内で認識するユーザの移動状態の遷移図である。ここで、移動状態は、ユーザの位置と、ユーザが視認する仮想空間内の方向(光景)で例示される。図2に示したベクトルP1~P8は、ユーザが0度方向(ユーザから見て手前側から奥側、すなわちオブジェクト21の方向)に移動中に、ユーザが90度方向(ユーザから見て右側、すなわちオブジェクト23の方向)を向いた際、所定の時間の範囲における1フレームごとの移動の方向ベクトルを表す。
実施例1では、ユーザが0度(オブジェクト21)方向へ移動中に、90度(オブジェクト23)方向を向いた場合、ユーザがP1からP8へ一度に移動することはない。ユーザは、所定の時間の範囲において、P1,P2,P3・・・P8へと段階的に移動するように、ユーザの視認する仮想空間の光景が変化する。すなわち、ユーザの視認する仮想空間の光景がP1方向の光景からP8方向の光景へと変化する間で、P2~P7方向の光景が、移動の変化段階を補間して生成され、HMD107に出力される。情報処理装置10のCPU101が備える制御回路1011が行うこの補間処理は、仮想空間内でヒトが直進方向(0度方向)に移動中に向きを90度方向に変えるときにヒトに視認される光景の変化が生成される。
図3は、実施例1における、ユーザが仮想空間内で認識する自身の位置の変化とユーザの視点方向の変化の遷移図である。図3に示したベクトルP1~P8は、ユーザが0度方向(ユーザから見て手前側から奥側、すなわちオブジェクト21の方向)に移動中に、ユーザが90度方向(ユーザから見て右側、すなわちオブジェクト23の方向)を向いた際、所定の時間の範囲における1フレームあたりの仮想空間内でのユーザの位置とユーザの視点方向のベクトルを表す。なお、図2のベクトルP1~P8と図3のベクトルP1~P8のそれぞれは、同一のフレームを表している。つまり、図2と図3とにおいて、ベクトルP1~P8により、時間の経過度合い(時系列)が連動していることが例示されている。
図3における、P1からP8にかけてのユーザの視点方向のベクトルに着目する。P1におけるユーザの視点方向が0度方向(ユーザから見て手前側から奥側、すなわちオブジェクト21の方向)であるのに対して、P2におけるユーザの視点方向は一度に90度方向(ユーザから見て右側、すなわちオブジェクト23の方向)を向くように変化する。そして、P3からP8に至るまでユーザの視点方向は90度方向を維持している。従って、図2におけるユーザの移動方向のベクトルP1~P8と、図3におけるユーザの視点方向のベクトルP1~P8とを比較すると、P1とP8は、それぞれ0度方向、90度方向で一致する。しかし、P2~P7は、図2における移動方向が0度より大きく90度より小さいのに対して、図3における視点方向はすべて90度である。すなわち、情報処理装置10(CPU101)は、現実の空間でユーザが向きを右手方向に90度回転したことを認識すると、仮想空間でのユーザ自体の向きを図3のベクトルP2からP8のように、直ちに回転させる。このとき、情報処理装置10(CPU101)は、ユーザの仮想空間内での移動方向をベクトルP1の方向からベクトルP8の方向に変化させる。この場合に、ユーザが視認する仮想空間の方向(すなわち、光景)は、図2のベクトルP1からP8のように徐々に段階的に変化する。この方向の変化(つまり角度の変化)は、当初比較的大きく変化し、徐々に変化の度合いが小さくなっていく。
また、実施例1では、ユーザは、仮想空間内で視認する方向に移動するものとする。90度回転検知された後のユーザの移動量の成分は、図2,図3に例示の通り、当初、例えば、ベクトルP1からP2、PからP3にかけては、ベクトルP1方向の成分が大きく、ベクトルP8方向の成分が小さい。その後、徐々に、ベクトルP1方向の成分が減少し、ベクトルP8方向の成分が増加する。そして、変化の終盤では、ベクトルP8方向の成分が支配的となり、最後に、ユーザは仮想空間内でベクトルP8の成分のみとなり、ユーザは仮想空間内でP8方向に移動するようになるのである。情報処理装置10(CPU101)は、仮想空間でユーザに上記の光景を視認させる。
図4は、実施例1において、加速度センサ1072から得た情報を基に制御回路1011が生成し、HMD107の表示装置1071に出力(表示)する画像の遷移図である。P1~P8は、それぞれHMD107の表示装置1071に出力される画像を表しており、各画像中に記載された矢印は、P1~P8にかけて画像が変化する間に、ユーザが視認する範囲の変化の方向を示している。なお、図2におけるP1~P8、図3におけるP1~P8及び図4におけるP1~P8は、時間の経過度合い(時系列)が連動している。
P1では、ユーザが画像中央に表示されるオブジェクト21方向(0度方向)に向かって進むにつれ、画像中央に表示されるオブジェクト21および画像右側に表示されるオブジェクト22のサイズが徐々に拡大するように見えることを表している。すなわち、放射状の矢印は、ユーザが視認する仮想空間の画角が徐々に狭くなり、視認される光景、つまり視認対象が拡大され、ズームインされていく過程を例示する。
P2では、ユーザはオブジェクト21およびオブジェクト22の方向に移動しつつ、向きが90度方向に変化している。そのため、P1ではユーザが画像中央に視認できたオブジェクト21が画像から消え、P1では画像の中央右側に見えていたオブジェクト22が、画像の中央左側に移動し、P1の場合より拡大したサイズで表示される。このとき、矢印は、ユーザによって視認される仮想空間の光景が左側から右側に流れ、オブジェクト22が徐々に右方向に移動することを例示する。
ベクトルP3の状態では、ユーザは90度の視点方向を維持しながら、オブジェクト22のほぼ正面に移動する。そのため、オブジェクト22は画像のやや中央、かつ、ベクトルP2の状態より拡大したサイズで表示される。このときも、矢印は、ユーザによって視認される仮想空間の光景が左側から右側に流れ、オブジェクト22が徐々に右方向に移動することを例示する。
ベクトルP4の状態では、ユーザは90度の視点方向を維持しながら、オブジェクト22の左側付近、かつ、オブジェクト23の方向に移動する。そのため、画像の右端にP3の場合よりさらに拡大されたサイズのオブジェクト22が表示される。また、画像の左上にオブジェクト23が小さく表示される。このとき、図2のベクトルP4で例示の通り、ユーザは仮想空間で徐々にオブジェクト23に向かう。したがって、図4のベクトルP4の状態では、矢印は、ユーザによって視認される仮想空間の光景が左上から右下側に流れ、オブジェクト22が徐々に後方に移動し、オブジェクト23が徐々に近づくことを例示する。
図4のベクトルP5からP7にかけて、ユーザは90度の視点方向を維持しながら、オブジェクト23のやや左方向に移動する。そのため、オブジェクト23は画像の左上から中央に、かつ、徐々に拡大したサイズで表示される。図4のベクトルのP8状態では、ユーザは90度の視点方向を維持しながら、オブジェクト23のやや左側に接近するように移動するため、オブジェクト23は画像の右側にP7の場合よりも拡大されたサイズで表示される。このとき、ユーザは仮想空間内でベクトルの図2のP8方向に移動するので、図4のベクトルP8の状態では、矢印はユーザの正面で視認される光景が徐々に拡大されることを例示する。
仮に、HMD107が備える表示装置1071に表示される仮想空間内で、ユーザが直進方向(0度方向、すなわちP1方向)に移動中に、移動方向を90度の方向に変える場合であって、P2~P7の補間を行わず、P1からP8へユーザの移動方向を変化させたと想定する。その場合は、図4においてHMD107の表示装置1071に表示される画像は、図4のベクトルP1の状態からP8の状態に一度に変化する。この場合、ユーザの意識下では、P1からP8へ光景が変化する間に、P2~P7へと徐々に光景が変わることを予測している。また、現実の世界で、ユーザが歩行中、自転車、自動車等の乗り物で移動中に、図2、図3のように、進行方向を変化させると、ユーザはP2~P7へと徐々に光景が変わることを経験している。従って、ユーザが仮想空間で図4のベクトルP1の状態からP8の状態に一度に変化したことを認識すると、ユーザの意識または現実世界での経験と、ユーザが仮想空間で視認する光景との間に差異が生まれる。よって、ユーザがVR酔いを生じやすくなると考えられる。
しかし、実施例1の情報処理装置10では、制御回路1011がP1とP8の間に、P2~P7が段階的に変化する光景を補間する。そのため、ユーザの移動方向と意識とが一致した状態を維持できる。従って、実施例1の情報処理装置10を使用することにより、ユーザのVR酔いを抑制することができる。
上記の「所定の時間の範囲」すなわち、P1からP8に変化する時間の範囲は、例えば0.1秒ないし0.3秒に設定される。この範囲は、ヒトが外部からの刺激(例えば視覚刺激や聴覚刺激)に対して反応する速度から決定できる。従って、実施例1に係る情報処理装置10を使用するユーザの移動方向、視線方向及び視認する光景が連動し、ヒトの反応速度に準じて段階的に変化するため、ユーザがVR酔いを引き起こすことを抑制することができる。
更に、上記の「所定の時間の範囲」すなわち、P1からP8に変化する時間の範囲は、例えば略0.2秒に設定される。経験値から、ヒトが外部からの刺激(例えば視覚刺激や聴覚刺激)に対して反応する平均速度は、一般的に約0.2秒であるからである。従って、実施例1に係る情報処理装置10を使用するユーザの移動方向、視線方向及び視認する光景が連動し、ヒトの反応速度の平均値に合わせて段階的に変化する。このように、情報処理装置10が行う補間処理において、適切な加速度と遅延を与えることでユーザによる自律神経の失調を防ぐことができる。詳細には、情報処理装置10は、ユーザの移動および方向転換等の際に「脳が日常的に感じている遅延時間(約0.2秒)」と、「現実世界で日常的に感じている加速度」を与える。これにより、情報処理装置10は、VR空間内での動きや映像の遅延等が「日常生活動作と変わりがない」とユーザの脳に認識させ、自律神経の失調を抑えることによりユーザがVR酔いを引き起こすことを更に抑制することができる。ここで、遅延時間は、ヒトが外部からの刺激に対して応答するときの応答時間ということもできる。なお、遅延時間として約0.2秒は例示であり、遅延時間が約0.2秒に限定される訳ではない。以下、各実施例においても、同様である。
所定の時間の範囲における、ユーザが仮想空間内で移動する角度に着目すると、例えば、図2のP2はユーザが90度方向を向いたときのユーザの移動方向を表す。P1はユーザが90度方向を向く1フレーム前のユーザの移動方向を表す。図2では、P1(0度)からP8(90度)にかけて、両者の中間時点であるP2~P7のベクトル角度の変化度合いが、徐々に小さくなることを表している。これは、同じ半径の球面上に原点からのベクトルの先端が動いているときに、2つのベクトルを与えてその中間のベクトルを補間して求める方法(いわゆる球面線形補間)に基づいて、制御回路1011が画像を生成していることを表す。球面線形補間を行う場合のベクトル方向(角度)は「現在ユーザが進んでいる方向(移動方向)」(ベクトルP1、P2、・・・、P7)と「ユーザが向いている方向(視点方向)」(ベクトルP8)の角度の差に、減衰率(一定割合)を乗じることにより算出される。減衰率が一定である場合、補間がP1、P2、・・・のように進行するにしたがって、補間される角度は徐々に小さくなっていく。
また、実施例1の、図2においてユーザの移動方向について、P1からP2へのベクトルへの角度の変化と、P7からP8へのベクトルへの角度の変化を比較する。図2においてユーザの移動方向がP1(0度)からP2(略35度)へ変化する場合、角度は略35度変化する。これに対し、図2においてユーザの移動方向がP7(略85度)からP8(90度)へ変化する場合、角度は略5度変化する。よって、図2においてユーザの移動方向がP7からP8へ変化する角度は、P1からP2への変化する角度より、緩やかであるといえる。同様にP2からP3,P3からP4・・・P6からP7へ変化する角度は徐々に小さく、緩やかになっていくことが読み取れる。
ここで、所定の時間の範囲におけるP1からP8への変化について、P1からP5にかけての変化を初期の期間部分、P5からP8にかけての変化を終期の期間部分と各々規定する。この場合、制御回路1011は、前記終期の期間部分における前記光景の時間あたりの変化が前記初期の期間部分における前記光景の時間あたりの変化よりも緩やかな変化になるように、仮想空間内で視認できる画像を生成し、HMD107の表示装置1071に段階的に出力するといえる。これによりユーザは、HMD107に表示される仮想空間内で視認する光景の変化が、ヒトが現実の光景を視認する場合の変化と同様であると感じることができる。従って、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうるため、ユーザがVR酔いを引き起こすことを抑制することができる。
更に、実施例1では、P1からP2、P2からP3・・・P7からP8へと時系列が進むにつれて、球面線形補間のベクトル方向が変化する角度は、徐々に小さく、緩やかになっている。従って、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが更に少なく、自然なものとして認識しうるため、ユーザがVR酔いを引き起こすことを更に抑制することができる。
なお、上記図2から図4では、仮想空間を直進中のユーザが右手方向に90度向きを変更する場合に、情報処理装置10がユーザに補間した画像によってユーザに仮想空間で徐々に変化する光景を視認させる処理例を説明した。しかし、情報処理装置10の処理は、直進中のユーザが右手方向に90度向きを変更する場合に限定される訳ではない。すなわち、CPU101は、加速度センサ1072またはコントローラA 108A、コントローラB 108Bから、仮想空間内においてユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得する。この情報は、例えば、直進方向を変更しないで加速度だけを急激に変化させるものも含む。また、この情報は、右手方向に90度に限定されず、左右に様々な角度で向きを変更する場合も含む。また、この情報は、直進移動しないで、左右に様々な角度で向きだけを変更する場合も含む。さらに、この情報は、水平面内の変化だけではなく、高さ方向にユーザの向きまたは移動方向を変更する場合も含む。
図5は、仮想空間内において、ユーザ24が高さ方向に移動方向を変更する例を示す図である。図5において、仮想空間内のユーザ24は、地面25を例えば右手方向から左手方向に移動する。図5に表された矢印は、仮想空間内のユーザ24が移動する軌跡を表す。地面の左右方向における中央付近には段差がある。仮想空間内において段差を越える(高さ方向に移動方向を変更する)ときのユーザ24が移動する軌跡は、情報処理装置10が行う球面線形補間の処理により補間される。そのため、該軌跡は、段差を直線的ではなく、滑らかな曲線により越える軌跡に補間される。現実の世界で、ユーザは歩行中に段差を越えるときに、直線的ではなく、図5に示すように滑らかな曲線に補間された軌跡により段差を越えることを経験し得る。そのため、ユーザの移動方向と意識とが一致した状態を維持できる。従って、実施例1の情報処理装置10を使用することにより、ユーザが高さ方向に移動方向を変更する場合でも、ユーザのVR酔いを抑制することができる。
図5では、仮想空間内のユーザ24が、地面25を右手方向から左手方向に移動する際の情報処理装置10による処理を例示した。ただし、情報処理装置10による処理は、これに限らない。仮想空間内のユーザ24が、地面25を左手方向から右手方向に移動する際に、情報処理装置10はユーザ24が移動する軌跡について、図5と同様の補間の処理を行ってもよい。
CPU101は、加速度センサ1072またはコントローラA 108A、コントローラB 108Bから、このような変化をともなう現実世界の信号を取得する。そして、取得した信号を基に、仮想空間においてユーザに、上記のように補間された光景の変化を視認させる。なお、球面線形補間は補間方法の一例であって、情報処理装置10による補間が球面線形補間に限定される訳ではない。情報処理装置10は、ユーザの向きの変化、位置の移動等を仮想空間で生じさせる情報(加速度センサ1072またはコントローラA 108A、コントローラB 108Bからの信号)を検知する。この場合、情報処理装置10は、仮想空間でユーザの向きの変化の終了状態での向き、位置の移動の終了地点に向けて、徐々に加速度、角加速度が低下するように、ユーザの向き、位置を変化させればよい。また、情報処理装置10は、所定の時間の範囲において、連続した「線形補間(2点間の関数値を直線で近似する方法)」の処理を行うことにより、球面線形補間に近似する処理を行ってもよい。ここで、連続した「線形補間(2点間の関数値を直線で近似する方法)」の処理とは、ユーザの向き、位置の変化が初期状態から最終状態になるまで、段階的に線形補間する処理を反復して繰り返すことをいう。以下、各実施例においても、同様である。情報処理装置10による連続した線形補間による補間処理は、球面線形補間による補間処理と比較して、相対的に処理の負荷が軽いと言える。そのため、情報処理装置10が連続した線形補間による補間処理を行うことにより、球面線形補間による補間処理を行うよりも処理の負荷を軽減し得ると同時に、ユーザがVR酔いを引き起こすことを抑制することができる。
図8は、実施例1における、処理の一例を示すフローチャートである。まず、実施例1の処理ではCPU101は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得する。加速度センサ1072からの検出信号は、ユーザの姿勢の変化、向きの変化、ユーザの動作等を示す。CPU101は、加速度センサ1072からの検出信号を基に、仮想空間でのユーザの移動に伴う光景の変化を示す画像を生成する。また、コントローラA 108A、コントローラB 108Bからの操作信号は、例えば、仮想空間におけるユーザの移動速度、加速度、移動方向等に関する指示を例示する。CPU101は、この操作信号を基に、仮想空間でのユーザの移動に伴う光景の変化を示す画像を生成する。
そこで、この処理では、CPU101は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得したか否かを判定する(ステップS1)。この検出信号または操作信号は、仮想空間内においてユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報の一例ということができる。または、CPU101は、仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段の一例として、ステップS1の処理を実行すると言える。
制御回路1011が加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得した場合(ステップS2でYes)は、ステップS3に進む。制御回路1011は、取得した検出信号または操作信号を基に、CPU101は仮想空間での画像を生成する。制御回路1011が、該検出信号、該操作信号のいずれも取得しない場合は(ステップS2でNo)、処理がステップS1に戻る。
ステップS3において、制御回路1011は、仮想空間内においてユーザが視認する光景が所定の時間の範囲で変化する画像を生成する。より具体的には、制御回路1011は、仮想空間内でのユーザの位置、速度、加速度および向きの少なくとも1つの変化によるユーザに視認される画像の変化が、開始から所定時間の間に完了するように、複数フレームに分けて画像を生成する。また、制御回路1011は、所定の時間の範囲における変化の期間を初期の期間部分、終期の期間部分と各々規定する。この場合、制御回路1011は、終期の期間部分における光景の時間あたりの変化が初期の期間部分における光景の時間あたりの変化よりも緩やかな変化になるように、仮想空間内で視認できる画像を生成する。制御回路1011は、上記生成した画像を、無線I/F104を通じてHMD107へ段階的に出力する。この処理により、制御回路1011は仮想空間内で所定の時間の範囲で段階的に変化する光景をユーザに視認させる。すなわち、図4のベクトルP1からP8で例示される光景が仮想空間に形成されるように、制御回路1011は、HMD107に該当するフレームを所定のフレーム周期で出力する。制御回路1011は、仮想空間内においてユーザが視認する光景を所定の時間の範囲で変化させる画像を表示装置に出力する制御手段の一例として、ステップS3の処理を実行する。
移動速度・移動方向の変化の例として、以下が挙げられる。ここでは左手のコントローラでユーザが「移動」し、以下全て左手でコントローラA 108A(またはコントローラB 108B)等のスティックを操作していることと仮定する。例1として、仮想空間のユーザが0度方向を向いているときにユーザがコントローラのスティックを+45度方向に倒す。この場合、仮想空間のユーザは0度方向を向いたまま45度方向に停止状態から滑らかに加速しながら斜めに進む。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。ここで、滑らかに加速とは上述のように加速度が徐々に増加することをいう。また、滑らかに減速とは加速度が徐々に減少することをいう。以下、同様である。
例2として、仮想空間のユーザが0度方向を向いているときにユーザがコントローラA 108A等のスティックを+180度方向に倒す。この場合、仮想空間のユーザは0度方向を向いたまま停止状態から滑らかに加速しながら後退(180度方向に進む)する。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。
例3として、仮想空間のユーザが90度方向を向いているときにユーザがコントローラのスティックA 108A等を+30度方向に倒す。この場合、仮想空間のユーザは90度方向を向いたまま120度方向に停止状態から滑らかに加速しながら斜めに進む。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。
例4として、仮想空間のユーザが90度方向を向いているときにユーザがコントローラA 108A等のスティックを-30度方向に倒す。この場合、仮想空間のユーザは90度方向を向いたまま60度方向に停止状態から滑らかに加速しながら斜めに進む。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。
例5として、仮想空間のユーザが90度方向を向いているときにユーザがコントローラA 108A等のスティックを0度方向に倒す。この場合、仮想空間のユーザは90度方向を向いたまま向いている方向に真っ直ぐ滑らかに加速しながら進む。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。
例6として、仮想空間のユーザが-139度方向を向いているときにユーザがコントローラA 108A等のスティックを0度方向に倒す。この場合、仮想空間のユーザは-139度方向を向いたまま向いている方向に真っ直ぐ滑らかに加速しながら進む。ユーザがコントローラA 108A等のスティックから指を離し、コントローラA 108A等のスティックが元の位置に戻ると、仮想空間のユーザは滑らかに減速して停止する。
例7として、例1で仮想空間のユーザが斜め45度方向に移動している最中に、ユーザが視点を30度方向に変えたときの例を挙げる。仮想空間のユーザが0度方向を向きながらユーザがコントローラA 108A等のスティックを+45度方向に倒したまま仮想空間のユーザが45度方向に斜めに進んでいる最中に、ユーザが30度方向を向く。この場合、仮想空間のユーザは30度方向を向いたまま移動方向が45度から75度に滑らかに変化し、30度方向を向いたまま75度方向に斜めに進む。ここで、移動方向が一方の角度から他方の角度に滑らかに変化とは、図2のように、仮想空間において、向きの変化の時間変化、すなわち、角加速度が徐々に減少することをいう。
実施例1によれば、情報処理装置10は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を基に、仮想空間内で段階的に変化する光景をユーザに視認可能にさせる。したがって、ユーザが視認する光景は、ユーザの予測あるいは現実世界でのユーザの経験でえられるものに近いものとなる。したがって、仮想空間でのユーザのVR酔いが抑制される。
また、実施例1では、上記ベクトルP1の状態からP8の状態までの変化に要する所定の時間の範囲は、0.1秒ないし0.3秒である。この時間範囲は、経験上あるいは人間工学上、ユーザのVR酔いを抑制するのに好適な時間である。さらに、実施例1では、上記所定の時間の範囲は、略0.2秒に設定される。この時間は、経験上あるいは人間工学上、ユーザのVR酔いを抑制するのにさらに好適な時間である。このように、情報処理装置10が行う補間処理が、仮想空間におけるユーザの動きに適切な加速度と遅延を与えることにより、ユーザにおける自律神経の失調を防ぐことができる。詳細には、情報処理装置10は、ユーザの移動および方向転換等の際に「脳が日常的に感じている遅延時間(約0.2秒)」と、「現実世界で日常的に感じている加速度」を与える。これにより、情報処理装置10は、VR空間内での動きや映像の遅延等が「日常生活動作と変わりがない」とユーザの脳に認識させ、自律神経の失調を抑えることによりユーザがVR酔いを引き起こすことを更に抑制することができる。
ユーザの移動方向の角度は、P7からP8へ変化する角度が、P1からP2への変化する角度より、緩やかである。これは、終期の期間部分における前記光景の時間あたりの変化が前記初期の期間部分における前記光景の時間あたりの変化よりも緩やかな変化であることの一例と言える。
従って、ユーザは表示装置1071に表示される上記光景の変化に対して違和感を持つことが少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが抑制され得る。
さらに、実施例1では、制御回路1011が生成し、表示装置1071に出力する仮想空間の画像(光景)に球面線形補間を行っている。P1(初期の期間部分の開始時点)からP2、P2からP3・・・P7からP8(終期の期間部分の終了時点)へと時系列が進むにつれて、上記球面線形補間のベクトル方向の角度変化は、徐々に小さくなっている。
これは、光景の時間あたりの変化が、前記初期の期間部分の開始時点から前記終期の期間部分の終了時点にかけて、仮想空間内でユーザによって視認される方向の角度変化を徐々に小さくする変化の一例と言える。従って、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが更に少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが、さらに抑制される。
図2から図4および図8では、ユーザが0度(オブジェクト21)方向へ移動中に、90度(オブジェクト23)方向を向いた場合の処理が説明された。ユーザが向きを変えずに、直進方向(前後方向)でも移動速度を変える、または、停止状態から移動し、その後停止する処理は以下の通りである。CPU101は、例えば、コントローラA 108A、コントローラB 108Bからの操作信号を取得し、ユーザからの移動開始、移動停止、移動速度、加速度等の指示であると判断する。例えば、ユーザがコントローラA108A又はコントローラB108Bのスティックを前に倒すことにより、ユーザは仮想空間内で前進(直進方向への移動)を開始し、移動速度、加速度等を変化させる。また、例えば、ユーザがコントローラA108A又はコントローラB108Bのスティックを前に倒した状態から戻すことにより、ユーザは仮想空間内で前進(直進方向への移動)の停止を指示する。
すると、CPU101は、仮装空間内で、ユーザが徐々に加速度を増加し、一旦ピーク速度まで加速し、その後、停止に向かって徐々に加速度を低下させる。より具体的には、HMD107が備える表示装置1071に表示される仮想空間内で、ユーザが視認する光景は、徐々に加速されて速く変化してゆき、一旦ピーク速度で変化する。その後、ユーザが視認する光景は、停止に向かって徐々に加速度を低下させるように変化し、最終的に変化を止める。ここで、ピーク速度とは、ユーザが仮想空間で前進(直進方向への移動)を開始後、停止に至るまでの間での最も速い速度をいう。
例えば、ユーザがスティックを前に倒したときは向いている方向に0.2秒程度かけて停止状態から滑らかに加速する。そして、スティックから指をはなしてニュートラルに戻すと0.2秒程度かけて滑らかに減速して停止するように、CPU101は、仮装空間内で、ユーザに視認させる画像のフレームを変化させる。このような処理により、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが更に少なく、自然なものとして認識しうる。このように、情報処理装置10が行う補間処理が、仮想空間におけるユーザの動きに適切な加速度と遅延を与えることにより、ユーザにおける自律神経の失調を防ぐことができる。詳細には、情報処理装置10は、ユーザの移動および方向転換等の際に「脳が日常的に感じている遅延時間(約0.2秒)」と、「現実世界で日常的に感じている加速度」を与える。これにより、情報処理装置10は、VR空間内での動きや映像の遅延等が「日常生活動作と変わりがない」とユーザの脳に認識させ、自律神経の失調を抑えることによりユーザがVR酔いを引き起こすことを更に抑制することができる。
<第2の実施例>
図6、図7及び図9を用いて、第2の実施例(実施例2ともいう)について説明する。第1の実施例と、第2の実施例は、情報処理装置の構成が共通するため、本実施の形態において、図1の説明を省略する。図6は、実施例2の仮想空間内において、情報取得手段がユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得することに関する。そして、ユーザが右に回転した場合に、その取得された情報を基に、制御回路1011が生成する画像を例示している。
本図において、仮想空間におけるユーザの移動先(回転する方向)、すなわち画像の右端は明るく表示され(透明度100%)、画像の右端から左側へ移るにつれ、画像が徐々に暗くなり、移動元である画像の左端では、透明度0%で表示される。これは、ユーザの視点を移動先(回転方向)に誘導する目的で、制御回路1011が、ユーザの回転方向から反対方向に向かって画像が徐々に暗く表示されるようにグラデーションを掛けているためである。ここで、透明度は、グラデーションを発生させる影の画像の透明度をいう。透明度100%は、影の画像がない場合である。透明度0%は、影の画像が最も暗い場合をいい、グラデーションの影響を受ける前の元の画像がユーザから視認できない状態をいう。
図7は、図6の場合とは逆に、実施例2の仮想空間内において、ユーザが左に回転した場合の画像を例示している。本図において、仮想空間におけるユーザの移動先(回転する方向)、すなわち画像の左端は明るく表示され(透明度100%)、画像の左端から右側へ移るにつれ、画像が徐々に暗くなり、移動元である画像の右端では、透明度0%で表示される。これは、図6の場合と同じく、ユーザの視点を移動先(回転方向)に誘導する目的で、制御回路1011が、ユーザの回転方向から反対方向に向かって画像が徐々に暗く表示されるようにグラデーションを掛けているためである。
画像の一端から他端にかけて透明度が変化する(グラデーションの)度合いについて、図6及び図7では、制御回路1011が生成する画像において、ユーザの移動先(透明度100%)と移動元(透明度0%)の中間部分の透明度を略50%で処理している。これに限らず、仮想空間内におけるユーザの視線の移動方向において、移動元よりも移動先が相対的に明るくなるように画像が形成されていればよい。例えば、移動先の透明度を100%より小さくする、移動元の透明度を0%より大きくする、又は、中間部分の透明度を30%や70%で処理するなど、制御回路1011が生成する画像の内容に応じて、グラデーションの度合い(透明度)を適宜調整してもよい。
図6及び図7について、ユーザが右又は左の方向に回転する場合における画像の透明度の変化を説明した。実施例2はこれに限らず、ユーザが前後方向や斜め方向に回転する場合に応じて、制御回路1011がユーザの移動先の透明度を大きくし、移動元の透明度を小さくするように調整した画像を生成してもよい。
制御回路1011が、図6及び図7に表されるような画像を生成し、HMD107の表示装置1071に出力(表示)することにより、画像を見るユーザの視点は、移動元(透明度が低く、暗い方向)から移動先(透明度が高く、明るい方向)に誘導される。従って、ユーザが仮想空間内での移動先を予測することができるため、仮想空間におけるユーザのVR酔いを抑制することができる。
図6及び図7に表される、画像の一端から他端にかけて影の画像の透明度が変化する画像は、仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を制御回路1011が取得した場合に生成される。そして生成された画像が、HMD107の表示装置1071に出力(表示)される。そのような変化は、ユーザがコントローラA108AやコントローラB108Bのような情報取得手段の操作部を操作することにより、制御回路1011が、ユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得してもよい。
例えば、ユーザの右手又は左手の指がコントローラA108A又はコントローラB108Bのスティックを右に倒した場合に、その入力情報が制御回路1011に送られ、制御回路1011が図6のような画像を生成し、表示装置1071に出力(表示)する。 又は、上記コントローラのスティックを左に倒した場合に、その入力情報が制御回路1011に送られ、制御回路1011が図7のような画像を生成し、表示装置1071に出力(表示)する。ユーザ自身が情報取得手段を操作することにより、図6または図7のような、一端から他端にかけて透明度が変化する画像が表示装置1071に表示される。そのため、ユーザの入力操作とユーザが視認する画像の整合性が高まることにより、仮想空間におけるユーザのVR酔いを抑制することができる。
図6及び図7に表されるような画像は、仮想空間に表示されたオブジェクトの動きに合わせてHMD107の表示装置1071が動いたことを、加速度センサ1072のような情報取得手段が検知する。そして、情報取得手段は、ユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得してもよい。例えば、仮想空間の画像で表示されたオブジェクトが右方向に移動する動きに合わせて、HMD107を装着したユーザが右を向く場合がある。この場合、加速度センサ1072がその動きを検知し、その取得された情報が制御回路1011に送られ、制御回路1011は図6のような画像を生成し、表示装置1071に出力(表示)する。又は、仮想空間の画像で表示されたオブジェクトが左方向に移動する動きに合わせて、HMD107を装着したユーザが左に向く場合がある。この場合、加速度センサ1072がその動きを検知し、その取得された情報が制御回路1011に送られ、制御回路1011は図7のような画像を生成し、表示装置1071に出力(表示)する。
情報取得手段が、仮想空間に表示されたオブジェクトの動きに合わせたユーザ(表示装置1071)の動きを検知することにより、図6または図7のような一端から他端にかけて透明度が変化する画像が表示装置1071に表示される。そのため、ユーザの動きとユーザが視認する画像の整合性が高まることにより、仮想空間におけるユーザのVR酔いを抑制することができる。
図9は、実施例2における、処理の一例を示すフローチャートである。
表示装置1071に表示された仮想空間において、HMD107の加速度センサ1072は、ユーザの動きを検知する。または、ユーザがコントローラを操作することにより、加速度センサ1072は、ユーザからの指示を受け付ける(ステップT1)。
コントローラA108A又はコントローラB108Bは、ユーザがコントローラA108A及びコントローラB108Bに備えられたスティックを左右いずれかに倒したか否かを判定する。あるいは、加速度センサ1072は、仮想空間に表示されたオブジェクト21乃至23の動きに合わせてヘッドマウントディスプレイが動いたか否かを判定する(ステップT2)。
コントローラA108A又はコントローラB108Bは、ユーザがコントローラA108A及びコントローラB108Bに備えられたスティックを左右いずれかに倒したと判定する場合がある。あるいは、加速度センサ1072が、仮想空間に表示されたオブジェクト21乃至23の動きに合わせてヘッドマウントディスプレイが動いたと判定する場合(ステップT2でYes)、処理がステップT3へ進む。これらの場合、上記の情報は、無線I/F104を通じてCPU101の制御回路1011に送られる。そうでない場合は(ステップT2でNo)、処理がステップT1に戻る。
制御回路1011は、上記の情報に基づいて、ユーザの視界が、回転方向から反回転方向に向かって徐々に暗くなるよう処理された画像を生成する(ステップT3)。
生成された画像は、制御回路1011から無線I/F104を経由して、HMD107に出力される。HMD107は上記の画像を受け付け、表示装置1071の仮想空間にユーザが視認可能なように上記画像を表示する。
実施例2の処理では、CPU101は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得したか否かを判定する(ステップT1)。この検出信号または操作信号は、仮想空間内においてユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報の一例ということができる。 CPU101は、仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段の一例として、ステップT1の処理を実行すると言える。
また、CPU101は、上記取得した検出信号または操作信号に基づき、ユーザの視界が、回転方向(移動先)から反回転方向(移動元)に向かって徐々に暗くなるよう処理された画像を生成する(ステップT3)。CPU101は、上記画像をHMD107に出力する。HMD107は上記の画像を受け付け、表示装置1071の仮想空間に上記画像を表示する。そのため、CPU101は、取得された情報を基に、仮想空間内におけるユーザの視線の移動方向において、移動元よりも移動先が相対的に明るくなるように画像を形成し、ユーザが視認可能なように前記表示装置に出力する制御手段の一例として、ステップT3の処理を実行すると言える。
そして、上記の画像を視認するユーザの視点は、移動元(透明度が低く、暗い)から移動先(透明度が大きく、明るい)に誘導される。従って、ユーザが仮想空間内での移動先を予測することができる。よって、仮想空間でのユーザのVR酔いが抑制される。
実施例2では、ユーザがコントローラA 108A又はコントローラB 108Bのスティックを左右いずれかに倒すことにより、制御回路1011が、ユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得する(ステップT2)。これは、ユーザが情報取得手段の操作部を操作することにより、情報取得手段がユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得することの一例と言える。
このように、ユーザ自身が情報取得手段を操作することにより、一端から他端にかけて透明度が変化する画像が表示装置1071に表示される。従って、ユーザの入力操作とユーザが視認する画像の整合性が高まることにより、仮想空間でのユーザのVR酔いが抑制される。
また実施例2では、仮想空間に表示されたオブジェクトの動きに合わせて、ユーザが装着するHMD107の表示装置1071が動いた場合、加速度センサ1072がその動きを検知し、制御回路1011がその検知した情報を取得する(ステップT2)。これは、情報取得手段の検知部が、仮想空間に表示されたオブジェクトの動きに合わせて表示装置が動いたことを検知することにより、情報取得手段がユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報を取得する、ことの一例と言える。
このように、情報取得手段が、仮想空間に表示されたオブジェクトの動きに合わせたユーザの動きを検知することにより、一端から他端にかけて透明度が変化する画像が表示装置1071に表示される。従って、ユーザの動きとユーザが視認する画像の整合性が高まることにより、仮想空間でのユーザのVR酔いが抑制される。
<第3の実施例>
図10および図11を用いて、第3の実施例(実施例3ともいう)について説明する。上記実施例1では、ユーザが0度(オブジェクト21)方向へ移動中に、90度(オブジェクト23)方向を向いた場合の処理が説明された。実施例1では、現実の空間でユーザが向きを右手方向に90度回転したことを認識すると、仮想空間でのユーザ自体の向きを図3のベクトルP2からP8のように、直ちに回転させる処理が例示された(図2~図4参照)。実施例3では、現実の空間でユーザが向きを右手方向に90度回転したことを認識すると、仮想空間でのユーザ自体の向きの回転を徐々に加速する。そして、ユーザの向きは、一旦ピーク角速度で回転し、その後最終的なユーザの向きになるように徐々に回転の角加速度を低下させる処理が例示される。ここで、ピーク角速度とは、ユーザが向きを変更後、仮装空間でのユーザの移動が最終的なユーザの向きでの直進となるまでの間での最も速い角速度をいう。他の構成および処理は、実施例1と同様であるので、同一の処理については、実施例1が実施例3に適用されるものとし、相違点に関して以下説明する。
図10は、実施例3における、ユーザが仮想空間内で認識するユーザの移動状態の遷移図である。ここで、移動状態は、ユーザの位置と、ユーザが視認する仮想空間内の方向(光景)で例示される。図10に示されたベクトルP1~P8は、ユーザが0度方向(ユーザから見て手前側から奥側、すなわちオブジェクト21の方向)に移動中に、ユーザが90度方向(ユーザから見て右側、すなわちオブジェクト23の方向)を向いた際、所定の時間の範囲における1フレームごとの移動の速度および移動の方向ベクトルを表す。ここで、P1からP8にかけてのユーザの視点方向のベクトルに着目すると、ユーザが視認する仮想空間の方向(すなわち、光景)は、図10のベクトルP1からP8のように徐々に段階的に変化する。ベクトルの角度は、P1からP3にかけて緩やかに大きくなり、P4、P5で角度の変化が最大となり、P6からP8にかけて、緩やかに小さくなっている。ここで、P1からP8の期間は、例えば、P1からP3の期間を初期の期間部分、P6からP8の期間を終期の期間部分、P4からP5の期間を初期の期間部分と終期の期間部分に挟まれた中間の期間部分、と言うことができる。従って、この速度の時間変化(つまり加速度)および方向の時間変化(角速度)の時間変化(つまり角加速度)は、当初(つまり初期の期間部分)は、徐々に変化の度合い(加速度、角加速度)が大きくなり、中間の期間部分で一旦、最大の変化量に達する。その後(つまり終期の期間部分)は徐々に変化の度合い(加速度、角加速度)が小さくなっていく。よって、当初(つまり初期の期間部分)比較的大きく変化し、その後(つまり終期の期間部分)徐々に変化の度合いが小さくなっていく実施例1とは、期間の区分数および変化の度合いが相違すると言える。
図11は、実施例3における、処理の一例を示すフローチャートである。実施例1のフローチャートとの相違点は、以下のとおりである。実施例1における図8のフローチャート、ステップS3の処理は、CPU101が、ユーザの位置、速度、加速度および向きの少なくとも1つの変化によるユーザの目に見える画像の変化が、開始から所定時間の間に完了するように、変化の期間を2分割する。そして、初期の期間部分の開始時点から前記終期の期間部分の終了時点にかけて、徐々に加速度を低下させるように変化する画像を球面補間して複数フレームに分けて段階的にHMD107に出力する。実施例3における図11のフローチャート、ステップU3の処理は、CPU101が生成する画像が、変化の期間を3分割する。そして、初期の期間で徐々に加速度増加、中間の期間でピーク加速度に達し、終期の期間で徐々に加速度を低下させるように変化する画像である点が、実施例1の処理と相違する。
従って、実施例3の情報処理装置10では、制御回路1011がP1とP8の間を初期の期間部分、中間の期間部分および終期の期間部分に分ける。かつ、制御回路1011は、初期の期間部分および終期の期間部分における光景の時間あたりの変化が、中間の期間部分における光景の時間あたりの変化よりも緩やかに変化するように、P2~P7が段階的に変化する光景を補間する。このため、実施例3においても実施例1と同様、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが、抑制される。
上記の「所定の時間の範囲」すなわち、P1からP8に変化する時間の範囲は、例えば0.1秒ないし0.3秒に設定される。この範囲は、ヒトが外部からの刺激(例えば視覚刺激や聴覚刺激)に対して反応する速度から決定できる。従って、実施例3に係る情報処理装置10を使用するユーザの移動方向、視線方向及び視認する光景が連動し、ヒトの反応速度に準じて段階的に変化するため、ユーザがVR酔いを引き起こすことをさらに抑制することができる。
実施例1で説明した、ユーザが仮想空間内で前進(直進方向への移動)に関する処理は、実施例3においても、実施例1と同様である。すなわち、例えば、ユーザがコントローラA108A又はコントローラB108Bのスティックを前に倒すことにより、ユーザは仮想空間内で前進(直進方向への移動)を開始し、移動速度、加速度等を変化させる。また、例えば、ユーザがコントローラA108A又はコントローラB108Bのスティックを前に倒した状態から戻すことにより、ユーザは仮想空間内で前進(直進方向への移動)の停止を指示する。
すると、CPU101は、仮装空間内で、ユーザが徐々に加速し(初期の期間部分)、一旦ピーク速度まで加速し(中間の期間部分)、その後、停止に向かって徐々に加速度を低下させる(終期の期間部分)。より具体的には、HMD107が備える表示装置1071に表示される仮想空間内で、ユーザが視認する光景は、徐々に加速されて速く変化してゆき、一旦ピーク速度で変化する。その後、ユーザが視認する光景は、停止に向かって徐々に加速度を低下させるように変化し、最終的に変化を止める。
例えば、ユーザがスティックを前に倒したときは向いている方向に0.2秒程度かけて停止状態から滑らかに加速する。ユーザがスティックから指をはなしてニュートラルに戻すと0.2秒程度かけて滑らかに減速して停止するように、CPU101は、仮装空間内で、ユーザに視認させる画像のフレームを変化させる。このような処理により、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが更に少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが、さらに抑制される。
なお、実施例2の処理と、実施例3の処理とは、組み合わせてもよい。つまり、CPU101は実施例2の処理として、仮想空間におけるユーザの移動先(回転する方向)、すなわち画像の右端は明るく表示する(透明度100%)。CPU101は、画像の右端から左側へ移るにつれ、画像が徐々に暗くなり、移動元である画像の左端では、透明度0%で表示する。同時に、CPU101は、実施例3の処理として、ユーザが仮想空間を移動中に、進行方向への速度を変える。又は、CPU101は、方向を変える等の場合に、所定時間の範囲における初期の期間部分において、変化の度合いを緩やかに大きくし、中間の期間部分において、変化の度合いが最大となり、終期の期間部分において変化の度合いが緩やかに小さくなるような画像を生成してもよい。CPU101は、生成した画像をHMD107の表示装置1071に出力してもよい。ユーザは、仮想空間内での移動先を予測することができ、表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが、さらに抑制される。
<第4の実施例>
図12乃至図14を用いて、第4の実施例(実施例4ともいう)について説明する。上記実施例1および2では、仮想空間において、水平面内の変化または高さ方向にユーザの移動方向または向きを変更する処理が例示された。実施例3では、現実の空間でユーザが向きを右手方向または左手方向に90度回転したことを認識すると、仮想空間でのユーザ自体の向きの回転を徐々に加速する。そして、ユーザの向きは、一旦ピーク角速度で回転し、その後最終的なユーザの向きになるように徐々に回転の角加速度を低下させる処理が例示された。実施例4では、仮想空間において3次元方向にユーザの移動方向または向きを変更する処理が例示される。3次元方向にユーザの移動方向または向きを変更する処理は、ユーザの移動に関する処理および回転に関する処理を含む。他の構成および処理は、実施例1と同様である。従って、同一の処理については、実施例1が実施例4に適用されるものとし、相違点に関して以下説明する。
図12は、実施例4におけるユーザの移動時の座標補間イメージを示す図である。図12には、仮想空間におけるユーザの現在の座標PC、ユーザの移動目標の座標PTが示されている。ユーザの移動目標の座標は、HMD107の加速度センサ1072が検知した情報、ユーザがコントローラA108A又はコントローラB108Bに入力した情報に基づくユーザの移動先の座標である。この場合、情報処理装置10が行う球面線形補間の処理により、ユーザは補間後の座標に位置する。補間処理は、所定の時間の範囲において1フレームごとに行われる。図12では、補間後の座標として、C1、C2、C3を示している。C1は1回目の補間処理、C2は2回目の補間処理、C3は3回目の補間処理がされた後に仮想空間内のユーザが位置する座標である。ここで、PCが現在のユーザが位置する座標 Vector3(X,Y,Z)、PTがユーザの移動目標の座標Vector3(X,Y,Z)を表すものとする。また、PNが補間後の次の座標Vector3(X,Y,Z) を表すものとする。すなわち、ここで、PC、PT、PNは、いずれもベクトル値である。PC、PT が毎フレーム最新情報に更新される場合、補間処理後の座標PNの計算式は、以下となる。
補間後の座標 PN=(PT-PC)× 減衰率
上記の計算式によると、図12における補間後の座標C1、C2、C3が示すように、現在の座標PCからC1、C1からC2、C2からC3、C3から移動目標の座標PTへ進むにつれて、座標間の距離の変化の度合いが少なくなる。すなわち、現在の座標PCからC1、C1からC2、C2からC3、C3から移動目標の座標PTへ進むにつれて、ユーザの移動における加速度が低下する。
所定の時間の範囲におけるPCからPTへの変化について、PCからC2にかけての変化を初期の期間部分、C2からPTにかけての変化を終期の期間部分と各々規定する。この場合、制御回路1011は、前記終期の期間部分における前記光景の時間あたりの変化が前記初期の期間部分における前記光景の時間あたりの変化よりも緩やかな変化になるように、仮想空間内で視認できる画像を生成し、HMD107の表示装置1071に段階的に出力するといえる。これによりユーザは、HMD107に表示される仮想空間内で視認する光景の変化が、ヒトが現実の光景を視認する場合の変化と同様であると感じることができる。従って、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうるため、ユーザがVR酔いを引き起こすことを抑制することができる。
図13は、実施例4におけるユーザの方向転換時の補間イメージを示す図である。図13には、仮想空間におけるユーザの現在の移動方向RC、VR-HMDの向き、又は、コントローラのスティックによるVR-HMDに対する相対的な入力方向RTが示されている。この場合、情報処理装置10が行う球面線形補間の処理により、ユーザは補間後の移動方向に移動する。補間処理は、所定の時間の範囲において1フレームごとに行われる。図13では、補間後の移動方向として、D1、D2、D3を示している。D1は1回目の補間処理、D2は2回目の補間処理、D3は3回目の補間処理がされた後に仮想空間内のユーザが移動する移動方向である。ここで、RCがユーザの現在の移動方向の左右の向き Quaternion(0,1,0,W)、RTがVR-HMDの左右の向きQuaternion(0,1,0,W)を表すものとする。また、RNが補間後の次の左右の向き Quaternion(0,1,0,W) を表すものとする。すなわち、ここで、RC、RT、RNは、いずれもベクトル値である。RC、RTが毎フレーム最新情報に更新される場合、補間処理後の移動方向の計算式は、以下となる。
補間後の移動方向 RN=(RT-RC)× 減衰率
上記の計算式によると、図13における補間後の移動方向D1、D2、D3が示すように、現在の移動方向RCからD1、D1からD2、D2からD3、D3から移動目標の座標RTへ進むにつれて、移動方向における角度の変化の度合いが少なくなる。すなわち、現在の移動方向RCからD1、D1からD2、D2からD3、D3から移動目標の座標RTへ進むにつれて、ユーザが回転する角加速度が徐々に低下する。
所定の時間の範囲におけるRCからRTへの変化について、RCからD2にかけての変化を初期の期間部分、D2からRTにかけての変化を終期の期間部分と各々規定する。この場合、制御回路1011は、前記終期の期間部分における前記光景の時間あたりの変化が前記初期の期間部分における前記光景の時間あたりの変化よりも緩やかな変化になるように、仮想空間内で視認できる画像を生成し、HMD107の表示装置1071に段階的に出力するといえる。これによりユーザは、HMD107に表示される仮想空間内で視認する光景の変化が、ヒトが現実の光景を視認する場合の変化と同様であると感じることができる。従って、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうるため、ユーザがVR酔いを引き起こすことを抑制することができる。
図14は、実施例4における、処理の一例を示すフローチャートである。まず、実施例4の処理ではCPU101は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得する。加速度センサ1072からの検出信号は、ユーザの姿勢の変化、向きの変化、ユーザの動作等を示す。CPU101は、加速度センサ1072からの検出信号を基に、仮想空間でのユーザの移動に伴う光景の変化を示す画像を生成する。また、コントローラA 108A、コントローラB 108Bからの操作信号は、例えば、仮想空間におけるユーザの移動速度、加速度、移動方向等に関する指示を例示する。CPU101は、この操作信号を基に、仮想空間でのユーザの移動に伴う光景の変化を示す画像を生成する。
そこで、この処理では、CPU101は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得したか否かを判定する(ステップS11)。この検出信号または操作信号は、仮想空間内においてユーザの位置の移動およびユーザの向きの変化の少なくとも一方を生じさせる情報の一例ということができる。または、CPU101は、仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段の一例として、ステップS11の処理を実行すると言える。
制御回路1011が加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得した場合(ステップS12でYes)は、処理がステップS13に進む。そして、制御回路1011は、取得した検出信号または操作信号を基に、CPU101は仮想空間での画像を生成する。制御回路1011が該検出信号も該操作信号も取得しない場合(ステップS12でNo)、処理はステップS11へ戻る。
ステップS13において、制御回路1011は、仮想空間内においてユーザが視認する光景が所定の時間の範囲で変化する画像を生成する。より具体的には、制御回路1011は、仮想空間内でのユーザの位置、速度、加速度および向きの少なくとも1つの変化によるユーザに視認される画像の変化が、開始から所定時間の間に完了するように、複数フレームに分けて画像を生成する。また、制御回路1011は、所定の時間の範囲における変化の期間を初期の期間部分、終期の期間部分と各々規定する。この場合、制御回路1011は、終期の期間部分における光景の時間あたりの変化が初期の期間部分における光景の時間あたりの変化よりも緩やかな変化になるように、仮想空間内で視認できる画像を生成する。制御回路1011は、上記生成した画像を、無線I/F104を通じてHMD107へ段階的に出力する(ステップS13)。この処理により、制御回路1011は仮想空間内で所定の時間の範囲で段階的に変化する光景をユーザに視認させる。すなわち、図12のPCからPTおよび図13のRCからRTで例示される光景が仮想空間に形成されるように、制御回路1011は、HMD107に該当するフレームを所定のフレーム周期で出力する。制御回路1011は、仮想空間内においてユーザが視認する光景を所定の時間の範囲で変化させる画像を表示装置に出力する制御手段の一例として、ステップS13の処理を実行し、処理を終了する。
実施例4によれば、情報処理装置10は、加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を基に、仮想空間内で段階的に変化する光景をユーザに視認可能にさせる。したがって、ユーザが視認する光景は、ユーザの予測あるいは現実世界でのユーザの経験で得られるものに近いものとなる。したがって、仮想空間でのユーザのVR酔いが抑制され得る。
実施例4における「所定の時間の範囲」すなわち、PCからPT(RCからRT)に変化する時間の範囲は、例えば0.1秒ないし0.3秒に設定され得る。この範囲は、ヒトが外部からの刺激(例えば視覚刺激や聴覚刺激)に対して反応する速度から決定できる。従って、実施例4に係る情報処理装置10を使用するユーザの移動方向、視線方向及び視認する光景が連動し、ヒトの反応速度に準じて段階的に変化するため、ユーザがVR酔いを引き起こすことをさらに抑制することができる。
実施例4における「所定の時間の範囲」すなわち、PCからPT(RCからRT)に変化する時間の範囲は、さらに略0.2秒に設定される。この時間は、経験上あるいは人間工学上、ユーザのVR酔いを抑制するのにさらに好適な時間である。従って、実施例1に係る情報処理装置10を使用するユーザの移動方向、視線方向及び視認する光景が連動し、ヒトの反応速度の平均値に合わせて段階的に変化する。このように、情報処理装置10が行う補間処理が、仮想空間におけるユーザの動きに適切な加速度と遅延を与えることにより、ユーザにおける自律神経の失調を防ぐことができる。詳細には、情報処理装置10は、ユーザの移動および方向転換等の際に「脳が日常的に感じている遅延時間(約0.2秒)」と、「現実世界で日常的に感じている加速度」を与える。これにより、情報処理装置10は、VR空間内での動きや映像の遅延等が「日常生活動作と変わりがない」とユーザの脳に認識させ、自律神経の失調を抑えることによりユーザがVR酔いを引き起こすことを更に抑制することができる。
<変形例>
第4の実施例では、ユーザの方向転換時の補間イメージとして、所定の時間の範囲における座標PCからPTへの変化について、PCからC2にかけての変化を初期の期間部分、C2からPTにかけての変化を終期の期間部分と各々規定する処理を例示した。また、ユーザの方向転換時の補間イメージとして、所定の時間の範囲における座標RCからRTへの変化について、RCからD2にかけての変化を初期の期間部分、D2からRTにかけての変化を終期の期間部分と各々規定した。変形例では、例えば、PCからC1(RCからD1)の期間を初期の期間部分、C3からPT(D3からRT)の期間を終期の期間部分、C1からC3(D1からD3)の期間を初期の期間部分と終期の期間部分に挟まれた中間の期間部分、と各々規定してもよい。これらの期間における速度の時間変化(つまり加速度)および方向の時間変化(角速度)の時間変化(つまり角加速度)は、当初(つまり初期の期間部分)は、徐々に変化の度合い(加速度、角加速度)が大きくなり、中間の期間部分で一旦、最大の変化量に達するようにしてもよい。その後(つまり終期の期間部分)は徐々に変化の度合い(加速度、角加速度)が小さくなっていくようにしてもよい。この場合、当初(つまり初期の期間部分)比較的大きく変化し、その後(つまり終期の期間部分)徐々に変化の度合いが小さくなっていく実施例4と、本変形例とは、期間の区分数および変化の度合いが相違する。
制御回路1011は、初期の期間部分および終期の期間部分における光景の時間あたりの変化が、中間の期間部分における光景の時間あたりの変化よりも緩やかに変化するように、C1からC3(D1からD3)が段階的に変化する光景を補間し得る。このため、本変形例においても実施例4と同様、ユーザは表示装置1071に表示される画像の変化に対して違和感を持つことが少なく、自然なものとして認識しうる。よって、仮想空間でのユーザのVR酔いが、抑制され得る。
上記実施例1から4において、位置の変化は、上述のように、徐々に加速度を増加し、その後、停止に向かって徐々に加速度を低下させる変化として例示される。ただし、情報処理装置10の処理は、このような処理に限定される訳ではない。情報処理装置10の処理は、例えば、仮想空間において、等加速度で加速し、その後、停止に向かって徐々に等加速度で減速するものであってもよい。上記実施例1において、向きの変化は、停止に向かって徐々に角加速度を低下させる変化として例示される。ただし、情報処理装置10の処理は、このような処理に限定される訳ではない。情報処理装置10の処理は、例えば、仮想空間において、停止に向かって徐々に等角加速度で減速するものであってもよい。上記実施例3において、向きの変化は、徐々に角加速度を増加し、その後、停止に向かって徐々に角加速度を低下させる変化として例示される。ただし、情報処理装置10の処理は、このような処理に限定される訳ではない。情報処理装置10の処理は、例えば、仮想空間において、等角加速度で加速し、その後、停止に向かって徐々に等角加速度で減速するものであってもよい。
上記の実施例1乃至実施例4はあくまでも一例であって、本発明はその要旨を逸脱しない範囲内で適宜変更して実施しうる。本発明において説明した処理及び/又は手段は、技術的な矛盾が生じない限りにおいて、部分的に取り出して実施することも、自由に組み合わせて実施することもできる。
上記の実施例1乃至実施例4では、情報処理装置10(CPU101)が加速度センサ1072からの検出信号またはコントローラA 108A、コントローラB 108Bからの操作信号を取得する。そして、情報処理装置10は、上記図8、図9、図11、図14で例示されるような仮想空間での光景をユーザに視認させる処理を実行した。しかし、図8、図9、図11、図14の処理の少なくとも一部または全部は情報処理装置10以外において実行されてもよい。例えば、通信I/F105及びネットワークNを介して情報処理装置10からアクセス可能なサーバ等の他の情報処理装置が図8、図9、図11、図14の処理の少なくとも一部または全部を実行してもよい。情報処理装置10は、通信I/F105及びネットワークNを介して、他の情報処理装置が実行した結果に基づく画像を受けて、HMD107に出力してもよい。
本発明は、上記の実施の形態で説明した機能を実装したコンピュータプログラムをコンピュータに供給し、当該コンピュータが有する1つ以上のプロセッサがプログラムを読み出して実行することによっても実現可能である。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な非一時的なコンピュータ可読記憶媒体によってコンピュータに提供されてもよいし、ネットワークを介してコンピュータに提供されてもよい。非一時的なコンピュータ可読記憶媒体は、例えば、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクドライブ(HDD)等)、光ディスク(CD-ROM、DVDディスク、ブルーレイディスク等)など任意のタイプのディスク、読み込み専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体を含む。
10 情報処理装置
21、22、23 オブジェクト
24 ユーザ
25 地面
101 CPU
102 主記憶部
103 有線I/F
104 無線I/F
105 通信I/F
106 外部記憶部
107 HMD
108A コントローラA
108B コントローラB
1011 制御回路
1071 表示装置
1072 加速度センサ

Claims (13)

  1. 表示装置によってユーザから視認可能な仮想空間を形成する情報処理装置であって、
    前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段と、
    前記取得された情報を基に、前記仮想空間内において前記ユーザが視認する光景をヒトが外部からの刺激に対して反応する速度に基づいて所定の時間の範囲で変化させる画像を前記表示装置に出力する制御手段と、を備える情報処理装置。
  2. 前記所定の時間の範囲が初期の期間部分および終期の期間部分の少なくとも2つの期間部分に分かれており、
    前記制御手段は、前記終期の期間部分における前記光景の時間あたりの変化が前記初期の期間部分における前記光景の時間あたりの変化よりも緩やかな変化になるように、前記画像を前記表示装置に出力する請求項1に記載の情報処理装置。
  3. 前記光景の時間あたりの変化が、前記初期の期間部分の開始時点から前記終期の期間部分の終了時点にかけて、仮想空間内でユーザによって視認される方向の角度変化を徐々に小さくする変化である、請求項2に記載の情報処理装置。
  4. 表示装置によってユーザから視認可能な仮想空間を形成する情報処理装置であって、
    前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する情報取得手段と、
    前記取得された情報を基に、前記仮想空間内における前記ユーザの視線の移動方向において、前記ユーザの移動元よりも移動先が相対的に明るくなるように画像を形成し、前記表示装置に出力する制御手段と、を備える情報処理装置。
  5. ユーザが前記情報取得手段の操作部を操作することにより、前記情報取得手段が前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する、請求項4に記載の情報処理装置。
  6. 前記情報取得手段の検知部が、前記仮想空間に表示されたオブジェクトの動きに合わせて前記表示装置が動いたことを検知することにより、前記情報取得手段が前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得する、請求項4に記載の情報処理装置。
  7. 前記所定の時間の範囲が初期の期間部分、終期の期間部分、および前記初期の期間部分と終期の期間部分に挟まれた中間の期間部分の少なくとも3つの期間部分に分かれており、
    前記制御手段は、前記初期の期間部分および前記終期の期間部分における前記光景の時間あたりの変化が前記中間の期間部分における前記光景の時間あたりの変化よりも緩やかな変化になるように、前記画像を前記表示装置に出力する請求項1乃至3のいずれか1項に記載の情報処理装置。
  8. 前記所定の時間の範囲が0.1秒ないし0.3秒である、請求項1、請求項2、請求項3又は請求項7のいずれか1項に記載の情報処理装置。
  9. 前記所定の時間の範囲が略0.2秒である、請求項1、請求項2、請求項3又は請求項7のいずれか1項に記載の情報処理装置。
  10. ユーザから視認可能な仮想空間を形成する表示装置と、
    情報取得手段と、
    制御手段と、を備えるコンピュータにより実現される方法であって、
    前記情報取得手段は、前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得し、
    前記制御手段は、前記取得された情報を基に、前記仮想空間内において前記ユーザが視認する光景をヒトが外部からの刺激に対して反応する速度に基づいて所定の時間の範囲で変化させる画像を前記表示装置に出力する情報処理方法。
  11. ユーザから視認可能な仮想空間を形成する表示装置とコンピュータとにより実現される方法であって、前記コンピュータが、
    前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得し、
    前記取得された情報を基に、前記仮想空間内における前記ユーザの視線の移動方向において、前記ユーザの移動元よりも移動先が相対的に明るくなるように画像を形成し、前記表示装置に出力する情報処理方法。
  12. ユーザから視認可能な仮想空間を形成する表示装置と連携するコンピュータに、
    前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得することと、
    前記取得された情報を基に、前記仮想空間内において前記ユーザが視認する光景をヒトが外部からの刺激に対して反応する速度に基づいて所定の時間の範囲で変化させる画像を前記表示装置に出力することと、を実行させるためのプログラム。
  13. ユーザから視認可能な仮想空間を形成する表示装置と連携するコンピュータに、
    前記仮想空間内において前記ユーザの位置の移動および前記ユーザの向きの変化の少なくとも一方を生じさせる情報を取得することと、
    前記取得された情報を基に、前記仮想空間内における前記ユーザの視線の移動方向において、前記ユーザの移動元よりも移動先が相対的に明るくなるように画像を形成し、前記表示装置に出力することと、を実行させるためのプログラム。
JP2022550598A 2020-09-16 2021-09-16 情報処理装置、情報処理方法およびプログラム Active JP7300569B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020155825 2020-09-16
JP2020155825 2020-09-16
PCT/JP2021/034070 WO2022059730A1 (ja) 2020-09-16 2021-09-16 情報処理装置、情報処理方法およびプログラム

Publications (3)

Publication Number Publication Date
JPWO2022059730A1 JPWO2022059730A1 (ja) 2022-03-24
JPWO2022059730A5 JPWO2022059730A5 (ja) 2023-03-14
JP7300569B2 true JP7300569B2 (ja) 2023-06-30

Family

ID=80776694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022550598A Active JP7300569B2 (ja) 2020-09-16 2021-09-16 情報処理装置、情報処理方法およびプログラム

Country Status (4)

Country Link
US (1) US20230215123A1 (ja)
JP (1) JP7300569B2 (ja)
CN (1) CN116114012A (ja)
WO (1) WO2022059730A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116173506A (zh) * 2023-03-03 2023-05-30 网易(杭州)网络有限公司 虚拟对象控制方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018198503A1 (ja) 2017-04-26 2018-11-01 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018191769A (ja) 2017-05-15 2018-12-06 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法
JP2019519053A (ja) 2016-04-08 2019-07-04 ヴィッツァリオ,インコーポレイテッド 視覚機能データを獲得し、分析し、生成する、かつデータに基づいてメディアを修正するための方法およびシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103202010B (zh) * 2010-11-09 2014-12-03 富士胶片株式会社 增强现实感提供设备
JP6523233B2 (ja) * 2016-10-26 2019-05-29 株式会社コロプラ 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるプログラム
JP2018072604A (ja) * 2016-10-31 2018-05-10 株式会社コロプラ Vr酔いを抑制するための方法、当該方法をコンピュータに実行させるためのプログラムおよび、情報処理装置
US10421459B2 (en) * 2016-12-20 2019-09-24 GM Global Technology Operations LLC Contextual-assessment vehicle systems
JP6927797B2 (ja) * 2017-08-23 2021-09-01 株式会社コロプラ ヘッドマウントデバイスを介して仮想空間をユーザに提供するための方法、プログラム及びコンピュータ
US11403806B2 (en) * 2018-03-20 2022-08-02 Sony Corporation Information processing apparatus, information processing method, and recording medium
JP2019185363A (ja) * 2018-04-09 2019-10-24 Necパーソナルコンピュータ株式会社 表示制御装置、表示制御方法、及びプログラム
JP6556295B2 (ja) * 2018-05-24 2019-08-07 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019519053A (ja) 2016-04-08 2019-07-04 ヴィッツァリオ,インコーポレイテッド 視覚機能データを獲得し、分析し、生成する、かつデータに基づいてメディアを修正するための方法およびシステム
WO2018198503A1 (ja) 2017-04-26 2018-11-01 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018191769A (ja) 2017-05-15 2018-12-06 任天堂株式会社 情報処理プログラム、情報処理システム、情報処理装置、および、情報処理方法

Also Published As

Publication number Publication date
US20230215123A1 (en) 2023-07-06
WO2022059730A1 (ja) 2022-03-24
CN116114012A (zh) 2023-05-12
JPWO2022059730A1 (ja) 2022-03-24

Similar Documents

Publication Publication Date Title
CN117032450B (zh) 用于操纵环境中的对象的方法
US12299251B2 (en) Devices, methods, and graphical user interfaces for presenting virtual objects in virtual environments
US10719911B2 (en) Information processing method and system for executing the information processing method
EP3117290B1 (en) Interactive information display
JP6097377B1 (ja) 画像表示方法及びプログラム
JP5914739B1 (ja) ヘッドマウントディスプレイシステムを制御するプログラム
JP6087453B1 (ja) 仮想空間の提供方法、およびプログラム
US9779702B2 (en) Method of controlling head-mounted display system
CN110300994B (zh) 图像处理装置、图像处理方法以及图像系统
US12141339B2 (en) Image generation apparatus and information presentation method
KR20230037054A (ko) 사용자의 신체에 대한 디바이스의 디스플레이를 업데이트하기 위한 시스템들, 방법들, 및 그래픽 사용자 인터페이스들
JP2017138973A (ja) 仮想空間の提供方法、およびプログラム
JP2017045296A (ja) ヘッドマウントディスプレイシステムを制御するプログラム
JP7300569B2 (ja) 情報処理装置、情報処理方法およびプログラム
CN119948434A (zh) 包括环境表示的用户界面
JP2017097918A (ja) 画像表示方法及びプログラム
JP7492497B2 (ja) プログラム、情報処理方法、及び情報処理装置
CN117999534A (zh) 用于与三维环境进行交互的设备、方法和图形用户界面

Legal Events

Date Code Title Description
A529 Written submission of copy of amendment under article 34 pct

Free format text: JAPANESE INTERMEDIATE CODE: A5211

Effective date: 20221207

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221207

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20221207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221223

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230328

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230426

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20230426

R150 Certificate of patent or registration of utility model

Ref document number: 7300569

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350