[go: up one dir, main page]

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

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

Info

Publication number
JP2018171319A
JP2018171319A JP2017071996A JP2017071996A JP2018171319A JP 2018171319 A JP2018171319 A JP 2018171319A JP 2017071996 A JP2017071996 A JP 2017071996A JP 2017071996 A JP2017071996 A JP 2017071996A JP 2018171319 A JP2018171319 A JP 2018171319A
Authority
JP
Japan
Prior art keywords
unit
user
launching
processing
hit
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
JP2017071996A
Other languages
English (en)
Other versions
JP6935218B2 (ja
Inventor
山本 修
Osamu Yamamoto
修 山本
雅信 伊藤
Masanobu Ito
雅信 伊藤
慎也 丹羽
Shinya Niwa
慎也 丹羽
規雄 江頭
Norio Egashira
規雄 江頭
兼子 英之
Hideyuki Kaneko
英之 兼子
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 JP2017071996A priority Critical patent/JP6935218B2/ja
Priority to CN201810259103.8A priority patent/CN108686371A/zh
Publication of JP2018171319A publication Critical patent/JP2018171319A/ja
Application granted granted Critical
Publication of JP6935218B2 publication Critical patent/JP6935218B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • 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/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/837Shooting of targets
    • 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/10Features 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 input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1037Features 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 input arrangements for converting player-generated signals into game device control signals being specially adapted for converting control signals received from the game device into a haptic signal, e.g. using force feedback
    • 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/302Features 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 specially adapted for receiving control signals not targeted to a display device or game input means, e.g. vibrating driver's seat, scent dispenser
    • 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/8076Shooting
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】頭部装着型表示装置を用いるシステムにおいて、気体の発射部を有効活用して仮想現実感の向上を図れるシミュレーションシステム及びプログラム等の提供。【解決手段】シミュレーションシステムは、視界を覆うようにHMDを装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報を取得する情報取得部と、仮想空間の設定処理を行う仮想空間設定部と、仮想空間でのゲームの処理を行うゲーム処理部と、ユーザに対して気体の発射が可能な発射部50の制御を行う制御部と、ユーザが装着するHMDの表示画像を生成する表示処理部を含む。発射部には、複数の発射装置CN1〜CN18が配置される。制御部は、仮想空間でのゲーム状況とユーザ情報に応じて発射部50の制御処理を行う。【選択図】図4

Description

本発明は、シミュレーションシステム及びプログラム等に関する。
従来より、HMD(頭部装着型表示装置)をユーザが頭部に装着し、HMDの画面に表示される画像をユーザが見ることで、いわゆるバーチャルリアリティー(VR)の世界を体感できるシミュレーションシステムが知られている。このようなシミュレーションシステムの従来技術としては、例えば特許文献1等に開示される技術がある。
特開平11−309269号公報
HMDを用いたシミュレーションシステムでは、ユーザの視界がHMDにより覆われてしまい、視界が外界から遮断される。一方、HMDには仮想空間(VR空間)の画像が表示されるが、仮想空間の画像だけではユーザの仮想現実感を今ひとつ高めることができない。このため、ユーザの仮想現実感を高めることができるような体感装置を用いることが望ましい。
しかしながら、このような体感装置を設ける場合には、衛生面、運営面、安全面等について考慮する必要がある。また体感装置の規模があまりにも大規模になってしまうと、現実的ではなく、コスト面等においても問題がある。
本発明の幾つかの態様によれば、頭部装着型表示装置を用いるシステムにおいて、気体の発射部を有効活用して仮想現実感の向上を図れるシミュレーションシステム及びプログラム等を提供できる。
本発明の一態様は、視界を覆うように頭部装着型表示装置を装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報を取得する情報取得部と、仮想空間の設定処理を行う仮想空間設定部と、前記仮想空間でのゲームの処理を行うゲーム処理部と、前記ユーザに対して気体の発射が可能な発射部の制御を行う制御部と、前記ユーザが装着する前記頭部装着型表示装置の表示画像を生成する表示処理部と、を含み、前記発射部には、複数の発射装置が配置され、前記制御部は、前記仮想空間でのゲーム状況と前記ユーザ情報に応じて、前記発射部の制御処理を行うシミュレーションシステムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明の一態様によれば、ユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報が取得される。また仮想空間の設定処理が行われ、当該仮想空間でのゲームの処理が行われて、ユーザが装着する頭部装着型表示装置の表示画像が生成されると共に、頭部装着型表示装置を装着するユーザに対して気体の発射が可能な発射部の制御が行われる。そして発射部には複数の発射装置が配置され、このように複数の発射装置が配置される発射部の制御処理が、仮想空間でのゲーム状況やユーザ情報に応じて行われる。このようにすれば、視界を覆うように頭部装着型表示装置を装着するユーザに対して、仮想空間のゲーム状況やユーザ情報に対応するように、発射部の複数の発射装置により気体を発射できるようになる。従って、例えば頭部装着型表示装置に表示される画像に連動するように、発射部からの気体が身体等に当たることによる触覚による体感をユーザに与えることができる。また例えばユーザの位置、方向又は姿勢に応じた適切な発射部の気体の発射制御の実現も可能になる。これにより、頭部装着型表示装置を用いるシステムにおいて、気体の発射部を有効活用して仮想現実感の向上を図れるシミュレーションシステム等の提供が可能になる。
また本発明の一態様では、前記発射部には、複数の前記発射装置がマトリクス状に配置され、前記制御部は、マトリクス状に配置された複数の前記発射装置の制御処理を行ってもよい。
このようにすれば、マトリクス状に配置された複数の発射装置を用いて、複数の発射装置により一斉に気体を発射したり、発射タイミングをずらして気体を発射するなどの多様な発射制御を実現できるようになる。
また本発明の一態様では、前記制御部は、前記仮想空間において前記気体に対応する被ヒットオブジェクトがヒットするヒットイベントが発生した場合に、前記発射部での前記発射装置の選定処理、前記気体の発射タイミングの制御処理、及び前記気体の発射出力度合いの制御処理の少なくとも1つを行ってもよい。
このようにすれば、仮想空間において気体に対応する被ヒットオブジェクトがヒットするヒットイベントが発生すると、当該ヒットイベントを触覚によりユーザに効果的に体感させるために、発射装置の選定処理、発射タイミングの制御処理、発射出力度合いの制御処理が行われるようになり、ユーザの仮想現実感の向上を図れる。
また本発明の一態様では、前記制御部は、前記被ヒットオブジェクトのヒット方向又はヒットベクトルに応じて、前記発射部での前記発射装置の選定処理、前記気体の発射タイミングの制御処理、及び前記気体の発射出力度合いの制御処理の少なくとも1つを行ってもよい。
このようにすれば、被ヒットオブジェクトのヒット方向又はヒットベクトルに対応するように、発射装置の選定処理、発射タイミングの制御処理、発射出力度合いの制御処理が行われるようになり、被ヒットオブジェクトのヒット方向やヒットベクトルをユーザに触覚的に認識させることが可能になる。
また本発明の一態様では、複数の前記発射装置は、鉛直方向に交差する第1の方向に沿った第1〜第Nの発射装置を含み、前記制御部は、前記ユーザに対応するユーザ移動体に対して前記被ヒットオブジェクトが斜め方向にヒットする前記ヒットイベントが発生した場合に、前記第1の発射装置から前記第Nの発射装置へと順次に前記気体が発射されるように前記発射部を制御してもよい。
このようにすれば、第1の発射装置から第Nの発射装置へと順次に気体が発射してユーザに当てることで、あたかも被ヒットオブジェクトが斜め方向にヒットしたかのようにユーザに錯覚させることが可能になる。
また本発明の一態様では、前記発射部は、前記発射部の方向を変更する発射部方向変更部を含み、前記制御部は、前記ゲーム状況に応じて、前記発射部方向変更部の制御を行ってもよい。
このようにすれば、ゲーム状況に応じて、発射部方向変更部の制御を行って、発射部の方向を変更することで、発射部の気体の発射方向をゲーム状況に応じて変更できるようになる。
また本発明の一態様では、前記発射部は、複数の前記発射装置の方向を変更する発射装置方向変更部を含み、前記制御部は、前記ゲーム状況に応じて、前記発射装置方向変更部の制御を行ってもよい。
このようにすれば、ゲーム状況に応じて、発射装置方向変更部の制御を行って、発射装置の方向を変更することで、発射装置の気体の発射方向をゲーム状況に応じて変更できるようになる。
また本発明の一態様では、前記仮想空間設定部は、前記仮想空間において前記気体に対応する被ヒットオブジェクトがヒットするヒットイベントにおける前記被ヒットオブジェクトの発生源オブジェクトを、実空間での前記発射部の位置に対応する仮想空間の位置に配置する処理を行ってもよい。
このようにすれば、仮想空間での被ヒットオブジェクトの発生源オブジェクトの位置と、実空間での発射部の位置とを対応させることが可能になり、発射部により発射された気体がユーザに当たることによる触覚による体感を、より適切なものにすることが可能になる。
また本発明の一態様では、前記ゲーム処理部は、前記発射部での前記気体の発射に対して、音、振動又は画像を連動させるゲーム演出処理を行ってもよい。
このようにすれば、発射部により発射された気体が当たることによる触覚による体感に連動させて、音、振動又は画像によるゲーム演出処理を実行できるようになる。
また本発明の一態様では、前記発射部は、発射する前記気体を加工する加工部を含んでもよい。
このようにすれば、加工部により加工された気体をユーザに対して発射できるようになり、同じ発射部を用いながらも、気体の発射による様々な体感をユーザに与えることが可能になる。
また本発明の一態様では、前記加工部は、複数の前記発射装置の第1の発射装置と第2の発射装置とで、発射する前記気体に対して異なる加工を行ってもよい。
このようにすれば、第1の発射装置を用いる場合と、第2の発射装置を用いる場合とで、ユーザに対して、異なる加工が行われた気体を発射できるようになり、気体の発射による多様な体感をユーザに与えることが可能になる。
本実施形態のシミュレーションシステムの構成例を示すブロック図。 図2(A)、図2(B)は本実施形態に用いられるHMDの一例。 図3(A)、図3(B)は本実施形態に用いられるHMDの他の例。 シミュレーションシステムの筺体の構成例。 図5(A)、図5(B)は発射部、発射装置の構成例。 仮想空間のフィールドの例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 本実施形態により生成されるゲーム画像の例。 図11(A)、図11(B)は発射部の制御手法の説明図。 図12(A)、図12(B)は発射部の制御手法の説明図。 図13(A)、図13(B)はヒット方向又はヒットベクトルに応じた発射部の制御手法の説明図。 複数の発射装置の各発射装置から順次に気体を発射する手法の説明図。 図15(A)、図15(B)はヒット方向又はヒットベクトルに応じた発射部の制御手法の説明図。 図16(A)〜図16(C)は発射部方向変更部の動作例の説明図。 図17(A)〜図17(C)は発射部方向変更部の動作例の説明図。 図18(A)、図18(B)は発射装置方向変更部の動作例の説明図。 図19(A)、図19(B)は気弾を発射する敵キャラクタを発射部の位置に対応する位置に配置する手法の説明図。 図20(A)〜図20(C)は気弾を発射する敵キャラクタを発射部の位置に対応する位置に配置する手法の説明図。 HMDを装着する複数のユーザがプレイするフィールドの例。 フィールドを移動するユーザに対して気体を発射する発射部の制御手法の説明図。 発射部での気体の発射に対して、音、振動等を連動させるゲーム演出手法の説明図。 発射部が発射する気体を加工する加工部の動作例の説明図。 発射部が発射する気体を加工する加工部の動作例の説明図。 本実施形態の詳細な処理例を説明するフローチャート。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.シミュレーションシステム
図1は、本実施形態のシミュレーションシステム(シミュレータ、ゲームシステム)の構成例を示すブロック図である。本実施形態のシミュレーションシステムは例えばバーチャルリアリティ(VR)をシミュレートするシステムであり、ゲームコンテンツを提供するゲームシステム、スポーツ競技シミュレータや運転シミュレータなどのリアルタイムシミュレーションシステム、SNSのサービスを提供するシステム、映像等のコンテンツを提供するコンテンツ提供システム、或いは遠隔作業を実現するオペレーティングシステムなどの種々のシステムに適用可能である。なお、本実施形態のシミュレーションシステムは図1の構成に限定されず、その構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
発射部50は、ユーザに対して気体の発射が可能な装置である。発射部50は、複数の発射装置CN1〜CNMを有する。発射部50は、発射部50の方向を変更する発射部方向変更部52や、発射装置CN1〜CNMの方向を変更する発射装置方向変更部54を含む。また発射される気体を加工する加工部56を含む。
操作部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を含む。なおHMD200に発光素子を設ける変形実施も可能である。センサ部210は、例えばヘッドトラッキングなどのトラッキング処理を実現するためものである。例えばセンサ部210を用いたトラッキング処理により、HMD200の位置、方向を特定する。HMD200の位置、方向が特定されることで、ユーザの視点位置、視線方向(ユーザの位置、方向)を特定できる。
トラッキング方式としては種々の方式を採用できる。トラッキング方式の一例である第1のトラッキング方式では、後述の図2(A)、図2(B)で詳細に説明するように、センサ部210として複数の受光素子(フォトダイオード等)を設ける。そして外部に設けられた発光素子(LED等)からの光(レーザー等)をこれらの複数の受光素子により受光することで、現実世界の3次元空間でのHMD200(ユーザの頭部)の位置、方向を特定する。第2のトラッキング方式では、後述の図3(A)、図3(B)で詳細に説明するように、複数の発光素子(LED)をHMD200に設ける。そして、これらの複数の発光素子からの光を、外部に設けられた撮像部で撮像することで、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は、情報取得部111、仮想空間設定部112、移動体処理部113、仮想カメラ制御部114、ゲーム処理部115、制御部118、表示処理部120、音処理部130を含む。上述したように、これらの各部により実行される本実施形態の各処理は、プロセッサ(或いはプロセッサ及びメモリ)により実現できる。なお、これらの構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
入力処理部102は、操作情報やトラッキング情報を受け付ける処理や、記憶部170から情報を読み出す処理や、通信部196を介して情報を受信する処理を、入力処理として行う。例えば入力処理部102は、操作部160を用いてユーザが入力した操作情報やHMD200のセンサ部210等により検出されたトラッキング情報を取得する処理や、読み出し命令で指定された情報を、記憶部170から読み出す処理や、外部装置(サーバ等)からネットワークを介して情報を受信する処理を、入力処理として行う。ここで受信処理は、通信部196に情報の受信を指示したり、通信部196が受信した情報を取得して記憶部170に書き込む処理などである。
演算処理部110は、各種の演算処理を行う。例えば情報取得処理、仮想空間設定処理、移動体処理、仮想カメラ制御処理、ゲーム処理(シミュレーション処理)、制御処理、表示処理、或いは音処理などの演算処理を行う。
情報取得部111(情報取得処理のプログラムモジュール)は種々の情報の取得処理を行う。例えば情報取得部111は、ユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報(ユーザトラッキング情報)を取得する。
仮想空間設定部112(仮想空間設定処理のプログラムモジュール)は、複数のオブジェクトが配置される仮想空間(オブジェクト空間)の設定処理を行う。例えば、移動体(人、ロボット、車、電車、飛行機、船、モンスター又は動物等)、マップ(地形)、建物、観客席、コース(道路)、樹木、壁、水面などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)を仮想空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のオブジェクト情報記憶部172には、仮想空間でのオブジェクト(パーツオブジェクト)の位置、回転角度、移動速度、移動方向等の情報であるオブジェクト情報がオブジェクト番号に対応づけて記憶される。仮想空間設定部112は、例えば各フレーム毎にこのオブジェクト情報を更新する処理などを行う。
移動体処理部113(移動体処理のプログラムモジュール)は、仮想空間内で移動する移動体についての種々の処理を行う。例えば仮想空間(オブジェクト空間、ゲーム空間)において移動体を移動させる処理や、移動体を動作させる処理を行う。例えば移動体処理部113は、操作部160によりユーザが入力した操作情報や、取得されたトラッキング情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、移動体(モデルオブジェクト)を仮想空間内で移動させたり、移動体を動作(モーション、アニメーション)させる制御処理を行う。具体的には、移動体の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。移動体は、例えば実空間のユーザ(プレーヤ)に対応する仮想空間の仮想ユーザ(仮想プレーヤ、アバター)や、或いは当該仮想ユーザが搭乗(操作)する搭乗移動体(操作移動体)などである。
ゲーム処理部115(ゲーム処理のプログラムモジュール)はユーザがゲームをプレイするための種々のゲーム処理を行う。別の言い方をすれば、ゲーム処理部115(シミュレーション処理部)は、ユーザが仮想現実(バーチャルリアリティ)を体験するための種々のシミュレーション処理を実行する。ゲーム処理は、例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、開始したゲームを進行させる処理、ゲーム終了条件が満たされた場合にゲームを終了する処理、或いはゲーム成績を演算する処理などである。ゲーム処理部115はヒット演算処理部116を含む。ヒット演算処理部116は、ヒット判定処理などのヒット演算処理を実行する。
制御部118(制御処理のプログラムモジュール)は発射部50の制御を行う。制御部118の詳細については後述する。
表示処理部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に指示する処理などである。
そして本実施形態のシミュレーションシステムは、情報取得部111と、仮想空間設定部112と、ゲーム処理部115と、制御部118と、表示処理部120を含む。
情報取得部111は、HMD200(頭部装着型表示装置)を装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報を取得する。例えば情報取得部111は、HMD200のトラッキング情報などに基づいて、実空間でのユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報(ユーザトラッキング情報)を取得する。位置情報は、実空間でのユーザの視点の位置情報であってもよく、方向情報は、実空間でのユーザの視線の方向情報であってもよい。位置情報、方向情報は、ユーザが実空間(現実世界)のフィールド(プレイフィールド、シミュレーションフィールド、プレイエリア)に位置する場合に、そのフィールドでの位置情報、方向情報(所与の位置を原点とする座標系での位置座標、各座標軸回りでの回転角度)であってもよい。姿勢情報は、ユーザの各姿勢(立ち姿勢、しゃがみ姿勢又は座り姿勢等)を特定したり、或いはユーザの各部位(胴体、頭、手又は足等)の位置、方向を特定するための情報である。例えば情報取得部111は、HMD200の位置情報、方向情報を、当該HMD200を装着するユーザの位置情報、方向情報として取得してもよい。
仮想空間設定部112は仮想空間の設定処理を行う。例えば、移動体、障害物、背景又はマップ等のオブジェクトを仮想空間に配置設定する処理を行う。例えば実空間でのユーザの位置情報、方向情報が取得された場合に、取得された位置情報、方向情報に基づいて、ユーザに対応するユーザ移動体(ユーザキャラクタ等)の位置、方向を設定して、仮想空間に配置する処理を行う。オブジェクトであるユーザ移動体の位置、方向等の情報は、例えばオブジェクト情報記憶部172に記憶される。ユーザ移動体は、例えば実空間でユーザの移動に追従して仮想空間(オブジェクト空間)において移動するオブジェクト(表示物)である。ユーザ移動体としては、ユーザに対応するアバター移動体(ユーザキャラクタ、仮想ユーザ)や、アバター移動体が搭乗する搭乗移動体や、アバター移動体が装着する外殻移動体などがある。外殻移動体は、アバター移動体(ゴースト)に重なるように配置されて仮想空間を移動する。外殻移動体は、アバター移動体を内包する移動体であり、ユーザの義体として表現されるものある。
ゲーム処理部115は、仮想空間でのゲームの処理を行う。例えばゲームを開始する処理、ゲームを進行させる処理、ゲームを終了する処理、或いはゲーム成績を演算する処理などのゲーム処理を行う。
制御部118は、ユーザに対して気体の発射が可能な発射部50の制御を行う。例えば制御部118は、発射部50自体の制御を行ったり、発射部50の複数の発射装置CN1〜CNMの制御を行う。
表示処理部120は、ゲーム処理の結果に基づいて表示画像を生成する。例えばユーザが視界を覆うように装着するHMD200の表示画像を生成する。例えば仮想空間において仮想カメラから見える画像を、表示画像として生成する。例えば仮想カメラ制御部114は、ユーザの視点に対応する仮想カメラの制御処理を行う。例えば仮想カメラ制御部114は、ユーザの一人称視点として設定される仮想カメラの制御を行う。例えば仮想空間において移動する移動体(仮想プレーヤ等)の視点に対応する位置に、仮想カメラを設定して、仮想カメラの視点位置や視線方向を設定することで、仮想カメラの位置(位置座標)や姿勢(回転軸回りでの回転角度)を制御する。そして表示処理部120は、HMD200等の表示画像(表示映像)として、仮想空間において仮想カメラ(ユーザ視点)から見える画像を生成する。例えば仮想空間であるオブジェクト空間において所与の視点から見える画像を生成する。生成される画像は例えば立体視用の画像である。
発射部50には、複数の発射装置CN1〜CNMが配置される。そして制御部118は、仮想空間でのゲーム状況に応じて、発射部50の制御処理を行う。具体的には制御部118は、仮想空間でのゲーム状況とユーザ情報に応じて、発射部50の制御処理を行う。即ち、ゲーム状況や、ユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報に応じて、発射部50での発射装置CN1〜CNMの選定や、気体の発射タイミングや、気体の発射出力度合いや、気体の発射方向や、或いは気体の加工などの制御を行う。
ここでゲーム状況は、例えばユーザのゲームプレイの状況、ゲームの進行状況、ゲームでのイベントの状況、ゲームの戦闘状況、ゲームの対戦状況、ゲームに出現する敵の攻撃状況、ゲームでのヒット判定の状況、ゲームに登場する移動体(キャラクタ又は被ヒットオブジェクト等)の状況、キャラクタやユーザのステータスパラメータ(体力値、レベル、攻撃力又は守備力等)の状況、或いはゲームの成績の状況などであり、例えばゲームのパラメータ等で表される種々の状況である。ゲーム状況は例えばゲーム処理部115でのゲーム処理により特定される。例えばゲーム処理で使用される各種のゲームパラメータ等の情報に基づいてユーザのゲーム状況が特定される。また発射部50の制御処理は、例えば発射部50での発射装置CN1〜CNMの選定の制御処理、気体の発射タイミングの制御処理、気体の発射出力度合いの制御処理、発射部50の方向変更の制御処理、発射装置CN1〜CNMの方向変更の制御処理、或いは発射部50が発射する気体の加工の制御処理などである。
このように制御部118は、ゲームのプレイ状況、進行状況、イベント状況、戦闘状況、対戦状況、攻撃状況、ヒット判定の状況、移動体の状況、ステータスパラメータの状況又は成績の状況などのゲーム状況に応じて、発射装置の選定、発射タイミング、発射出力度合い、方向変更又は気体加工などについての制御処理を行う。このようにすれば、仮想空間のゲーム状況に対応するように、発射部50の複数の発射装置により気体を発射できるようになる。
更に制御部118は、ユーザの位置情報、方向情報又は姿勢情報などのユーザ情報に応じて、発射部50の制御を行う。例えば実空間でのユーザの位置や方向に応じた発射方向又は発射出力度合い等で気体が発射するように、発射部50を制御する。またユーザの姿勢などに応じて、発射部50での気体の発射方向又は発射出力度合い等を変化させる。このようにすれば、ユーザの位置、方向又は姿勢に応じた最適な発射部50の気体の発射制御を行うことが可能になる。例えば本実施形態の制御処理は、取得されたユーザ情報に基づきゲームを進行させるなどのゲーム処理を行い、ゲーム処理の結果に基づくゲーム状況に応じて、発射部50の制御を行うものであってもよい。またユーザ情報に基づきユーザを検知し、検知されたユーザのゲーム状況に応じて発射部50の制御を行ってもよい。例えば検知されたユーザに対して敵が攻撃して来るようなゲーム状況になった場合に、発射部50に気体を発射させる制御を行う。
また発射部50には、複数の発射装置CN1〜CNMがマトリクス状に配置される。そして制御部118は、マトリクス状に配置された複数の発射装置CN1〜CNMの制御を行う。例えば発射装置CN1〜CNMが2次元マトリクス状に配置される。例えば発射装置CN1〜CNMがK行、N列のマトリクス状に配列される。例えばK、Nは1以上の整数であり、望ましくはK、Nは2以上の整数である。この場合に発射装置CN1〜CNMを格子状に配置してもよい。但しCN1〜CNMの発射装置間の距離は一定距離である必要はなく、異なる距離になってもよい。またK行、N列のマトリクス状の配列において、1行に並ぶN個の発射装置は直線状に配置されてもよいし、曲線状に配置されていてもよい。また1列に並ぶK個の発射装置は直線状に配置されてもよいし、曲線状に配置されていてもよい。
また制御部118は、仮想空間において気体に対応する被ヒットオブジェクト(被ヒット物)がヒットするヒットイベントが発生した場合に、発射部50での発射装置CN1〜CNMの選定処理、気体の発射タイミングの制御処理、及び気体の発射出力度合いの制御処理の少なくとも1つを行う。被ヒットオブジェクトは現実世界の気体に対応する仮想空間のオブジェクトであり、仮想空間において画像として表示されるオブジェクトであってもよいし、仮想空間において画像として非表示の仮想的なオブジェクトであってもよい。また仮想空間においてユーザに対応するユーザ移動体が移動する場合に、ヒットイベントは、気体に対応する被ヒットオブジェクトがユーザ移動体等にヒットするイベントである。被ヒットオブジェクトがヒットしたか否かのヒット判定処理は、ゲーム処理部115が行う。具体的には、ヒット判定処理等のヒット演算処理は、ゲーム処理部115のヒット演算処理部116が行う。ヒット演算処理は、被ヒットオブジェクトがヒットしたか否かを判定するヒット判定処理や、ヒットによるダメージ量の演算処理や、ヒット用の演出処理などである。
発射部50での発射装置CN1〜CNMの選定処理は、例えば発射装置CN1〜CNMのいずれの発射装置から気体を発射させるかを選定する処理である。気体を発射させる発射装置として選定される発射装置は、1個の発射装置であってもよいし、複数個の発射装置であってもよい。例えば発射装置CN1〜CNMがK行、N列のマトリクス状に配置される場合に、制御部118は、1行に並ぶN個の発射装置に気体を発射させる選定処理を行ったり、1列に並ぶK個の発射装置に気体を発射させる選定処理を行ってもよい。気体の発射タイミングの制御処理は、いずれのタイミングで気体を発射するかを制御する処理である。この場合に制御部118は、発射部50の全ての発射装置CN1〜CNMが一斉に気体を発射する場合の発射タイミングを制御してもよい、発射装置CN1〜CNMのうちの1又は複数の発射装置が気体を発射する場合に、当該1又は複数の発射装置の気体の発射タイミングを制御してもよい。気体の発射出力度合いの制御処理は、発射される気体の強さや速さなどを制御する処理である。即ち、どのような強さ、速さで気体を発射させるかを制御する処理である。例えば発射装置CN1〜CNMの気体の発射が発射制御信号に基づいて制御される場合に、気体の発射出力度合いは、この発射制御信号の電圧レベル、電流レベル又は信号波形等により制御できる。
また制御部118は、被ヒットオブジェクトのヒット方向又はヒットベクトルに応じて、発射部50での発射装置CN1〜CNMの選定処理、気体の発射タイミングの制御処理、及び気体の発射出力度合いの制御処理の少なくとも1つを行う。ヒット方向(攻撃方向)は、被ヒットオブジェクトがユーザ移動体等のオブジェクトにヒットしたときの被ヒットオブジェクトの移動方向である。例えばヒット方向は、ユーザ移動体等のオブジェクトに向かって飛翔する被ヒットオブジェクトの軌道に基づいて特定できる。ヒットベクトルは、ヒット方向に加えてヒットの強さを表すものである。ユーザ移動体等のオブジェクトに被ヒットオブジェクトがヒットした場合のヒットの強さは、ヒットベクトルの大きさに基づき特定される。これのらヒット方向、ヒットベクトルは、ゲーム処理部115(ヒット演算処理部116)でのヒット演算処理に基づき求められる。即ち、ゲーム処理部115は、ゲーム処理の結果に基づき、ヒット方向、ヒットベクトル等のヒット情報を求める。そして制御部118は、ゲーム処理の結果に基づき求められたヒット方向、ヒットベクトル等のヒット情報に基づいて、発射装置CN1〜CNMの選定処理、発射タイミングの制御処理、或いは発射出力度合いの制御処理などを行う。
また複数の発射装置CN1〜CNMは、鉛直方向に交差する第1の方向に沿った第1〜第Nの発射装置を含む。発射装置CN1〜CNMがK行、N列のマトリクス状に配置される場合に、第1〜第Nの発射装置は、K行のうちの1行に並ぶ発射装置である。そして制御部118は、ユーザに対応するユーザ移動体に対して被ヒットオブジェクトが斜め方向にヒットするヒットイベントが発生した場合に、第1の発射装置から第Nの発射装置へと順次に気体が発射されるように発射部を制御する。
例えば被ヒットオブジェクトが斜め方向にヒットするヒットイベントが発生した場合に、第1の発射装置から気体を発射させ、次に第2の発射装置から気体を発射させ、次に第3の発射装置から気体を発射させるというように順次に時系列に各発射装置から気体を発射させ、最後に第Nの発射装置から気体を発射させる。この場合に順次に時系列に気体を発射させる発射装置は、1個ずつの単位であってもよいし、複数個ずつの単位であってもよい。例えば第1、第2の発射装置から気体を発射させ、次に第3、第4の発射装置から気体を発射させ、次に第5、第6の気体装置から気体を発射させるというような制御であってもよい。
またユーザ移動体に対して被ヒットオブジェクトが斜め方向にヒットする場合の斜め方向とは、ユーザ移動体の向く方向に対する斜め方向であってもよし、ユーザ移動体の向く方向に依らない斜め方向であってもよい。例えば仮想空間のユーザ移動体は、現実世界のユーザの動きに連動して、位置や方向を変化させる。この場合に斜め方向は、ユーザの向く方向に対する斜め方向であってもよいし、ユーザの向く方向に依らない斜め方向であってもよい。
また発射部50は、発射部50の方向を変更する発射部方向変更部52を含む。例えば発射部方向変更部52は、発射部50自体の向く方向(気体の発射方向)を変更する。このように発射部50の方向が変更されると、発射部50の発射装置CN1〜CNMの気体の発射方向が一斉に変更される。そして制御部118は、ゲーム状況やユーザ情報に応じて、発射部方向変更部52の制御を行う。例えばユーザのゲームプレイの状況、ゲームの進行状況、ゲームのイベントの状況、ゲームの戦闘状況、ゲームの対戦状況、敵の攻撃状況、ゲームでのヒット判定の状況、ゲームに登場する移動体の状況、キャラクタやユーザのステータスパラメータの状況、或いはゲームの成績の状況などに応じて、発射部方向変更部52の制御を行い、発射部50の向く方向(気体の発射方向)を変更する。発射部方向変更部52は、発射部50の方向を変更するためアクチュエータ(モータ等)や機械機構により実現できる。
また発射部50は、複数の発射装置CN1〜CNMの方向を変更する発射装置方向変更部54を含む。この発射装置方向変更部54は、CN1〜CNMの各発射装置の向く方向(気体の発射方向)を制御する。この場合に発射装置方向変更部54は、1個ずつの単位で発射装置の方向を変更してもよし、複数個ずつの単位で発射装置の方向を変更してもよい。そして制御部118は、ゲーム状況やユーザ情報に応じて、発射装置方向変更部54の制御を行う。例えばユーザのゲームプレイの状況、ゲームの進行状況、ゲームのイベントの状況、ゲームの戦闘状況、ゲームの対戦状況、敵の攻撃状況、ゲームでのヒット判定の状況、ゲームに登場するキャラクタの状況、キャラクタやユーザのステータスパラメータの状況、或いはゲームの成績の状況などに応じて、発射装置方向変更部54の制御を行い、CN1〜CNMの各発射装置の向く方向(気体の発射方向)を変更する。発射装置方向変更部54は、発射装置CN1〜CNMの方向を変更するためアクチュエータ(モータ等)や機械機構により実現できる。
また仮想空間設定部112は、仮想空間において気体に対応する被ヒットオブジェクトがヒットするヒットイベントにおける被ヒットオブジェクトの発生源オブジェクトを、実空間での発射部50の位置に対応する仮想空間の位置に配置する処理を行う。例えばヒットイベントにおいては、敵キャラクタ等の発生源オブジェクト(発射源オブジェクト)が被ヒットオブジェクトを発生(発射)し、この被ヒットオブジェクトがユーザ移動体等のオブジェクトにヒットする。この場合に仮想空間設定部112は、当該発生源オブジェクトを、実空間での発射部50の位置(位置又は方向)に対応する仮想空間の位置(位置又は方向)に配置する。そして、このような仮想空間の位置に配置された発生源オブジェクトからの被ヒットオブジェクトが、ユーザ移動体等のオブジェクトにヒットする。このようにすれば、被ヒットオブジェクトを発生する発生源オブジェクトの位置と、被ヒットオブジェクトに対応する気体を発射する発射部50の位置とを対応させることが可能になる。これにより、あたかも発生源オブジェクトの位置から気体が発生したかのような仮想現実を実現できるようになる。
またゲーム処理部115は、発射部50での気体の発射に対して、音、振動又は画像を連動させるゲーム演出処理を行う。例えば発射部50での気体の発射に連動して、気体の発射音やヒット音などの音や出力したり、気体の発射やヒットを表す振動を発生したり、気体の発射やヒットを表す演出画像を表示するゲーム演出処理を行う。このようなゲーム演出処理は、例えば制御部118からの発射制御信号に基づいて発射部50を制御する場合に、この発射制御信号に連動した演出処理を行うことなどにより実現できる。
また発射部50は、発射する気体を加工する加工部56を含む。そして発射部50は、制御部118の制御の下で、加工部56により加工された気体を発射する。
ここで加工部56での気体の加工としては種々の態様が考えられる。例えば発射する気体に香りを混ぜるような加工をしてもよい。また発射する気体の温度を変化させるような加工を行ってもよい。例えば発射する気体の温度を上げたり、温度を下げる加工を行う。例えば温度を下げる加工の一態様として、気体に氷や雪を混ぜるような加工を行って、発射してもよい。或いは、発射する気体の湿度を変化させる加工を行ってもよい。例えば発射する気体の湿度を上げたり、湿度を下げる加工を行う。例えば、ミストを発射するような加工を行ってもよい。このように気体の加工を行って発射すれば、加工した気体を利用して、ユーザに対して多種多様な仮想現実を体感させることが可能になる。例えば吹雪が吹き付けるようなHMD200の映像シーンに連動して、氷や雪が混ざった気体を発射するような加工を行う。また、火山などの暑い場所でのHMD200の映像シーンに連動して、熱風の気体を発射するような加工を行う。また、お花畑などの映像シーンに連動して、花の香りが混ざった気体を発射するような加工を行う。これにより、ユーザの仮想現実感を更に向上できるようになる。
また加工部56は、複数の発射装置CN1〜CNMの第1の発射装置と第2の発射装置とで、発射する気体に対して異なる加工を行う。例えば各発射装置毎に異なる気体の加工を行う。このようにすれば、複数の発射装置CN1〜CNMを用いて、様々に加工された気体をユーザに対して発射することが可能になる。なお、複数の発射装置CN1〜CNMにおいて、1個ずつの単位で発射装置が発射する気体の加工を異ならせてもよいし、複数個ずつの単位で発射装置が発射する気体の加工を異ならせてもよい。
なお移動体処理部113は、仮想空間を移動するユーザ移動体の移動処理を行う。例えば移動体処理部113は、ユーザに対応するユーザ移動体(アバター移動体、搭乗移動体、外殻移動体)を、情報取得部111により取得されたユーザ情報(位置情報、方向情報)に基づいて、仮想空間において移動させる処理を行う。例えば実空間でのユーザの移動に追従して移動するように、仮想空間でユーザ移動体を移動させる。例えばユーザ移動体の移動速度や移動加速度に基づいて、ユーザ移動体の位置等をフレーム毎に更新する処理を行って、ユーザ移動体を仮想空間(仮想フィールド)において移動させる。また移動体処理部113は、情報取得部111により取得されたユーザ情報(姿勢情報)に基づいて、ユーザ移動体を動作させる処理を行う。例えばモーションデータに基づいて、ユーザ移動体の姿勢等を変化させるモーション処理を行う。
また仮想カメラ制御部114は、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御する。
例えば入力処理部102(入力受け付け部)は、HMD200を装着するユーザの視点情報のトラッキング情報を取得する。例えばユーザの視点位置、視線方向の少なくとも1つである視点情報のトラッキング情報(視点トラッキング情報)を取得する。このトラッキング情報は、例えばHMD200のトラッキング処理を行うことで取得できる。なおトラッキング処理によりユーザの視点位置、視線方向を直接に取得するようにしてもよい。一例としては、トラッキング情報は、ユーザの初期視点位置からの視点位置の変化情報(視点位置の座標の変化値)、及び、ユーザの初期視線方向からの視線方向の変化情報(視線方向の回転軸回りでの回転角度の変化値)の少なくとも一方を含むことができる。このようなトラッキング情報が含む視点情報の変化情報に基づいて、ユーザの視点位置や視線方向(ユーザの頭部の位置、姿勢の情報)を特定できる。
そして仮想カメラ制御部114は、取得されたトラッキング情報(ユーザの視点位置及び視線方向の少なくとも一方の情報)に基づいて仮想カメラの視点位置、視線方向を変化させる。例えば、仮想カメラ制御部114は、実空間でのユーザの視点位置、視線方向の変化に応じて、仮想空間での仮想カメラの視点位置、視線方向(位置、姿勢)が変化するように、仮想カメラを設定する。このようにすることで、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御できる。
また本実施形態では、ユーザがプレイするゲームのゲーム処理として、仮想現実のシミュレーション処理を行う。仮想現実のシミュレーション処理は、実空間での事象を仮想空間で模擬するためのシミュレーション処理であり、当該事象をユーザに仮想体験させるための処理である。例えば実空間のユーザに対応するアバター移動体(仮想ユーザ)やその搭乗移動体などのユーザ移動体を、仮想空間で移動させたり、移動に伴う環境や周囲の変化をユーザに体感させるための処理を行う。
なお図1の本実施形態のシミュレーションシステムの処理は、施設に設置されるPC等の処理装置、ユーザが装着する処理装置、或いはこれらの処理装置の分散処理などにより実現できる。或いは、本実施形態のシミュレーションシステムの処理を、サーバシステムと端末装置により実現してもよい。例えばサーバシステムと端末装置の分散処理などにより実現してもよい。
2.トラッキング処理
次にトラッキング処理の例について説明する。図2(A)に本実施形態のシミュレーションシステムに用いられるHMD200の一例を示す。図2(A)に示すようにHMD200には複数の受光素子201、202、203(フォトダイオード)が設けられている。受光素子201、202はHMD200の前面部に設けられ、受光素子203はHMD200の右側面に設けられている。またHMDの左側面、上面等にも不図示の受光素子が設けられている。
またユーザUSは、手、腰等の部位にトラッキング装置251、252、253を装着している。これらのトラッキング装置251、252、253にはHMD200と同様に複数の受光素子(不図示)が設けられている。これらの受光素子を用いることで、HMD200の場合と同様に、手、腰等の部位の位置、方向を特定でき、ユーザUSの姿勢情報を取得できる。なおトラッキング装置が装着されるユーザUSの部位は手、腰には限定されず、脚、腹部、胸部等の種々の部位に装着できる。
またHMD200には、ヘッドバンド260等が設けられており、ユーザUSは、より良い装着感で安定的に頭部にHMD200を装着できるようになっている。また、HMD200には、不図示のヘッドホン端子が設けられており、このヘッドホン端子にヘッドホン270(音出力部192)を接続することで、例えば3次元音響(3次元オーディオ)の処理が施されたゲーム音を、ユーザUSは聴くことが可能になる。なお、ユーザUSの頭部の頷き動作や首振り動作をHMD200のセンサ部210等により検出することで、ユーザUSの操作情報を入力できるようにしてもよい。
図2(B)に示すように、ユーザUSの周辺には、ベースステーション280、284が設置されている。ベースステーション280には発光素子281、282が設けられ、ベースステーション284には発光素子285、286が設けられている。発光素子281、282、285、286は、例えばレーザー(赤外線レーザー等)を出射するLEDにより実現される。ベースステーション280、284は、これら発光素子281、282、285、286を用いて、例えばレーザーを放射状に出射する。そして図2(A)のHMD200に設けられた受光素子201〜203等が、ベースステーション280、284からのレーザーを受光することで、HMD200のトラッキングが実現され、ユーザUSの頭の位置や向く方向(視点位置、視線方向)を検出できるようになる。
またトラッキング装置251、252、253に設けられる受光素子が、ベースステーション280、284からのレーザーを受光することで、ユーザUSの各部位の位置及び方向の少なくとも一方を検出できるようになる。
図3(A)にHMD200の他の例を示す。図3(A)では、HMD200に対して複数の発光素子231〜236が設けられている。これらの発光素子231〜236は例えばLEDなどにより実現される。発光素子231〜234は、HMD200の前面部に設けられ、発光素子235や不図示の発光素子236は、背面側に設けられる。これらの発光素子231〜236は、例えば可視光の帯域の光を出射(発光)する。具体的には発光素子231〜236は、互いに異なる色の光を出射する。またユーザUSが手、腰等の部位に装着するトラッキング装置251、252、253にも発光素子(不図示)が設けられている。
そして図3(B)に示す撮像部150を、ユーザUSの周囲の少なくとも1つの場所(例えば前方側、或いは前方側及び後方側など)に設置し、この撮像部150により、HMD200の発光素子231〜236の光を撮像する。即ち、撮像部150の撮像画像には、これらの発光素子231〜236のスポット光が映る。そして、この撮像画像の画像処理を行うことで、ユーザUSの頭部(HMD)のトラッキングを実現する。即ちユーザUSの頭部の3次元位置や向く方向(視点位置、視線方向)を検出する。
例えば図3(B)に示すように撮像部150には第1、第2のカメラ151、152が設けられており、これらの第1、第2のカメラ151、152の第1、第2の撮像画像を用いることで、ユーザUSの頭部の奥行き方向での位置等が検出可能になる。またHMD200に設けられたモーションセンサのモーション検出情報に基づいて、ユーザUSの頭部の回転角度(視線)も検出可能になっている。従って、このようなHMD200を用いることで、ユーザUSが、周囲の360度の全方向うちのどの方向を向いた場合にも、それに対応する仮想空間(仮想3次元空間)での画像(ユーザの視点に対応する仮想カメラから見える画像)を、HMD200の表示部220に表示することが可能になる。
また撮像部150により、トラッキング装置251、252、253の発光素子の光を撮像することで、HMD200の場合と同様に、ユーザUSの各部位の位置及び方向の少なくとも一方を検出できる。
なお、発光素子231〜236として、可視光ではなく赤外線のLEDを用いてもよい。また、例えばデプスカメラ等を用いるなどの他の手法で、ユーザの頭部の位置や動き等を検出するようにしてもよい。
また、ユーザの視点位置、視線方向(ユーザの位置、方向)を検出するトラッキング処理の手法は、図2(A)〜図3(B)で説明した手法には限定されない。例えばHMD200に設けられたモーションセンサ等を用いて、HMD200の単体でトラッキング処理を実現してもよい。即ち、図2(B)のベースステーション280、284、図3(B)の撮像部150などの外部装置を設けることなく、トラッキング処理を実現する。或いは、公知のアイトラッキング、フェイストラッキング又はヘッドトラッキングなどの種々の視点トラッキング手法により、ユーザの視点位置、視線方向などの視点情報等を検出してもよい。またトラッキング装置251、252、253によるユーザUSの各部位の位置、方向の検出を、トラッキング装置251、252、253に設けられたモーションセンサを用いて実現してもよい。
3.本実施形態の手法
次に本実施形態の手法について詳細に説明する。なお、以下では本実施形態の手法を、対戦ゲームに適用した場合を主に例にとり説明する。但し、本実施形態はこれに限定されず、種々のゲーム(RPG、アクションゲーム、競争ゲーム、スポーツゲーム、ホラー体験ゲーム、電車や飛行機等の乗り物のシミュレーションゲーム、パズルゲーム、コミュニケーションゲーム、或いは音楽ゲーム等)に適用でき、ゲーム以外にも適用可能である。また以下では、ユーザ移動体が、ユーザのアバター移動体(仮想ユーザ、ユーザキャラクタ)である場合を例にとり説明するが、ユーザ移動体は、ユーザが搭乗する搭乗移動体(例えばロボット、戦車、戦闘機又は車等)などであってもよい。また以下では発射装置により発射される気体が空気であるとして主に説明を行うが、本実施形態はこれに限定されるものではない。
3.1 ゲームの説明
まず本実施形態により実現されるゲームについて説明する。図4は本実施形態のシミュレーションシステムに用いられる筐体40の一例である。本実施形態では、HMDを装着したユーザが、図4に示すような筐体40上においてゲームをプレイする。
筐体40は、ユーザUSがゲームをプレイするフィールドFL(床面)、発射部50、処理装置60を含む。フィールドFLには領域AR1、AR2、AR3が設定され、領域AR1、AR2、AR3の下方には、フィールドFLの床を振動させる振動部VB1、VB2、VB3が設けられている。例えば真ん中に設けられた振動部VB1は振動モータにより実現され、両端に設けられた振動部VB2、VB3はトランスデューサーにより実現される。振動モータは、例えば、偏芯した錘を回転させることで振動を発生する。具体的には駆動軸(ローター軸)の両端に偏心した錘を取り付けてモータ自体が揺れるようにする。トランスデューサーは、音信号を変換するものであり、ハイパワーのサブウーハーに相当するものである。例えば図1の制御部118が音ファイルの再生処理を行うと、それによる音信号がトランスデューサーに入力される。そして例えば音信号の低域成分に基づいて振動が発生する。
処理装置60は、本実施形態のシミュレーションシステムの種々の処理を行うものであり、図1の処理部100、記憶部170等に相当するものである。図4で処理装置60はパーソナルコンピュータ(PC)により実現されている。
発射部50は、フィールドFLに設けられた支持部62、64により支持されている。そして発射部50は、フィールドFLに立つユーザUSに対してその主面が正対するように設けられている。発射部50には、複数の発射装置CN1〜CN18がマトリクス状に配置されている。発射装置CN1〜CN18は、発射部50に正対するユーザUSに対して空気(広義には気体。以下、同様)を発射する。発射装置CN1〜CN18の下方には送風機FN1、FN2、FN3が設けられている。送風機FN1、FN2、FN3は例えばシロッコファン等により実現される。そして発射部50に正対するユーザUSに対して空気(気体)を送風する。
図5(A)、図5(B)は、発射部50、発射装置70(CN1〜CN18)の詳細例を説明する図である。発射部50は、ユーザに対して空気(気体)の発射が可能な装置であり、マトリクス状に配置された発射装置CN1〜CN18を有する。図5(A)では、発射装置CN1〜CN18は3行、6列のマトリクス状の配置となっている。但し本実施形態はこれには限定されず、K行、N列(K、Lは2以上の整数)のマトリクス状の配置であればよい。また図5(A)では発射装置間の距離は等間隔になっているが、発射装置間の距離が異なっていてもよい。例えば図5(A)に示すような格子状の配列には限定されず、例えば各行、各列が直線状の配列ではなく、曲線状の配列であってもよい。また1次元配列も可能である。
また図5(A)において発射装置CN1〜CN18は、いわゆる空気砲のように空気を強い圧力(強い静圧)で発射するのに対して、送風機FN1、FN2、FN3は、シロッコファン等により弱い圧力(弱い静圧)で空気を送風する。
図5(B)は、発射装置70(CN1〜CN18)の構成例である。発射装置70は、スピーカ72と、空気蓄積部76(気体蓄積部)を有する。スピーカ72は、音信号(低域信号)に基づいて振動板74を振動させる。振動板74が振動すると、空気蓄積部76に蓄積された空気(空気の塊)が、発射口78から空気砲のように発射される。例えば渦状の空気として発射される。なお発射装置70は図5(B)の構成に限定されず、種々の変形実施が可能である。例えばスピーカ72の代わりに、トランスデューサー、振動モータ又はソレノイド等の振動デバイスを用いて振動板74を振動させて、空気を発射してもよい。
図6は仮想空間に設定されるフィールドVFL(プレイフィールド、ゲームステージ)の一例である。フィールドVFLには、ユーザに対応しユーザが操作するユーザキャラクタ(広義にはユーザ移動体)や、相手プレーヤやコンピュータが操作する敵キャラクタCHE1、CHE2、CHE3が配置されている。ここでは四角形の各コーナの位置にユーザキャラクタCH、敵キャラクタCHE1、CHE2、CHE3が配置されている。そしてこれらキャラクタ間で、気弾(空気弾)の攻撃による対戦が行われる。
図7〜図10は本実施形態により生成されるゲーム画像の例である。図7において敵キャラクタCHE1(広義には発生源オブジェクト)は、気弾AR(広義には被ヒットオブジェクト)を用いてユーザキャラクタCH(図6)に対して攻撃を行っている。例えば図7で気弾ARが発射された後、図8、図9では気弾ARがユーザキャラクタCHに近づいており、図10において気弾ARがユーザキャラクタCHにヒットしている。
本実施形態では、このように敵キャラクタCHE1(発生源オブジェクト)が発射(発生)した気弾AR(被ヒットオブジェクト)がユーザキャラクタCH(ユーザ移動体)にヒットするヒットイベントが発生した場合に、この気弾ARのヒットを、ユーザの触覚により体感させるための体感装置として、図4の発射部50を用いている。即ち、気弾ARのヒット時に、発射部50がユーザUSに対して空気を発射し、あたかも本当の気弾ARがヒットしたかのような仮想現実をユーザUSに体感させている。即ち、発射部50が発射した空気の塊が身体に当たることによる触覚による体感を、ユーザUSに与えている。
図4に示すようにユーザUSは視界を覆うようにHMDを装着している。このため、図7〜図10に示すようなHMDの表示画像(映像)に連動して、発射部50からの空気の塊が空気砲のようにユーザUSに当たることで、ユーザUSは、本物の気弾ARがヒットしたかのような仮想現実を体感できるようになる。そして、このような空気の発射部50を用いた体感装置は、衛生面や、安全面や、シミュレーションシステムの運営面においても適切な装置であり、装置の規模もそれほど大規模化しないという利点がある。例えば空気をユーザUSに当てるだけであれば、衛生面や安全面の問題は生じない。また図4のようにユーザUSに正対する位置にだけ発射部50を設ける構成であれば、シミュレーションシステムの規模もコンパクトにできる。
3.2 ゲーム状況に応じた発射部の制御
次に本実施形態での発射部50の制御手法について詳細に説明する。本実施形態では、複数の発射装置CN1〜CN18がマトリクス状(2次元)に配置された発射部50を用い、この発射部50を、図7〜図10に示すような仮想空間のゲーム状況に応じて制御している。具体的には、ゲーム状況やユーザ情報(位置、方向又は姿勢等)じ応じて発射部50を制御する。例えば本実施形態のシミュレーションシステムは、視界を覆うHMDを装着したユーザが実空間のプレイ場所に位置し、ユーザの例えば位置や方向を検知してプレイするゲームにおけるシミュレーションシステムである。そして本実施形態のシミュレーションシステムでは、仮想空間上のゲーム状況やユーザ情報に応じて、ユーザに対して空気等の気体を吹き出すことが可能な発射装置が複数配置されている発射部50と、それぞれの発射を制御する制御部118とを有し、発射部50は、実空間のユーザのプレイ場所を向いた方向に設置されている。このようなシミュレーションシステムによれば、複数の発射装置CN1〜CN18を用いた多様な制御処理が可能になり、ゲーム状況に応じた最適な空気の発射制御を実現できるようになる。
例えば本実施形態のシミュレーションシステムでは、ゲーム状況やユーザ情報に応じて、発射部50での発射装置CN1〜CN18の選定処理、空気(気体)の発射タイミングの制御処理、或いは空気の発射出力度合いの制御処理を行う。具体的に、仮想空間(ゲーム空間)において空気(気体)に対応する気弾(被ヒットオブジェクト)がヒットする図7〜図10に示すようなヒットイベントが発生した場合に、発射装置CN1〜CN18の選定処理、発射タイミングの制御処理、或いは発射出力度合いの制御処理を行う。
例えば通常の気弾がユーザキャラクタCHにヒットした場合には、図11(A)、図11(B)に示すような発射部50の制御処理を行う。即ち、通常の気弾のヒット時には、図11(A)において斜線により示されている発射装置CN7〜CN12が空気を発射する。具体的には図11(B)に示すように、発射部50の中段に設けられた発射装置CN7〜CN12から発射された空気(空気の塊)が、ユーザUSに対して当たるようになる。また仮想空間での気弾のヒットに合わせて、図4のようにフィールドFLの床に設けられた振動部VB1、VB2、VB3(振動モータ、トランスデューサー)が振動する。
このように図11(A)、図11(B)では、通常の気弾がヒットするヒットイベントの発生時に、発射部50の発射装置CN1〜CN18のうちの中段の発射装置CN7〜CN12を選定するという選定処理が行われている。
また図10に示すように、ユーザUSのHMDの表示画像において気弾(AR)がヒットするタイミングに応じて、発射装置CN7〜CN12が空気を発射するように、発射タイミングの制御処理が行われている。例えば気弾の到達時間を算出して、気弾がヒットするヒットイベントの発生前に、予め空気を発射させるように発射装置CN7〜CN12の発射タイミングを制御する。この発射タイミングの制御処理は、図1の制御部118が生成する発射制御信号の出力タイミングを制御することなどで実現できる。
また気弾のヒットイベントの発生時に、フィールドFLの床に設けられた振動部VB1、VB2、VB3を振動させるというゲーム演出処理も行われる。
なお気弾のヒットイベント発生時において、空気の発射出力度合いの制御処理を行ってもよい。例えば通常の気弾のヒットイベント発生時には、後述する特殊気弾のヒットイベント発生時に比べて、空気の発射出力度合いを弱くする制御処理を行う。このような制御処理は、例えば図5(B)の振動板74の振動の強さを制御することで実現できる。例えば通常の気弾のヒットイベント発生時には、特殊気弾のヒットイベント発生時に比べて、振動板74の振動が弱くなるように制御する。例えば音信号に基づいてスピーカ72の振動板74を振動させる場合には、音信号の振幅を小さくすることで、振動板74の振動を弱くする制御を実現できる。
一方、通常の気弾に比べて攻撃力(威力)が高い特殊気弾が、ユーザキャラクタCHにヒットした場合には、図12(A)、図12(B)に示すような発射部50の制御処理を行う。即ち、特殊気弾のヒット時には、図12(A)において斜線により示されている全ての発射装置CN1〜CN18が空気を発射する。即ち図12(B)に示すように、発射部50の下段、中段、上段に設けられた発射装置CN1〜CN18から発射された空気(空気の塊)が、ユーザUSに対して当たるようになる。また特殊気弾のヒットに合わせて、図4のようにフィールドFLの床に設けられた振動部VB1、VB2、VB3が振動する。また特殊気弾がヒットした後に、送風機FN1〜FN3がユーザUSに対して送風を行い、特殊気弾がヒットしたことによる余韻をユーザUSに体感させる。この場合に特殊気弾の攻撃力(威力)のレベルに応じて、送風機FN1〜FN3の送風の強さを変化させてもよい。例えば特殊気弾の攻撃力のレベルが高いほど強い送風にする。更に振動部VB1、VB2、VB3の振動の強さについても、特殊気弾の攻撃力のレベルが高いほど強い振動になるように制御する。
このように図12(A)、図12(B)では、特殊気弾がヒットするヒットイベントの発生時に、発射部50の全ての発射装置CN1〜CN18を選定するという選定処理が行われている。
またユーザUSのHMDの表示画像において特殊気弾がヒットするタイミングに応じて、発射装置CN1〜CN18が空気を発射するように、発射タイミングの制御処理が行われている。例えば特殊気弾の到達時間を算出して、特殊気弾がヒットするヒットイベントの発生前に、予め空気を発射させるように発射装置CN1〜CN18の発射タイミングを制御する。また特殊気弾のヒットイベントの発生時に、フィールドFLの床に設けられた振動部VB1、VB2、VB3を振動させるというゲーム演出処理も行われている。
この場合に特殊気弾のヒットイベント発生時において、空気の発射出力度合いの制御処理を行ってもよい。例えば特殊気弾のヒットイベント発生時には、図11(A)、図11(B)の通常気弾のヒットイベント発生時に比べて、空気の発射出力度合いを強くする制御処理を行う。例えば特殊気弾のヒットイベント発生時には、通常の気弾のヒットイベント発生時に比べて、図5(B)の振動板74の振動が強くなるように制御する。例えばスピーカ72に入力される音信号の振幅を大きくする。また特殊気弾の攻撃力のレベルが高いほど、空気の発射出力度合いを強くする制御処理を行ってもよい。例えば特殊気弾の攻撃力のレベルに応じて、音信号の振幅を変化させる。このような音信号の振幅等を変化させる制御は、音信号を生成するための音ファイルの切り替えを行うだけという簡素な処理で実現できるという利点がある。
図11(A)〜図12(B)で説明したように本実施形態では、仮想空間でのゲーム状況に応じて、発射部50の制御処理を行っている。例えば通常の気弾がヒットするというゲーム状況では、図11(A)、図11(B)に示すように、発射部50の中段の発射装置CN7〜CN12だけから空気を発射する。また空気の発射出力度合いも、特殊気弾のヒット時に比べて弱くする。また発射部50の送風機FN1〜FN3の送風も行わない。
一方、特殊気弾がヒットするというゲーム状況では、図12(A)、図12(B)に示すように、発射部50の全ての発射装置CN1〜CN18から空気を発射する。また空気の発射出力度合いも、通常の気弾のヒット時に比べて弱くする。また特殊気弾のヒットの余韻をユーザUSに体感させるために、発射部50の送風機FN1〜FN3の送風も行うようにする。
このようにすることで本実施形態では、仮想空間のゲーム状況に応じた発射部50の最適な制御を実現している。例えば本実施形態ではHMDに映る仮想空間のゲーム状況の画像に応じた空気の発射制御を行っている。例えば通常の気弾がヒットするゲーム状況の画像がHMDに表示される場合と、特殊気弾がヒットするゲーム状況の画像がHMDに表示される場合とで、空気の発射制御が異なるようになり、ユーザに与える体感も異なるようになるため、ユーザの仮想現実感を大幅に向上できる。
3.3 ヒット方向、ヒットベクトルに応じた発射制御
本実施形態では被ヒットオブジェクトのヒット方向又はヒットベクトルに応じて、発射部50での発射装置の選定処理、気体の発射タイミングの制御処理、或いは気体の発射出力度合いの制御処理を行っている。例えば図5(A)の複数の発射装置CN1〜CN18は、鉛直方向に交差する第1の方向に沿った発射装置CN7〜CN12(第1〜第Nの発射装置)を有している。そしてユーザに対応するユーザキャラクタ(ユーザ移動体)に対して、気弾(被ヒットオブジェクト)が斜め方向にヒットするヒットイベントが発生したとする。この場合に、発射装置CN7(第1の発射装置)から発射装置CN12(第Nの発射装置)へと順次に空気(気体)が発射されるように発射部50が制御される。
例えば図13(A)では、発生源オブジェクトである敵キャラクタCHEが気弾AR(被ヒットオブジェクト)を発射している。そしてこの気弾ARが、ヒット方向DH(又はヒットベクトルVH)で、ユーザキャラクタCH(ユーザ移動体)にヒットするヒットイベントが発生している。この場合に気弾のヒット方向DH(又はヒットベクトルVH)に応じて、発射装置の選定処理、発射タイミングの制御処理、或いは発射出力度合いの制御処理が行われる。
具体的には図13(A)では、ユーザUSに対応するユーザキャラクタCHに対して気弾が左斜め方向からヒットするヒットイベントが発生している。即ちヒット方向DH(ヒットベクトルVH)が、ユーザキャラクタCHに対して左斜め方向になっている。例えば図13(A)ではユーザキャラクタCHの向く向きに対して、ヒット方向DHが左斜め方向になっている。
この場合に本実施形態では、図13(B)に示すように、発射装置CN7(第1の発射装置)から発射装置CN12(第Nの発射装置)へと順次に空気が発射されるように発射部50が制御される。ここで発射装置CN7〜CN12(第1〜第Nの発射装置)は、鉛直方向DRVに交差(直交)する第1の方向DR1(水平方向)に沿って配置される発射装置である。具体的には図14に示すように、まず発射装置CN7が空気を発射し、次に発射装置CN8が空気を発射する。その後、発射装置CN9、CN10、CN11が時系列に順次に空気を発射し、最後に発射装置CN12が空気を発射する。
図13(B)、図14に示すように発射装置CN7〜CN11が時系列に順次に空気を発射すれば、あたかも自身の左側方向に配置される発射部から空気が発射したかのように、ユーザUSに感じさせることが可能になる。即ち図4に示すように本実施形態では、ユーザUSの正面方向に発射部50が配置されている。この場合にも、図13(B)、図14に示すように発射装置CN7〜CN11が時系列に順次に空気を発射することで、ユーザUSの左斜め方向から空気を発射しているかのように、ユーザUSが錯覚する。従って、例えばユーザUSの左側方向に発射部を設けなくても、左斜め方向から空気が当たるような触覚の体感を与えることができる体感装置を実現できる。従って、発射部50をユーザUSの正面方向に設けるだけでよく、左側方向に設けなくても済むため、体感装置の小規模化を図れる。即ち本実施形態ではユーザUSの視界はHMDで覆われており、実空間の状況が見えていないHMDの装着状態だからこそ、正面方向からの複数の発射装置CN7〜CN12の空気の塊が、ユーザUSの身体に衝突するタイミングをずらすことによって、あたかも斜め方向から放たれたと錯覚させることが可能になる。
一方、図15(A)では、ユーザUSに対応するユーザキャラクタCHに対して気弾が右斜め方向からヒットするヒットイベントが発生している。即ちヒット方向DH(ヒットベクトルVH)が、ユーザキャラクタCHに対して右斜め方向になっている。例えば図15(A)ではユーザキャラクタCHの向く向きに対して、ヒット方向DHが右斜め方向になっている。
この場合に本実施形態では図15(B)に示すように、発射装置CN12から発射装置CN7へと順次に空気が発射されるように発射部50が制御される。即ち、鉛直方向DRVに交差(直交)する第2の方向DR2(DR1の反対方向)に沿って発射装置CN12〜CN7が順次に空気を発射する。例えば発射装置CN12が空気を発射し、その後、発射装置CN11、CN10、CN9、CN8が時系列に順次に空気を発射し、最後に発射装置CN7が空気を発射する。
このようにすれば、あたかも自身の右側方向に配置される発射部から空気が発射したかのように、ユーザUSに感じさせることが可能になる。即ち図4に示すように本実施形態では、ユーザUSの正面方向に発射部50が配置されている。この場合にも、図15(B)に示すように発射装置CN12〜CN7が時系列に順次に空気を発射することで、ユーザUSの右斜め方向から空気を発射しているかのようにユーザUSが錯覚する。従って、例えばユーザUSの右側方向に発射部を設けなくても、このような右斜め方向から空気が当たるような体感装置を実現できるようになり、体感装置の小規模化を図れる。
そして本実施形態では、図13(A)に示すようにヒット方向DH(ヒットベクトルVH)が左斜め方向なのか、図15(A)に示すように右斜め方向なのかに応じて、発射装置の選定処理、発射タイミングの制御処理、或いは発射出力度合いの制御処理を行う。
例えばヒット方向DHが左斜め方向である場合には、図13(B)に示すように、CN7、CN8、CN9、CN10、CN11、CN12の順に空気を発射するように発射装置を選定し、それぞれの発射タイミングで空気を発射させる。またこの際に、例えばユーザUSから距離が遠い発射装置CN7、CN12については、ユーザUSから距離が近い発射装置CN9、CN10に比べて、発射出力度合いを強くしてもよい。
またヒット方向DHが右斜め方向である場合には、図15(B)に示すように、CN12、CN11、CN10、CN9、CN8、CN7の順に空気を発射するように発射装置を選定し、それぞれの発射タイミングで空気を発射させる。またこの際に、例えばユーザUSから距離が遠い発射装置CN7、CN12については、ユーザUSから距離が近い発射装置CN9、CN10に比べて、発射出力度合いを強くしてもよい。
このようにすればヒット方向DH(ヒットベクトルVH)に応じた最適な空気の発射制御を実現でき、ユーザの仮想現実感の向上を図れるようになる。
なお図13(A)〜図15(B)では、中段(中段の行)の発射装置CN7〜CN12に順次に空気を発射させているが、本実施形態はこれに限定されない。例えば中段の発射装置CN7〜CN12に加えて、下段(下段の行)の発射装置CN1〜CN6や上段(上段の行)の発射装置CN13〜CN18についても順次に空気を発射するように制御してもよい。
例えば前述した通常の気弾のヒットイベント発生時では、中段の発射装置CN7〜CN12に順次に空気を発射させる。一方、特殊気弾のヒットイベント発生時では、下段、中段、上段の発射装置CN1〜CN6、CN7〜CN12、CN13〜CN18に順次に空気を発射させる。例えば発射装置CN1、CN7、CN13が空気を発射し、次に発射装置CN2、CN8、CN14が空気を発射するというように、各列の発射装置が時系列に順次に空気を発射し、最後に発射装置CN6、CN12、CN18が空気を発射する。このようにすることで、発射部50の発射出力度合いを実質的に強くする制御処理を実現できるようになる。
また図13(A)〜図15(B)では、ユーザキャラクタCH(ユーザUS)の向く方向を基準としてヒット方向DH(ヒットベクトルVH)が斜め方向になる場合について説明したが、本実施形態はこれに限定されない。例えばヒット方向DH(ヒットベクトルVH)は、ユーザキャラクタCH(ユーザUS)の向く方向には依存せず、仮想空間のフィールドにおいて配置されるユーザキャラクタCHの位置に対して斜め方向であればよい。例えば図13(A)において、ユーザUSが正面方向ではなく左斜め方向を向き、それに連動してユーザキャラクタCHが左斜め方向を向いた場合にも、図13(B)〜図14のような発射部50の制御処理を行ってもよい。図15(A)においてユーザUSが正面方向ではなく右斜め方向を向き、それに連動してユーザキャラクタCHが右斜め方向を向いた場合も同様である。
3.4 発射方向の制御
本実施形態では図1に示すように、発射部50は、発射部50の方向を変更する発射部方向変更部52を含み、ゲーム状況に応じて、発射部方向変更部52の制御を行う。或いは発射部50は、複数の発射装置の方向を変更する発射装置方向変更部54を含み、ゲーム状況に応じて、発射装置方向変更部54の制御を行う。
例えば図16(A)〜図16(C)では、発射部方向変更部52が、ゲーム状況に応じて発射部50の方向を変更している。例えば図16(A)では、ユーザUSの正面方向から空気を発射するように、発射部50の方向DRA(発射部の主面に直交する方向)が設定されている。一方、図16(B)ではユーザUSの左斜め方向から空気を発射するように、発射部方向変更部52により発射部50の方向DRAが変更されている。また図16(C)ではユーザUSの右斜め方向から空気を発射するように、発射部方向変更部52により発射部50の方向DRAが変更されている。このようにすれば、ゲーム状況に応じた適切な方向から空気が発射されるように、発射部50の方向DRAを制御できるようになる。
また図17(A)〜図17(C)では、ユーザUSの位置を検出して、発射部方向変更部52により発射部50の方向を制御している。
例えば図17(A)では、ユーザUSは、発射部50の正面側の真ん中の場所に位置するため、ユーザUSの正面方向から空気を発射するように、発射部50の方向DRAが設定されている。一方、図17(B)ではユーザUSが、発射部50に対して右方向に移動しているため、この右方向に移動したユーザUSに対してその正面方向から適切に空気が発射されるように、発射部方向変更部52により発射部50の方向DRAが変更されている。また図17(C)ではユーザUSが、発射部50に対して左方向に移動しているため、この左方向に移動したユーザUSに対してその正面方向から適切に空気が発射されるように、発射部方向変更部52により発射部50の方向DRAが変更されている。
このように発射部方向変更部52により発射部50の方向を制御することで、ユーザUSに対してより精度良く空気を発射することができるようになる。またユーザの位置が変化した場合にも、より適切な方向で空気をユーザに対して発射できるようになる。
また図18(A)、図18(B)では、発射装置方向変更部54により、発射部50の発射装置CN7〜CN12の方向を制御している。
例えば図18(A)では、発射装置CN7、CN8、CN9、CN10、CN11、CN12の方向(空気の発射方向)が、各々、D7、D8、D9、D10、D11、D12に設定されており、ユーザUSの方に向く方向に変更されている。例えば、あたかもレンズの焦点をユーザUSに合わせるかのように、発射装置CN7〜CN12の方向D7〜D12を変更している。こうすることで、ユーザUSの場所に空気の発射弾が集中するように、発射装置CN7〜CN12から空気を発射することが可能になる。
また図18(B)では二人にユーザUS1、US2がマルチプレイのゲームをプレイしている。この場合に発射装置CN7、CN8、CN9の方向D7、D8、D9については、ユーザUS1の方に集中して向くように変更され、発射装置CN10、CN11、CN12の方向D10、D11、D12については、ユーザUS2の方に集中して向くように変更される。こうすることで、ユーザUS1、US2の各々に対して、空気の発射弾が集中するように発射装置CN7〜CN12の空気の発射方向を制御できるようになり、マルチプレイゲームに最適な発射方向の制御を実現できるようになる。
3.5 種々の制御処理
次の本実施形態の発射部50の種々の制御処理について説明する。
本実施形態では、仮想空間において気弾がヒットするヒットイベントにおける気弾の発生源オブジェクトを、実空間での発射部50の位置に対応する仮想空間の位置に配置(移動)する処理を行う。例えばヒットイベントにおける、気弾の発生源オブジェクトである敵キャラクタは、ヒットイベント前に、仮想空間上の位置が制御され、実空間の発射部50の方向に位置取りするようにする。例えば発射部50が対応可能な範囲に敵キャラクタが移動する。
例えば図19(A)では、実空間において正面方向に位置する発射部50に対して、ユーザUSの向きは左斜め方向を向いている。従って、この状態で発射部50が空気を発射すると、ユーザUSの右肩等の右側部分に空気が当たることになる。そして図19(B)では、仮想空間において、ユーザUSに対応するユーザキャラクタCHに対して、敵キャラクタCHEが気弾ARを発射する攻撃を行う。この場合に図19(B)の敵キャラクタCHEが、図19(A)に示す実空間での発射部50の位置に対応する仮想空間の位置に移動する。即ち、ユーザキャラクタCHの向く向きに位置していた敵キャラクタCHEが、ユーザキャラクタCHの向く向きに対して右斜め方向に移動している。そしてこのような位置関係で敵キャラクタCHEが気弾ARを発射し、気弾ARのヒット時に、図19(A)に示す位置関係で発射部50が空気をユーザUSに対して発射する。
このようにすれば、図19(B)の仮想空間においてユーザキャラクタCHの右斜め方向に位置する敵キャラクタCHEが気弾ARを発射して、ユーザキャラクタCHの右側部分にヒットすると、それに応じて図19(A)の実空間においても、ユーザUSの右側部分に発射部50からの空気がヒットするようになる。従って、仮想空間での事象(気弾が右斜め方向からヒットする事象)と、実空間での事象(空気が右斜め方向から当たる事象)が一致するようになり、ユーザUSの仮想現実感を向上できるようになる。
また図20(A)では、実空間において正面方向に位置する発射部50に対して、ユーザUSの向きは正面方向を向いている。この場合に図20(B)に示すように敵キャラクタCHEがユーザキャラクタCHの左側方向に移動し、図20(C)に示すように発射装置CN7〜CN12を時系列に順次に空気を発射させる制御を行ってもよい。即ち鉛直方向DRVに交差する第1の方向DR1に沿って、発射装置CN7〜CN12が順次に空気を発射する。このように空気の発射を制御すれば、図13(A)〜図14で説明したように、あたかもユーザUSの左斜め方向から発射された空気が当たったような体感をユーザUSに与えることができる。従って、図20(B)のように敵キャラクタCHEがユーザキャラクタCHの左斜め方向に移動して、左斜め方向から気弾ARを発射した場合に、図20(C)に示すように発射部50の発射制御を行うことで、仮想空間での事象と実空間での事象が一致するようになり、ユーザUSの仮想現実感を向上できるようになる。
また本実施形態では、HMDを装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報(ユーザトラッキング情報)を取得し、取得したユーザ情報に応じた発射部50の制御を行う。
例えば図21は、フィールドFLにおいて複数のユーザUS1〜US4がプレイするガンシューティングゲーム(FPS)の例である。ユーザUS1〜US4は、HMD1〜HMD4を装着すると共にガン型コントローラGN1〜GN4を所持している。これらのユーザUS1〜US4は、例えばチーム対戦ゲームのためにチーム(グループ)を組んでいる。HMD1〜HMD4には仮想空間での映像が映し出されており、ユーザUS1〜US4は、この映像を見ながらガンシューティングゲームをプレイする。
そして図22ではユーザUS1がフィールドFLにおいてA1、A2に示すように移動している。またフィールドFLには発射部50A〜50Fが配置されている。この場合に、取得されたユーザUS1の位置情報に基づいて、発射部50A〜50Fの制御を行う。例えばユーザUS1が発射部50Aの近くにいることがユーザUS1の位置情報に基づき検出された場合には、発射部50AによりユーザUS1に対して空気を発射する。またユーザUS1が発射部50Dの近くにいることが位置情報に基づき検出された場合には、発射部50Dにより空気を発射する。ユーザUS1が発射部50Eの近くにいることが位置情報に基づき検出された場合には、発射部50Eにより空気を発射する。このようにすれば、ユーザUS1の位置に応じた適切な空気の発射制御を実現できる。この場合に発射部50A〜50Fにより発射する空気は、その場所にいる仮想空間での敵からの攻撃に基づくものであってもよい。或いはユーザUS1に対してフィールドFLの境界等を知らせるために、発射部50A〜50Fにより空気を発射してもよい。
また、取得されたユーザの方向情報に基づいて発射部を制御してもよい。例えば実空間のフィールドに複数の発射部が配置される場合に、ユーザの向く方向に対して正対して位置する発射部を優先的に選択し、選択された発射部から空気を発射するようにしてもよい。このようにすれば、ユーザの向く方向に応じた適切な空気の発射制御を実現できるようになる。
また、取得されたユーザの姿勢情報に基づいて発射部を制御してもよい。例えばユーザが地面に伏している姿勢である場合には、図5(A)の下段の発射装置CN1〜CN6に空気を発射させる制御を行う。ユーザがしゃがみ姿勢である場合には中段の発射装置CN7〜CN12に空気を発射させる制御を行う。ユーザが立ち姿勢である場合には、上段の発射装置CN13〜CN18に空気を発射させる制御を行う。このようにすればユーザの姿勢に応じた適切な空気の発射制御を実現できるようになる。
また本実施形態では発射部50での空気(気体)の発射に対して、音、振動又は画像を連動させるゲーム演出処理を行う。
例えば図23に示すように、ユーザUSがプレイするフィールドFLの領域AR1、AR2、AR3には、振動部VB1、VB2、VB3が設けられる。そして図11(A)〜図12(B)で説明したように、発射部50での空気の発射に連動して、振動部VB1、VB2、VB3が振動する。例えば空気の発射タイミングや、空気がユーザUSに当たると予想されるタイミングで、振動部VB1、VB2、VB3が振動する。振動部VB1は例えば振動モータにより実現され、比較的、激しい振動のゲーム演出が可能になる。振動部VB2、VB3はトランスデューサーにより実現され、例えば音信号を用いた柔軟な振動制御によるゲーム演出が可能になる。
また発射部50での空気の発射に対して音を連動させるゲーム演出処理を行ってもよい。例えば図23では立体音響を実現するスピーカSP1〜SP5が配置設定されている。これらのスピーカSP1〜SP5は実物のスピーカであってもよいし、ヘッドホンなどにより実現される仮想的なスピーカであってもよい。そしてこれらのスピーカSP1〜SP5を用いて、サラウンドや疑似サラウンドと呼ばれる立体音響のゲーム演出処理を行う。そして例えば図13(A)のようにユーザキャラクタCHに対して左斜め方向から気弾が飛んで来た場合には、左斜め方向から気弾が飛んで来るように聞こえるサラウンド効果を、スピーカSP1〜SP5を用いて実現する。この際に、例えば気弾の画像に対して、エフェクト画像を付加するなどの画像によるゲーム演出を行ってもよい。即ち、発射部50での空気の発射に対して、エフェクト画像を連動させるゲーム演出処理を行う。更に図23に示すように発射部50に設けられた送風機FN1〜FN3を用いたゲーム演出処理を行ってもよい。例えば前述したように、特殊気弾がユーザキャラクタCHにヒットした場合に、そのヒットの余韻を実現するために、ヒット後に送風機FN1〜FN3からユーザUSに対して送風を行う。この場合に特殊気弾の威力(攻撃力)に応じた送風機FN1〜FN3の送風時間や送風の強さを制御するゲーム演出処理を行ってもよい。
また本実施形態では図1に示すように、発射部50は加工部56を有しており、この加工部56により、発射部50が発射する空気(気体)に対して加工を行う。例えば加工部56は、発射する空気の温度を変化させるような加工を行ったり、発射する空気に香りを付けるような加工を行う。また発射する空気の湿度を変化させる加工を行って、ミストのような空気を発射したり、水や雪などを空気に混ぜる加工を行ってもよい。また加工部56は、発射装置CN1〜CN18が発射する空気に対して加工を行ってもよいし、送風機FN1〜FN3が送風する空気に対して加工を行ってもよい。
この場合に本実施形態では複数の発射装置の第1の発射装置と第2の発射装置とで、発射する空気(気体)に対して異なる加工を行うことが望ましい。
例えば図24では、発射部50の発射装置CN1〜CN18のうち、下段の発射装置CN1〜CN6が発射する空気に対しては加工Xを行い、中段の発射装置CN7〜CN12が発射する空気に対しては加工Yを行い、上段の発射装置CN13〜CN18が発射する空気に対しては加工Zを行う。加工X、Y、Zは異なる加工であり、例えば空気の温度や湿度を変化させるような加工を行う場合には、加工X、Y、Zは、互いに異なる温度、湿度の空気にする加工である。また空気に香りを付けるような加工を行う場合には、加工X、Y、Zは、互いに異なる香りを付ける加工である。
また図25では、図22で説明したようにユーザUS1がA1、A2に示すようにフィールドFLを移動している。この場合に例えば発射部50A、50Bから発射される空気に対しては加工Xを行い、発射部50C、50Dから発射される空気に対しては加工Yを行い、発射部50E、50Fから発射される空気に対しては加工Zを行う。このようにすれば、ユーザUS1が位置するエリアに応じて、異なった加工が行われた空気がユーザUS1に対して発射されるようになる。例えば発射部50A、50BのエリアにユーザUS1が位置する場合には、第1の温度又は第1の湿度の空気を発射したり、第1の香りの空気を発射する。また発射部50C、50DのエリアにユーザUS1が位置する場合には、第2の温度又は第2の湿度の空気を発射したり、第2の香りの空気を発射する。発射部50E、50FのエリアにユーザUS1が位置する場合には、第3の温度又は第3の湿度の空気を発射したり、第3の香りの空気を発射する。
このようにすれば、ユーザUS1が位置するエリアに応じて、異なった温度又は湿度の空気、或いは異なった香りの空気がユーザに対して発射されるようになり、より多様でゲーム演出効果の高い空気の発射制御を実現できるようになる。
4.詳細な処理
次に本実施形態の詳細な処理例について図26のフローチャートを用いて説明する。
まず気弾が発射されたか否かを判断する(ステップS1)。例えば仮想空間において、発生源オブジェクトである敵キャラクタが気弾を発射したか否かを判断する。そして、気弾が発射された場合には、発射された気弾がユーザキャラクタにヒットしたか否かを判断する(ステップS2)。例えば気弾の軌道とユーザキャラクタのヒットボリュームの交差判定等を行うなどのヒット判定処理を行って、気弾がユーザキャラクタにヒットするか否かを判断する。そして気弾がヒットする場合には、気弾のヒット方向又はヒットベクトルを取得する(ステップS3)。例えば気弾がユーザキャラクタにヒットする際の気弾の移動方向、移動速度などに基づいて、ヒット方向、ヒットベクトルを求める。そして気弾のヒット方向又はヒットベクトルに応じた発射装置の選定処理、発射タイミングの制御処理、発射出力度合いの制御処理を行って、空気を発射する(ステップS4)。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(気体、被ヒットオブジェクト、発生源オブジェクト、ユーザ移動体等)と共に記載された用語(空気、気弾、敵キャラクタ、ユーザキャラクタ等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、仮想空間の設定処理、ゲーム処理、発射部の制御処理、発射装置の制御処理、表示処理、ユーザ情報の取得処理、移動体の移動処理、ヒット演算処理等も、本実施形態で説明したものに限定されず、これらと均等な手法・処理・構成も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲーム装置、家庭用ゲーム装置、又は多数のユーザが参加する大型アトラクションシステム等の種々のシミュレーションシステムに適用できる。
CN1〜CNM 発射装置、FN1〜FN3 送風機、FL、VFL フィールド、
AR1〜AR3 領域、VB1〜VB3 振動部、
CH ユーザキャラクタ、AR 気弾(被ヒットオブジェクト)、
CHE、CHE1〜CHE3 敵キャラクタ(発生源オブジェクト)、
HMD、HMD1〜HMD4 頭部装着型表示装置、SP1〜SP4 スピーカ、
US、US1〜US4 ユーザ、GN1〜GN4 ガン型コントローラ、
DH ヒット方向、VH ヒットベクトル、DR1、DR2 第1、第2の方向、
DRV 鉛直方向、DRA、D7〜D12 方向、
40 筐体、50、50A〜50F 発射部、52 発射部方向変更部、
54 発射装置方向変更部、60 処理装置、62、64 支持部、70 発射装置、
72 スピーカ、74 振動板、76 空気蓄積部、78 発射口、
100 処理部、102 入力処理部、110 演算処理部、111 情報取得部、
112 仮想空間設定部、113 移動体処理部、114 仮想カメラ制御部、
115 ゲーム処理部、116 ヒット演算処理部、118 制御部、
120 表示処理部、130 音処理部、140 出力処理部、
150 撮像部、151、152 カメラ、160 操作部、
170 記憶部、172 オブジェクト情報記憶部、178 描画バッファ、
180 情報記憶媒体、192 音出力部、194 I/F部、
195 携帯型情報記憶媒体、196 通信部、
200 HMD(頭部装着型表示装置)、201〜203 受光素子、210 センサ部、
220 表示部、231〜236 発光素子、240 処理部、
251、252、253 トラッキング装置、260 ヘッドバンド、
270 ヘッドホン、280、284 ベースステーション、
281、282、285、286 発光素子

Claims (12)

  1. 視界を覆うように頭部装着型表示装置を装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報を取得する情報取得部と、
    仮想空間の設定処理を行う仮想空間設定部と、
    前記仮想空間でのゲームの処理を行うゲーム処理部と、
    前記ユーザに対して気体の発射が可能な発射部の制御を行う制御部と、
    前記ユーザが装着する前記頭部装着型表示装置の表示画像を生成する表示処理部と、
    を含み、
    前記発射部には、複数の発射装置が配置され、
    前記制御部は、
    前記仮想空間でのゲーム状況と前記ユーザ情報に応じて、前記発射部の制御処理を行うことを特徴とするシミュレーションシステム。
  2. 請求項1において、
    前記発射部には、複数の前記発射装置がマトリクス状に配置され、
    前記制御部は、
    マトリクス状に配置された複数の前記発射装置の制御処理を行うことを特徴とするシミュレーションシステム。
  3. 請求項1又は2において、
    前記制御部は、
    前記仮想空間において前記気体に対応する被ヒットオブジェクトがヒットするヒットイベントが発生した場合に、前記発射部での前記発射装置の選定処理、前記気体の発射タイミングの制御処理、及び前記気体の発射出力度合いの制御処理の少なくとも1つを行うことを特徴とするシミュレーションシステム。
  4. 請求項3において、
    前記制御部は、
    前記被ヒットオブジェクトのヒット方向又はヒットベクトルに応じて、前記発射部での前記発射装置の選定処理、前記気体の発射タイミングの制御処理、及び前記気体の発射出力度合いの制御処理の少なくとも1つを行うことを特徴とするシミュレーションシステム。
  5. 請求項3又は4において、
    複数の前記発射装置は、鉛直方向に交差する第1の方向に沿った第1〜第Nの発射装置を含み、
    前記制御部は、
    前記ユーザに対応するユーザ移動体に対して前記被ヒットオブジェクトが斜め方向にヒットする前記ヒットイベントが発生した場合に、前記第1の発射装置から前記第Nの発射装置へと順次に前記気体が発射されるように前記発射部を制御することを特徴とするシミュレーションシステム。
  6. 請求項1乃至5のいずれかにおいて、
    前記発射部は、前記発射部の方向を変更する発射部方向変更部を含み、
    前記制御部は、
    前記ゲーム状況に応じて、前記発射部方向変更部の制御を行うことを特徴とするシミュレーションシステム。
  7. 請求項1乃至6のいずれかにおいて、
    前記発射部は、複数の前記発射装置の方向を変更する発射装置方向変更部を含み、
    前記制御部は、
    前記ゲーム状況に応じて、前記発射装置方向変更部の制御を行うことを特徴とするシミュレーションシステム。
  8. 請求項1乃至7のいずれかにおいて、
    前記仮想空間設定部は、
    前記仮想空間において前記気体に対応する被ヒットオブジェクトがヒットするヒットイベントにおける前記被ヒットオブジェクトの発生源オブジェクトを、実空間での前記発射部の位置に対応する仮想空間の位置に配置する処理を行うことを特徴とするシミュレーションシステム。
  9. 請求項1乃至8のいずれかにおいて、
    前記ゲーム処理部は、
    前記発射部での前記気体の発射に対して、音、振動又は画像を連動させるゲーム演出処理を行うことを特徴とするシミュレーションシステム。
  10. 請求項1乃至9のいずれかにおいて、
    前記発射部は、発射する前記気体を加工する加工部を含むことを特徴とするシミュレーションシステム。
  11. 請求10において、
    前記加工部は、
    複数の前記発射装置の第1の発射装置と第2の発射装置とで、発射する前記気体に対して異なる加工を行うことを特徴とするシミュレーションシステム。
  12. 視界を覆うように頭部装着型表示装置を装着するユーザの位置情報、方向情報及び姿勢情報の少なくとも1つを含むユーザ情報を取得する情報取得部と、
    仮想空間の設定処理を行う仮想空間設定部と、
    前記仮想空間でのゲームの処理を行うゲーム処理部と、
    前記ユーザに対して気体の発射が可能な発射部の制御を行う制御部と、
    前記ユーザが装着する前記頭部装着型表示装置の表示画像を生成する表示処理部として、
    コンピュータを機能させ、
    前記発射部には、複数の発射装置が配置され、
    前記制御部は、
    前記仮想空間でのゲーム状況と前記ユーザ情報に応じて、前記発射部の制御処理を行うことを特徴とするプログラム。
JP2017071996A 2017-03-31 2017-03-31 シミュレーションシステム及びプログラム Active JP6935218B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017071996A JP6935218B2 (ja) 2017-03-31 2017-03-31 シミュレーションシステム及びプログラム
CN201810259103.8A CN108686371A (zh) 2017-03-31 2018-03-27 仿真系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017071996A JP6935218B2 (ja) 2017-03-31 2017-03-31 シミュレーションシステム及びプログラム

Publications (2)

Publication Number Publication Date
JP2018171319A true JP2018171319A (ja) 2018-11-08
JP6935218B2 JP6935218B2 (ja) 2021-09-15

Family

ID=63844610

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017071996A Active JP6935218B2 (ja) 2017-03-31 2017-03-31 シミュレーションシステム及びプログラム

Country Status (2)

Country Link
JP (1) JP6935218B2 (ja)
CN (1) CN108686371A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020103782A (ja) * 2018-12-28 2020-07-09 トヨタ紡織株式会社 空間提供システム
JPWO2021090433A1 (ja) * 2019-11-07 2021-05-14
JPWO2023127403A1 (ja) * 2021-12-27 2023-07-06
JP2023538341A (ja) * 2020-08-18 2023-09-07 ユニバーサル シティ スタジオズ リミテッド ライアビリティ カンパニー 推力偏向された実用的な流体フロー効果のためのシステム及び方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111991799A (zh) * 2020-09-17 2020-11-27 深圳市未雨绸缪技术合作有限公司 虚拟互动实感系统
CN115068929B (zh) * 2022-05-30 2025-07-04 网易(杭州)网络有限公司 游戏信息获取方法、装置、电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1133224A (ja) * 1997-07-22 1999-02-09 Namco Ltd 空気弾発生装置、ゲーム装置及び演出装置
WO2006006686A1 (ja) * 2004-07-15 2006-01-19 Nippon Telegraph And Telephone Corporation 力覚提示装置、力覚提示方法および力覚提示プログラム
JP2012205827A (ja) * 2011-03-30 2012-10-25 Namco Bandai Games Inc ゲームシステム
JP2016126772A (ja) * 2014-12-31 2016-07-11 イマージョン コーポレーションImmersion Corporation 拡張及び仮想現実アプリケーションのための触覚的に向上されたオブジェクトを生成するシステム及び方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140227666A1 (en) * 2011-10-04 2014-08-14 Emil Stefanov Milanov Extreme optical shooting simulator
CN106373289A (zh) * 2016-10-31 2017-02-01 中山市小榄镇丰兴包装机械厂 一种虚拟现实游艺机

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1133224A (ja) * 1997-07-22 1999-02-09 Namco Ltd 空気弾発生装置、ゲーム装置及び演出装置
WO2006006686A1 (ja) * 2004-07-15 2006-01-19 Nippon Telegraph And Telephone Corporation 力覚提示装置、力覚提示方法および力覚提示プログラム
JP2012205827A (ja) * 2011-03-30 2012-10-25 Namco Bandai Games Inc ゲームシステム
JP2016126772A (ja) * 2014-12-31 2016-07-11 イマージョン コーポレーションImmersion Corporation 拡張及び仮想現実アプリケーションのための触覚的に向上されたオブジェクトを生成するシステム及び方法

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020103782A (ja) * 2018-12-28 2020-07-09 トヨタ紡織株式会社 空間提供システム
JP7326740B2 (ja) 2018-12-28 2023-08-16 トヨタ紡織株式会社 空間提供システム
JPWO2021090433A1 (ja) * 2019-11-07 2021-05-14
WO2021090433A1 (ja) * 2019-11-07 2021-05-14 日本電信電話株式会社 刺激提示装置、刺激提示方法、および、刺激提示プログラム
JP7335527B2 (ja) 2019-11-07 2023-08-30 日本電信電話株式会社 刺激提示装置、刺激提示方法、および、刺激提示プログラム
US11893879B2 (en) 2019-11-07 2024-02-06 Nippon Telegraph And Telephone Corporation Stimulus presentation apparatus, stimulus presentation method and program
JP2023538341A (ja) * 2020-08-18 2023-09-07 ユニバーサル シティ スタジオズ リミテッド ライアビリティ カンパニー 推力偏向された実用的な流体フロー効果のためのシステム及び方法
JPWO2023127403A1 (ja) * 2021-12-27 2023-07-06
WO2023127403A1 (ja) * 2021-12-27 2023-07-06 パナソニックホールディングス株式会社 Vr臨場感向上システムおよびvr臨場感向上プログラム
EP4459426A4 (en) * 2021-12-27 2025-05-07 Panasonic Holdings Corporation System for improving realistic sensations and program for improving realistic sensations in vr
JP7712395B2 (ja) 2021-12-27 2025-07-23 パナソニックホールディングス株式会社 Vr臨場感向上システムおよびvr臨場感向上プログラム

Also Published As

Publication number Publication date
JP6935218B2 (ja) 2021-09-15
CN108686371A (zh) 2018-10-23

Similar Documents

Publication Publication Date Title
US11014000B2 (en) Simulation system, processing method, and information storage medium
US11865453B2 (en) Simulation system, process method, and information storage medium
JP5161256B2 (ja) プログラム、情報記憶媒体、及び、画像生成装置
US11738270B2 (en) Simulation system, processing method, and information storage medium
US11090554B2 (en) Simulation system, image processing method, and information storage medium
JP6935218B2 (ja) シミュレーションシステム及びプログラム
US9345972B2 (en) Information storage medium, image generation system, and image generation method
JP7071823B2 (ja) シミュレーションシステム及びプログラム
WO2018124280A1 (ja) シミュレーションシステム、画像処理方法及び情報記憶媒体
JP6774260B2 (ja) シミュレーションシステム
JP6660321B2 (ja) シミュレーションシステム及びプログラム
JP2018171309A (ja) シミュレーションシステム及びプログラム
JP4363595B2 (ja) 画像生成装置及び情報記憶媒体
JP2019176934A (ja) シミュレーションシステム
JP2018171320A (ja) シミュレーションシステム及びプログラム
JP5597869B2 (ja) プログラム、情報記憶媒体、及び、画像生成装置
JP4114825B2 (ja) 画像生成装置及び情報記憶媒体
JP6918189B2 (ja) シミュレーションシステム及びプログラム
JP2011255114A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2018181306A (ja) 情報処理方法、装置、および当該情報処理方法をコンピュータに実行させるためのプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20190125

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190222

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20190222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190419

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200326

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210409

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210825

R150 Certificate of patent or registration of utility model

Ref document number: 6935218

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350