(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2023-12-19
(45)【発行日】2023-12-27
(54)【発明の名称】ゲームプログラム、ゲーム方法及びゲーム装置
(51)【国際特許分類】
A63F 13/426 20140101AFI20231220BHJP
A63F 13/577 20140101ALI20231220BHJP
A63F 13/837 20140101ALI20231220BHJP
G06F 3/0484 20220101ALI20231220BHJP
G06F 3/0346 20130101ALI20231220BHJP
【FI】
A63F13/426
A63F13/577
A63F13/837
G06F3/0484
G06F3/0346
(21)【出願番号】P 2022166684
(22)【出願日】2022-10-18
【審査請求日】2022-10-18
(73)【特許権者】
【識別番号】522407178
【氏名又は名称】高尾 亮太
(74)【代理人】
【識別番号】100172225
【氏名又は名称】高松 宏行
(72)【発明者】
【氏名】高尾 亮太
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特表2022-501147(JP,A)
【文献】特表2021-512445(JP,A)
【文献】大野 功二,3Dゲームをおもしろくする技術 初版 ,第1版,SBクリエイティブ株式会社 小川 淳,2014年08月05日,第159,160頁
(58)【調査した分野】(Int.Cl.,DB名)
A63F 13/00-98
A63F 9/24
G06F 3/0346
G06F 3/048-04895
(57)【特許請求の範囲】
【請求項1】
仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行い、
前記調整された方向情報に基づいて、前
記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定する、
ことをコンピュータに指示
し、
前記調整は、
前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、
前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、
前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する機能を、コンピュータに実行させるための、ゲームプログラム。
【請求項2】
前記ゲームが行われている時、調整条件を満たす入力を受信した場合はいつも前記調整を行う
機能を、コンピュータに実行させるための、請求項
1に記載のゲームプログラム。
【請求項3】
仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行い、
前記調整された方向情報に基づいて、前
記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定
し、
前記調整は、
前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、
前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、
前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する、ゲーム方法。
【請求項4】
仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行う角度調整部と、
前記調整された方向情報に基づいて、前
記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定する判定部と、
を、備え
、
前記角度調整部は、
前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、
前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、
前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する、ゲーム装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ゲームプログラム、ゲーム方法及びゲーム装置に関する。
【背景技術】
【0002】
特許文献1には、VR(ヴァーチャルリアリティ)ゲームにおける、トラッキングシステムに関わる較正(キャリブレーション)が開示されている。例えば、現実空間におけるVRゴーグル(HMD:ヘッドマウントディスプレイ)の姿勢変化に応じてゲーム空間内の仮想カメラの姿勢を制御する場合において、両者を対応付けるキャリブレーションが不完全であると、VRゴーグルの正面方向(プレーヤの正面方向)と、仮想カメラの正面方向とにズレが生じる。従って、特許文献1は、このようなズレを較正する。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、特許文献1は、ゲームコンテンツ(ゲームソフト、ゲームアプリケーション)やコントローラの種類ごとに微妙に変化するコントローラの操作性を較正することはない。すなわち、特にVRゲームなどのゲームにおいては、個別のゲームコンテンツ、もしくはそのメーカー、さらにコントローラの種類やメーカーなどによって、ゲームプレーヤーがどの角度でコントローラを持って入力を行った時に、どの角度をコントローラが指した状態で入力されたとゲーム本体またはゲームソフト(プログラム)が認識するかが決定される。すなわち、個別のゲームコンテンツ、ゲームコンテンツのメーカー、コントロールの種類やメーカーなどによって、コントローラの方向の認識といった操作性が異なるということである。従って、ゲームプレーヤーが新しいゲームコンテンツに挑戦する際、過去にやったゲームコンテンツの操作性(特に角度)と微妙に異なり、期間をかけて新しいゲームの操作性に慣れることが必要である。また、ゲームプレーヤーが新しいコントローラに替えた際にも、同様のことが言える。
【0005】
そこで本発明は、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することのできるゲームプログラム、ゲーム方法及びゲーム装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明のゲームプログラムは、仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行い、前記調整された方向情報に基づいて、前記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定する、
ことをコンピュータに指示し、前記調整は、前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する機能を、コンピュータに実行させる。
【0007】
本発明のゲーム方法は、仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行い、前記調整された方向情報に基づいて、前記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定し、前記調整は、前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する。
【0008】
本発明のゲーム装置は、仮想現実を使ったゲームにおいて、入力部から入力に関わる情報を受信した時に、前記入力部の方向情報が示す方向がターゲットに近づくように調整を行う角度調整部と、前記調整された方向情報に基づいて、前記仮想現実内で前記入力部がターゲットを指していると判断するかどうかを判定する判定部と、を、備え、前記角度調整部は、前記仮想現実の空間内において、前記入力部が存在すると仮定される地点と前記ターゲットとを結ぶ第一の仮想直線と、前記入力部が存在すると仮定される地点から前記方向情報が示す方向に伸びる第二の仮想直線と、が成す角の第一の角度を算出し、前記第一の角度に1以下の所定の割合を掛けた第二の角度を算出し、前記調整された方向情報が、前記第一の仮想直線から前記第二の角度だけ回転した方向を示すように、調整前の前記方向情報を調整する。
【発明の効果】
【0009】
本発明によれば、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することができる。
【図面の簡単な説明】
【0010】
【
図1】本発明の一実施の形態のゲームシステムの概略の一例を示す図
【
図2】本発明の一実施の形態のコントローラの一例を示す斜視図
【
図3】本発明の一実施の形態の角度調整を説明する図
【
図4】本発明の一実施の形態の角度調整とヒット判定を説明する図
【
図5】本発明の一実施の形態のゲームシステムの構成の一例を示す図
【
図6】本発明の一実施の形態の角度調整のフローの一例を示す図
【
図7】本発明の一実施の形態の角度調整を実現するプログラムの一例を示す図
【発明を実施するための形態】
【0011】
<ゲームシステム1の概略説明>
以下に図面を用いて、本発明の一実施の形態を詳細に説明する。以下で述べる構成、方法、フロー等は説明のための例示であって、ゲームプログラム、ゲーム装置などの仕様に応じ、適宜変更が可能である。以下では、全ての図面において対応する要素には同一符号を付し、重複する説明を省略する。
【0012】
まず、本実施の形態におけるゲームシステム1について説明する。
図1は、本発明の一実施の形態のゲームシステムの概略の一例を示す図である。ゲームシステム1は、入力部であるコントローラ100、ゲーム装置の本体200、HMD(ヘッドマウンドディスプレイ)300、カメラ400を備える。
【0013】
ゲームプレーヤーは、コントローラ100への操作、入力やコントローラ100を動かすことなどにより、ゲームをプレイする。コントローラ100は、ゲームプレーヤーによるコントローラ100への入力に関する情報を本体200に送信する。カメラ400はコントローラ100及びHMD300を撮像する。
【0014】
カメラ400は少なくとも赤外線カメラとしての機能を有し、後述するようにコントローラ100の赤外線LEDを読み取る。カメラ400が撮像した画像を使って、本体200はコントローラ100とHMD300の位置情報、姿勢、向いている方向などを検知することができる。
【0015】
本体200は、コントローラ100からの入力に関する情報やカメラ400からの検知情報(コントローラ100とHMD300の位置情報、姿勢、向いている方向など)などを使ってVR空間の画像を生成し、ゲームプレーヤーが装着するHMD300に表示する。なお、本実施の形態における全ての「画像」は、静止画及び動画を含む。
【0016】
本実施の形態におけるゲームシステム1のゲームコンテンツの例としては、コントローラ100を銃と見立て、コントローラ100への入力によりターゲットである敵に向けて弾を発泡してターゲットに当てることを目的としたゲームが挙げられる。他にも、同様にコントローラ100を操作して、ターゲットにコントローラ100の方向や位置を合わせることが必要な状況において特に有用である。なお、ターゲットとは、敵に限らず、コントローラ100の向きや場所によって方向や位置を合わせたい対象であって、VR空間内に設けられた「ボタン」などであってもよい。
【0017】
<「較正」について>
次に、
図2、3を参照して、本実施の形態で行う「較正」について説明する。そのために、まず、コントローラ100について説明する。
【0018】
図2は、本発明の一実施の形態のコントローラの一例を示す斜視図である。
図2のコントローラ100は、たとえばVR空間を使ったゲームの入力部として使用される。コントローラ100は、入力部160(
図4参照)として含まれるボタン160aを備える。また、輪101の内側には、位置・方向検出部150(
図4参照)に含まれる複数の赤外線LEDが埋め込まれるなどして搭載されている。
【0019】
ゲームプレーヤーがコントローラ100を操作する際は、カメラ400が赤外線カメラとしての機能を持つので、この複数の赤外線LEDの動きを読み取ってコントローラ100の位置、姿勢、向いている方向に関する情報を抽出することができる。なお、
図2はあくまでコントローラ100の一例を示しており、異なる形態のコントローラ100を入力部として使用しても良い。
【0020】
次に、
図3を用いて、本実施の形態における「較正」について説明する。
図3は、本発明の一実施の形態の角度調整を説明する図である。ゲームプレーヤーがターゲット2に向けてコントローラ100の角度を合わせてボタン160aなどで入力をした際、前述したように本体200はカメラ400からの情報などを使ってコントロールの位置、姿勢、向いている方向が検知できるので、コントローラ100が「適切な角度」であればターゲット2をヒット(指す、当たる)したと判断する。
【0021】
しかしながら、前述したように、特にVRゲームやPCゲームといったゲームにおいては、個別のゲームコンテンツ、もしくはそのメーカー、さらにコントローラ100の種類やメーカーなどによって、実際に(現実世界で)どの角度でゲームプレーヤーがコントローラ100を持てば、本体200が、コントローラ100がどの角度を指していると認識するかが異なる。
【0022】
すなわち、個別のゲームコンテンツもしくはそのメーカー、さらにコントローラの種類やメーカーなどによって、前述した「適切な角度」が微妙に異なるということである。その結果、ゲームプレーヤーが新しいゲームコンテンツに挑戦する際、過去にやったゲームコンテンツでの操作性(特に角度)と微妙に異なることに違和を感じることがある。
【0023】
また、ゲームプレーヤーが新しいコントローラに替えた際にも、同様のことが言える。この微妙な操作性の不一致への違和感に関しては、これまでは、ゲームプレーヤーがある程度の期間をかけて、新しいゲームコンテンツやコントローラ100に慣れるしかなく、本体200側で対策が取られることは難しかった。
【0024】
従って、本実施の形態においては、ゲームプレーヤーが、新しいゲームコンテンツや新しいコントローラ100の操作性に慣れていなくても、微妙な操作性の不一致に対して適度な較正を行う。
【0025】
図3の状態においてコントローラ100に入力があったとする。この時、ゲーム装置の本体200は、コントローラ100の姿勢や角度に基づいて、VR空間において、コントローラ100が仮想直線10の方向に向いている時に、ゲームプレーヤーがコントローラ100に入力を行なったと認識する。この時、コントローラ100とターゲット2の中心点3とを結ぶ基準仮想直線20と仮想直線10とが交わる平面上において、基準仮想直線20と仮想直線10とがなす角の角度はθ1である。
【0026】
しかしながら、基準仮想直線20と仮想直線10とがなす角の角度θ1は、(1)ゲームプレーヤーの感覚で実際にコントローラ100を使ってターゲット2を狙った結果、ターゲット2の中心点3からずれた分の角度と、(2)ゲームプレーヤーが以前使っていた異なるゲームコンテンツやコントローラと、今プレイしているゲームコンテンツやコントローラ100と、の操作性の違いによってずれた分の角度と、の合算である。
【0027】
従って、本実施の携帯においては、(2)ゲームプレーヤーが以前使っていた異なるゲームコンテンツやコントローラと、今プレイしているゲームコンテンツやコントローラ100と、の操作性の違いによってずれた分の角度の分だけθ1を調整し、調整後の角度をθ2とする。
【0028】
すなわち、θ2を(1)ゲームプレーヤーの感覚で実際にコントローラ100を使ってターゲット2を狙った結果、ターゲット2の中心点3からずれた分の角度と見なし、θ1とθ2の差を(2)ゲームプレーヤーが以前使っていた異なるゲームコンテンツやコントローラと、今プレイしているゲームコンテンツやコントローラ100との、操作性の違いによってずれた分の角度とみなす。
【0029】
θ2は、θ1の一定の1以下の割合であり、その割合は例えば、90%~99%とすると良い。すなわち、この場合、基準仮想直線20と仮想直線10とがなす角の角度θ1のうち、90%~99%は(1)ゲームプレーヤーの感覚で実際にコントローラ100を使ってターゲットを狙った結果、ターゲット2の中心点3からずれた分の角度とみなし、1~10%は(2)ゲームプレーヤーが以前使っていた異なるゲームコンテンツやコントローラと、今プレイしているゲームコンテンツやコントローラ100との、操作性の違いによってずれた分の角度と見なすこととなる。
【0030】
なお、上記の角度調整は、ゲームプレーヤーが新しいゲームコンテンツやコントローラ100に慣れるまで継続して常に必要なものであり、他のキャリブレーションのように最初の一回やズレが生じた時だけ行えば良いものではない。従って、上記の角度調整は、ゲームプレーヤーが新しく始めたゲームコンテンツをやり続ける限り、ずっと行なっても良い。または、期間をあらかじめ設定するか、ゲームプレーヤーが設定するようにしても良い。少なくとも、ある一定期間(ゲームプレーヤーのゲームプレー時間で10時間など)以上は、上記の角度調整を行うと良い。
【0031】
図3では、調整前の仮想直線10のままでは、微妙なズレによってゲームプレーヤーはターゲット2にヒットしなかったことになるが、調整後の新たな仮想直線20ではターゲット2にヒットしたことになる。これによって、ゲームコンテンツやコントローラ100の種類ごとに微妙に変化しうる操作性を較正することが可能となり、ゲームプレーヤーの違和感を解消することできる。
【0032】
なお、角度調整は、回数を重ねるたびに調整角度を積み重ねて、調整の精度を高めても良い。例えば、これまで説明した角度調整が1回目の角度調整であるとすれば、2回目の入力は、そもそも1回目の角度調整における「
図3の仮想直線10と基準仮想直線20とが交わる平面上において、角度(θ1-θ2)の角度調整」が自動的に加味されて調整され、
図3の仮想直線10として認識されても良い。
【0033】
そして、1回目の角度調整と同じ調整がされた新たな仮想直線10と2回目における基準仮想直線20との角度を割り出し、同様の方法で、新たな仮想直線20を算出しても良い。さらに、3回目の入力では、1回目と2回目の角度調整と同じ調整がされた新たな仮想直線10と3回目における基準仮想直線20との角度を割り出し、同様の方法で、新たな仮想直線20を算出しても良い。
【0034】
<「ヒット判定」について>
次に、
図4を参照して、「ヒット判定」について説明する。
図4は、本発明の一実施の形態の角度調整とヒット判定を説明する図である。ヒット判定とは、ゲームプレーヤーが入力した際、コントローラ100(の向いている方向)が、仮想現実内でターゲット2の内部をヒットしている(指している)と判断するか否かを判定することである。
【0035】
図4(a)では、コントローラ100が向いている方向、すなわち仮想直線10の方向が既にターゲット2の中心点3に向いているため、θ1は0度となり、角度調整は必要ない。このような場合は、角度調整の処理プロセスを行なっても行わなくても良い。当然、この時、ターゲット2をヒットしたと判定される。
【0036】
図4(b)では、コントローラ100が向いている方向、すなわち仮想直線10の方向が既にターゲット2内であって中心点3以外の方向に向いている。そのため、角度調整のプロセスは行わなくても、ゲームプレーヤーの入力においては、ターゲット2をヒットしたと判定される。このような場合は、角度調整を行なっても行わなくても良い。角度調整を行なった結果、当然新たな仮想直線20においても、ターゲット2をヒットしたと判定される。なお、
図4(a)、(b)から分かる通り、仮想直線10が既にターゲット2内にヒットしている場合は、角度調整は行なっても行わなくても良い。
【0037】
図4(c)では、コントローラ100が向いている方向、すなわち仮想直線10の方向では、ターゲット2の外側になってしまう。しかしながら、角度調整を行うことで、新たな仮想直線20はターゲット2内にヒットする。従って、このような場合には、角度調整が必要である。角度調整の結果、新たな仮想直線20はターゲット2内にヒットすると判定される。
【0038】
図4(d)では、コントローラ100が向いている方向、すなわち仮想直線10の方向では、ターゲット2の外側になってしまう。そして、角度調整を行っても、新たな仮想直線20はターゲット2の外側を指す。しかしながら、新たな仮想直線20におけるヒット判定は、角度調整を行うことで初めて可能となるので、角度調整をやった方が良い。すなわち、
図4(c)、(d)から分かる通り、仮想直線10がターゲット2外に外れた場合は、角度調整は必要である。
【0039】
なお、これまでの全ての説明において、コントローラ100の方向及び角度に関する情報を使って「較正」を行なっているが、位置座標など他の情報を使うなどして同様の目的の「較正」を行なっても良い。
【0040】
<ゲームシステム1の詳細説明>
次に、
図4を参照して、ゲームシステム1の詳細説明を行う。
図4は、本発明の一実施の形態のゲームシステムの構成の一例を示す図である。なお、
図4のブロック図は、装置の構成を機能毎に分類及び整理したものである。それぞれの機能を示すブロックは、ハードウェア又はソフトウェアの任意の組み合わせで実現される。
【0041】
また、機能を示したものであることから、かかるブロック図は方法の発明、及び当該方法を実現するプログラムの発明の開示としても把握できるものである。なお、これらの包括的又は具体的な態様は、システム、装置、方法、集積回路、コンピュータプログラム又は記録媒体で実現されてもよく、システム、装置、方法、集積回路、コンピュータプログラム及び記録媒体の任意な組み合わせで実現されてもよい。
【0042】
ゲームシステム1は、ゲームの本体200、入力部であるコントローラ100、表示部であるHDM(ヘッドマウントディスプレイ)300、カメラ400を備える。
【0043】
コントローラ100は、一般的なVR空間を使用したゲーム用のものであればよく、制御部110、記憶部120、送信部130、受信部140、位置・方向検出部150、入力部160を含む。制御部110は、記憶部120、送信部130、受信部140、位置・方向検出部150、入力部160を制御し、ゲームプレーヤーの入力に関する情報を、送信部130を介して本体200に送信する。また、受信部140を介して、本体200からゲームコンテンツに関する情報などを受信し、その情報を記憶部120に記憶してもよい。
【0044】
位置・方向検出部150は、コントローラ100の位置、姿勢、向いている方向を検出するのに使われる。前述したように、
図2の輪101の内側には、位置・方向検出部150に含まれる複数の赤外線LEDが埋め込まれるなどして搭載されている。ゲームプレーヤーがコントローラ100を操作する際は、カメラ400が赤外線カメラとして機能し、この複数の赤外線LEDの動きを読み取ってコントローラ100の位置、姿勢、向いている方向に関する情報を抽出することができる。
【0045】
従って、位置・方向検出部150のみでコントローラ100の位置、姿勢、向いている方向を検出する必要はなく、ゲームシステム1内の他の装置などを使って検出すれば良い。また、位置・方向検出部150は、上記の構成に限定されず、例えば加速度センサなど、その他のセンサを含むことで機能を達成されても良い。
【0046】
入力部160は、
図2のボタン160aなどを含み、ゲームプレーヤーの入力を受け付ける。入力の目的の例として、銃を発砲することや、何か対象物を指してアクションを行うことなどが挙げられる。
図5のコントローラ100の構成は一例であり、上述の構成とは異なる構成をとっても良い。
【0047】
ゲームの本体200は、汎用のCPU(Central Processing Unit)、RAM等の揮発性メモリ、ROM、フラッシュメモリ、又はハードディスク等の不揮発性メモリ、各種インターフェース、及びこれらを接続する内部バスで構成することができる。そして、これらのハードウェア上でソフトウェア、プログラム(ゲームプログラム)を実行することにより、
図1に記載の各機能ブロックの機能を発揮させるように構成することができる。
【0048】
もちろん、本体200を、LSI等の専用のハードウェアで実現してもよい。本体200は、例えば、家庭ゲーム機、携帯ゲーム機、もしくはパーソナルコンピュータ、スマートフォン、タブレットなどの電子機器であると良い。
【0049】
本体200は、制御部210、記憶部220、受信部230、送信部240を含む。制御部210は、条件判定部211、角度調整部212、ヒット判定部213を含む。
【0050】
条件判定部211は、ゲームプレーヤーの入力に対して、角度調整を行うための条件を満たしているかを判定する。条件としては、
図4(a)、(b)を使って説明したように、仮想直線10のままでもターゲット2内にヒットしている場合は条件を満たさないとしても良い。そして、
図4(c)、(d)のように、仮想直線10がターゲット2外に外れていることを条件としても良い。また、前回の入力時に、ヒット判定として「ヒットしていない」と判定されていた場合は、次の入力時には角度調整を行わない、などと条件をつけても良い。
【0051】
すなわち、調整の条件としては、前回の調整前もしくは調整後の角度において、ヒットしたと判定されていることとなる。もちろん、全ての入力に対して角度調整を行う、という条件としても良い。また、条件として、新しいゲームコンテンツやコントローラ100が使用されるようになったと検知されたから一定期間の間のみ角度調整を行うことを入れても良い。
【0052】
角度調整部212は、
図3で示したθ1からθ2への角度調整を行う。より具体的には、
図3の仮想直線10、11、12及びθ1、θ2を算出する。そして、ヒット判定部213は、
図4で示したように、角度調整部212によって角度調整されたθ2に係る基準仮想直線20が、ターゲット2にヒットしているか(指しているか)を判定する。
【0053】
記憶部には、条件判定部211が使用する角度調整のための条件に関する情報、角度調整部212が角度調整するために必要な情報(θ1に対するθ2の割合を表すパラメータなど)、過去の調整角度(θ1-θ2値)と調整角度の方向、過去のヒット判定結果などが記憶される。
【0054】
受信部230はコントローラ100やカメラ400からの情報を受け取り、制御部210によって生成された生成情報を、送信部240を介してHMD300やコントローラ100へ送信する。
【0055】
HMD300は、ゲームプレーヤーが装着するものであり、本体200が生成したVR空間の画像を表示する。本体200が生成したVR空間の画像とは、角度調整およびヒット判定の結果を使った画像である。HMD300は、一般的なHMD300であれば良い。
【0056】
カメラ400は、前述した通り、カメラ400はコントローラ100及びHMD300を撮像する。また、カメラ400は赤外線カメラとして機能し、コントローラ100に搭載される赤外線LEDの位置を読み取る。カメラ400が撮像した画像を使って、本体200は、コントローラ100とHMD300の位置情報、姿勢、向いている方向などを検知することができる。
【0057】
次に、本体200が行う角度調整の方法フローについて説明する。
図6は、本発明の一実施の形態の角度調整のフローの一例を示す図である。以下に説明する全てのステップが必ずしも必要ではないし、各ステップは制限がない限り順番を入れ替えても良い。また、以下のフローは、ゲームプログラムの処理のフローとしても解釈できる。
【0058】
まず、ゲームプレーヤーがコントローラ100を使って入力を行なった時、受信部230を介して、コントローラ100やカメラ400より、ゲームプレーヤーの入力に関する情報を受信する(ST1)。そして、受信した情報をもとに、条件判定部211が、角度調整を行うかどうかを判定する(ST2)。もし、角度調整の調整条件を満たす場合は(ST2:YES)、
図3で説明したように仮想直線10と基準仮想直線20とを算出する(ST3)。もし、角度調整の調整条件を満たさない場合は(ST2:NO)、ST1に戻り、ゲームプレーヤーの入力を待つ。
【0059】
仮想直線10と基準仮想直線20とを算出すると、基準仮想直線20が仮想直線10に近づく回転方向に、方向情報を調整する。すなわち、
図3においては、仮想直線10と基準仮想直線20とがなす角の角度θ1を求め、基準仮想直線20との角度がθ1よりも小さい角度である角度θ2となるような新たな仮想直線20を算出する。コントローラ100の方向情報は、θ1を示す情報からθ2を示す情報へと調整される(ST4)。
【0060】
そして、θ2と新たな仮想直線20とに基づいて、ターゲット2にヒットしているかどうかを判定する((ST5)。そして、角度調整および判定結果に基づいた画像を生成して、HDM300に送信する。
【0061】
なお、これまでの説明は、VR空間を使ったゲームにおいての実施形態にて説明したが、VR空間を使わないゲームであっても、ゲームコンテンツやコントローラによって微妙なズレが生じうるため、同様の較正をすることができる。また、これまでの説明は、方向や角度を調整する方式にて説明を行なってきたが、位置座標情報などを使って、位置を調整する方式にて較正を行なっても良い。また、ゲーム以外でも実施されても良い。
【0062】
次に、角度調整を実現するプログラムを例示する。
図7は、本発明の一実施の形態の角度調整を実現するプログラムの一例を示す図である。
図7においては、
図3の角度θ1を呼び出し、θ2を算出するプロセスが示されている。なお、
図7は仮想直線10がターゲット2にヒットしない場合において呼び出されるようになっており、その場合に角度調整が行われるようになっている。
【0063】
本発明は、上記の構成及び機能を有する専用のハードウェアで実現できるだけでなく、メモリやハードディスク等の記録媒体に記録した本発明を実現するためのプログラム(ゲームプログラム)、及びこれを実行可能な専用又は汎用CPU及びメモリ等を有する汎用のハードウェアとの組み合わせとしても実現できる。
【0064】
専用や汎用のハードウェアの非遷移的実体的記録媒体(例えば、外部記憶装置(ハードディスク、USBメモリ、CD/BD等)、又は内部記憶装置(RAM、ROM等))に格納されるプログラムは、記録媒体を介して、あるいは記録媒体を介さずにサーバから通信回線を経由して、専用又は汎用のハードウェアに提供することもできる。これにより、プログラムのアップグレードを通じて常に最新の機能を提供することができる。
【0065】
本実施の形態のゲームプログラムは、仮想現実を使ったゲームにおいて、入力部であるコントローラ100から入力に関わる情報を受信した時に、コントローラ100の方向情報が示す方向がターゲットに近づくように調整を行い、調整された方向情報に含まれる角度θ2及び新たな仮想直線20などに基づいて、仮想現実内でコントローラ100がターゲット2を指していると判断するかどうかを判定することをコンピュータに指示する。
【0066】
これによって、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することができ、ゲームプレーヤーの違和感を低減することができる。なお、前述したように、コントローラ100の方向情報はコントローラ100のみが生成する必要はなく、本体200及びカメラ400が適宜情報提供及び処理することによって生成されると良い。
【0067】
また、ゲームプログラムは、角度調整は、仮想現実の空間内において、コントローラ100が存在すると仮定される地点とターゲット2とを結ぶ基準仮想直線20と、コントローラ100が存在すると仮定される地点から方向情報が示す方向に伸びる仮想直線10と、が成す角の角度θ1を算出し、角度θ1に1以下の所定の割合を掛けた角度θ2を算出し、調整された方向情報が、基準仮想直線20から角度θ2だけ回転した方向を示すように、θ1をθ2に調整することをコンピュータに指示すると良い。これによって、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することができ、ゲームプレーヤーの違和感を低減しやすくなる。
【0068】
また、ゲームプログラムは、ゲームが行われている時、調整条件を満たす入力を受信した場合はいつも調整を行うことをコンピュータに指示すると良い。これによって、1度だけの較正ではなく、調整条件を満たす限り較正を続けることができる。
【0069】
また、ゲーム方法は、仮想現実を使ったゲームにおいて、コントローラ100から入力に関わる情報を受信した時に、コントローラ100の方向情報が示す方向がターゲット2に近づくように調整を行い、調整された方向情報に含まれる角度θ2及び新たな仮想直線20などに基づいて、仮想現実内でコントローラ100がターゲット2を指していると判断するかどうかを判定する。
【0070】
これによって、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することができ、ゲームプレーヤーの違和感を低減することができる。なお、前述したように、コントローラ100の方向情報はコントローラ100のみが生成する必要はなく、本体200及びカメラ400が適宜情報提供及び処理することによって生成されると良い。
【0071】
また、ゲーム装置の本体200は、仮想現実を使ったゲームにおいて、コントローラ100から入力に関わる情報を受信した時に、コントローラ100の方向情報が示す方向がターゲット2に近づくように調整を行う角度調整部212と、調整された方向情報に基づいて、調整された入力情報がターゲットを指していると判断するかを判定するヒット判定部213と、を、備える。
【0072】
これによって、ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正することができ、ゲームプレーヤーの違和感を低減することができる。なお、前述したように、コントローラ100の方向情報はコントローラ100のみが生成する必要はなく、本体200及びカメラ400が適宜情報提供及び処理することによって生成されると良い。
【産業上の利用可能性】
【0073】
ゲームコンテンツやコントローラの種類ごとに微妙に変化しうるコントローラの操作性を較正するゲームプログラム、ゲーム方法及びゲーム装置を提供する。
【符号の説明】
【0074】
1 ゲームシステム
100 コントローラ
110 制御部
120 記憶部
130 送信部
140 受信部
150 位置・方向検出部
160 入力部
160a ボタン
200 (ゲーム装置の)本体
210 制御部
211 条件判定部
212 角度調整部
213 ヒット判定部
220 記憶部
230 受信部
240 送信部
300 HMD
400 カメラ
【要約】
【課題】ゲームコンテンツやコントローラの種類ごとに微妙に変化しうる操作性を較正するゲームプログラム、ゲーム方法及びゲーム装置を提供することを目的とする。
【解決手段】ゲームプログラムは、仮想現実を使ったゲームにおいて、入力部であるコントローラ100から入力に関わる情報を受信した時に、コントローラ100の方向情報が示す方向がターゲットに近づくように調整を行い、調整された方向情報に含まれる角度θ2及び新たな仮想直線20などに基づいて、仮想現実内でコントローラ100がターゲット2を指していると判断するかどうかを判定することをコンピュータに指示する。
【選択図】
図3