JP2018045459A - シミュレーションシステム及びプログラム - Google Patents

シミュレーションシステム及びプログラム Download PDF

Info

Publication number
JP2018045459A
JP2018045459A JP2016179890A JP2016179890A JP2018045459A JP 2018045459 A JP2018045459 A JP 2018045459A JP 2016179890 A JP2016179890 A JP 2016179890A JP 2016179890 A JP2016179890 A JP 2016179890A JP 2018045459 A JP2018045459 A JP 2018045459A
Authority
JP
Japan
Prior art keywords
user
information display
information
change
display object
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.)
Granted
Application number
JP2016179890A
Other languages
English (en)
Other versions
JP6373920B2 (ja
Inventor
絢 玉置
Aya Tamaki
絢 玉置
恩田 明生
Akio Onda
明生 恩田
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.)
Bandai Namco Entertainment Inc
Original Assignee
Bandai Namco Entertainment Inc
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 Bandai Namco Entertainment Inc filed Critical Bandai Namco Entertainment Inc
Priority to JP2016179890A priority Critical patent/JP6373920B2/ja
Priority to CN201780056405.9A priority patent/CN109690633B/zh
Priority to PCT/JP2017/032827 priority patent/WO2018051970A1/ja
Publication of JP2018045459A publication Critical patent/JP2018045459A/ja
Application granted granted Critical
Publication of JP6373920B2 publication Critical patent/JP6373920B2/ja
Priority to US16/279,119 priority patent/US11094106B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • A63F13/428Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/212Input arrangements for video game devices characterised by their sensors, purposes or types using sensors worn by the player, e.g. for measuring heart beat or leg activity
    • 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/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • 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/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • A63F13/525Changing parameters of virtual cameras
    • 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
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5252Changing parameters of virtual cameras using two or more virtual cameras concurrently or sequentially, e.g. automatically switching between fixed virtual cameras when a character changes room or displaying a rear-mirror view in a car-driving game
    • 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
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5255Changing parameters of virtual cameras according to dedicated instructions from a player, e.g. using a secondary joystick to rotate the camera around a player's character
    • 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
    • A63F13/525Changing parameters of virtual cameras
    • A63F13/5258Changing parameters of virtual cameras by dynamically adapting the position of the virtual camera to keep a game object or game character in its viewing frustum, e.g. for tracking a character or a ball
    • 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; CALCULATING OR 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; CALCULATING OR 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
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/02Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the way in which colour is displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/10Intensity circuits
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/37Details of the operation on graphic patterns
    • G09G5/377Details of the operation on graphic patterns for mixing or overlaying two or more graphic patterns
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/38Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory with means for controlling the display position
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/64Constructional details of receivers, e.g. cabinets or dust covers
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/303Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device for displaying additional data, e.g. simulating a Head Up Display
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04804Transparency, e.g. transparent or translucent windows
    • 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
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/001Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes using specific devices not provided for in groups G09G3/02 - G09G3/36, e.g. using an intermediate record carrier such as a film slide; Projection systems; Display of non-alphanumerical information, solely or in combination with alphanumerical information, e.g. digital display on projected diapositive as background

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Biophysics (AREA)
  • Cardiology (AREA)
  • Heart & Thoracic Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Geometry (AREA)
  • Computing Systems (AREA)
  • Optics & Photonics (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

【課題】頭部装着型表示装置を用いたシステムにおいて情報表示物の適正な表示処理を実現できるシミュレーションシステム等の提供。【解決手段】シミュレーションシステムは、複数のオブジェクトが配置される仮想空間の設定処理を行う仮想空間設定部と、頭部装着型表示装置を装着するユーザの視点に対応する仮想カメラの制御処理を行う仮想カメラ制御部と、頭部装着型表示装置の表示画像として、仮想空間において仮想カメラから見える画像を生成する表示処理部を含む。仮想空間設定部は、ユーザの視線方向に少なくとも1つの情報表示物を配置する。表示処理部は、ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、情報表示物の表示態様の変更処理を行う。【選択図】図31

Description

本発明は、シミュレーションシステム及びプログラム等に関する。
従来より、HMD(頭部装着型表示装置)をユーザが頭部に装着し、HMDの画面に表示される画像をユーザが見ることで、いわゆるバーチャルリアリティー(VR)の世界を体感できるシステムが知られている。このようなHMDを用いたシステムの従来技術としては、例えば特許文献1、2に開示される技術がある。
特許文献1には、ユーザの頭部の変動状態が所定の変動状態になった場合に、HMDの液晶シャッタを開いて、ユーザに表示する視覚情報を、周囲の環境視覚情報に切り替える手法が開示されている。特許文献2には、動き検出部によりユーザの頭部動作を特定し、その角速度に対応するユーザの望む処理を実行し、更にユーザの頭部の戻り動作を処理に反映させないことで、ユーザの頭部動作による操作を正確に実行する手法が開示されている。
特開平7−261112号公報 特開2012−123812号公報
HMDを用いたシステムでは、仮想空間において仮想カメラから見える画像がHMDに表示される。このような画像をHMDに表示することで、ユーザの視界の全周囲に亘って、広大なVR空間が広がるようになるため、ユーザの仮想現実感を格段に向上できる。
一方、HMDを用いたシステムでは、説明情報やステータス情報などの様々な情報をユーザに対して表示することが望ましい。
しかしながら、このような情報がユーザに対して適切に表示されないと、様々な問題を招いてしまう。例えばHMDを用いたシステムでは、ユーザの視線方向が様々に変化し、VR空間には多数のオブジェクトが存在する。従って、ユーザに対する情報表示が不適切であると、画面が見にくくなってしまったり、ユーザの仮想現実感を損ねてしまうなどの問題を招く。
本発明の幾つかの態様によれば、頭部装着型表示装置を用いたシステムにおいて情報表示物の適正な表示処理を実現できるシミュレーションシステム及びプログラム等を提供できる。
本発明の一態様は、複数のオブジェクトが配置される仮想空間の設定処理を行う仮想空間設定部と、頭部装着型表示装置を装着するユーザの視点に対応する仮想カメラの制御処理を行う仮想カメラ制御部と、前記頭部装着型表示装置の表示画像として、前記仮想空間において前記仮想カメラから見える画像を生成する表示処理部と、を含み、前記仮想空間設定部は、前記ユーザの視線方向に少なくとも1つの情報表示物を配置し、前記表示処理部は、前記ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、前記情報表示物の表示態様の変更処理を行うシミュレーションシステムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明の一態様によれば、複数のオブジェクトが配置される仮想空間の設定処理が行われ、頭部装着型表示装置の表示画像として、ユーザの視点に対応する仮想カメラから見える画像が生成される。そしてユーザの視線方向に情報表示物が配置され、ユーザの視点変化(視線方向及び視点位置の少なくとも一方の変化)により所与の変更条件が満たされたと判断されると、情報表示物の表示態様を変更する処理が行われる。このようにすれば、ユーザの視線方向に配置される情報表示物について、変更条件が満たされると、情報表示物の表示態様が変更されることで、より適切な画像を頭部装着型表示装置に表示できるようになる。従って、頭部装着型表示装置を用いたシステムにおいて情報表示物の適正な表示処理を実現できるシミュレーションシステム等の提供が可能になる。
また本発明の一態様では、前記仮想空間設定部は、前記ユーザの視点変化に追従するように制御される前記情報表示物を前記仮想空間に配置してもよい。
このようにすれば、ユーザの視線方向又は視点位置が変化すると、それに追従するように情報表示物が制御されるため、情報表示物による適切な情報提示等を実現できる。
また本発明の一態様では、前記表示処理部は、前記情報表示物の種類、優先度又は重要度に応じた前記表示態様の変更処理を行ってもよい。
このようにすれば、情報表示物の種類、優先度又は重要度に応じた適切な表示態様の変更処理を実現できる。
また本発明の一態様では、前記表示処理部は、前記情報表示物が表示されてからの経過時間に応じた前記表示態様の変更処理を行ってもよい。
このようにすれば、情報表示物が表示されてからの経過時間を反映させた表示態様の変更処理を実現できるようになる。
また本発明の一態様では、前記表示処理部は、前記表示態様の変更処理として、前記情報表示物の消去処理、前記情報表示物の半透明化処理、前記ユーザの視線方向への前記情報表示物の追従の解除処理、前記情報表示物の移動処理、前記情報表示物のサイズ変更処理、或いは前記情報表示物の色情報変更処理を行ってもよい。
このようにすれば、変更条件が満たされた場合に、情報表示物の消去処理又は半透明化処理を行ったり、情報表示物の追従の解除処理を行ったり、情報表示物の移動処理やサイズ変更処理を行ったり、或いは情報表示物の色情報変更処理を行うことで、情報表示物の適正な表示処理を実現できるようになる。
また本発明の一態様では、前記所与の変更条件が満たされたかを判定する判定部を含み、前記判定部は、前記ユーザの視点変化情報に基づいて、前記所与の変更条件が満たされたか否かを判定してもよい。
このようにすれば、ユーザの視点変化が大きかったり、急峻な変化であった場合に、変更条件が満たされたと判定して、情報表示物の表示態様の変更処理を行うことが可能になる。
また本発明の一態様では、前記所与の変更条件が満たされたかを判定する判定部を含み(判定部としてコンピュータを機能させ)、前記情報表示物には判定範囲が設定されており、前記判定部は、前記ユーザの視線方向の注視位置が前記判定範囲を越えた場合に、前記所与の変更条件が満たされたと判定してもよい。
このようにすれば、情報表示物の方を基準にして、情報表示物に対する視線方向の相対的な変化を検出して、表示態様の変更処理のための変更条件を判定できるようになる。
また本発明の一態様では、第1の情報表示物に対しては、前記判定範囲として第1の判定範囲が設定され、第2の情報表示物に対しては、前記判定範囲として、前記第1の判定範囲とは異なる第2の判定範囲が設定されてもよい。
このようにすれば、情報表示物に応じて異なる判定範囲を設定して、異なる判定基準で変更条件を判定できるようになる。
また本発明の一態様では、複数の前記情報表示物が前記仮想空間に配置される場合に、前記表示処理部は、前記ユーザの視点から見て中央部に位置する前記情報表示物に対して、前記表示態様の変更処理を行ってもよい。
このようにすれば、ユーザの視点から見て中央部に位置する情報表示物が、ユーザの視界の妨げになってしまうなどの事態を防止できるようになる。
また本発明の一態様では、複数の前記情報表示物が前記仮想空間に配置される場合に、前記表示処理部は、第1の情報表示物と第2の情報表示物とで、前記所与の変更条件の内容又は前記表示態様の変更処理の内容を異ならせてもよい。
このようにすれば、各情報表示物に応じた適切な変更条件又は変更処理内容を設定して、表示態様の変更処理を実行できるようになる。
また本発明の一態様では、前記表示処理部は、前記情報表示物の奥行き値に応じた前記表示態様の変更処理を行ってもよい。
このようにすれば、情報表示物の奥行き値を有効利用した情報表示物の表示態様の変更処理を実現できる。
また本発明の一態様では、前記表示処理部は、前記所与の変更条件が満たされてからの経過時間に応じた前記表示態様の変更処理を行ってもよい。
このようにすれば、変更条件が満たされてからの経過時間を反映させた表示態様の変更処理を実現できる。
また本発明の一態様では、前記所与の変更条件が満たされたかを判定する判定部を含み(判定部としてコンピュータを機能させ)、前記表示処理部は、前記判定部により前記所与の変更条件が満たされたと判定された場合に、前記情報表示物の前記表示態様の変更処理を行い、前記情報表示物の前記表示態様の変更処理が行われた後、前記判定部により所与の復帰条件が満たされたと判定された場合に、前記情報表示物の前記表示態様の変更処理の復帰処理を行ってもよい。
このようにすれば、変更条件が満たされて、情報表示物の表示態様の変更処理が行われた場合に、情報表示物の表示態様が変更されたままの状態になってしまうのを防止できるようになる。
また本発明の一態様では、前記判定部は、前記表示態様の変更処理が行われた後、所与の時間が経過した場合、或いは、前記表示態様の変更処理が行われた後、所与の時間の間、前記ユーザの視線方向の変化が検出されなかった場合、或いは、前記表示態様の変更処理が行われた後、前記ユーザによる所与のオブジェクトの注視が検出された場合に、前記所与の復帰条件が満たされたと判定してもよい。
このようにすれば、様々な状況に対応した適切な復帰条件を判定して、復帰処理を実行できるようになる。
また本発明の一態様では、前記表示処理部は、前記情報表示物の前記表示態様の変更処理が行われていない時と、前記情報表示物の前記表示態様の変更処理が行われている時とで、前記頭部装着型表示装置の前記表示画像の明るさを異ならせてもよい。
このようにすれば、表示態様の変更処理が行われているか否かに応じて表示画像の明るさを設定して、より適切な表示画像を生成できるようになる。
本実施形態のシミュレーションシステムの構成例を示すブロック図。 図2(A)、図2(B)は本実施形態に用いられるHMDの一例。 図3(A)、図3(B)は本実施形態に用いられるHMDの他の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 キャラクタのステータスの表示についての説明図。 図8(A)〜図8(D)は情報表示物の表示手法の説明図。 図9(A)、図9(B)は本実施形態の表示態様変更手法の説明図。 図10(A)、図10(B)は本実施形態の表示態様変更手法の説明図。 図11(A)、図11(B)は本実施形態の表示態様変更手法の説明図。 図12(A)、図12(B)は本実施形態の表示態様変更手法の説明図。 図13(A)、図13(B)は情報表示物の種類、優先度、重要度に応じた表示態様変更手法の説明図。 情報表示物の表示からの経過時間に応じた表示態様変更手法の説明図。 図15(A)、図15(B)は変化角度、変化速度又は変化加速度を用いた変更条件の判定手法の説明図。 変化角度、変化速度又は変化加速度に応じて表示態様の変更処理の内容を異ならせる手法の説明図。 図17(A)、図17(B)は判定範囲を用いた変更条件の判定手法の説明図。 複数の情報表示物への判定範囲の設定手法の説明図。 中央部の情報表示物に対して表示態様の変更処理を行う手法の説明図。 情報表示物に応じて変更条件又は変更処理の内容を異ならせる手法の説明図。 図21(A)、図21(B)は情報表示物の奥行き値に応じて表示態様の変更処理を行う手法の説明図。 図22(A)〜図22(C)は変更条件が満たされてからの経過時間に応じた表示態様変更手法の説明図。 図23(A)〜図23(C)は表示態様の変更処理の復帰処理の説明図。 図24(A)〜図24(C)は表示態様の変更処理の復帰処理の説明図。 表示態様の変更処理の復帰処理の詳細例を示すフローチャート。 図26(A)〜図26(C)は表示態様の変更処理の非実行時と実行時とで表示画像の明るさを異ならせる手法の説明図。 図27(A)、図27(B)はユーザとキャラクタの位置関係情報に応じたコマンドの効果の発動処理の説明図。 図28(A)、図28(B)はユーザとキャラクタの位置関係情報に応じたコマンドの効果の発動処理の説明図。 図29(A)、図29(B)はユーザとキャラクタの視線関係情報に応じたコマンドの効果の発動処理の説明図。 ユーザの注視情報に応じたコマンドの効果の発動処理の説明図。 本実施形態の詳細な処理例を示すフローチャート。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.シミュレーションシステム
図1は、本実施形態のシミュレーションシステム(シミュレータ、ゲームシステム)の構成例を示すブロック図である。本実施形態のシミュレーションシステムは例えばバーチャルリアリティ(VR)をシミュレートするシステムであり、ゲームコンテンツを提供するゲームシステム、スポーツ競技シミュレータや運転シミュレータなどのリアルタイムシミュレーションシステム、映像等のコンテンツを提供するコンテンツ提供システム、或いは遠隔作業を実現するオペレーティングシステムなどの種々のシステムに適用可能である。なお、本実施形態のシミュレーションシステムは図1の構成に限定されず、その構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
撮像部150は、1又は複数のカメラにより構成される。各カメラは、レンズ(広角レンズ)等の光学系や、CCDやCMOSセンサ等の撮像素子により構成される。また撮像部150に1又は複数のマイクを設けてもよい。撮像部150を用いることで、ユーザの動き情報(各部位の動き情報、スケルトン情報)を検出したり、ユーザの認識処理(顔認識等)を実現できる。また複数のカメラを撮像部150に設けることで、空間の奥行き方向を認識し、撮像部150の前方でプレイしている二人のユーザの前後関係を判断することなどが可能になる。また複数のマイクを撮像部150に設けることで、音源の方向等を検出できる。例えば複数のカメラ及び複数のマイクが設けられた撮像部150を用いることで、ユーザの動きや音声などを操作情報として直感的にプレイできるゲームを実現することが可能になる。
操作部160は、ユーザ(プレーヤ)が種々の操作情報(入力情報)を入力するためのものである。操作部160は、例えば操作ボタン、方向指示キー、ジョイスティック、ハンドル、ペダル又はレバー等の種々の操作デバイスにより実現できる。
記憶部170は各種の情報を記憶する。記憶部170は、処理部100や通信部196などのワーク領域として機能する。ゲームプログラムや、ゲームプログラムの実行に必要なゲームデータは、この記憶部170に保持される。記憶部170の機能は、半導体メモリ(DRAM、VRAM)、HDD(ハードディスクドライブ)、SSD、光ディスク装置などにより実現できる。記憶部170は、オブジェクト情報記憶部172、描画バッファ178を含む。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(DVD、BD、CD)、HDD、或いは半導体メモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(入力装置、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
HMD200(頭部装着型表示装置)は、ユーザの頭部に装着されて、ユーザの眼前に画像を表示する装置である。HMD200は非透過型であることが望ましいが、透過型であってもよい。またHMD200は、いわゆるメガネタイプのHMDであってもよい。
HMD200は、センサ部210、表示部220、処理部240を含む。センサ部210は、例えばヘッドトラッキングなどのトラッキング処理を実現するためものである。例えばセンサ部210を用いたトラッキング処理により、HMD200の位置、方向を特定する。HMD200の位置、方向が特定されることで、ユーザの視点情報である視点位置、視線方向を特定できる。
トラッキング方式としては種々の方式を採用できる。トラッキング方式の一例である第1のトラッキング方式では、後述の図2(A)、図2(B)で詳細に説明するように、センサ部210として複数の発光素子(LED)を設ける。そして、これらの複数の発光素子からの光を、撮像部150で撮像することで、現実世界の3次元空間でのHMD200(ユーザの頭部)の位置、方向を特定する。第2のトラッキング方式では、後述の図3(A)、図3(B)で詳細に説明するように、センサ部210として複数の受光素子(フォトダイオード等)を設ける。そして外部に設けられた発光素子(LED等)からの光(レーザー等)をこれらの複数の受光素子により受光することで、HMD200の位置、方向を特定する。第3のトラッキング方式では、センサ部210としてモーションセンサを設け、このモーションセンサを用いてHMD200の位置、方向を特定する。モーションセンサは例えば加速度センサやジャイロセンサなどにより実現できる。例えば3軸の加速度センサと3軸のジャイロセンサを用いた6軸のモーションセンサを用いることで、現実世界の3次元空間でのHMD200の位置、方向を特定できる。なお、第1のトラッキング方式と第2のトラッキング方式の組合わせ、或いは第1のトラッキング方式と第3のトラッキング方式の組合わせなどにより、HMD200の位置、方向を特定してもよい。またHMD200の位置、方向を特定することでユーザの視点位置、視線方向を特定するのではなく、ユーザの視点位置、視線方向を直接に特定するトラッキング処理を採用してもよい。
HMD200の表示部220は例えば有機ELディスプレイ(OEL)や液晶ディスプレイ(LCD)などにより実現できる。例えばHMD200の表示部220には、ユーザの左目の前に設定される第1のディスプレイ又は第1の表示領域と、右目の前に設定される第2のディスプレイ又は第2の表示領域が設けられており、立体視表示が可能になっている。立体視表示を行う場合には、例えば視差が異なる左目用画像と右目用画像を生成し、第1のディスプレイに左目用画像を表示し、第2のディスプレイに右目用画像を表示する。或いは1つのディスプレイの第1の表示領域に左目用画像を表示し、第2の表示領域に右目用画像を表示する。またHMD200には左目用、右目用の2つの接眼レンズ(魚眼レンズ)が設けられており、これによりユーザの視界の全周囲に亘って広がるVR空間が表現される。そして接眼レンズ等の光学系で生じる歪みを補正するための補正処理が、左目用画像、右目用画像に対して行われる。この補正処理は表示処理部120が行う。
HMD200の処理部240は、HMD200において必要な各種の処理を行う。例えば処理部240は、センサ部210の制御処理や表示部220の表示制御処理などを行う。また処理部240が、3次元音響(立体音響)処理を行って、3次元的な音の方向や距離や広がりの再現を実現してもよい。
音出力部192は、本実施形態により生成された音を出力するものであり、例えばスピーカ又はヘッドホン等により実現できる。
I/F(インターフェース)部194は、携帯型情報記憶媒体195とのインターフェース処理を行うものであり、その機能はI/F処理用のASICなどにより実現できる。携帯型情報記憶媒体195は、ユーザが各種の情報を保存するためのものであり、電源が非供給になった場合にもこれらの情報の記憶を保持する記憶装置である。携帯型情報記憶媒体195は、ICカード(メモリカード)、USBメモリ、或いは磁気カードなどにより実現できる。
通信部196は、有線や無線のネットワークを介して外部(他の装置)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作情報や、HMD200でのトラッキング情報(HMDの位置及び方向の少なくとも一方の情報。視点位置及び視線方向の少なくとも一方の情報)や、プログラムなどに基づいて、ゲーム処理(シミュレーション処理)、移動体処理、仮想カメラ制御処理、表示処理、或いは音処理などを行う。
処理部100の各部が行う本実施形態の各処理(各機能)はプロセッサ(ハードウェアを含むプロセッサ)により実現できる。例えば本実施形態の各処理は、プログラム等の情報に基づき動作するプロセッサと、プログラム等の情報を記憶するメモリにより実現できる。プロセッサは、例えば各部の機能が個別のハードウェアで実現されてもよいし、或いは各部の機能が一体のハードウェアで実現されてもよい。例えば、プロセッサはハードウェアを含み、そのハードウェアは、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、プロセッサは、回路基板に実装された1又は複数の回路装置(例えばIC等)や、1又は複数の回路素子(例えば抵抗、キャパシター等)で構成することもできる。プロセッサは、例えばCPU(Central Processing Unit)であってもよい。但し、プロセッサはCPUに限定されるものではなく、GPU(Graphics Processing Unit)、或いはDSP(Digital Signal Processor)等、各種のプロセッサを用いることが可能である。またプロセッサはASICによるハードウェア回路であってもよい。またプロセッサは、アナログ信号を処理するアンプ回路やフィルター回路等を含んでもよい。メモリ(記憶部170)は、SRAM、DRAM等の半導体メモリであってもよいし、レジスターであってもよい。或いはハードディスク装置(HDD)等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリはコンピュータにより読み取り可能な命令を格納しており、当該命令がプロセッサにより実行されることで、処理部100の各部の処理(機能)が実現されることになる。ここでの命令は、プログラムを構成する命令セットでもよいし、プロセッサのハードウェア回路に対して動作を指示する命令であってもよい。
処理部100は、入力処理部102、演算処理部110、出力処理部140を含む。演算処理部110は、ゲーム処理部112、移動体処理部114、判定部115、仮想空間設定部116、仮想カメラ制御部118、表示処理部120、音処理部130を含む。上述したように、これらの各部により実行される本実施形態の各処理は、プロセッサ(或いはプロセッサ及びメモリ)により実現できる。なお、これらの構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
入力処理部102は、操作情報やトラッキング情報を受け付ける処理や、記憶部170から情報を読み出す処理や、通信部196を介して情報を受信する処理を、入力処理として行う。例えば入力処理部102は、操作部160を用いてユーザが入力した操作情報やHMD200のセンサ部210等により検出されたトラッキング情報を取得する処理や、読み出し命令で指定された情報を、記憶部170から読み出す処理や、外部装置(サーバ等)からネットワークを介して情報を受信する処理を、入力処理として行う。ここで受信処理は、通信部196に情報の受信を指示したり、通信部196が受信した情報を取得して記憶部170に書き込む処理などである。
演算処理部110は、各種の演算処理を行う。例えばゲーム処理(シミュレーション処理)、移動体処理、仮想カメラ制御処理、表示処理、或いは音処理などの演算処理を行う。
ゲーム処理部112(ゲーム処理のプログラムモジュール)はユーザがゲームをプレイするための種々のゲーム処理を行う。別の言い方をすれば、ゲーム処理部112(シミュレーション処理部)は、ユーザが仮想現実(バーチャルリアリティ)を体験するための種々のシミュレーション処理を実行する。ゲーム処理は、例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、開始したゲームを進行させる処理、ゲーム終了条件が満たされた場合にゲームを終了する処理、或いはゲーム成績を演算する処理などである。
移動体処理部114(移動体処理のプログラムモジュール)は、仮想空間内で移動する移動体についての種々の処理を行う。例えば仮想空間(オブジェクト空間、ゲーム空間)において移動体を移動させる処理や、移動体を動作させる処理を行う。例えば移動体処理部114は、操作部160によりユーザが入力した操作情報や、取得されたトラッキング情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、移動体(モデルオブジェクト)を仮想空間内で移動させたり、移動体を動作(モーション、アニメーション)させる制御処理を行う。具体的には、移動体の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。移動体は、例えば実空間のユーザ(プレーヤ)に対応する仮想空間の仮想ユーザ(仮想プレーヤ)、当該仮想ユーザが搭乗(操作)する搭乗移動体(操作移動体)、或いは仮想ユーザのプレイ対象となるキャラクタなどである。
判定部115(判定処理のプログラムモジュール)は各種の判定処理を行う。判定部115の詳細については後述する。
仮想空間設定部116(仮想空間設定処理のプログラムモジュール)は、複数のオブジェクトが配置される仮想空間(オブジェクト空間)の設定処理を行う。例えば、移動体(人、ロボット、車、電車、飛行機、船、モンスター又は動物等)、マップ(地形)、建物、観客席、コース(道路)、樹木、壁、水面などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)を仮想空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のオブジェクト情報記憶部172には、仮想空間でのオブジェクト(パーツオブジェクト)の位置、回転角度、移動速度、移動方向等の情報であるオブジェクト情報がオブジェクト番号に対応づけて記憶される。仮想空間設定部116は、例えば各フレーム毎にこのオブジェクト情報を更新する処理などを行う。
仮想カメラ制御部118(仮想カメラ制御処理のプログラムモジュール)は、仮想空間の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点、基準仮想カメラ)の制御処理を行う。例えば仮想カメラの視点位置又は視線方向(仮想カメラの位置又は姿勢)を制御する処理を行う。具体的には、仮想カメラの位置(X、Y、Z)や、姿勢情報である回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。この仮想カメラはユーザ(仮想ユーザ)の視点に対応する。立体視表示の場合は、左目用の第1の視点(左目用の第1の仮想カメラ)と、右目用の第2の視点(右目用の第2の仮想カメラ)が設定される。
表示処理部120(表示処理のプログラムモジュール)は、ゲーム画像(シミュレーション画像)の表示処理を行う。例えば処理部100で行われる種々の処理(ゲーム処理、シミュレーション処理)の結果に基づいて描画処理を行い、これにより画像を生成し、HMD200の表示部220に表示する。具体的には、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、或いは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を、描画バッファ178(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画する。これにより、仮想空間において仮想カメラ(所与の視点。左目用、右目用の第1、第2の視点)から見える画像が生成される。なお、表示処理部120で行われる描画処理は、頂点シェーダ処理やピクセルシェーダ処理等により実現することができる。
音処理部130(音処理のプログラムモジュール)は、処理部100で行われる種々の処理の結果に基づいて音処理を行う。具体的には、楽曲(音楽、BGM)、効果音、又は音声などのゲーム音を生成し、ゲーム音を音出力部192に出力させる。なお音処理部130の音処理の一部(例えば3次元音響処理)を、HMD200の処理部240により実現してもよい。
出力処理部140は各種の情報の出力処理を行う。例えば出力処理部140は、記憶部170に情報を書き込む処理や、通信部196を介して情報を送信する処理を、出力処理として行う。例えば出力処理部140は、書き込み命令で指定された情報を、記憶部170に書き込む処理や、外部の装置(サーバ等)に対してネットワークを介して情報を送信する処理を行う。送信処理は、通信部196に情報の送信を指示したり、送信する情報を通信部196に指示する処理などである。
そして本実施形態のシミュレーションシステムは、図1に示すように、仮想空間設定部116と仮想カメラ制御部118と表示処理部120を含む。仮想空間設定部116は、複数のオブジェクトが配置される仮想空間の設定処理を行う。例えば複数のオブジェクトの各オブジェクトの位置、方向を設定して仮想空間に配置する処理を行う。オブジェクトは、ゲームに登場したりゲーム空間を構成するゲーム要素となる表示物である。
仮想カメラ制御部118は、HMD200を装着するユーザの視点に対応する仮想カメラの制御処理を行う。例えば仮想カメラ制御部118は、ユーザの一人称視点として設定される仮想カメラの制御を行う。例えば仮想空間において移動する仮想ユーザの視点に対応する位置に、仮想カメラを設定して、仮想カメラの視点位置や視線方向を設定することで、仮想カメラの位置(位置座標)や姿勢(回転軸回りでの回転角度)を制御する。
表示処理部120は、HMD200の表示画像(表示映像)として、仮想空間において仮想カメラ(ユーザ視点)から見える画像を生成する。例えば仮想空間であるオブジェクト空間において所与の視点から見える画像を生成する。生成される画像は例えば立体視用の画像である。
そして本実施形態では仮想空間設定部116は、ユーザの視線方向(視野範囲)に少なくとも1つの情報表示物を配置する。例えばユーザの視野範囲(正面方向)に位置するように情報表示物を配置する。具体的にはユーザの正面方向に情報表示物が見えるように、情報表示物を仮想空間に配置する。
そして表示処理部120は、ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、情報表示物の表示態様(表示方法、表示方式)の変更処理を行う。ここで視点変化は、例えば視線方向及び視点位置の少なくとも一方の変化である。例えばユーザが視線方向又は視点位置(ユーザ位置)を大きく動かしたことで、変更条件が満たされたと判断された場合に、情報表示物の表示態様を変更する処理を行う。例えば表示処理部120は、変更条件が満たされた場合には、当該変更条件が満たされていない時の画像とは異なった画像に見えるように、HMD200の表示画像を生成して、HMD200に表示する。
即ち、上述したように情報表示物は、例えば仮想空間において、ユーザの視線方向に配置される。例えばユーザの視線方向(正面方向、視野範囲)の方に位置するように情報表示物が配置される。従って、ユーザの視線方向又は視点位置が大きく変化した場合に、視線方向又は視点位置の変化前の表示態様で情報表示物を表示してしまうと、不適切な表示画像がHMD200に表示されてしまうおそれがある。例えば、ユーザの視線方向が正面方向を向いている場合には、その方向に情報表示物を表示することで、情報表示物による適切な情報伝達を実現できる。一方、HMD200を用いたシステムでは、ユーザの視界の全周囲に亘って、広大なVR空間が広がるようになるため、ユーザは、正面方向だけではなく、周辺方向を見回すように視線方向を動かしたり、様々な方向に移動する場合がある。このような場合に、視線方向が正面方向を向いている時の表示態様や視点位置(ユーザ位置)が静止している時の表示態様のままで情報表示物を表示してしまうと、ユーザにとって不適正な表示になってしまうおそれがある。このため表示処理部120は、ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、情報表示物の表示態様を変更する処理を行い、このような不適切な表示が行われるのを防止する。
また仮想空間設定部116は、ユーザの視点変化(仮想カメラの視点変化)に追従するように制御される情報表示物(少なくとも1つの情報表示物)を仮想空間に配置してもよい。即ち、ユーザの視線方向及び視点位置の少なくとも一方に追従するように制御される情報表示物を配置する。例えばユーザの視線方向又は視点位置が変化すると、その変化に連動して仮想空間での情報表示物の配置位置(3次元位置)も変化する。例えばユーザの視線方向が左方向、右方向、上方向、下方向に変化すると、その方向の変化に追従するように仮想空間での情報表示物の位置や方向も変化する。或いはユーザの視点位置(ユーザ位置)が左方向、右方向、上方向、下方向に移動すると、その移動(位置の変化)に追従するように仮想空間での情報表示物の位置等も変化する。例えば情報表示物がビルボードポリゴンにより構成される場合には、ユーザの視点に正対するように(ユーザの視線方向に直交するように)、情報表示物を構成するビルボードポリゴンが配置される。
このようにユーザの視点変化に追従するように情報表示物が制御される場合には、ユーザの視線方向又は視点位置が大きく変化すると、それに追従して情報表示物の位置等も大きく変化してしまい、適切な表示画像を表示できない事態が生じてしまう。この場合にも本実施形態では、表示処理部120が情報表示物の表示態様を変更する処理を行うことで、このような事態の発生を防止できる。
また仮想空間設定部116は、ユーザの視線方向での所与の奥行き位置に、視点変化に追従するように情報表示物を配置する。例えばユーザの視点(仮想カメラ)に対する情報表示物の奥行き位置(奥行き距離)については変化しないようにしながら、視点変化(視線方向又は視点位置の変化)に追従するように、情報表示物を配置する。例えばユーザの視点(仮想カメラ)から所与の奥行き位置(Z座標軸での位置)に、例えばビルボードポリゴンで構成される情報表示物を配置する。
また表示処理部120は、情報表示物の種類、優先度又は重要度に応じた表示態様の変更処理を行ってもよい。例えば情報表示物の種類、優先度又は重要度を反映させた情報表示物の表示態様の変更処理を行う。情報表示物の種類は、例えば情報表示物が提示する情報のタイプなどによって区分けされるものである。例えば記憶部170には、各情報表示物に対してその種類の情報が関連づけられて記憶されており、この種類の情報を用いて表示態様の変更処理が行われる。情報表示物の優先度や重要度は、情報表示物により提示される情報が、どの程度、優先度や重要度が高いかを示す情報である。例えば記憶部170には、各情報表示物に対してその優先度や重要度の情報が関連づけられて記憶されており、この優先度や重要度の情報を用いて表示態様の変更処理が行われる。
例えば表示処理部120は、情報表示物が第1の種類(例えばコマンド選択のための情報表示物等)である場合には、情報表示物の表示態様の変更処理を行わない。これに対して情報表示物が第2の種類(例えば説明表示のための情報表示物等)である場合には、情報表示物の表示態様を変更処理(消去、半透明化等)を行う。情報表示物が第1の種類であるか第2の種類であるかは、記憶部170において当該情報表示物に関連づけられて記憶される。
また表示処理部120は、情報表示物に関連づけられた優先度又は重要度を用いて、表示態様の変更処理を行う。例えば記憶部170には、情報表示物に対して優先度や重要度の情報が関連づけて記憶されている。表示処理部120は、表示態様の変更処理を行う場合に、処理対象となる情報表示物に関連づけられた優先度や重要度の情報を記憶部170から読み出して、情報表示物の表示態様を変更する処理を行う。
また表示処理部120は、情報表示物が表示されてからの経過時間に応じた表示態様の変更処理を行う。例えば各情報表示物が表示されてからの経過時間を測定して記録しておく。そして情報表示物の表示態様の変更処理を行う際には、当該経過時間を反映させた処理を行う。例えば表示されてからの経過時間が長い情報表示物は、経過時間が短い情報表示物に比べて、その表示態様の変更処理を優先して行うようにする。
また表示処理部120は、表示態様の変更処理として、情報表示物の消去処理、情報表示物の半透明化処理、ユーザの視点変化への情報表示物の追従の解除処理、情報表示物の移動処理、情報表示物のサイズ変更処理、或いは情報表示物の色情報変更処理など行う。
情報表示物の消去処理は、情報表示物を、表示対象(表示リスト)から除外する処理や、透明化する処理などにより実現できる。情報表示物の半透明化処理は、情報表示物の半透明度(α値)を、例えば、より半透明になるように変化させることなどで実現できる。また前述のように情報表示物はユーザの視点変化に追従するように制御されるが、この追従の制御を解除(低減)することで、ユーザの視点変化への情報表示物の追従の解除処理を実現できる。情報表示物の移動処理は、例えば情報表示物がユーザの視線方向の方に表示されないように、情報表示物を移動させることなどにより実現できる。情報表示物のサイズ変更処理は、例えばユーザの視線方向において情報表示物が目立たなくなるようにそのサイズを小さくする処理などにより実現できる。情報表示物の色情報変更処理は、例えば情報表示物の色の明度、彩度又は色相等を変更する処理などにより実現できる。例えば情報表示物の色情報変更処理として、情報表示物の色情報を例えば背景の色情報に近づけて、背景に溶け込ませる処理などが考えられる。このような処理は、例えば情報表示物の色情報と背景の色情報に基づくαブレンディング処理やデプスキューイング処理などにより実現できる。
情報表示物は、例えば説明表示のための表示物、ステータス表示のための表示物、会話表示のための表示物、コマンド選択のための表示物、又はメニュー表示のための表示物などである。説明表示のための表示物は、例えば、ユーザに対してゲーム等についての各種の説明を行うための表示物である。ステータス表示のための表示物は、例えば、ゲーム等についての各種の状況をユーザに伝えるための表示物である。会話表示のための表示物は、例えば、各種の会話内容をユーザに伝えるための表示物である。例えばユーザのプレイ対象となるキャラクタの会話内容を伝えるための表示物である。コマンド選択のための表示物は、例えばゲーム等においてユーザがコマンドを選択するために使用される表示物である。例えばコマンドの選択肢をユーザに提示するための表示物である。メニュー表示のための表示物は、例えば、ゲーム等におけるメニュー画面をユーザに提示するための表示物である。例えばゲームモード、ゲーム設定(オプション設定)、又はゲームの終了指示などのメニュー画面を提示するための表示物である。情報表示物は、例えば文字、アイコン又は図形等を用いてユーザに情報を伝達する表示物である。一例としては、情報表示物は、ユーザに提示する情報が描かれたビルボードポリゴンなどにより実現できる。
仮想空間には、このような情報表示物以外にも、複数のオブジェクトが配置されている。このような情報表示物以外のオブジェクトとしては、例えばゲームに登場する移動体、固定物、アイテム、又は背景のオブジェクトなどがある。ゲームに登場する移動体は、例えばユーザのプレイ対象となるキャラクタや、ゲームにおいて種々の方向、位置に移動する表示物である。固定物は、移動体のように移動せずに、仮想空間の所定の位置に固定される表示物である。アイテムは、ゲームに登場する各種の道具等の表示物であり、ユーザのプレイ対象、所持対象又は把持対象となる表示物である。背景のオブジェクトは、ゲーム等の背景を構成するオブジェクトである。
またシミュレーションシステムは判定部115を含み、判定部115は、所与の変更条件が満たされたかを判定する。そして表示処理部120は、判定部115により所与の変更条件が満たされたと判定された場合に、情報表示物の表示態様の変更処理を行う。
判定部115は、例えば、ユーザの視点変化情報に基づいて、所与の変更条件が満たされたか否かを判定する。視点変化情報は、例えば視線方向変化情報又は視点位置変化情報である。視線方向変化情報は、例えば視線方向の変化角度、視線方向の変化速度、又は視線方向の変化加速度などである。視点位置変化情報は、視点位置の変化距離(変位)、視点位置の変化速度、又は視点位置の変化加速度などである。例えば判定部115は、ユーザの視線方向の変化角度が所与の角度以上になった場合、ユーザの視線方向の変化速度が所与の速度以上になった場合、又はユーザの視線方向の変化加速度が所与の加速度以上になった場合に、所与の変更条件が満たされたと判定する。或いは判定部115は、ユーザの視点位置の変化距離が所与の距離以上になった場合、ユーザの視点位置の変化速度が所与の速度以上になった場合、又はユーザの視点位置の変化加速度が所与の加速度以上になった場合に、所与の変更条件が満たされたと判定する。そして、このように変更条件が満たされると、表示処理部120が情報表示物の表示態様の変更処理を行う。
ユーザの視線方向の変化角度は、例えば視線方向のベクトルの変化角度である。例えば視線方向のベクトルの方向を表す角度(所定の基準軸に対する角度)が第1の角度から第2の角度に変化した場合に、この第1の角度と第2の角度の差が変化角度である。視線方向の変化速度は、例えば視線方向のベクトルの角度の所定単位時間(例えば1フレーム)での変化量であり、角速度に相当するものである。視線方向の変化加速度は、例えば視線方向のベクトルの角度の変化速度の所定単位時間での変化量であり、角加速度に相当するものである。ユーザの視点位置の変化距離は、例えばユーザの視点位置が第1の位置から第2の位置に変化した場合の第1の位置と第2の位置の間の距離である。ユーザの視点位置の変化速度は、視点位置の所定単位時間での変化量である。ユーザの視点位置の変化加速度は、視点位置の変化速度の所定単位時間での変化量である。
また表示処理部120は、ユーザの視点変化情報に応じて、情報表示物の表示態様の変更処理の内容を異ならせる。例えばユーザの視線方向の変化角度、変化速度又は変化加速度に応じて、情報表示物の表示態様の変更処理の内容を異ならせる。或いはユーザの視点位置の変化距離、変化速度又は変化加速度に応じて、情報表示物の表示態様の変更処理の内容を異ならせる。例えば視線方向の変化角度、変化速度又は変化加速度(視点位置の変化距離、変化速度又は変化加速度)に応じて、情報表示物の消去処理や半透明化処理の内容、情報表示物の追従の解除処理の内容、情報表示物の移動処理やサイズ変更処理の内容、或いは情報表示物の色情報変更処理の内容を異ならせる。例えば視線方向の変化角度、変化速度又は変化加速度(視点位置の変化距離、変化速度又は変化加速度)が大きいほど、情報表示物が消去されるまでの時間を短くしたり、半透明度の変化速度を速くしたり、追従が解除されるまでの時間を短くしたり、移動処理における移動速度やサイズ変更処理におけるサイズ変化速度を速くする。また視線方向の変化角度、変化速度又は変化加速度(視点位置の変化距離、変化速度又は変化加速度)が小さいほど、情報表示物が消去されるまでの時間を長くしたり、半透明度の変化速度を遅くしたり、追従が解除されるまでの時間を長くしたり、移動処理における移動速度やサイズ変更処理におけるサイズ変化速度を遅くする。
また情報表示物には例えば判定範囲(視線方向の受け付け範囲)が設定されており、判定部115は、ユーザの視線方向の注視位置が判定範囲を越えた場合に、所与の変更条件が満たされたと判定する。
例えば、ユーザの視点から見て情報表示物を内包するように、判定範囲を設定する。この判定範囲の設定は例えば判定部115が行うことができる。判定範囲は、コリジョン処理における3次元形状の判定用ボリュームであってもよいし、2次元形状の範囲であってもよい。そして、例えばユーザの視線方向に沿った直線(視線方向ベクトルの直線)と、判定範囲との交差判定を行い、当該直線と判定範囲が交差した場合には、所与の変更条件が満たされていないと判定する。一方、当該直線と判定範囲が交差しない場合には、ユーザの視線方向の注視位置が判定範囲を越えていると判断して、所与の変更条件が満たされたと判定する。視線方向に沿った直線と判定範囲との交差判定は、公知のコリジョン処理(ヒット判定)を用いて実現できる。
この場合に、判定範囲は例えば情報表示物毎に異なった範囲に設定することが望ましい。例えば複数の情報表示物のうちの第1の情報表示物に対しては、判定範囲として第1の判定範囲が設定される。一方、複数の情報表示物のうちの第2の情報表示物に対しては、判定範囲として、第1の判定範囲とは異なる第2の判定範囲が設定される。例えば第1の判定範囲と第2の判定範囲は、ユーザの視点から見て異なる大きさの範囲となっている。例えばユーザの視点から見て中央部に位置する情報表示物に対しては、例えば小さな範囲の判定範囲(第1の判定範囲)を設定する。一方、ユーザの視点から見て周辺部に位置する情報表示物に対しては、例えば大きな範囲の判定範囲(第1の判定範囲よりも大きい第2の判定範囲)を設定する。
また複数の情報表示物が仮想空間に配置される場合に、表示処理部120は、ユーザの視点から見て中央部に位置する情報表示物に対して、表示態様の変更処理を行うようにしてもよい。例えばユーザの視点から見て中央部に位置する情報表示物に対しては表示態様の変更処理を行う一方で、ユーザの視点から見て周辺部に位置する情報表示物については表示態様の変更処理を行わないようにする。ここで中央部は、例えばユーザの視線方向に沿って伸ばした直線が交差する領域であり、所定の境界によって区分けされた所定サイズの領域である。一方、周辺部は、中央部の周りの領域であり、当該直線が交差しない領域である。中央部と周辺部は、上記の所定の境界によって区分けされる。一例としては、ユーザの視線方向に沿って伸ばした直線に交差する情報表示物に対しては、表示態様の変更処理を行う一方で、当該直線と交差しない情報表示物については、表示態様の変更処理を行わないようにしてもよい。
また複数の情報表示物が仮想空間に配置される場合に、表示処理部120は、第1の情報表示物と第2の情報表示物とで、所与の変更条件の内容又は表示態様の変更処理の内容を異ならせてもよい。例えば複数の情報表示物の各情報表示物毎に、変更条件の内容又は表示態様の変更処理の内容を異ならせる。なお変更条件の内容及び表示態様の変更処理の内容の両方を異ならせてもよい。例えば視線方向の変化角度、変化速度又は変化加速度(視点位置の変化距離、変化速度又は変化加速度)に基づく変更条件の判定の際のしきい値を異ならせることで、変更条件の内容を異ならせることができる。また、上述した判定範囲のサイズ等を異ならせることで、変更条件の内容を異ならせることができる。また、情報表示物の消去処理や半透明化処理の内容、情報表示物の追従の解除処理の内容、情報表示物の移動処理やサイズ変更処理の内容、或いは情報表示物の色情報変更処理の内容を異ならせることで、情報表示物の表示態様の変更処理の内容を異ならせることができる。
また表示処理部120は、情報表示物の奥行き値に応じた表示態様の変更処理を行ってもよい。奥行き値は、ユーザの視点から見た場合における、情報表示物の奥行き方向での距離を表すものであり、例えば視点座標系(カメラ座標系)におけるZ座標軸の座標値などである。例えば第1の情報表示物の奥行き値が、第1の奥行き値であり、第2の情報表示物の奥行き値が、第1の奥行き値とは異なる第2の奥行き値であったとする。この場合に表示処理部120は、第1の情報表示物(例えば視点から見て手前側の情報表示物)に対しては表示態様の変更処理を行う一方で、第2の情報表示物(例えば視点から見て奥側の情報表示物)に対しては表示態様の変更処理を行わないようにする。或いは第1の情報表示物と第2の情報表示物とで、表示態様の変更処理の内容を異ならせてもよい。
また表示処理部120は、所与の変更条件が満たされてからの経過時間に応じた表示態様の変更処理を行ってよい。例えば変更条件が満たされてからの経過時間をパラメータとして、情報表示物の消去処理や半透明化処理、情報表示物の追従の解除処理、情報表示物の移動処理やサイズ変更処理、或いは情報表示物の色情報変更処理を行う。例えば変更条件が満たされてからの経過時間に基づいて、半透明化処理の半透明度を変化させる。例えば経過時間が長いほど、より透明にする半透明度に設定する。或いは、変更条件が満たされてからの経過時間に基づいて、移動処理における移動速度やサイズ変更処理におけるサイズ変化速度を設定してもよい。
また表示処理部120は、情報表示物の表示態様の変更処理が行われた後、判定部115により所与の復帰条件が満たされたと判定された場合に、情報表示物の表示態様の変更処理の復帰処理を行う。復帰処理は、表示態様の変更前の状態に戻したり、表示態様の変更前の状態に近づける処理である。例えば表示態様の変更処理により、情報表示物の消去処理が行われた場合には、消去された情報表示物を再表示する復帰処理を行う。また表示態様の変更処理により、情報表示物の半透明化処理が行われた場合には、半透明になった情報表示物を、半透明でない情報表示物に戻す復帰処理を行う。また表示態様の変更処理により、情報表示物の追従の解除処理が行われた場合には、この解除処理を無効にして、情報表示物を視線方向に追従させる復帰処理を行う。また表示態様の変更処理により、情報表示物の移動処理やサイズ変化処理が行われた場合には、情報表示物を移動前の状態やサイズ変更前の状態に戻す復帰処理を行う。また表示態様の変更処理により、情報表示物の色情報変更処理が行われた場合には、情報表示物の色情報を変更前の色情報に戻す復帰処理を行う。
この場合に判定部115は、表示態様の変更処理が行われた後、所与の時間が経過した場合、或いは、表示態様の変更処理が行われた後、所与の時間の間、ユーザの視線方向の変化が検出されなかった場合、或いは、表示態様の変更処理が行われた後、ユーザによる所与のオブジェクトの注視が検出された場合に、所与の復帰条件が満たされたと判定する。そして情報表示物の表示態様の変更処理の復帰処理を実行する。例えば判定部115は、表示態様の変更処理が行われた後、時間経過の計測を行い、所定の所与の時間が経過したと判断された場合に、復帰処理を実行する。また表示態様の変更処理が行われた後、ユーザの視線方向の変化の検出処理を行い、視線方向の変化が小さく、所定変化量以下であると判断された場合には、復帰処理を実行する。また、表示態様の変更処理が行われた後、ユーザが、所与のオブジェクトを例えば所与の期間の間、注視していることが検出された場合には、復帰処理を実行する。
また表示処理部120は、情報表示物の表示態様の変更処理が行われていない時と、情報表示物の表示態様の変更処理が行われている時とで、HMD200の表示画像の明るさを異ならせてもよい。表示画像の明るさは、表示画像の全体的な明るさであり、例えば表示画像を構成する全画素の平均的な輝度(明度)などで規定できる。そして情報表示物の表示態様の変更処理が行われておらず、情報表示物の表示が通常表示になっている場合には、例えばHMD200の表示画像を暗い設定にする。一方、情報表示物の表示態様の変更処理が行われており、例えば情報表示物が非表示になったり、半透明になっている場合には、例えばHMD200の表示画像を明るい設定にする。
また仮想カメラ制御部118は、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御する。
例えば入力処理部102(入力受け付け部)は、HMD200を装着するユーザの視点情報のトラッキング情報を取得する。例えばユーザの視点位置、視線方向の少なくとも1つである視点情報のトラッキング情報(視点トラッキング情報)を取得する。このトラッキング情報は、例えばHMD200のトラッキング処理を行うことで取得できる。なおトラッキング処理によりユーザの視点位置、視線方向を直接に取得すようにしてもよい。一例としては、トラッキング情報は、ユーザの初期視点位置からの視点位置の変化情報(視点位置の座標の変化値)、及び、ユーザの初期視線方向からの視線方向の変化情報(視線方向の回転軸回りでの回転角度の変化値)の少なくとも一方を含むことができる。このようなトラッキング情報が含む視点情報の変化情報に基づいて、ユーザの視点位置や視線方向(ユーザの頭部の位置、姿勢の情報)を特定できる。
そして仮想カメラ制御部118は、取得されたトラッキング情報(ユーザの視点位置及び視線方向の少なくとも一方の情報)に基づいて仮想カメラの視点位置、視線方向を変化させる。例えば、仮想カメラ制御部118は、実空間でのユーザの視点位置、視線方向の変化に応じて、仮想空間での仮想カメラの視点位置、視線方向(位置、姿勢)が変化するように、仮想カメラを設定する。このようにすることで、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御できる。
なお本実施形態では、ユーザがプレイするゲームのゲーム処理として、仮想現実のシミュレーション処理を行う。仮想現実のシミュレーション処理は、実空間での事象を仮想空間で模擬するためのシミュレーション処理であり、当該事象をユーザに仮想体験させるための処理である。例えば実空間のユーザに対応する仮想ユーザやその搭乗移動体などの移動体を、仮想空間で移動させたり、移動に伴う環境や周囲の変化をユーザに体感させるための処理を行う。
またシミュレーションシステムはゲーム処理を行うゲーム処理部112を含む。そしてゲーム処理部112は、ユーザのゲームプレイの対象となるキャラクタの情報とユーザの視点情報との応じたコマンドの効果を、発動させる処理を行う。
例えば本実施形態では、複数のコマンドの中からユーザが選択したコマンドを受け付ける処理を行う。例えばユーザが選択可能なN個のコマンドの情報が記憶部170(コマンド情報記憶部)に記憶されている。そして、例えば、これらのN個のコマンドの中からM個(M<N)のコマンドが、自動的に或いはユーザにより選択されて、いわゆるデッキと呼ばれるコマンドのセットが編成される。ゲームプレイ中においては、ユーザは、これらのM個のコマンドの中から自身が所望するコマンドを選択する。すると、選択されたコマンドが、発動対象のコマンドとして受け付けられる。
そしてゲーム処理部112は、受け付けられたコマンドの効果を発動させる処理を、ゲーム処理として行う。例えば各コマンドの効果は各コマンドに関連づけられて、コマンド情報として、記憶部170に記憶されている。ゲーム処理部112は、ユーザが選択したコマンドに関連づけられた効果を発動させる処理を行う。
そしてゲーム処理部112は、コマンドの効果の発動結果に基づいて、ゲームパラメータを演算する処理、ゲームを進行させる処理、ゲーム成績(ゲーム結果)を演算する処理、或いはコマンドに対応するアイコンの制御処理などのゲーム処理を行う。
具体的には、ゲーム処理部112は、ゲームパラメータの値を増減させる演算処理を行う。そして演算処理後のゲームパラメータに基づいて、キャラクタの動作(挙動)を制御したり、ストーリーの分岐処理を行ったり、ゲームイベントを発生する処理を行ったりするなどの、各種のゲーム処理を行う。例えばユーザのゲームプレイの対象となるキャラクタとユーザとによりストーリーが進行するゲームの処理を行う。
表示処理部120は、上記のゲーム処理の結果に基づいて、ゲーム画像の表示処理を行う。例えばゲームパラメータの演算結果や、ゲーム進行処理の結果や、ゲーム成績の演算結果や、アイコンの制御処理の結果に応じたゲーム画像を、HMD200の表示部220に表示するための処理を行う。また音処理部130も、ゲーム処理の結果に基づいて、BGM、効果音又は音声等のゲーム音を、音出力部192から出力するための処理を行う。
そして本実施形態では、ゲーム処理部112は、ユーザのゲームプレイの対象となるキャラクタの情報とユーザの視点情報とに応じたコマンドの効果を、発動させる処理を行う。例えばキャラクタの情報とユーザの視点情報とにより設定(特定)される情報(例えば位置関係情報、視線関係情報、或いは注視情報等)に応じたコマンドの効果を、発動させる処理を行う。
具体的にはゲーム処理部112は、キャラクタの情報とユーザの視点情報とに応じて、コマンドの効果の度合い及びコマンドの効果の内容の少なくとも一方を変化させる処理を行う。例えばゲーム処理部112は、キャラクタの情報とユーザの視点情報とにより設定(特定)される情報(例えば位置関係情報、視線関係情報、或いは注視情報等)が変化すると、それに応じてコマンドの効果の度合い及びコマンドの効果の内容の少なくとも一方が変化するように、コマンドの発動処理を行う。
ここで、キャラクタの情報は、例えば、キャラクタの位置情報、方向情報、ゲームパラメータ情報、部位情報、姿勢情報及び種類情報の少なくとも1つである。キャラクタは、ゲームに登場するゲームプレイ要素であり、例えば実世界の人、動物、ロボット、或いは移動体等を表すものであり、ゲーム画像にオブジェクトとして表示されるものである。
具体的には、ユーザのゲームプレイの対象となるキャラクタは、例えばユーザのゲームプレイの相手となるキャラクタである。異性キャラクタとのコミュニケーションゲーム(人間関係シミュレーションゲーム)を例にとれば、ユーザのコミュニケーションの相手(候補)となるキャラクタである。例えば本実施形態では表示処理部120はユーザの例えば一人称視点でのゲーム画像を生成し、生成された一人称視点での画像をHMD200の表示部220に表示する。このようにすることで、あたかもゲーム空間(CGアニメの世界)の中に自分が入り込んだかのような仮想現実感をユーザに与えることができる。そしてキャラクタは、このゲーム空間(オブジェクト空間、仮想3次元空間)の中に、ユーザのゲームプレイの対象として登場する。これにより、ユーザは、あたかも本当の人間(キャラクタ)がユーザの眼前に存在するような仮想現実を感じることができる。なおユーザのゲームプレイの対象となるキャラクタとして、戦争ゲームやRPGゲームやスポーツゲームなどでユーザの敵や味方として登場するキャラクタを用いてもよい。
また、ゲームパラメータは、ゲーム処理(ゲーム進行処理等)に使用されるパラメータである。例えばゲームパラメータは、キャラクタやユーザのステータスや能力等を表すパラメータである。例えばキャラクタのゲームパラメータとしては、キャラクタの心理や状態を表すステータスパラメータ、キャラクタの能力を表すパラメータ、キャラクタの行動に関するパラメータ、或いはキャラクタの所持物に関するパラメータなどの種々のパラメータを想定できる。またキャラクタのゲームパラメータは、ユーザに対するキャラクタの評価を表すパラメータであってもよい。
キャラクタの部位情報は、キャラクタを構成する部位(部位オブジェクト)の種類情報(頭、胸、腰、足又は手等)や、部位の位置情報(キャラクタの代表位置に対する相対位置)や、或いは部位の形状情報(部位オブジェクトの形状)などである。キャラクタの姿勢情報は、例えば、座る、立つ、歩く、又は走るなどのキャラクタのモーションを特定する姿勢の情報である。例えばキャラクタがスケルトンモデルで表現される場合には、このスケルトンの形状情報がキャラクタの姿勢情報に対応する。キャラクタの種類情報は、例えばキャラクタのタイプ或いは属性と呼ばれるものであり、異性のキャラクタであれば、活発タイプ、真面目タイプ、甘えん坊タイプ、又は清楚タイプなどである。
またユーザの視点情報は、例えばユーザの視点位置情報、視線方向情報、及び仮想カメラ属性情報の少なくとも1つである。視点位置情報は、例えばゲーム空間(オブジェクト空間、仮想3次元空間)内において、ユーザの視点として設定される位置の情報である。視線方向情報は、当該視点でのユーザの視線方向を表す情報である。仮想カメラ属性情報は、ユーザの視点に設定される仮想カメラについての情報であり、例えば画角情報、立体視における両眼視差情報など種々の情報を想定できる。
更に具体的には、ゲーム処理部112は、ユーザとキャラクタとの位置関係情報に応じたコマンドの効果を、発動させる処理を行う。例えば、一人称視点の場合には、ユーザの視点位置とキャラクタの位置(代表位置)との位置関係情報に応じたコマンドの効果を、発動させる。位置関係情報は、ユーザの位置(視点位置、ユーザキャラクタの位置)とキャラクタの位置(代表位置、視点位置)との関係を表す情報である。この位置関係情報としては、例えばユーザとキャラクタとの距離(ゲーム空間での距離)などを想定できるが、これには限定されない。例えばユーザとキャラクタとの方向関係の情報であってもよい。
またゲーム処理部112は、ユーザの視線とキャラクタとの関係を表す視線関係情報に応じたコマンドの効果を、発動させる処理を行う。視線関係情報は、ユーザの視線とキャラクタとの関係を表す情報であり、例えばユーザの視線について、キャラクタとの相対的な関係を表す情報である。例えば視線関係情報は、キャラクタの位置(代表位置)や各部位を基準として、ユーザの視線がどの方向を向いているかに関する情報である。
またゲーム処理部112は、ユーザの注視情報に応じたコマンドの効果を、発動させる処理を行う。注視情報は、ユーザが注視しているキャラクタの部位の情報である注視部位情報、ユーザがキャラクタを注視しているか否かの情報である注視有無情報、ユーザがキャラクタを注視している時間を表す注視時間情報、及びユーザの注視時におけるキャラクタとの間の距離を表す注視距離情報の少なくとも1つである。
2.トラッキング処理
次にトラッキング処理の例について説明する。図2(A)に本実施形態のシミュレーションシステムで用いれるHMD200の一例を示す。図2(A)では、HMD200に対して複数の発光素子231〜236が設けられている。これらの発光素子231〜236は例えばLEDなどにより実現される。発光素子231〜234は、HMD200の前面側に設けられ、発光素子235や不図示の発光素子236は、背面側に設けられる。これらの発光素子231〜236は、例えば可視光の帯域の光を出射(発光)する。具体的には発光素子231〜236は、互いに異なる色の光を出射する。そして図2(B)に示す撮像部150をユーザPLの前方側に設置し、この撮像部150により、これらの発光素子231〜236の光を撮像する。即ち、撮像部150の撮像画像には、これらの発光素子231〜236のスポット光が映る。そして、この撮像画像の画像処理を行うことで、ユーザPLの頭部(HMD)のトラッキングを実現する。即ちユーザPLの頭部の3次元位置や向く方向(視点位置、視線方向)を検出する。
例えば図2(B)に示すように撮像部150には第1、第2のカメラ151、152が設けられており、これらの第1、第2のカメラ151、152の第1、第2の撮像画像を用いることで、ユーザPLの頭部の奥行き方向での位置等が検出可能になる。またHMD200のセンサ部210に設けられたモーションセンサのモーション検出情報に基づいて、ユーザPLの頭部の回転角度(視線)も検出可能になっている。従って、このようなHMD200を用いることで、ユーザPLが、周囲の360度の全方向うちのどの方向を向いた場合にも、それに対応する仮想空間(仮想3次元空間)での画像(ユーザの視点に対応する仮想カメラから見える画像)を、HMD200の表示部220に表示することが可能になる。なお、発光素子231〜236として、可視光ではなく赤外線のLEDを用いてもよい。また、例えばデプスカメラ等を用いるなどの他の手法で、ユーザの頭部の位置や動き等を検出するようにしてもよい。
またHMD200には、ヘッドバンド260や不図示のヘッドホン端子が設けられている。ヘッドホン端子にヘッドホン270(音出力部192)を接続することで、例えば3次元音響の処理が施されたゲーム音を、ユーザPLは聴くことが可能になる。
また図2(A)に示すようにユーザPLはゲームコントローラ166、167を所持している。ゲームコントローラ166、167は図1の操作部160に相当する。ゲームコントローラ166、167には発光素子237、238が設けられている。この発光素子237、238からの光を撮像部150で撮像することで、HMD200の場合と同様の手法で、ゲームコントローラ166、167の位置等が検出される。これによりユーザPLは種々の操作情報を入力することが可能になる。なお、ユーザの頭部の頷き動作や首振り動作をトラッキング処理により検出することで、ユーザの操作情報を入力できるようにしてもよい。
図3(A)に本実施形態のシミュレーションシステムに用いられるHMD200の他の例を示す。図3(A)に示すようにHMD200には複数の受光素子201、202、203(フォトダイオード)が設けられている。受光素子201、202はHMD200の前面側に設けられ、受光素子203はHMD200の右側面に設けられている。またHMDの左側面、上面等にも不図示の受光素子が設けられている。またHMD200にはヘッドバンド260が設けられ、ユーザPLはヘッドホン270を装着している。
図3(B)に示すように、ユーザPLの周辺には、ベースステーション280、284が設置されている。ベースステーション280には発光素子281、282が設けられ、ベースステーション284には発光素子285、286が設けられている。発光素子281、282、285、286は、例えばレーザー(赤外線レーザー等)を出射するLEDにより実現される。ベースステーション280、284は、これら発光素子281、282、285、286を用いて、例えばレーザーを放射状に出射する。そして図3(A)のHMD200に設けられた受光素子201〜203等が、ベースステーション280、284からのレーザーを受光することで、HMD200のトラッキングが実現され、ユーザPLの頭の位置や向く方向(視点位置、視線方向)を検出できるようになる。
また図3(A)に示すようにユーザPLが所持するゲームコントローラ166、167には、受光素子204〜206、207〜209が設けられている。そしてベースステーション280、284の発光素子281、282、285、286からのレーザーを、受光素子204〜206、207〜209により受光することで、HMD200の場合と同様の手法で、ゲームコントローラ166、167の位置等が検出される。これによりユーザPLは種々の操作情報を入力することが可能になる。
なお、ユーザの視点位置、視線方向(ユーザの位置、方向)を検出するトラッキング処理の手法は、図2(A)〜図3(B)で説明した手法には限定されない。例えばHMD200に設けられたモーションセンサ等を用いて、HMD200の単体でトラッキング処理を実現してもよい。即ち、図2(B)の撮像部150や図3(B)のベースステーション280、284などの外部装置を設けることなく、トラッキング処理を実現する。或いは、公知のアイトラッキング、フェイストラッキング又はヘッドトラッキングなどの種々の視点トラッキング手法により、ユーザの視点位置、視線方向などの視点情報を検出してもよい。例えばアイトラッキングでは、ユーザの左目、右目の瞳の位置や形状等を認識する。そして、左目の位置、右目の位置、左目の視線方向、右目の視線方向等を特定し、ユーザの視点情報を取得することで、トラッキング処理を実現する。このアイトラッキングは、例えば撮像部によりユーザの左目、右目を撮影し、その撮像画像に対して瞳等の画像認識処理を行うことなどで実現できる。また、フェイストラッキングでは、撮像部でユーザの顔を撮像し、顔の画像認識処理を行う。そして、画像認識処理の結果に基づいて、ユーザの顔の位置や向く方向を特定して、ユーザの視点位置、視線方向を求めて、トラッキング処理を実現する。
3.本実施形態の手法
次に本実施形態の手法について具体的に説明する。
3.1 ゲームの説明
まず本実施形態の手法により実現されるゲームの概要について説明する。このゲームは、ユーザが、ゲームに登場する異性のキャラクタとコミュニケーションをしながら、勉強を教えたり、様々なアドバイスをしたり、質問に答えたり、各種イベントをクリアして、ユーザに対するキャラクタの好感度等を高めたりする、コミュニケーションゲーム(人間関係シミュレーションゲーム)である。なお、以下では本実施形態の手法が適用されるゲームが、異性キャラクタ等とのコミュニケーションゲームである場合を主に例にとり説明する。しかしながら、本実施形態の手法が適用されるゲームはこれには限定されず、戦闘ゲーム、RPGゲーム、スポーツゲーム、アクションゲーム等の種々のゲームに適用可能である。
図4〜図6に、本実施形態のシミュレーションシステム(ゲームシステム)により生成されるゲーム画像の例を示す。本実施形態により実現されるゲームでは、ユーザ(プレーヤ)は、キャラクタCHの家庭教師としてその家を訪れ、勉強等を教える。ゲームには、複数のストーリーが用意され、各ストーリーごとに、異なるタイプのキャラクタCHが登場する。ユーザは、各ストーリーでの目的を達成しながら、キャラクタCHとの親密なコミュニケーションを楽しむ。
ゲームをプレイするユーザはHMD200を装着する。そしてユーザが、周囲の360度の全方向の各方向に視線を向けると、各方向で見えるべき画像がHMD200の表示部220に表示される。例えば図4において、ユーザがキャラクタCHの方に視線を向ければ、勉強をしているキャラクタCHの画像が表示部220に表示される。一方、ユーザが頭部を回して、ユーザの背面側に視線を向ければ、キャラクタCHの背面側に位置する部屋の家具等の画像が表示部220に表示される。従って、ユーザは、あたかもゲームの世界に自分が入ってしまったかのような仮想現実感を味わうことが可能になる。即ち、実際に部屋に入って、眼の前の異性に勉強を教えているかのような仮想現実感をユーザに与えることができ、ゲームへのユーザの没入感を高めることができる。
図4のゲーム画像では、キャラクタCH(広義には移動体)、キャラクタCHが所持する本(広義にはアイテム)、カーテンCT(広義には固定物)、壁WL(広義には背景)などのオブジェクトが表示されている。また情報表示物DSA、DSBが表示されている。
情報表示物DSAは説明表示のための表示物である。例えば情報表示物DSAにより、キャラクタCHが本を読んでいることが説明されている。情報表示物DSBはステータス表示のための表示物である。後述の図7で説明するように情報表示物DSBにより、キャラクタCHの種々のステータス情報が表示されている。
図4においてユーザがキャラクタCHの方に近づき、視線を向けるなどすると、図5に示すゲーム画像が表示される。図5では情報表示物DSC、DSD1、DSD2が更に表示されている。情報表示物DSCは会話表示のための表示物である。例えば情報表示物DSCには、キャラクタCHの会話である「何かご用ですか?」が表示されている。情報表示物DSD1、DSD2はコマンド選択(コマンド入力)のための表示物である。例えばキャラクタCHからの会話に対する返事(YES、NO)についてのコマンドが表示されている。
図5において「YES」のコマンドをユーザが選択すると、図6に示すようなゲーム画像が表示される。図6では情報表示物DSE1、DSE2、DSE3が表示されている。情報表示物DSE1、DSE2、DSE3はコマンド選択のための表示物(アイコン)である。例えば情報表示物DSE1、DSE2、DSE3にはコマンドCM1、CM2、CM3が対応づけられている。例えばユーザが情報表示物DSE1を選択すると、「もっと集中」というコマンドCM1の効果が発動する。情報表示物DSE2を選択すると、「叱る」というコマンドCM2の効果が発動する。情報表示物DSE3を選択すると、「声をかける」というコマンドCM3の効果が発動する。
なお、コマンドに対応する情報表示物(DSE1、DSE2、DSE3、DSD1、DSD1)の選択は、図1の操作部160を用いて行う。例えばユーザは、操作部160を用いて、ユーザが所望するコマンドに対応する情報表示物(アイコン)を選択し、選択した情報表示物に対応するコマンドの効果を発動させるというコマンド操作を行う。図2(A)、図3(A)を例にとれば、ユーザは、両手に所持したゲームコントローラ166、167を動かすことで、このようなコマンド操作を行う。或いは、有線で接続されたゲームコントローラ(不図示)を用いて、コマンド操作を行ってもよい。或いは、HMD200を頭部に装着したユーザが、コマンドに対応する情報表示物の方に視線方向を向けたり、首を縦や横に振るなどの動作を行うことで、コマンド操作を行うようにしてもよい。
図6では、ユーザは、「声をかける」というコマンドCM3に対応する情報表示物DSE3を選択している。これにより、「声をかける」というコマンドCM3の効果が発動される。例えば、コマンドCM3には、「声をかける」に対応する言葉(例えば「おーい!」、「頑張ってるか?」、「勉強してるか?」)の音声データが対応づけられている。そして、コマンドCM3が発動すると、当該音声データの再生が行われ、その言葉(文)の音声が図1の音出力部192から出力される。
また、コマンドが発動(コマンドの効果の発動)されると、キャラクタCHのゲームパラメータにも影響を与える。例えば、「声をかける」というコマンドCM3が発動されると、それに対応するキャラクタCHのゲームパラメータも変化する。
例えば図4〜図6では、キャラクタCHの各種状態であるゲームパラメータのステータスをユーザに伝えるための情報表示物DSBが表示されている。この情報表示物DSBにより、例えば図7に示すように、キャラクタCHの現在の心理状態、モチベーション、集中力、脈拍等の状態がユーザに伝えられる。これらの心理状態、モチベーション、集中力、脈拍は、キャラクタCHのゲームパラメータとして用意されている。
キャラクタCHの心理状態は、例えば色などを用いて表現される。例えば本実施形態のゲームでは、レッスンの課題が出され、例えば所定時間が経過することでレッスンが終了する。そして、例えばレッスン終了時の課題の達成量に応じて、ユーザのゲーム成績が決定される。例えばユーザのゲーム成績が高い場合には、例えば効果が高かったり、レア度の高いコマンド(アクション)のカードがユーザに付与される。
レッスンで出される各課題には、例えば赤、緑、青の属性が付与され、キャラクタCHの心理状態も、赤、緑、青の成分を有している。例えばキャラクタCHの心理状態が赤の成分が多い場合には、赤の属性の課題はすぐに消化できるが、緑、青の属性の課題は消化が遅い。同様に、キャラクタCHの心理状態が緑の成分が多い場合には、緑の属性の課題はすぐに消化できるが、赤、青の属性の課題は消化が遅い。従ってユーザは、情報表示物DSBに表示されるキャラクタCHの心理状態を見て、心理状態に合った属性の課題を消化させることで、達成される課題量が多くなり、レッスンを適正に完了できるようになる。
また図7に示すように、キャラクタCHにはモチベーション、集中力のゲームパラメータが設定されている。これらのモチベーション、集中力のゲームパラメータの値は、例えば0〜100(%)の間で変化し、その値が大きいほど、モチベーション、集中力が高くなる。モチベーションの値が高くなると、課題の消化速度が速くなる。一方、集中力の値は、時間経過に応じて下がって行くが、キャラクタCHの心理状態に応じて、その下がり度合いが大きくなったり、下がりにくくなったりする。また、集中力の値が所定値よりも低くなり、集中力が切れた状態になると、レッスンの休憩が必要になる。
また図7の情報表示物DSBの脈拍は、例えばキャラクタCHのユーザに対するドキドキ度や好感度を表すゲームパラメータとして機能する。例えばドキドキ度が高くなると、脈拍も高くなり、モチベーションが上がったり、集中力が下がりにくくなったり、課題の消化速度が速くなる。
3.2 表示態様の変更処理
図4〜図6に示すように本実施形態により実現されるゲームでは、種々の情報表示物が表示される。HMDを用いずに、表示部に疑似3次元画像を表示する従来の画像生成システムでは、このような情報表示物として、投影スクリーンに2次元的に表示される2次元表示物(スプライト等)が用いられていた。
しかしながら、HMDを用いたVR(バーチャルリアリティ)のシステムにおいて、説明表示、ステータス表示、コマンド選択、メニュー表示等の情報表示物として、2次元表示物を用いてしまうと、ユーザの仮想現実感を損ねたり、画面が見にくくなってしまうなどの問題を招く。例えば図4のキャラクタCH、本BK、カーテンCT、壁WLなどの3次元のオブジェクトが立体的に表示されるVR空間において、情報表示物だけが投影スクリーン上に2次元的に表示されてしまうと、仮想現実感を損ねてしまう。また多数の2次元の情報表示物が表示されてしまうと、これらの情報表示物が2次元的に重なったり、情報表示物によりオブジェクトが隠れて見えなくなり、非常に見にくい画面になってしまう。
そこで本実施形態では、ユーザの視線方向(ユーザの視界範囲、正面方向)に少なくとも1つの情報表示物を配置する。例えば情報表示物を、仮想空間の他のオブジェクトと同様に、3次元座標値を有するオブジェクトにより構成して、仮想空間に配置する。具体的には、ユーザの視点変化(視線方向及び視点位置の少なくとも一方の変化)に追従するように制御される情報表示物を、仮想空間に配置する。更に具体的には、ユーザの視線方向での所与の奥行き位置に、ユーザの視点変化に追従するように情報表示物を配置する。
図8(A)〜図8(D)は、このような情報表示物の表示手法についての説明図である。例えば図8(A)において、VPは、HMDを装着しているユーザPLの視点であり、VLは、ユーザPLの視線方向である。これらの視点VP、視線方向VLは、ユーザPLに対応する仮想カメラの視点、視線方向に相当する。
そして図8(A)では、ユーザPLの視線方向VLにおける奥行き値Z1、Z2の位置に、各々、情報表示物DS1、DS2が配置されている。奥行き値Z1、Z2は、例えば視点座標系(カメラ座標系)におけるZ座標軸の座標値である。情報表示物DS1、DS2は、例えばビルボードポリゴンにより実現される。即ち、ビルボードポリゴンに対して、図4〜図6で説明したような説明表示、ステータス表示、会話表示、コマンド選択表示、メニュー表示のための文字、アイコン又は図形等の画像をマッピングすることで、情報表示物DS1、DS2が実現されている。ビルボードポリゴン(ビルボードプリミティブ面)は、ユーザPLの視点VP(仮想カメラ)に正対(略正対)するように配置されるポリゴン(プリミティブ面)である。例えば情報表示物DS1、DS2のビルボードポリゴンは、視線方向VL(視線方向ベクトル)に直交(略直交)するように配置される。例えばビルボードポリゴンの面の法線方向が、視線方向VLに平行となるように配置される。なおビルボードポリゴンの配置方向は、このような方向には限定されず、種々の配置方向に設定可能である。また情報表示物をビルボードポリゴンとは異なる形式の表示物で実現してもよい。例えば複数のプリミティブ面(ポリゴン等)で構成される3次元形状のオブジェクトにより情報表示物を実現してもよい。
そして本実施形態では情報表示物DS1、DS2は、ユーザPLの視線方向VLの変化に追従するように制御される。例えば図8(B)では、ユーザPLの視線方向VLが右側方向に変化している。例えばHMDを装着しているユーザPLが右側方向を向いており、これにより仮想空間での仮想カメラの視線方向も右側方向に変化する。この場合に図8(B)に示すように、この視線方向VLの変化に追従するように、情報表示物DS1、DS2の位置や方向が変化する。例えば図8(B)においても、ユーザPLの視点VPに正対するように情報表示物DS1、DS2を構成するビルボードポリゴンが配置される。
また図8(C)では、ユーザPLの視線方向VLが左側方向に変化している。例えばHMDを装着しているユーザPLが左側方向を向いており、これにより仮想空間での仮想カメラの視線方向も左側方向に変化する。この場合にも図8(C)に示すように、この視線方向VLの変化に追従するように、情報表示物DS1、DS2の位置や方向が変化する。例えば図8(C)においても、ユーザPLの視点VPに正対するように情報表示物DS1、DS2を構成するビルボードポリゴンが配置される。
また図8(D)ではユーザPLの視線方向が上側方向に変化している。この場合にも図8(D)に示すように、この視線方向VLの変化に追従するように、情報表示物DS1、DS2の位置や方向が変化する。同様に、ユーザPLの視線方向が下側方向に変化した場合にも、その変化に追従するように情報表示物DS1、DS2の位置や方向が変化する。
このように図8(A)〜図8(D)の表示手法では、情報表示物が、仮想空間の他のオブジェクトと同様に、仮想空間に3次元的に配置される。従って、情報表示物の表示が原因でユーザの仮想現実感を損ねてしまう問題を解消できる。即ち、2次元の情報表示物が平面的に表示される従来の手法では、情報表示物の存在が原因で仮想現実感を損ねてしまう問題が生じるが、情報表示物を仮想空間に3次元的に配置する本実施形態の手法によれば、このような問題の発生を防止できる。また、このように情報表示物を3次元的に配置すれば、複数の情報表示物を表示する場合にも、ユーザにとって見やすい適切な表示にすることが可能になる。例えば図8(A)〜図8(D)に示すように、複数の情報表示物(DS1、DS2)を、奥行き値(Z1、Z2)を異ならせて配置することなども可能になり、ユーザにとって見やすい適切な情報表示物の表示が可能になる。また図8(A)〜図8(D)の表示手法によれば、ユーザの正面側に情報表示物が常に表示されるようになる。従って、ユーザの視線方向が種々の方向に向いた場合にも、ユーザの正面側に情報表示物が表示されて、ユーザにとって必要な種々の情報を、情報表示物を用いて適切に提示できるようになる。
なお情報表示物の表示手法は図8(A)〜図8(D)に示す手法には限定されず、種々の変形実施が可能である。例えば情報表示物は、少なくともユーザの視線方向に配置されていればよく、視点変化に追従しなくてもよい。例えば、特定の情報表示物については、ユーザの視点変化に追従しないようにしてもよい。例えば特定のオブジェクト(例えばユーザのプレイ対象となるキャラクタ)のステータス等を表示する情報表示物については、その特定のオブジェクトの近傍に表示されるように制御してもよい。
また図8(A)〜図8(D)では、情報表示物がユーザの視線方向の変化に追従する場合を説明したが、情報表示物を、ユーザの視点位置の変化に追従させてもよい。例えばユーザの視点位置(ユーザ位置)が上下左右に移動した場合に、この移動に追従するように情報表示物を上下左右に移動させる。情報表示物は、ユーザの視線方向の変化にのみ追従してもよいし、視点位置の変化にのみ追従してもよいし、視線方向の変化及び視点位置の変化の両方に追従してもよい。但し、以下では、説明の簡素化のために、ユーザの視点変化がユーザの視線方向の変化である場合を主に例にとり説明を行う。
図8(A)〜図8(D)に示すように本実施形態では、ユーザの視線方向に情報表示物を配置して表示する手法を採用している。このようにすれば、情報表示物が、ユーザの正面方向に常に配置されるようになるため、情報表示物による適切な情報伝達をユーザに対して行うことが可能になる。また情報表示物を2次元的に表示せずに、キャラクタ等の他のオブジェクトと同様に仮想空間に配置することで、ユーザの仮想現実感を損なわないような情報表示物の適切な表示が可能になる。
しかしながら、このようにユーザの視線方向に情報表示物を配置する手法では、ユーザの視線方向が大きく変化した場合(視点位置が大きく変化した場合)に、不適切な表示画像がHMD200に表示されてしまうおそれがある。またHMDを用いたシステムでは、ユーザの視界の全周囲に亘ってVR空間が広がる。このため、ユーザが、VR空間を見回すように視線方向を動かす場合がある。このような場合に、視線方向が正面方向を向いている時の表示態様で情報表示物を表示してしまうと、ユーザにとって不適正な表示になってしまうおそれがある。
そこで本実施形態では、視線方向が大きく変化することなどにより、所与の変更条件が満たされた場合に、情報表示物の表示態様を変更する処理を行う。またユーザが、正面方向のみならず、周辺方向を見回すように視線方向を動かした場合にも、適切な画像がHMDに表示されるように、情報表示物の表示態様を変更する処理を行う。
例えば図9(A)、図9(B)では、情報表示物DSの表示態様を変更している。即ち、図9(A)に示すように、情報表示物DSはユーザPLの視線方向VLに配置されている。具体的には図8(A)〜図8(D)で説明したように、ユーザPLの視線方向VLの変化に追従するように情報表示物DSが配置される。
そして図9(B)に示すようにユーザPLが視線方向VLを変化させたとする。例えばHMDを用いたシステムでは、全周囲に亘ってVR空間が広がるため、ユーザPLはVR空間を見回すために、図9(B)に示すように視線方向VLを大きく変化させる場合がある。この場合に本実施形態では、このような視線方向VLの変化により、後述する変更条件が満たされたか否かを判断する。そして変更条件が満たされたと判断された場合には、図9(B)に示すように、情報表示物DSの表示を消去したり、情報表示物DSを半透明化する表示態様の変更処理を行う。情報表示物DSの消去処理は、例えば表示リスト(表示オブジェクトリスト)から、情報表示物DSを除外する処理などにより実現できる。情報表示物DSの半透明化処理は、例えば情報表示物DSの半透明度(α値)を透明に近づける処理を行うことで実現できる。或いは情報表示物DSを、例えばフレームモデル等に変更して、説明表示、ステータス表示等の文字やアイコンや図形を消去するようにしてもよい。
図9(A)のようにユーザPLが正面方向を見ている場合には、ユーザPLの視線方向VLに情報表示物DSを配置することで、情報表示物DSを用いた適正な情報伝達が可能になる。例えば図4〜図6に示すように、説明表示、ステータス表示、会話表示、コマンド選択又はメニュー表示のための様々な情報を、ユーザPLに対して適切に伝達できる。
一方、ユーザPLが、VR空間を見回すために視線方向VLを変化させた時に、このような情報表示物DSが表示されてしまうと、情報表示物DSが邪魔になって、周辺方向を適切に見回せなくなってしまう。
この点、本実施形態ではこのように視線方向VLが大きく変化した場合(視点位置が大きく変化した場合)に、図9(B)に示すように情報表示物DSを消去したり、半透明化する処理を行う。こうすることで、情報表示物DSが視界の邪魔にならなくなり、ユーザPLは、VR空間を適切に見回すことができるようになる。なお、以下では、ユーザPLの視線方向VLが上方向に変化した場合を主に例にとり説明するが、視線方向VLが下方向、左方向、右方向などの他の方向に大きく変化した場合にも、情報表示物の表示態様の変更処理を行うことができる。
情報表示物の表示態様の変更処理としては、図9(A)、図9(B)に示すような情報表示物の消去処理や半透明化処理以外にも、ユーザの視線方向への情報表示物の追従の解除処理、情報表示物の移動処理、情報表示物のサイズ変更処理、情報表示物の色情報変更処理などがある。
例えば10(A)、図10(B)では、表示態様の変更処理として、ユーザPLの視線方向VLへの情報表示物DSの追従の解除処理を行っている。例えば本実施形態では図8(A)〜図8(D)で説明したように、情報表示物DSは、ユーザPLの視線方向VLの変化に追従するように制御される。
これに対して、図10(A)、図10(B)では、視線方向VLの変化により変更条件が満たされた場合に、この追従の制御を解除する。これにより図10(B)に示すようにユーザPLの視線方向VLが変化した場合にも、情報表示物DSの位置は変化しないようになる。従って、視線方向VLを上方向に向けているユーザPLの視界に、情報表示物DSが殆ど入らなくなり、情報表示物DSが視界の邪魔になってしまう事態を防止できる。
また図11(A)、図11(B)では、表示態様の変更処理として、情報表示物DSの移動処理を行っている。即ち、視線方向VLの変化(広義には視点変化。以下、同様)により変更条件が満たされた場合に、上方向を向いているユーザPLの視界において、図11(B)に示すように、視界の中央部から周辺部の方へと情報表示物DSを移動している。例えばユーザPLの視線方向VLは上方向に変化しているため、情報表示物DSを、これとは逆の下方向(斜め下方向)に移動する。このようにすることで、ユーザPLの視界の周辺部に情報表示物DSが移動するようになるため、情報表示物DSが視界の妨げになってしまう事態を防止できる。
また図12(A)、図12(B)では、表示態様の変更処理として、情報表示物DSのサイズ変更処理を行っている。具体的には、視線方向VLの変化により変更条件が満たされた場合に、図12(B)に示すように情報表示物DSのサイズを小さくする。このように情報表示物DSのサイズを小さくすれば、上方向を向いているユーザPLの視界において、情報表示物DSによって視界が遮られる領域の面積を小さくできる。従って、情報表示物DSが視界の妨げになってしまう事態を効果的に抑制できる。
なお図9(A)〜図12(B)に示すような表示態様の変更処理を行う場合に、視線方向の変化に対して時間的に遅らせて情報表示物を追従させる制御を行ってもよい。例えばレースゲームにおけるラバーバンド制御のような制御を行う。そして、このように時間的に遅らせて情報表示物を追従させた後(或いは追従させながら)、図9(A)〜図12(B)に示すような最終的な表示態様の変更処理を行う。例えば、視線方向の変化に時間的に遅らせて情報表示物を追従させた後、図9(B)のような情報表示物の消去処理や半透明化処理を行ったり、図10(B)のような追従の完全な解除処理を行う。
また本実施形態では情報表示物の種類、優先度又は重要度に応じた表示態様の変更処理を行う。例えば情報表示物が第1の種類(例えば重要度又は優先度が高い種類の表示物)である場合には、視線方向が大きく変化して変更条件が満たされた場合にも、当該情報表示物の表示態様を変更しない。このようにすれば、例えば重要度や優先度が高い情報を伝達する情報表示物については、視線方向が変化した場合にも、ユーザの視線方向の方に配置されて、ユーザに対して適正に情報を伝達できるようになる。一方、情報表示物DS2が第2の種類(例えば重要度又は優先度が低い種類の表示物)である場合には、変更条件が満たされた場合に、当該情報表示物の表示態様を変更する。このようにすれば、当該情報表示物がユーザの視界の妨げになってしまう事態を防止できる。
例えば図13(A)のテーブルデータでは、情報表示物DSF1、DSF2、DSF3に対して、その種類TPA、TPB、TPAが関連づけられている。このテーブルデータは図1の記憶部170に記憶される。そして種類TPAは、例えば優先度や重要度が低い種類であるため、視線方向が大きく変化して変更条件が満たされた場合に、情報表示物の表示態様が変更される。例えば情報表示物を消去したり半透明化する処理が行われる。一方、種類TPBは、例えば優先度や重要度が高い種類であるため、視線方向が大きく変化して変更条件が満たされた場合にも、情報表示物の表示態様は変更されない。例えば情報表示物の消去処理や半透明化処理は行われないようになる。
図13(B)のテーブルデータでは、情報表示物DSG1、DSG2、DSG3に対して、その優先度(重要度)PRA、PRB、PRCが関連づけられている。このテーブルデータは図1の記憶部170に記憶される。そして視線方向の変化により変更条件が満たされた場合に、DSG1、DSG2、DSG3の各情報表示物に関連づけられた優先度(重要度)PRA、PRB、PRCを用いて、表示態様の変更処理を行う。例えば高い優先度(重要度)が関連づけられた情報表示物については、変更条件が満たされた場合にも、表示態様の変更処理は行わないようにする。一方、低い優先度(重要度)が関連づけられた情報表示物については、変更条件が満たされた場合に、表示態様の変更処理を行う。また複数の情報表示物を表示する場合に、表示態様の変更処理の対象となる情報表示物の選択を、優先度(重要度)に基づいて行う。例えば第1の情報表示物と第2の情報表示物の優先度(重要度)の比較処理を行い、第1の情報表示物の方が第2の情報表示物よりも、情報表示の優先度(重要度)が高いと判断されたとする。この場合には、変更条件が満たされた場合に、第1の情報表示物については表示態様の変更処理を行わずに、第2の情報表示物に対して表示態様の変更処理を行うようにする。
このように本実施形態では、情報表示物の種類、優先度又は重要度に応じた適切な表示態様の変更処理を実現できるようになる。例えば特定の種類の情報表示物については、視線方向が大きく変化して変更条件が満たされた場合にも、表示態様は変更されないようになる。また情報表示物により提示される情報の優先度や重要度が高い場合には、変更条件が満たされた場合にも、表示態様は変更されないようになる。逆に、情報表示物により提示される情報の優先度や重要度が低い場合には、当該情報表示物の表示態様の変更処理が優先的に行われるようになる。
また本実施形態では、図13(B)に示すように情報表示物に関連づけられた優先度又は重要度を用いて、表示態様の変更処理を行っている。このようにすれば、情報表示物に対して予め優先度又は重要度を関連づけておき、この優先度又は重要度を用いて適切な表示態様の変更処理を実行できるようになる。
例えば図4〜図6において、コマンド選択のための情報表示物(DSD1、DSD2、DSE1〜DSE3)は、優先度又は重要度が高い情報表示物である。例えばユーザの視線方向が変化することで、変更が条件が満たされた場合に、コマンド選択のための情報表示物が消去又は半透明化されてしまうと、ユーザがコマンドを選択(入力)できなくなってしまい、ゲーム進行が停止してしまう。従って、このようなコマンド選択のための情報表示物に対しては、高い優先度又は重要度を関連づけておき、変更条件が満たされた場合に、情報表示物の消去処理や半透明化処理は行わないようにする。
一方、説明表示のための情報表示物(DSA)は、優先度又は重要度がそれほど高くない情報表示物であり、例えばユーザの視線方向が変化することで、変更が条件が満たされた場合に、説明表示のための情報表示物が消去又は半透明化されても、ゲーム進行にはそれほど支障を来さない。従って、このような説明表示のための情報表示物に対しては、低い優先度又は重要度を関連づけておき、変更条件が満たされた場合には、情報表示物の消去処理や半透明化処理を行うようにする。このようにすることで、情報表示物の優先度又は重要度を反映した適切な表示処理を実現できるようになる。
また、例えばコマンド選択のための情報表示物と説明表示のための情報表示物の両方が表示されている場合には、表示態様の変更処理の対象となる情報表示物を、優先度又は重要度に基づいて選択すればよい。即ち、変更条件が満たされた場合に、説明表示のための情報表示物を方を優先的に選択して、その表示態様を変更する。
また本実施形態では、情報表示物が表示されてからの経過時間に応じた表示態様の変更処理を行ってもよい。
例えば図14において、情報表示物DSH1、DSH2は、表示されてから、長い経過時間TE1、TE2が経過したタイミングで、表示態様変更処理の対象となっている。一方、情報表示物DSH3は、表示されてから、短い経過時間TE3が経過したタイミングで、表示態様変更処理の対象となっている。この場合に、表示されてからの経過時間TE1、TE2が長い情報表示物DSH1、DSH2に対しては、消去、半透明化等の表示態様の変更処理を行う。一方、表示されてからの経過時間TE3が短い情報表示物DSH3に対しては、消去、半透明化等の表示態様の変更処理を行わないようにする。
例えば、表示されてからの経過時間TE1、TE2が長い情報表示物DSH1、DSH2については、この長い経過時間TE1、TE2の間に、ユーザがこれらの情報表示物DSH1、DSH2を見ている可能性が高く、情報表示物DSH1、DSH2による情報伝達は十分に行われていると考えられる。従って、このような情報表示物DSH1、DSH2については、変更条件が満たされた場合に、消去又は半透明化等の表示態様の変更処理を行う。
一方、表示されてからの経過時間TE3が短い情報表示物DSH3については、短い経過時間TE3の間に、ユーザが情報表示物DSH3を十分に見ている可能性が低く、情報表示物DSH3による情報伝達は不十分であると考えられる。従って、このような情報表示物DSH3については、変更条件が満たされた場合にも、消去又は半透明化等の表示態様の変更処理を行わないようにする。
即ち、多数の情報表示物が表示されている状況で、ユーザの視線方向が大きく変化して変更条件が満たされた場合に、全ての情報表示物を消去又は半透明化してしまうと、情報表示物による情報伝達が不十分になってしまう問題が生じてしまう。この点、図14の手法によれば、表示されてからの経過時間を判断材料にして、表示態様の変更処理を行うか否かを決定しているため、このような問題の発生を効果的に防止できる。
3.3 変更条件の判定
次に変更条件の判定の具体例について説明する。本実施形態では図1の判定部115が、変更条件が満たされたか否かを判定する。そして判定部115により変更条件が満たされたと判定された場合に、情報表示物の表示態様の変更処理が行われる。具体的には判定部115は、ユーザの視点変化情報に基づいて、所与の変更条件が満たされたか否かを判定する。視点変化情報は、例えば視線変化情報又は視点位置変化情報である。具体的には判定部115は、ユーザの視線方向の変化角度が所与の角度以上になった場合、視線方向の変化速度が所与の速度以上になった場合、又は視線方向の変化加速度が所与の加速度以上になった場合に、所与の変更条件が満たされたと判定する。
例えば図15(A)では、ユーザPLの視線方向VLが例えば上方向に変化している。そして視線方向VLの変化角度Δθが、しきい値である角度θth以上(所与の角度以上)になっている。この場合には変更条件が満たされたと判定して、情報表示物の表示態様の変更処理を行う。
また図15(B)では、ユーザPLの視線方向の変化速度ωが、しきい値である速度ωth以上(所与の速度以上)になっている。或いは、ユーザPLの視線方向の変化加速度αが、しきい値である加速度αth以上(所与の加速度以上)になっている。この場合には変更条件が満たされたと判定して、情報表示物の表示態様の変更処理を行う。なお変化速度ω、変化加速度αは、各々、角速度、角加速度に対応するものである。
図15(A)、図15(B)の手法によれば、ユーザPLの視線方向VLの変化が大きかったり、急峻な変化であった場合に、変更条件が満たされたと判断して、情報表示物の表示態様の変更処理が行われるようになり、情報表示物の適正な表示処理が可能になる。
また本実施形態では、図16に示すように、ユーザの視線方向の変化角度Δθ、変化速度ω又は変化加速度α(広義には視点変化情報)などに応じて、表示態様の変更処理の内容を異ならせてもよい。
例えば情報表示物の消去処理において、情報表示物が消去されるまでの時間を、変化角度Δθ、変化速度ω又は変化加速度αなどに応じて異ならせる。例えば変化角度Δθ、変化速度ω又は変化加速度αが大きい場合には、情報表示物が消去されるまでの時間を短くして、情報表示物が直ぐに消去されるようにする。一方、変化角度Δθ、変化速度ω又は変化加速度αが小さい場合には、情報表示物が消去されるまでの時間を長くする。
また情報表示物の半透明化処理において、半透明度の変化速度(変化率)を、変化角度Δθ、変化速度ω又は変化加速度αなどに応じて異ならせる。例えば変化角度Δθ、変化速度ω又は変化加速度αが大きい場合には、半透明度の変化速度を速くして、情報表示物が直ぐに透明に近づくようにする。一方、変化角度Δθ、変化速度ω又は変化加速度αが小さい場合には、半透明度の変化速度を遅くして、情報表示物が徐々に透明に近づくようにする。
このようにすれば、視線方向の変化角度、変化速度又は変化加速度に応じて、表示態様の変更処理の内容が変化するようになり、変化角度、変化速度又は変化加速度を反映させた表示態様の変更処理を実現できる。
なお、図11(A)、図11(B)の移動処理による表示態様の変更処理では、例えば情報表示物の移動速度を、変化角度Δθ、変化速度ω又は変化加速度αなどに応じて異ならせればよい。また図12(A)、図12(B)のサイズ変化処理による表示態様の変更処理では、例えば情報表示物のサイズの変化速度を、変化角度Δθ、変化速度ω又は変化加速度αなどに応じて異ならせればよい。
また、ここでの変化角度Δθ、変化速度ω、変化加速度αの大小は、例えばしきい値であるθth、ωth、αthとの差分の大小とすることができる。この差分の大小は、例えばΔθ−θth、ω−ωth、α−αthの大小である。例えば情報表示物の消去処理や半透明化処理などの表示態様の変更処理が行われるのには、Δθ−θth、ω−ωth、α−αthが0以上であることが前提条件になる。
図17(A)、図17(B)は、図15(A)、図15(B)とは異なる変更条件の判定手法の説明図である。この判定手法では、図17(A)に示すように、情報表示物DSに対して判定範囲RG(ヒット範囲、ヒットボックス)を設定する。具体的には、ユーザの視点から見て情報表示物DSを内包するように判定範囲RGを設定する。そして図17(B)に示すように、ユーザPLの視線方向VLの注視位置GPが、判定範囲RG(視線方向の受け付け範囲)を越えた場合に、変更条件が満たされたと判定する。
具体的には、視線方向VLに沿った直線(VPとGPを結ぶ直線)と判定範囲RGとの交差判定を行う。この交差判定は、公知のコリジョン処理(ヒット判定)により実現できる。そして、視線方向VLに沿った直線が判定範囲RGと交差した場合には、情報表示物DSの表示態様の変更処理は行わない。一方、図17(B)に示すように、視線方向VLに沿った直線が判定範囲RGと交差しない場合には、情報表示物DSの表示態様の変更処理を行う。即ち、当該直線の端部である注視位置GPが判定範囲RGを越えた位置にある場合(判定範囲RGの外側に位置する場合)には、情報表示物DSの表示態様の変更処理を行う。
このようにすれば、情報表示物DSの方を基準にして、情報表示物DSに対する視線方向VLの相対的な変化を検出して、表示態様の変更処理のための変更条件を判定できるようになる。
また、情報表示物に対してこのような判定範囲を設定する場合には、情報表示物毎に判定範囲を異ならせてもよい。例えば図18では、情報表示物DS1(第1の情報表示物)に対しては、判定範囲RG1(第1の判定範囲)が設定されている。情報表示物DS2(第2の情報表示物)に対しては、判定範囲RG1とは大きさが異なる判定範囲RG2(第2の判定範囲)が設定されている。情報表示物DS3(第3の情報表示物)に対しては、判定範囲RG1、RG2とは大きさが異なる判定範囲RG3(第3の判定範囲)が設定されている。
このようにすれば、情報表示物に応じて異なる判定範囲を設定して、異なる判定基準で変更条件を判定できるようになる。例えば図18では、ユーザの視点から見て中央部に位置する情報表示物DS1に対しては、例えば小さな範囲の判定範囲RG1が設定されている。従って、図17(B)から明らかなように、視線方向VLの小さな変化(判定範囲に対する相対的な変化)でも、情報表示物DS1の表示態様の変更処理が行われるようになる。一方、ユーザの視点から見て周辺部(周縁部)に位置する情報表示物DS2、DS3に対しては、大きな範囲の判定範囲RG2、RG3が設定されている。従って、視線方向VLの小さな変化では、情報表示物DS2、DS3の表示態様の変更処理は行われず、視線方向VLが大きく変化した場合に、表示態様の変更処理が行われるようになる。なお、図18とは逆に、中央部に位置する情報表示物DS1に対して、大きな範囲の判定範囲を設定し、周辺部に位置する情報表示物DS3、DS4に対して、小さな範囲の判定範囲を設定してもよい。
また本実施形態では、複数の情報表示物が仮想空間に配置される場合に、ユーザの視点から見て中央部に位置する情報表示物に対して、表示態様の変更処理を行うようにしてもよい。例えば図19において、情報表示物DS1は、ユーザの視点から見て中央部(中心部)に位置している。この中央部は、例えばユーザの視線方向の注視位置を中心とした所定の大きさの範囲である。一方、情報表示物DS2、DS3、DS4、DS5は、ユーザの視点から見て周辺部(周縁部)に位置している。この周辺部は、中央部の周りの領域であり、中央部と周辺部は所定の境界により区分けされている。
そして図19のように複数の情報表示物DS1〜DS5が配置されている場合に、中央部の情報表示物DS1に対しては、表示態様の変更処理(消去、半透明化等)を行う。一方、周辺部の情報表示物DS2〜DS5に対しては、表示態様の変更処理を行わないようにする。例えばユーザが、広大なVR空間を見回すように視線方向を動かしたとする。このような状況の場合に、図19の中央部に位置する大きなサイズの情報表示物DS1が通常表示されたままであると、情報表示物DS1が、ユーザの視界の邪魔になってしまう。
この点、図19では中央部の情報表示物DS1に対して優先的に表示態様の変更処理を行っている。このようにすれば、VR空間を見回しているユーザの視界において、情報表示物DS1が消去されたり、半透明になるため、情報表示物DS1がユーザの視界の妨げになってしまう事態を効果的に防止できる。
また本実施形態では、複数の情報表示物が仮想空間に配置される場合に、情報表示物毎に変更条件の内容や表示態様の変更処理の内容を異ならせてもよい。例えば複数の情報表示物の第1の情報表示物と第2の情報表示物とで、変更条件の内容又は表示態様の変更処理の内容を異ならせる。
例えば図20では、複数の情報表示物DS1、DS2、DS3が配置されている。そして、情報表示物DS1では、変更条件がCD1に設定され、表示態様の変更処理がPR1に設定されている。同様に情報表示物DS2、DS3では、各々、変更条件がCD2、CD3に設定され、表示態様の変更処理がPR2、PR3に設定されている。そして変更条件CD1、CD2、CD3は、その内容が互いに異なっている。また表示態様の変更処理PR1、PR2、PR3は、その内容が互いに異なっている。
例えば変更条件CD1、CD2、CD3では、図15(A)、図15(B)の視線方向VLの変化角度Δθ、変化速度ω又は変化加速度αのしきい値であるθth、ωth、αthが、互いに異なっている。或いは、変更条件CD1、CD2、CD3では、図18に示すように、各情報表示物に設定される判定範囲の大きさ等が互いに異なっている。また表示態様の変更処理PR1、PR2、PR3では、例えば消去されるまでの時間、半透明度の変化速度、移動速度、サイズ変化速度等が互いに異なっている。
このようにすれば、複数の情報表示物の種類、優先度、重要度又は役割などに応じた適切な変更条件、変更処理内容を設定して、表示態様の変更処理を実行できるようになる。
また本実施形態では、情報表示物の奥行き値に応じた表示態様の変更処理を行ってもよい。例えば図21(A)において、ユーザPLの視点VPからの情報表示物DS1、DS2の奥行き値(Z値)は、各々、Z1、Z2になっている。ここでは、Z1<Z2となっており、情報表示物DS1の方が情報表示物DS2に比べて、ユーザPLの視点VPから見て手前側に位置している。
そして図21(B)に示すようにユーザPLの視線方向VLが大きく変化して、変更条件が満たされたとする。この場合に図21(B)では、奥行き値Z1が小さな情報表示物DS1に対しては、表示態様の変更処理が行われている。一方、奥行き値Z2が大きな情報表示物DS2については、表示態様の変更処理は行われていない。即ち、奥行き値の大小に応じて、変更条件の成立時における表示態様の変更処理の実行、非実行が選択されている。
例えば、その奥行き値Z1が小さく、手前側に位置する情報表示物DS1は、ユーザPLが視線方向VLを大きく変化させて、VR空間を見回す際に、ユーザの視界の邪魔になってしまう。一方、その奥行き値Z2が大きく、奥側に位置する情報表示物DS2は、ユーザの視界の邪魔になる程度が小さいと考えられる。このため図21(B)では、奥行き値Z1が小さな情報表示物DS1については、表示態様の変更処理を行って、消去したり、半透明にする。一方、奥行き値Z2が大きな情報表示物DS1については、表示態様の変更処理は行わずに、通常の表示状態にする。このようにすることで、情報表示物の奥行き値を有効利用した情報表示物の表示態様の変更処理を実現できるようになる。
また本実施形態では、変更条件が満たされてからの経過時間に応じた表示態様の変更処理を行ってもよい。
例えば図22(A)、図22(B)、図22(C)は、変更条件が満たされてからの経過時間がTF1、TF2、TF3である場合の状態を示している。ここで、TF3>TF2>TF1となっており、図22(A)が経過時間TF1が短い場合であり、図22(C)が経過時間TF3が長い場合である。
図22(A)では、ユーザPLは、視線方向VLを上方向に大きく変化させており、表示態様の変更処理として、情報表示物DS1の半透明化処理が行われている。この場合の半透明度はAL1になっている。図22(B)では、ユーザPLは、視線方向VLを下方向に大きく変化させており、情報表示物DS2の半透明化処理が行われている。この場合の半透明度はAL2になっている。図22(C)では、ユーザPLは、視線方向VLを上方向に大きく変化させており、情報表示物DS1の半透明化処理が行われている。この場合の半透明度はAL3になっている。
このように図22(A)〜図22(C)では、ユーザPLは、VR空間を見回すために、視線方向VLを上方向や下方向に大きく変化させている。この時、視線方向VLの変化は大きいため、変更条件は満たされたままで、時間だけが経過している。このような場合に図22(A)〜図22(C)では、情報表示物DS1、DS2が、経過時間に応じて徐々に透明に近づくように半透明度AL1、AL2、AL3を設定している。例えば図22(A)のように経過時間がTF1である時の半透明度AL1に比べて、図22(C)のように経過時間がTF3である時の半透明度AL3は、より透明に近づける半透明度に設定されている。
このようにすれば、ユーザがVR空間を見回す際に、変更条件が満たされた後、時間が経過するにつれて、情報表示物が徐々に透明に近づくようになる。そして、十分に時間が経過すると、情報表示物が殆ど透明になり、ユーザは、情報表示物に視界を妨げられることなく、VR空間を見回すことが可能になる。
3.4 復帰処理
次に表示態様の変更処理の復帰処理について説明する。本実施形態では、情報表示物の表示態様の変更処理が行われた後、復帰条件が満たされたと判定された場合に、表示態様の変更処理の復帰処理を行う。
例えば図23(A)では、ユーザPLの視線方向VLに情報表示物DSが配置されている。そして図23(B)では、ユーザPLの視線方向VLが大きく変化して、変更条件が満たされたため、情報表示物DSの表示態様の変更処理が行われている。具体的には情報表示物DSの消去処理や半透明化処理が行われている。
そして、図23(C)では、例えば表示態様の変更処理が行われた後、所与の時間が経過することなどで、復帰条件が満たされたため、表示態様の変更処理の復帰処理が行われている。具体的には、図23(B)で消去された情報表示物DSが再表示される復帰処理が行われる。或いは図23(B)で半透明化された情報表示物DSについて、半透明化処理が解除されて通常表示になる復帰処理が行われる。
図24(A)、図24(B)では、ユーザPLの視線方向VLが大きく変化して、変更条件が満たされたため、情報表示物DSの表示態様の変更処理として、視線方向VLへの追従の解除処理が行われている。即ち、図10(A)、図10(B)で説明した表示態様の変更処理が行われている。
そして、図24(C)では、例えば表示態様の変更処理が行われた後、所与の時間が経過することなどで、復帰条件が満たされたため、表示態様の変更処理の復帰処理が行われている。具体的には、図24(B)の追従解除処理が無効になり、視線方向VLに情報表示物DSを追従させる復帰処理が行われている。
このような復帰処理を行えば、変更条件が満たされて、情報表示物の表示態様の変更処理が行われた場合に、情報表示物の表示態様が変更されたままの状態になってしまうのを防止できる。そして、表示態様の変更処理前の通常の表示状態に戻すことが可能になる。
図25は復帰処理の詳細な処理例を説明するフローチャートである。まず、所与の変更条件が満たされたか否かが判断され(ステップS11)、満たされた場合には、情報表示物の表示態様の変更処理が行われる(ステップS12)。即ち、図23(B)、図24(B)に示すような消去処理、半透明化処理又は追従の解除処理などが行われる。
次に、表示態様の変更処理が行われた後、所与の時間が経過したか否か、或いは、表示態様の変更処理が行われた後、所与の時間の間、ユーザの視線方向の変化が非検出か否か、或いは、表示態様の変更処理が行われた後、ユーザによるオブジェクトの注視が検出されたか否かが判断される(ステップS13)。即ち、復帰条件が満たされたか否かが判断される。そして、所与の時間が経過した場合、或いは、所与の時間の間、視線方向の変化が非検出の場合、或いは、ユーザによるオブジェクトの注視が検出された場合に、復帰条件が満たされたと判断する。そして表示態様の変更処理の復帰処理が行われる(ステップS14)。即ち、図23(C)、図24(C)に示すような復帰処理が行われる。
例えば、表示態様の変更処理が行われた後、所与の時間が経過した場合には、通常表示に戻しても問題無いため、表示態様の変更処理の復帰処理を行う。例えば、ユーザがVR空間を見回す動作を行った場合にも、十分に時間が経過した後は、情報表示物を通常表示に戻しても、ユーザのVR空間の見回しの妨げとはならないと考えられる。
また表示態様の変更処理が行われた後、所与の時間の間、ユーザの視線方向の変化が非検出である場合には、ユーザが、VR空間の所望の場所を、所与の期間の間、視線方向を動かさずに見続けていたと考えられる。従って、この場合には、ユーザが所望の場所を十分に見たと考えられるため、表示態様の変更処理の復帰処理を行う。例えば、消去された情報表示物を再表示したり、半透明になった情報表示物を通常表示に戻す。
また、表示態様の変更処理が行われた後、ユーザによるオブジェクトの注視が検出された場合には、ユーザが、VR空間の所望のオブジェクト(周辺方向にあるオブジェクト)を注視していたと考えられる。従って、この場合には、ユーザが所望のオブジェクトを十分に見たと考えられるため、表示態様の変更処理の復帰処理を行う。このように、種々の復帰条件を判断して、復帰処理を行うようにすれば、ユーザの様々な状況に対応した適切な復帰条件を判定して、復帰処理を実行できるようになる。
また本実施形態では、情報表示物の表示態様の変更処理が行われていない時と、情報表示物の表示態様の変更処理が行われている時とで、HMDの表示画像の明るさを異ならせてもよい。例えば情報表示物が通常表示されている場合と通常表示されていない場合とで、表示画像の明るさを変更する。
例えば図26(A)は、情報表示物の表示態様の変更処理が行われていない場合の状態を示している。この場合には、情報表示物の消去処理や半透明化処理などが行われておらず、情報表示物が通常表示されている。この時には、HMDの表示画像IMGを例えば暗い設定にする。即ち、表示画像IMGの全体の明るさを暗い設定にする。
一方、図26(B)は、情報表示物の表示態様の変更処理が行われている場合の状態を示している。図26(B)では、ユーザPLが視線方向VLを上方向や下方向に変化させて、VR空間を見回す動作を行っている。このように視線方向VLが変化することで、変更条件が満たされて、情報表示物の消去処理や半透明化処理などの表示態様の変更処理が行われている。この時には、HMDの表示画像IMGを例えば明るい設定にする。即ち、表示画像IMGの全体の明るさ(全体の輝度)を、図26(A)に比べて明るい設定にする。
例えば図26(A)に示すようにユーザPLが視線方向VLを正面方向に向けている場合には、図4〜図6に示すように多数の情報表示物を表示して、様々な情報をユーザPLに伝達することが適切である。このため図26(A)では、情報表示物の表示態様の変更処理を行わず、情報表示物を通常表示している。
一方、図26(B)に示すように、ユーザPLが視線方向VLを上下左右に変化させて、VR空間を見回している場合には、ユーザPLの視界を確保することが適切である。このため図26(B)では、情報表示物の消去処理や半透明化処理を行って、情報表示物が、VR空間を見回しているユーザPLの視界の妨げにならないようにしている。
そして、図26(B)では、更に、表示画像IMGを全体的に明るい設定にしている。このようにすれば、ユーザPLは、明るい設定の表示画像IMGにより、VR空間を見回すことが可能になり、より適切なHMDの表示画像の生成が可能になる。
3.5 コマンド処理
次に図6で説明した本実施形態のコマンド処理の詳細について説明する。これまでのキャラクタ等を用いたコミュニケーションゲームでは、いわゆる2次元のゲームが主流であり、ユーザとキャラクタとの位置関係や視線関係等の関係は考慮されていなかった。従って、例えば図6の「声をかける」というコマンドCM3をユーザが行使した場合に、ユーザとキャラクタの距離が近くても、或いは遠くても、このコマンドCM3により発動される効果が、同じになってしまう。このため、ユーザは、キャラクタとの距離感等を感じることができず、ユーザの仮想現実感を向上できないという課題がある。
そこで本実施形態では、ユーザとキャラクタとの位置関係や視線関係や注視状況などに応じて、コマンドの効果を変化させる手法を採用している。例えば本実施形態では、ユーザのゲームプレイの対象となるキャラクタの情報とユーザの視点情報とに応じたコマンドの効果を、発動させる。例えば、キャラクタの情報とユーザの視点情報とに応じて、コマンドの効果の度合いや、効果の内容を変化させる。具体的には、キャラクタの位置情報、方向情報、ゲームパラメータ情報、部位情報、姿勢情報又は種類情報であるキャラクタの情報と、ユーザの視点位置情報、視線方向情報又は仮想カメラ属性情報である視点情報とに応じたコマンドの効果を、発動させる。
図27(A)〜図28(B)は、ユーザPLとキャラクタCHとの位置関係情報に応じたコマンドの効果を、発動させる手法の説明図である。
例えば図27(A)、図27(B)では、ユーザPLとキャラクタCHとの位置関係情報に応じて、コマンドの効果の度合いを変化させている。ここでは、位置関係情報は、ユーザPLとキャラクタCHとの距離LCであり、この距離LCは、ユーザPLの視点情報である視点VPと、キャラクタCHの情報である位置PCに基づき求められるものである。なお位置関係情報は、ユーザPLの方向とキャラクタCHの方向の関係を表す情報であってもよい。
そして図27(A)、図27(B)では、ユーザは「もっと集中!」というコマンドCM1を選択して、行使しているが、図27(A)ではユーザPLとキャラクタCHの距離LCは遠い。一方、図27(B)では距離LCは近い。
この場合に本実施形態では、図27(A)、図27(B)のようにユーザが同じコマンドCM1を行使したとしても、距離LCに応じて、コマンドCM1により発動される効果の度合いを変化させている。例えば、図27(A)では距離LCが遠いため、これに応じてコマンドCM1の効果の度合いは低くなり、図27(B)では距離LCが近いため、これに応じてコマンドCM1の効果の度合いは高くなる。
具体的には、「もっと集中!」というコマンドCM1が行使された場合に、図27(A)では、距離LCが遠いため、A1に示すように、キャラクタCHの集中力のゲームパラメータの上昇の度合いが小さい。これに対して図27(B)では、距離LCが近いため、A2に示すように、キャラクタCHの集中力のゲームパラメータの上昇の度合いが大きくなる。
このようにすれば、ユーザは、「もっと集中!」というコマンドCM1を行使する際に、キャラクタCHの近くに行って、当該コマンドCM1を行使することで、キャラクタCHの集中力を、より高めることが可能になる。従って、「もっと集中」という言葉を、キャラクタCHの近くに行って言ったような感覚を、ユーザに与えることができ、ユーザの仮想現実感を向上できる。
図28(A)、図28(B)は、ユーザPLとキャラクタCHとの位置関係情報に応じて、コマンドの効果の内容を変化させている。即ち図27(A)、図27(B)では効果の度合いを変化させていたが、図28(A)、図28(B)では効果の内容を変化させている。
例えば図28(A)では、ユーザは、キャラクタCHとの距離LCが遠い状態で、「声をかける」というコマンドCM3を行使している。この場合には、ユーザの「声をかける」言葉として、例えば「おーい!」という音声が出力されたり、「おーい!」のテロップ(吹き出し)がゲーム画面上に表示される。
一方、図28(B)では、ユーザは、キャラクタCHとの距離LCが近い状態で、「声をかける」というコマンドCM3を行使している。この場合には、ユーザの「声をかける」言葉として、例えば「だいじょうぶか!」「頑張ってるか?」という言葉の音声が出力されたり、これらの言葉のテロップがゲーム画面上に表示される。
即ち、図28(A)では、「声をかける」というコマンドCM3の効果の内容が、「おーい!」という言葉の音声出力(テロップ表示)という内容になっている。これに対して、図28(B)では、距離LCが近づくことで、「だいじょうぶか!」「頑張ってるか?」という言葉の音声出力という内容に変化している。
このようにすれば、同じ「声をかける」というコマンドCM3であっても、ユーザPLとキャラクタCHとの位置関係に応じて、そのコマンドの効果の内容が変化するようになる。従って、ユーザの仮想現実感やゲーム表現のバラエティ度の向上等を図れる。
図29(A)、図29(B)は、ユーザPLとキャラクタCHとの視線関係情報に応じたコマンドの効果を、発動させる手法の説明図である。
例えば図29(A)、図29(B)では、ユーザPLとキャラクタCHとの視線関係情報に応じて、コマンドの効果の度合いや効果の内容を変化させている。図29(A)、図29(B)では、視線関係情報は、ユーザPLの視線方向VLと、キャラクタCHの位置PCや視線方向VLCとの関係を表す情報である。
そして図29(A)、図29(B)では、ユーザは「アドバイスをする」というコマンドCM5を選択して、行使しているが、図29(A)では、ユーザPLの視線方向VLはキャラクタCHの位置PCの方向を向いていない。これに対して、図29(B)では、ユーザPLの視線方向VLはキャラクタCHの位置PCの方向を向いている。また図29(A)では、ユーザPLの視線方向VLとキャラクタCHの視線方向VLCは合っていない。これに対して図29(B)では、視線方向VLとVLCが合っている。
この場合に本実施形態では、図29(A)、図29(B)のようにユーザが同じコマンドCM5を行使したとしても、視線関係情報に応じて、コマンドCM2により発動される効果の度合いや効果の内容を変化させている。
例えば、図29(A)の視線関係の場合には、「アドバイスをする」というコマンドCM5の発動による効果の内容として、「普通のアドバイス」が行われる。例えば、普通の口調で、平凡な内容のアドバイスが行われる。そして、コマンドCM5による「普通のアドバイス」の効果として、キャラクタCHのゲームパラメータであるモチベーションは上昇するが、図29(A)では、B1に示すようにその上昇の度合いは小さい。
一方、図29(B)の視線関係の場合には、「アドバイスをする」というコマンドCM5の効果の内容として、「優しいアドバイス」が行われる。例えば、優しい口調で、やる気を出させるような内容のアドバイスが行われる。そして、コマンドCM5による「優しいアドバイス」の効果として、キャラクタCHのモチベーションが上昇するが、図29(B)では、B2に示すようにその上昇の度合いが大きい。
このようにすれば、図29(A)のように、ユーザがキャラクタCHの方を見ずに、目をそらして、「アドバイスする」のコマンドCM5を行使した場合に比べて、図29(B)に示すように、ユーザがキャラクタCHの方をちゃんと見て、コマンドCM5を行使した場合の方が、より良い内容のアドバイスになると共に、アドバイスによる効果であるモチベーションの上昇度合いも大きくなる。従って、ユーザは、あたかも目の前にいる異性に向かって、アドバイスの言葉をかけているような感覚を感じることができ、ユーザの仮想現実感を大幅に向上できる。
図30は、ユーザの注視情報に応じたコマンドの効果を、発動させる手法の説明図である。例えば図30では、ユーザが注視しているキャラクタCHの部位の情報である注視部位情報に応じたコマンドの効果を、発動させている。
具体的には図30では、「つつく」というコマンドCM4を行使している。ここで、図30のC1に示すように、ユーザがキャラクタCHの部位である肩を注視しながら、「つつく」というコマンドCM4を行使したとする。この場合には、ユーザがキャラクタCHの肩をつつく場面を表現した画像(映像)が表示されるようになる。例えば、ユーザの手(オブジェクト)が画面上に現れ、この手がキャラクタCHの肩をつつくという画像が表示される。一方、図30のC2に示すように、ユーザがキャラクタCHの部位である頭(おでこ)を注視しながら、「つつく」というコマンドCM4を行使したとする。この場合には、ユーザがキャラクタCHの頭をつつく場面を表現した画像が表示されるようになる。例えば、ユーザの手が画面上に現れ、この手がキャラクタCHの頭をつつくという画像が表示される。
このようにすれば、同じ「つつく」というコマンドCM4を行使した場合にも、ユーザが注視するキャラクタCHの部位に応じて、異なる内容の動作の「つつく」が行われるようになる。そして、ユーザが注視する部分に対して、ユーザの動作が行われるようになるため、ユーザは、実際にキャラクタCHをつついているような感覚を感じることができ、ユーザの仮想現実感を向上できる。
以上のような本実施形態のコマンド処理の手法によれば、ユーザの仮想現実感を、より向上できるようになる。一方、本実施形態のようなコマンド処理の手法では、図6、図30に示すように多数の情報表示物が配置されて表示される。従って、ユーザがVR空間を見回す場合などにおいて、これらの多数の情報表示物が通常表示されてしまうと、ユーザの視界の妨げとなってしまう。この点、本実施形態では、視線方向の変化により変更条件が満たされると、情報表示物の表示態様を変更する処理が行われるため、より適切な表示画像をHMDに表示することが可能になる。
3.6 処理例
次に本実施形態の処理例について図31のフローチャートを用いて説明する。まず、ユーザの視点情報のトラッキング情報を取得する(ステップS21)。例えば図2(A)〜図3(B)等で説明したトラッキング処理により得られたトラッキング情報を取得する。そして、取得されたトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御する(ステップS22)。例えば現実世界においてユーザが上下左右方向に視線方向を向けた場合に、それに対応して仮想空間での仮想カメラの視線方向も上下左右方向に向くように、仮想カメラを制御する。また現実世界においてユーザの視点位置が上下左右方向に移動した場合に、それに対応して仮想空間での仮想カメラの視点位置も上下左右方向に移動するように、仮想カメラを制御する。
次に、ユーザの視線方向の変化により所与の変更条件が満たされたか否かを判定する(ステップS23)。例えば図15(A)、図15(B)、図17(A)、図17(B)で説明した手法により、変更条件が満たされたか否かを判定する。そして、変更条件が満たされた場合には、情報表示物の表示態様の変更処理を行う(ステップS24)。例えば図9(A)〜図12(B)等で説明した表示態様の変更処理を行う。そして仮想空間において仮想カメラから見える画像を生成して、HMDに表示する(ステップS25)。例えば、仮想カメラから見える画像として、立体視の左目用、右目用の画像を生成して、HMDに表示する。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(視点変化、移動体、アイテム等)と共に記載された用語(視線方向の変化、キャラクタ、本等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また仮想空間の設定処理、仮想カメラの制御処理、情報表示物の配置処理、表示態様の変更処理、変更条件の判定処理、復帰条件の判定処理等も、本実施形態で説明したものに限定されず、これらと均等な手法・処理・構成も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲーム装置、家庭用ゲーム装置、又は多数のユーザが参加する大型アトラクションシステム等の種々のシミュレーションシステムに適用できる。
DSA、DSB、DSC、DSD1、DSD2、DSE1〜DSE3 情報表示物、
DS、DS1〜DS5 情報表示物、RG、RG1〜RG3 判定範囲、
CH キャラクタ(移動体)、BK 本(アイテム)、CT カーテン(固定物)、
WL 壁(背景)、PL ユーザ、VP 視点、VL 視線方向、IMG 表示画像、
100 処理部、102 入力処理部、110 演算処理部、112 ゲーム処理部、
114 移動体処理部、115 判定部、116 仮想空間設定部、
118 仮想カメラ制御部、120 表示処理部、130 音処理部、
140 出力処理部、150 撮像部、151、152 第1、第2のカメラ、
160 操作部、166、167 ゲームコントローラ、
170 記憶部、172 オブジェクト情報記憶部、178 描画バッファ、
180 情報記憶媒体、192 音出力部、194 I/F部、
195 携帯型情報記憶媒体、196 通信部、
200 HMD(頭部装着型表示装置)、201〜209 受光素子、210 センサ部、
220 表示部、231〜238 発光素子、240 処理部、260 ヘッドバンド、
270 ヘッドホン、280、284 ベースステーション
本実施形態のシミュレーションシステムの構成例を示すブロック図。 図2(A)、図2(B)は本実施形態に用いられるHMDの一例。 図3(A)、図3(B)は本実施形態に用いられるHMDの他の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 キャラクタのステータスの表示についての説明図。 図8(A)〜図8(D)は情報表示物の表示手法の説明図。 図9(A)、図9(B)は本実施形態の表示態様変更手法の説明図。 図10(A)、図10(B)は本実施形態の表示態様変更手法の説明図。 図11(A)、図11(B)は本実施形態の表示態様変更手法の説明図。 図12(A)、図12(B)は本実施形態の表示態様変更手法の説明図。 図13(A)、図13(B)は情報表示物の種類、優先度、重要度に応じた表示態様変更手法の説明図。 情報表示物の表示からの経過時間に応じた表示態様変更手法の説明図。 図15(A)、図15(B)は変化角度、変化速度又は変化加速度を用いた変更条件の判定手法の説明図。 変化角度、変化速度又は変化加速度に応じて表示態様の変更処理の内容を異ならせる手法の説明図。 図17(A)、図17(B)は判定範囲を用いた変更条件の判定手法の説明図。 複数の情報表示物への判定範囲の設定手法の説明図。 中央部の情報表示物に対して表示態様の変更処理を行う手法の説明図。 情報表示物に応じて変更条件又は変更処理の内容を異ならせる手法の説明図。 図21(A)、図21(B)は情報表示物の奥行き値に応じて表示態様の変更処理を行う手法の説明図。 図22(A)〜図22(C)は変更条件が満たされてからの経過時間に応じた表示態様変更手法の説明図。 図23(A)〜図23(C)は表示態様の変更処理の復帰処理の説明図。 図24(A)〜図24(C)は表示態様の変更処理の復帰処理の説明図。 表示態様の変更処理の復帰処理の詳細例を示すフローチャート。 図26(A)図26()は表示態様の変更処理の非実行時と実行時とで表示画像の明るさを異ならせる手法の説明図。 図27(A)、図27(B)はユーザとキャラクタの位置関係情報に応じたコマンドの効果の発動処理の説明図。 図28(A)、図28(B)はユーザとキャラクタの位置関係情報に応じたコマンドの効果の発動処理の説明図。 図29(A)、図29(B)はユーザとキャラクタの視線関係情報に応じたコマンドの効果の発動処理の説明図。 ユーザの注視情報に応じたコマンドの効果の発動処理の説明図。 本実施形態の詳細な処理例を示すフローチャート。

Claims (16)

  1. 複数のオブジェクトが配置される仮想空間の設定処理を行う仮想空間設定部と、
    頭部装着型表示装置を装着するユーザの視点に対応する仮想カメラの制御処理を行う仮想カメラ制御部と、
    前記頭部装着型表示装置の表示画像として、前記仮想空間において前記仮想カメラから見える画像を生成する表示処理部と、
    を含み、
    前記仮想空間設定部は、
    前記ユーザの視線方向に少なくとも1つの情報表示物を配置し、
    前記表示処理部は、
    前記ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、前記情報表示物の表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  2. 請求項1において、
    前記仮想空間設定部は、
    前記ユーザの視点変化に追従するように制御される前記情報表示物を前記仮想空間に配置することを特徴とするシミュレーションシステム。
  3. 請求項1又は2において、
    前記表示処理部は、
    前記情報表示物の種類、優先度又は重要度に応じた前記表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  4. 請求項1乃至3のいずれかにおいて、
    前記表示処理部は、
    前記情報表示物が表示されてからの経過時間に応じた前記表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  5. 請求項1乃至4のいずれかにおいて、
    前記表示処理部は、
    前記表示態様の変更処理として、
    前記情報表示物の消去処理、前記情報表示物の半透明化処理、前記ユーザの視点変化への前記情報表示物の追従の解除処理、前記情報表示物の移動処理、前記情報表示物のサイズ変更処理、或いは前記情報表示物の色情報変更処理を行うことを特徴とするシミュレーションシステム。
  6. 請求項1乃至5のいずれかにおいて、
    前記所与の変更条件が満たされたかを判定する判定部を含み、
    前記判定部は、
    前記ユーザの視点変化情報に基づいて、前記所与の変更条件が満たされたか否かを判定することを特徴とするシミュレーションシステム。
  7. 請求項1乃至6のいずれかにおいて、
    前記所与の変更条件が満たされたかを判定する判定部を含み、
    前記情報表示物には判定範囲が設定されており、
    前記判定部は、
    前記ユーザの視線方向の注視位置が前記判定範囲を越えた場合に、前記所与の変更条件が満たされたと判定することを特徴とするシミュレーションシステム。
  8. 請求項7において、
    第1の情報表示物に対しては、前記判定範囲として第1の判定範囲が設定され、第2の情報表示物に対しては、前記判定範囲として、前記第1の判定範囲とは異なる第2の判定範囲が設定されていることを特徴とするシミュレーションシステム。
  9. 請求項1乃至8のいずれかにおいて、
    複数の前記情報表示物が前記仮想空間に配置される場合に、
    前記表示処理部は、
    前記ユーザの視点から見て中央部に位置する前記情報表示物に対して、前記表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  10. 請求項1乃至9のいずれかにおいて、
    複数の前記情報表示物が前記仮想空間に配置される場合に、
    前記表示処理部は、
    第1の情報表示物と第2の情報表示物とで、前記所与の変更条件の内容又は前記表示態様の変更処理の内容を異ならせることを特徴とするシミュレーションシステム。
  11. 請求項1乃至10のいずれかにおいて、
    前記表示処理部は、
    前記情報表示物の奥行き値に応じた前記表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  12. 請求項1乃至11のいずれかにおいて、
    前記表示処理部は、
    前記所与の変更条件が満たされてからの経過時間に応じた前記表示態様の変更処理を行うことを特徴とするシミュレーションシステム。
  13. 請求項1乃至12のいずれかにおいて、
    前記所与の変更条件が満たされたかを判定する判定部を含み、
    前記表示処理部は、
    前記判定部により前記所与の変更条件が満たされたと判定された場合に、前記情報表示物の前記表示態様の変更処理を行い、
    前記情報表示物の前記表示態様の変更処理が行われた後、前記判定部により所与の復帰条件が満たされたと判定された場合に、前記情報表示物の前記表示態様の変更処理の復帰処理を行うことを特徴とするシミュレーションシステム。
  14. 請求項13において、
    前記判定部は、
    前記表示態様の変更処理が行われた後、所与の時間が経過した場合、或いは、前記表示態様の変更処理が行われた後、所与の時間の間、前記ユーザの視線方向の変化が検出されなかった場合、或いは、前記表示態様の変更処理が行われた後、前記ユーザによる所与のオブジェクトの注視が検出された場合に、前記所与の復帰条件が満たされたと判定することを特徴とするシミュレーションシステム。
  15. 請求項1乃至14のいずれかにおいて、
    前記表示処理部は、
    前記情報表示物の前記表示態様の変更処理が行われていない時と、前記情報表示物の前記表示態様の変更処理が行われている時とで、前記頭部装着型表示装置の前記表示画像の明るさを異ならせることを特徴とするシミュレーションシステム。
  16. 複数のオブジェクトが配置される仮想空間の設定処理を行う仮想空間設定部と、
    頭部装着型表示装置を装着するユーザの視点に対応する仮想カメラの制御処理を行う仮想カメラ制御部と、
    前記頭部装着型表示装置の表示画像として、前記仮想空間において前記仮想カメラから見える画像を生成する表示処理部として、
    コンピュータを機能させ、
    前記仮想空間設定部は、
    前記ユーザの視線方向に少なくとも1つの情報表示物を配置し、
    前記表示処理部は、
    前記ユーザの視点変化により所与の変更条件が満たされたと判断された場合に、前記情報表示物の表示態様の変更処理を行うことを特徴とするプログラム。
JP2016179890A 2016-09-14 2016-09-14 シミュレーションシステム及びプログラム Active JP6373920B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2016179890A JP6373920B2 (ja) 2016-09-14 2016-09-14 シミュレーションシステム及びプログラム
CN201780056405.9A CN109690633B (zh) 2016-09-14 2017-09-12 模拟系统、处理方法以及信息存储介质
PCT/JP2017/032827 WO2018051970A1 (ja) 2016-09-14 2017-09-12 シミュレーションシステム、処理方法及び情報記憶媒体
US16/279,119 US11094106B2 (en) 2016-09-14 2019-02-19 Simulation system, processing method, and information storage medium for changing a display object in response to a movement of a field of view

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016179890A JP6373920B2 (ja) 2016-09-14 2016-09-14 シミュレーションシステム及びプログラム

Publications (2)

Publication Number Publication Date
JP2018045459A true JP2018045459A (ja) 2018-03-22
JP6373920B2 JP6373920B2 (ja) 2018-08-15

Family

ID=61619183

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016179890A Active JP6373920B2 (ja) 2016-09-14 2016-09-14 シミュレーションシステム及びプログラム

Country Status (4)

Country Link
US (1) US11094106B2 (ja)
JP (1) JP6373920B2 (ja)
CN (1) CN109690633B (ja)
WO (1) WO2018051970A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019197409A (ja) * 2018-05-10 2019-11-14 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP2020003892A (ja) * 2018-06-26 2020-01-09 コニカミノルタ株式会社 表記変換装置、変換表示装置、変換表示システム、制御方法及び記録媒体
WO2020100422A1 (ja) * 2018-11-12 2020-05-22 ソニー株式会社 表示装置、および表示制御方法、並びにプログラム
JP2020154793A (ja) * 2019-03-20 2020-09-24 任天堂株式会社 画像表示システム、画像表示プログラム、表示制御装置、および画像表示方法

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018116537A (ja) * 2017-01-19 2018-07-26 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10438393B2 (en) * 2017-03-16 2019-10-08 Linden Research, Inc. Virtual reality presentation of body postures of avatars
US20180268614A1 (en) * 2017-03-16 2018-09-20 General Electric Company Systems and methods for aligning pmi object on a model
KR102417968B1 (ko) 2017-09-29 2022-07-06 애플 인크. 시선-기반 사용자 상호작용
JP7197268B2 (ja) * 2017-12-25 2022-12-27 グリー株式会社 ゲーム装置、制御方法及び制御プログラム
JP7123554B2 (ja) * 2017-12-25 2022-08-23 グリー株式会社 ゲーム装置、制御方法及び制御プログラム
WO2019130896A1 (ja) * 2017-12-27 2019-07-04 ソニー株式会社 表示制御装置、表示制御方法およびプログラム
US11845002B2 (en) * 2018-02-02 2023-12-19 Lü Aire De Jeu Interactive Inc. Interactive game system and method of operation for same
JP6582205B2 (ja) * 2018-02-28 2019-10-02 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、情報処理システム
JP6623481B2 (ja) * 2018-03-23 2019-12-25 株式会社コナミデジタルエンタテインメント 情報処理装置、情報処理装置のプログラム、ヘッドマウントディスプレイ、及び、情報処理システム
WO2019187862A1 (ja) * 2018-03-30 2019-10-03 ソニー株式会社 情報処理装置、情報処理方法、および記録媒体
CN112041788B (zh) 2018-05-09 2024-05-03 苹果公司 使用眼睛注视来选择文本输入字段
CN113678191A (zh) * 2019-03-29 2021-11-19 索尼互动娱乐股份有限公司 边界显示控制设备,边界显示控制方法和程序
KR102149732B1 (ko) * 2019-04-17 2020-08-31 라쿠텐 인코포레이티드 표시 제어 장치, 표시 제어 방법, 프로그램, 및 비일시적인 컴퓨터 판독 가능한 정보 기록 매체
CN110413108B (zh) * 2019-06-28 2023-09-01 广东虚拟现实科技有限公司 虚拟画面的处理方法、装置、系统、电子设备及存储介质
JP6655751B1 (ja) * 2019-07-25 2020-02-26 エヌ・ティ・ティ・コミュニケーションズ株式会社 映像表示制御装置、方法およびプログラム
CN110393916B (zh) 2019-07-26 2023-03-14 腾讯科技(深圳)有限公司 视角转动的方法、装置、设备及存储介质
JP6688423B1 (ja) * 2019-08-20 2020-04-28 任天堂株式会社 情報処理システム、情報処理プログラム、情報処理装置、および情報処理方法
KR102533465B1 (ko) * 2019-12-24 2023-05-19 주식회사 브이알애드 시각에 따른 가상현실내의 도구패널 위치 지정방법
CN111626264B (zh) * 2020-06-06 2020-12-08 金宝兴电子(深圳)有限公司 一种实景反馈式模拟驾驶方法、装置及服务器
KR20220008118A (ko) 2020-07-13 2022-01-20 삼성전자주식회사 가상 객체들의 밝기를 다르게 표시하는 방법 및 장치
WO2022046340A1 (en) * 2020-08-31 2022-03-03 Sterling Labs Llc Object engagement based on finger manipulation data and untethered inputs
CN114518919A (zh) * 2020-11-19 2022-05-20 Oppo广东移动通信有限公司 内容分享方法及装置、设备、存储介质
CN112704876B (zh) * 2020-12-30 2022-10-04 腾讯科技(深圳)有限公司 虚拟对象互动模式的选择方法、装置、设备及存储介质
WO2023069363A1 (en) * 2021-10-19 2023-04-27 Within Unlimited, Inc. Virtual and augmented reality fitness training activity or games, systems, methods, and devices
US20230135974A1 (en) * 2021-11-04 2023-05-04 Microsoft Technology Licensing, Llc Multi-factor intention determination for augmented reality (ar) environment control

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010015360A (ja) * 2008-07-03 2010-01-21 Japan Health Science Foundation 制御システム及び制御方法
JP2014071663A (ja) * 2012-09-28 2014-04-21 Brother Ind Ltd ヘッドマウントディスプレイ、それを作動させる方法およびプログラム
JP2015231445A (ja) * 2014-06-09 2015-12-24 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07261112A (ja) 1994-03-22 1995-10-13 Hitachi Ltd 頭部搭載型ディスプレイ装置
US6987512B2 (en) 2001-03-29 2006-01-17 Microsoft Corporation 3D navigation techniques
JP3968356B2 (ja) * 2004-04-29 2007-08-29 株式会社コナミデジタルエンタテインメント 表示装置、表示方法、ならびに、プログラム
JP4151982B2 (ja) 2006-03-10 2008-09-17 任天堂株式会社 動き判別装置および動き判別プログラム
JP2008136694A (ja) 2006-12-01 2008-06-19 Namco Bandai Games Inc プログラム、情報記憶媒体及びゲーム装置
JP2011215886A (ja) * 2010-03-31 2011-10-27 Namco Bandai Games Inc プログラム、情報記憶媒体、及び、画像生成装置
US8619005B2 (en) * 2010-09-09 2013-12-31 Eastman Kodak Company Switchable head-mounted display transition
US9345957B2 (en) 2011-09-30 2016-05-24 Microsoft Technology Licensing, Llc Enhancing a sport using an augmented reality display
US9454849B2 (en) * 2011-11-03 2016-09-27 Microsoft Technology Licensing, Llc Augmented reality playspaces with adaptive game rules
JP5365684B2 (ja) 2011-12-27 2013-12-11 株式会社ニコン 制御装置、及びヘッドマウントディスプレイ装置
US9219901B2 (en) * 2012-06-19 2015-12-22 Qualcomm Incorporated Reactive user interface for head-mounted display
US9310611B2 (en) * 2012-09-18 2016-04-12 Qualcomm Incorporated Methods and systems for making the use of head-mounted displays less obvious to non-users
BR112015024910A2 (pt) * 2013-03-26 2017-07-18 Seiko Epson Corp dispositivo de exibição montado na cabeça, método de controle de dispositivo de exibição montado na cabeça e sistema de exibição
US9908048B2 (en) 2013-06-08 2018-03-06 Sony Interactive Entertainment Inc. Systems and methods for transitioning between transparent mode and non-transparent mode in a head mounted display
US9987554B2 (en) 2014-03-14 2018-06-05 Sony Interactive Entertainment Inc. Gaming device with volumetric sensing
US20170038838A1 (en) * 2014-05-09 2017-02-09 Sony Corporation Information processing system and information processing method
US9990774B2 (en) 2014-08-08 2018-06-05 Sony Interactive Entertainment Inc. Sensory stimulus management in head mounted display
JP6459421B2 (ja) * 2014-11-17 2019-01-30 セイコーエプソン株式会社 頭部装着型表示装置、頭部装着型表示装置を制御する方法、コンピュータープログラム
US10156721B2 (en) * 2015-03-09 2018-12-18 Microsoft Technology Licensing, Llc User-based context sensitive hologram reaction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010015360A (ja) * 2008-07-03 2010-01-21 Japan Health Science Foundation 制御システム及び制御方法
JP2014071663A (ja) * 2012-09-28 2014-04-21 Brother Ind Ltd ヘッドマウントディスプレイ、それを作動させる方法およびプログラム
JP2015231445A (ja) * 2014-06-09 2015-12-24 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019197409A (ja) * 2018-05-10 2019-11-14 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP7152873B2 (ja) 2018-05-10 2022-10-13 キヤノン株式会社 画像処理装置、画像処理方法、およびプログラム
JP2020003892A (ja) * 2018-06-26 2020-01-09 コニカミノルタ株式会社 表記変換装置、変換表示装置、変換表示システム、制御方法及び記録媒体
JP7115061B2 (ja) 2018-06-26 2022-08-09 コニカミノルタ株式会社 表記変換装置、変換表示装置、変換表示システム、制御方法及び記録媒体
WO2020100422A1 (ja) * 2018-11-12 2020-05-22 ソニー株式会社 表示装置、および表示制御方法、並びにプログラム
JPWO2020100422A1 (ja) * 2018-11-12 2021-10-14 ソニーグループ株式会社 表示装置、および表示制御方法、並びにプログラム
EP3882743A4 (en) * 2018-11-12 2021-12-29 Sony Group Corporation Display device, display control method, and program
US11402646B2 (en) 2018-11-12 2022-08-02 Sony Group Corporation Display apparatus, display control method, and program
JP2020154793A (ja) * 2019-03-20 2020-09-24 任天堂株式会社 画像表示システム、画像表示プログラム、表示制御装置、および画像表示方法
US11615569B2 (en) 2019-03-20 2023-03-28 Nintendo Co., Ltd. Image display system, non-transitory storage medium having stored therein image display program, display control apparatus, and image display method for controlling virtual camera based on rotation of a display device
JP7307568B2 (ja) 2019-03-20 2023-07-12 任天堂株式会社 画像表示システム、画像表示プログラム、表示制御装置、および画像表示方法
JP7459334B2 (ja) 2019-03-20 2024-04-01 任天堂株式会社 画像表示システム、画像表示プログラム、表示制御装置、および画像表示方法

Also Published As

Publication number Publication date
US20190244416A1 (en) 2019-08-08
WO2018051970A1 (ja) 2018-03-22
CN109690633A (zh) 2019-04-26
US11094106B2 (en) 2021-08-17
JP6373920B2 (ja) 2018-08-15
CN109690633B (zh) 2023-02-28

Similar Documents

Publication Publication Date Title
JP6373920B2 (ja) シミュレーションシステム及びプログラム
JP6298130B2 (ja) シミュレーションシステム及びプログラム
US10183220B2 (en) Image generation device and image generation method
JP6306442B2 (ja) プログラム及びゲームシステム
JP6401841B1 (ja) 情報処理方法、コンピュータ、及びプログラム
WO2018092774A1 (ja) シミュレーションシステム、処理方法及び情報記憶媒体
WO2018124280A1 (ja) シミュレーションシステム、画像処理方法及び情報記憶媒体
US11738270B2 (en) Simulation system, processing method, and information storage medium
JP2019175323A (ja) シミュレーションシステム及びプログラム
JP2015116336A (ja) 複合現実感アリーナ
JP7144796B2 (ja) シミュレーションシステム及びプログラム
JP2019152899A (ja) シミュレーションシステム及びプログラム
JP2018089228A (ja) 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム
JP6794390B2 (ja) シミュレーションシステム及びプログラム
JP6622832B2 (ja) プログラム及びゲームシステム
JP7104539B2 (ja) シミュレーションシステム及びプログラム
JP6419268B1 (ja) 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム
JP2018092592A (ja) 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム
JP2018171309A (ja) シミュレーションシステム及びプログラム
JP2020201980A (ja) シミュレーションシステム及びプログラム
Silverman The Rule of 27s: A Comparative Analysis of 2D Screenspace and Virtual Reality Environment Design

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180119

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180119

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180119

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180130

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20180403

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180607

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: 20180619

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180718

R150 Certificate of patent or registration of utility model

Ref document number: 6373920

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250