(57)【要約】【課題】ユーザが直観的に操作しやすいゴルフゲームを提供する。【解決手段】入力受付部２１６は、ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける。制御部２３０は、ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する。画像生成部２４２は、ゲーム画像を生成する。制御部２３０は、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与える。
2020026458.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける入力受付部と、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する制御部と、
ゲーム画像を生成する画像生成部と、を備えたゲーム装置であって、
前記制御部は、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与える、
ことを特徴とするゲーム装置。
【請求項２】
前記刺激発生部は、振動を発生する振動子である、
ことを特徴とする請求項１に記載のゲーム装置。
【請求項３】
前記制御部は、ゲーム空間において、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低くなると、刺激発生部を駆動する、
ことを特徴とする請求項１または２に記載のゲーム装置。
【請求項４】
前記制御部は、ゴルフクラブ先端の高さ方向の位置と、地面の高さ方向の位置との差に応じて、発生する刺激の大きさを調整する、
ことを特徴とする請求項３に記載のゲーム装置。
【請求項５】
ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低いとき、前記画像生成部は、ゴルフクラブが地面に接触していることを示す画像を生成する、
ことを特徴とする請求項３または４に記載のゲーム装置。
【請求項６】
入力装置は、棒状の筐体部分を有し、
実空間内におけるユーザの身長と入力装置の長さの比は、ゲーム空間におけるプレイヤーキャラクタの身長とゴルフクラブの長さの比よりも大きい、
ことを特徴とする請求項１から５のいずれかに記載のゲーム装置。
【請求項７】
前記入力受付部がユーザによる入力装置の所定の入力部の操作入力を受け付けている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、前記制御部は、入力装置に設けられた刺激発生部を駆動する、
ことを特徴とする請求項１から６のいずれかに記載のゲーム装置。
【請求項８】
ユーザが下方向を向いている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、前記制御部は、入力装置に設けられた刺激発生部を駆動する、
ことを特徴とする請求項１から７のいずれかに記載のゲーム装置。
【請求項９】
ゲーム画像は、ヘッドマウントディスプレイに出力される、
ことを特徴とする請求項１から８のいずれかに記載のゲーム装置。
【請求項１０】
ユーザの手に把持される入力装置の動きを示す操作入力を受け付けるステップと、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御するステップと、
ゲーム画像を生成するステップと、を備え、
プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与えるステップを含む、
ことを特徴とするゴルフゲームの制御方法。
【請求項１１】
コンピュータに、
ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける機能と、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する機能と、
ゲーム画像を生成する機能と、を実現させるためのプログラムであって、
制御機能は、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与える機能を含む、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゴルフゲームを制御する技術に関する。
【背景技術】
【０００２】
ユーザがプレイヤーキャラクタを操作してゴルフをプレーするゲームが人気を博している。ゴルフは、現実世界でも、幅広い年齢層にわたり人気がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１２５３３５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ヘッドマウントディスプレイ（Head Mounted Display : ＨＭＤ）はユーザの頭部に装着されて仮想現実（Virtual Reality : ＶＲ）の映像世界をユーザに提供する。最近ではＨＭＤをゲーム装置に接続して、ユーザがＨＭＤに表示されたゲーム画像を見ながら、ゲームコントローラを操作してゲームをプレイすることも行われている。ＨＭＤはユーザの視野全体にＶＲ画像を提供するために、映像世界へのユーザの没入感を高め、ゲームのエンタテインメント性を飛躍的に向上させる。ＨＭＤにヘッドトラッキング機能をもたせ、ユーザの頭部の姿勢と連動して仮想３次元空間のゲーム画像を生成することで、映像世界への没入感をさらに高めることができる。【０００５】
ユーザがゲームコントローラのボタンを操作することで、ゴルフクラブをスイングするゴルフゲームが数多く流通しているが、現実のゴルフプレイとは大きく乖離している。そのため、ユーザが直観的に操作しやすいゴルフゲームの開発が望まれている。【０００６】
本発明はこうした状況に鑑みてなされたものであり、その目的は、ユーザが直観的に操作しやすいゴルフゲームを提供することにある。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様のゲーム装置は、ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける入力受付部と、ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する制御部と、ゲーム画像を生成する画像生成部と、を備えたゲーム装置であって、制御部は、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与える。【０００８】
本発明の別の態様は、ゴルフゲームの制御方法である。この方法は、ユーザの手に把持される入力装置の動きを示す操作入力を受け付けるステップと、ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御するステップと、ゲーム画像を生成するステップと、を備える。プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与えるステップを含む。【０００９】
なお、以上の構成要素の任意の組合せ、本発明の表現を方法、装置、システムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１０】
本発明によれば、直観的に操作しやすいゴルフゲームを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施例におけるゲームシステムの構成例を示す図である。
【図２】ＨＭＤの外観形状の例を示す図である。
【図３】ＨＭＤの機能ブロックを示す図である。
【図４】入力装置の外観形状の例を示す図である。
【図５】入力装置の機能ブロックを示す図である。
【図６】ゲーム装置の機能ブロックを示す図である。
【図７】ユーザがアドレス姿勢をとった状態を示す図である。
【図８】表示パネルに表示されるゲーム画像の例を示す図である。
【図９】表示パネルに表示されるゲーム画像の例を示す図である。
【図１０】表示パネルに表示されるゲーム画像の例を示す図である。
【図１１】ゲーム空間中に表示されるメニュー画像の例を示す図である。
【図１２】表示パネルに表示されるゲーム画像の例を示す図である。
【図１３】表示パネルに表示されるゲーム画像の例を示す図である。
【図１４】表示パネルに表示されるゲーム画像の例を示す図である。
【発明を実施するための形態】
【００１２】
実施例のゲーム装置は、ゴルフゲームを実行する。ユーザは棒状の入力装置を把持し、入力装置をスイングすると、ゲーム中のプレイヤーキャラクタが、ゲームオブジェクトであるゴルフクラブをスイングする。実施例の入力装置は、たとえば数十センチ以下の長さであり、現実のゴルフクラブより大分短いため、狭い空間内でもユーザは入力装置をスイングできる。ユーザによる入力装置のスイングは撮像装置により撮影されて、入力装置のスイング軌道が、ゲーム中のゴルフクラブのスイング軌道に反映される。これにより、ユーザは、実際にゴルフクラブでボールを打っているような感覚で、ゴルフゲームをプレイできる。
【００１３】
図１は、実施例におけるゲームシステム１の構成例を示す。ゲームシステム１はゲーム装置１０と、ユーザの頭部に装着されるヘッドマウントディスプレイ（ＨＭＤ）１００と、ユーザの手に把持される入力装置２０と、ＨＭＤ１００および入力装置２０を撮影する撮像装置１４と、画像および音を出力する出力装置１５とを備える。ゲーム装置１０は、アクセスポイント（ＡＰ）１７を介して、インターネットなどの外部のネットワーク２に接続される。ＡＰ１７は無線アクセスポイントおよびルータの機能を有し、ゲーム装置１０はＡＰ１７とケーブルで接続してもよく、既知の無線通信プロトコルで接続してもよい。
【００１４】
ＨＭＤ１００は、ユーザが頭部に装着することによりその眼前に位置する表示パネルに画像を表示する表示装置である。ＨＭＤ１００は、左目用表示パネルに左目用の画像を、右目用表示パネルに右目用の画像を、それぞれ別個に表示する。これらの画像は左右の視点から見た視差画像を構成し、立体視を実現する。なおユーザは光学レンズを通して表示パネルを見るため、ゲーム装置１０は、レンズによる光学歪みを補正した視差画像データをＨＭＤ１００に供給する。
【００１５】
ＨＭＤ１００は仮想現実（ＶＲ）の映像世界をユーザに提供する。ゲームシステム１にヘッドトラッキング機能をもたせ、ユーザの頭部の動きに連動して表示画像を更新することで、映像世界への没入感を高められる。実施例のゲーム装置１０は、プレイヤーキャラクタが見る仮想的なゴルフ場の画像を生成してＨＭＤ１００に供給する。
【００１６】
入力装置２０は、ユーザが操作指示を行うための操作入力デバイスである。入力装置２０は、ユーザによる操作指示をゲーム装置１０に伝送する機能をもち、実施例ではゲーム装置１０との間で無線通信可能な無線コントローラとして構成される。入力装置２０とゲーム装置１０は、Bluetooth（登録商標）プロトコルを用いて無線接続を確立してもよい。
【００１７】
入力装置２０はバッテリにより駆動され、ゲームを進行させる操作指示を行うための複数のボタンを有して構成される。ユーザが入力装置２０のボタンを操作すると、その操作指示が無線によりゲーム装置１０に送信される。ゲーム装置１０は、入力装置２０から操作指示を受信し、操作指示に応じてゲーム進行を制御して、ゲーム画像データおよびゲーム音声データを生成する。ゲーム画音データは、ＨＭＤ１００および出力装置１５に供給される。なお入力装置２０は、無線コントローラに限らず、ゲーム装置１０とケーブルを介して接続される有線コントローラであってもよい。
【００１８】
出力装置１５は画像および音を出力する装置であって、ゲーム装置１０において生成された画音データを受けて、ゲーム画像およびゲーム音を出力する。出力装置１５は、ディスプレイおよびスピーカを有するテレビであってよく、またコンピュータディスプレイであってもよい。出力装置１５は、ゲーム装置１０に有線ケーブルで接続されてよく、また無線ＬＡＮ（Local Area Network）などにより無線接続されてもよい。
【００１９】
ゲーム装置１０は、処理装置１１、出力制御装置１２および記憶装置１３を備える。処理装置１１は、入力装置２０による操作指示を受け付けて、ゲームなどのアプリケーションを実行する端末装置である。なお実施例の処理装置１１は、ＨＭＤ１００の姿勢情報および位置情報と、入力装置２０の姿勢情報および位置情報を、ゲームに対するユーザの操作指示として受け付けて、ゲームを進行させる機能をもつ。処理装置１１は、ゲーム画音データを生成し、出力制御装置１２および出力装置１５に供給する。出力制御装置１２は、処理装置１１で生成された画音データをＨＭＤ１００に供給する処理ユニットであり、ＨＭＤ１００のレンズによる光学歪みを補正した視差画像データをＨＭＤ１００に供給する。出力制御装置１２とＨＭＤ１００とはケーブルで接続されてよく、また既知の無線通信プロトコルで接続されてもよい。
【００２０】
ユーザはＨＭＤ１００で画像を見るため、ＨＭＤ１００を装着したユーザにとって出力装置１５は必ずしも必要ではないが、出力装置１５を用意することで、別のユーザが出力装置１５の表示画像を見ることができる。処理装置１１は、ＨＭＤ１００を装着したユーザが見ている画像と同じ画像を出力装置１５に表示させてもよいが、別の画像を表示させてもよい。たとえばＨＭＤを装着したユーザと、別のユーザとが一緒にゲームをプレイするような場合、出力装置１５からは、当該別のユーザのキャラクタ視点からのゲーム画像が表示されてもよい。
【００２１】
撮像装置１４は、ＣＣＤ撮像素子またはＣＭＯＳ撮像素子などから構成されるビデオカメラであり、実空間を所定の周期で撮影して、周期ごとのフレーム画像を生成する。撮像装置１４はステレオカメラであって、処理装置１１が、撮影画像から対象物との距離を測定できることが好ましい。撮像装置１４の撮影速度は６０枚／秒として、出力装置１５のフレームレートと一致させてもよい。撮像装置１４は、ＵＳＢ（Universal Serial Bus）あるいはその他のインタフェースを介してゲーム装置１０と接続する。
【００２２】
処理装置１１、記憶装置１３、出力装置１５、入力装置２０および撮像装置１４は、従来型のゲームシステムを構築してよい。この場合、処理装置１１はゲームを実行する情報処理装置であり、入力装置２０は処理装置１１にユーザによるゲームの操作指示を供給するゲームコントローラである。記憶装置１３は、システムソフトウェアやゲームソフトウェアなどを記憶している。この従来型のゲームシステムの構成要素に、出力制御装置１２およびＨＭＤ１００を追加することで、仮想３次元空間のＶＲ画像をＨＭＤ１００に提供するゲームシステム１が構築される。
【００２３】
なお出力制御装置１２による機能は、処理装置１１に組み込まれてもよい。つまりゲーム装置１０の処理ユニットは、１台の処理装置１１から構成されても、また処理装置１１および出力制御装置１２から構成されてもよい。以下においては、ＶＲ画像をＨＭＤ１００に提供する機能を、まとめてゲーム装置１０の機能として説明する。
【００２４】
ＨＭＤ１００にはユーザ頭部をトラッキングするためのマーカ（トラッキング用ＬＥＤ）が設けられ、ゲーム装置１０は、撮影画像に含まれるマーカの位置にもとづいてＨＭＤ１００の動きを検出する。なおＨＭＤ１００には姿勢センサ（加速度センサおよびジャイロセンサ）が搭載され、ゲーム装置１０は、姿勢センサで検出されたセンサデータをＨＭＤ１００から取得することで、マーカの撮影画像の利用とあわせて、高精度のトラッキング処理を実施してよい。なおトラッキング処理については従来より様々な手法が提案されており、ゲーム装置１０はＨＭＤ１００の動きを検出できるのであれば、どのようなトラッキング手法を採用してもよい。
【００２５】
入力装置２０は、ユーザが把持する棒状の筐体部分を有し、筐体部分の先端には発光体が設けられる。入力装置２０の発光体は、複数色で発光可能に構成され、発光体は、ゲーム装置１０からの発光指示により、発光色を変更できる。筐体部分は、略円筒状に形成され、表面には、複数の操作ボタンが設けられる。ゲーム中、発光体は所定色で発光し、ゲーム装置１０は、撮影画像における発光体の位置および大きさから、実空間における発光体の位置情報を導出する。ゲーム装置１０は、発光体の位置情報をゲームの操作指示として取り扱い、ゴルフクラブの動きに反映させる。実施例のゲーム装置１０は、入力装置２０のボタンなどの操作入力だけでなく、取得した発光体の位置情報も用いて、ゴルフゲームを処理する機能をもつ。
【００２６】
入力装置２０は加速度センサおよびジャイロセンサを含む姿勢センサを備える。センサデータは、所定周期でゲーム装置１０に送信され、ゲーム装置１０は、センサデータを取得して、実空間における入力装置２０の姿勢情報を取得する。ゲーム装置１０は、姿勢情報をゲームの操作指示として取り扱い、ゲームの処理に反映させる。
【００２７】
実施例のゴルフゲームは、ユーザの頭部に装着されたＨＭＤ１００の姿勢情報にもとづいてプレイヤーキャラクタの視線方向を定める。ゲーム装置１０は、ＨＭＤ１００の姿勢情報を、ゲーム画像の視線切替指示として取り扱う。そのためユーザが下方向を向くと、ＨＭＤ１００の表示パネルには、ゴルフクラブのシャフトおよびヘッドと、ボールが表示され、ユーザが前方を向くと、ＨＭＤ１００には、これからボールを打つゴルフコースが表示される。なお図１に示す出力装置１５には、ＨＭＤ１００の表示パネルと同じゲーム画像が表示されており、シャフトの一部およびヘッドと、ボールとが表示されている様子が示される。
【００２８】
ゲーム装置１０は、ユーザのヘッドトラッキング処理を行うことで、実空間におけるユーザ頭部（実際にはＨＭＤ１００）の位置および姿勢を検出する。ここでＨＭＤ１００の位置とは、基準位置を原点とした３次元空間における位置座標であり、基準位置はＨＭＤ１００の電源がオンされたときの位置座標（緯度、経度）であってよい。またＨＭＤ１００の姿勢とは、３次元空間における基準姿勢に対する３軸方向の傾きである。なお基準姿勢は、ユーザの視線方向が水平方向となる姿勢であり、ＨＭＤ１００の電源がオンされたときに基準姿勢が設定されてよい。
【００２９】
ゲーム装置１０は、ＨＭＤ１００の姿勢センサが検出したセンサデータのみから、ＨＭＤ１００の位置および姿勢を検出でき、さらに撮像装置１４で撮影したＨＭＤ１００のマーカ（トラッキング用ＬＥＤ）を画像解析することで、高精度にＨＭＤ１００の位置および姿勢を検出できる。実施例のゲーム装置１０は、ＨＭＤ１００の位置情報をもとにプレイヤーキャラクタの仮想３次元空間内の位置を算出し、ＨＭＤ１００の姿勢情報をもとにプレイヤーキャラクタの視線方向を算出する。
【００３０】
図２は、ＨＭＤ１００の外観形状の例を示す。ＨＭＤ１００は、出力機構部１０２および装着機構部１０４から構成される。装着機構部１０４は、ユーザが被ることにより頭部を一周してＨＭＤ１００を頭部に固定する装着バンド１０６を含む。装着バンド１０６はユーザの頭囲に合わせて長さの調節が可能な素材または構造をもつ。
【００３１】
出力機構部１０２は、ＨＭＤ１００をユーザが装着した状態において左右の目を覆う形状の筐体１０８を含み、内部には装着時に目に正対する表示パネルを備える。表示パネルは液晶パネルや有機ＥＬパネルなどであってよい。筐体１０８内部にはさらに、表示パネルとユーザの目との間に位置し、ユーザの視野角を拡大する左右一対の光学レンズが備えられる。ＨＭＤ１００はさらに、ユーザの耳に対応する位置にスピーカーやイヤホンを備えてよく、外付けのヘッドホンが接続されるように構成されてもよい。
【００３２】
筐体１０８の外面には、複数の発光マーカ１１０ａ、１１０ｂ、１１０ｃ、１１０ｄが備えられる。この例ではトラッキング用ＬＥＤが発光マーカ１１０を構成するが、その他の種類のマーカであってよく、いずれにしても撮像装置１４により撮影されて、ゲーム装置１０がマーカ位置を画像解析できるものであればよい。発光マーカ１１０の数や配置は特に限定されないが、ＨＭＤ１００の姿勢を検出できるための数および配置である必要があり、図示した例では筐体１０８の前面の４隅に設けている。さらにユーザが撮像装置１４に対して背を向けたときにも撮影できるように、発光マーカ１１０は装着バンド１０６の側部や後部に設けられてもよい。
【００３３】
図３は、ＨＭＤ１００の機能ブロックを示す。制御部１２０は、画像データ、音声データ、センサデータなどの各種データや、命令を処理して出力するメインプロセッサである。記憶部１２２は、制御部１２０が処理するデータや命令などを一時的に記憶する。姿勢センサ１２４は、ＨＭＤ１００の姿勢情報を検出する。姿勢センサ１２４は、少なくとも３軸の加速度センサおよび３軸のジャイロセンサを含む。
【００３４】
通信制御部１２８は、ネットワークアダプタまたはアンテナを介して、有線または無線通信により、制御部１２０から出力されるデータを外部のゲーム装置１０に送信する。また通信制御部１２８は、ネットワークアダプタまたはアンテナを介して、有線または無線通信により、ゲーム装置１０からデータを受信し、制御部１２０に出力する。
【００３５】
制御部１２０は、画像データや音声データをゲーム装置１０から受け取ると、表示パネル１３０に供給して表示させ、また音声出力部１３２に供給して音声出力させる。表示パネル１３０は、左目用表示パネル１３０ａと右目用表示パネル１３０ｂから構成され、各表示パネルに一対の視差画像が表示される。また制御部１２０は、姿勢センサ１２４からのセンサデータや、マイク１２６からの音声データを、通信制御部１２８からゲーム装置１０に送信させる。
【００３６】
図４は、入力装置２０の外観形状の例を示す。図４（ａ）は、入力装置２０の上面構成を示し、図４（ｂ）は、入力装置２０の下面構成を示す。入力装置２０は、発光体２２およびハンドル２４を有する。発光体２２は、その外側を光透過性を有する樹脂で球体に形成され、内側に発光ダイオードや電球などの発光素子を有する。内側の発光素子が発光すると、外側の球体全体が光る。ハンドル２４は長手状の筐体部分を有し、上面には、入力部である操作ボタン３０、３２、３４、３６、３８が設けられ、下面には入力部である操作ボタン４０が設けられる。操作ボタン３０、３２、３４、３６、３８は、押下式に構成され、ユーザは押下することで操作する。操作ボタン４０は、アナログ量を入力できるものであってよい。
【００３７】
図５は、入力装置２０の機能ブロックを示す。入力装置２０は、無線通信モジュール４８、処理部５０、発光部６２および操作ボタン３０、３２、３４、３６、３８、４０を備える。無線通信モジュール４８は、ゲーム装置１０の無線通信モジュールとの間でデータを送受信する機能をもつ。処理部５０は、入力装置２０における所期の処理を実行する。
【００３８】
処理部５０は、メイン制御部５２、入力受付部５４、姿勢センサ５６、刺激発生部５８および発光制御部６０を有する。メイン制御部５２は、無線通信モジュール４８との間で必要なデータの送受を行う。
【００３９】
入力受付部５４は、操作ボタン３０、３２、３４、３６、３８、４０からの入力情報を受け付け、メイン制御部５２に送る。姿勢センサ５６は、３軸加速度センサと３軸ジャイロセンサを含む。姿勢センサ５６は、入力装置２０のハンドル２４内に配置され、ハンドル２４内の中心近傍に配置されることが好ましい。無線通信モジュール４８は、操作ボタンの操作による入力データとともに、姿勢センサ５６で検出されたセンサデータを、所定の周期でゲーム装置１０の無線通信モジュールに送信する。
【００４０】
発光制御部６０は、発光部６２の発光を制御する。発光部６２は、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃを有し、複数色の発光を可能とする。発光制御部６０は、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃの発光を調整して、発光部６２を所望の色に発光させる。
【００４１】
無線通信モジュール４８はゲーム装置１０から発光指示を受け取ると、メイン制御部５２に供給し、メイン制御部５２は、発光制御部６０に発光指示を供給する。発光制御部６０は、発光部６２が発光指示により指定された色で発光するように、赤色ＬＥＤ６４ａ、緑色ＬＥＤ６４ｂ、青色ＬＥＤ６４ｃの発光を制御する。たとえば発光制御部６０は、各ＬＥＤをＰＷＭ（パルス幅変調）制御で点灯制御してもよい。
【００４２】
刺激発生部５８は、入力装置２０を把持するユーザの手に与える刺激を発生する。無線通信モジュール４８はゲーム装置１０から駆動指示を受け取ると、メイン制御部５２に供給し、メイン制御部５２は、刺激発生部５８に駆動指示を供給する。これにより刺激発生部５８は、刺激を発生する。刺激発生部５８は、ハンドル２４の筐体に振動を発生する振動子を有してよい。なお刺激発生部５８は、振動刺激以外の刺激、たとえば電気刺激、温熱刺激、冷熱刺激、圧力刺激などを発生してもよい。
【００４３】
図６は、ゲーム装置１０の機能ブロックを示す。ゲーム装置１０は、外部との入出力インタフェースとして、受信部２００および送信部２６０を備える。ゲーム装置１０は、さらにＨＭＤ情報取得部２１０、視線方向決定部２１２、入力装置情報取得部２１４、入力受付部２１６、処理部２２０、パラメータ保持部２５０およびゲームデータ保持部２５２を備える。
【００４４】
図６において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、回路ブロック、メモリ、その他のＬＳＩで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００４５】
ＨＭＤセンサデータ受信部２０２は、ユーザが装着したＨＭＤ１００の姿勢センサ１２４のセンサデータを所定の周期で受信して、ＨＭＤ情報取得部２１０に供給する。たとえばＨＭＤ１００からの送信周期は、１１．２５ｍ秒に設定されてよい。撮影画像受信部２０４は、撮像装置１４から所定の周期でＨＭＤ１００および入力装置２０を撮影した画像を受信して、ＨＭＤ情報取得部２１０および入力装置情報取得部２１４に供給する。たとえば撮像装置１４は（１／６０）秒ごとに前方の空間を撮影し、撮影画像受信部２０４は、（１／６０）秒ごとに撮影画像を受信してよい。入力装置データ受信部２０６は、ユーザが把持する入力装置２０の姿勢センサ５６のセンサデータおよび各種操作ボタンの入力データを所定の周期で受信する。たとえば入力装置２０からの送信周期は、１１．２５ｍ秒に設定されてよい。入力装置データ受信部２０６は、姿勢センサ５６のセンサデータおよび各種操作ボタンの入力データを入力受付部２１６に供給する。
【００４６】
ＨＭＤ情報取得部２１０は、ＨＭＤ１００のセンサデータと、撮影画像に含まれる複数の発光マーカ１１０の撮影状態から、実空間におけるＨＭＤ１００の姿勢を示す姿勢情報と、ＨＭＤ１００の位置を示す位置情報を取得する。ＨＭＤ情報取得部２１０は３軸ジャイロセンサのセンサデータから、ＨＭＤ１００の姿勢変化を特定する。さらにＨＭＤ情報取得部２１０は、撮影画像に含まれるトラッキング用の複数の発光マーカ１１０の傾きを算出し、算出した傾きと、３軸ジャイロセンサのセンサデータを用いて、ＨＭＤ１００の姿勢情報を取得する。またＨＭＤ情報取得部２１０は、基準位置からの移動量を、３軸加速度センサのセンサデータを用いて算出し、ＨＭＤ１００の位置情報を取得する。ＨＭＤ情報取得部２１０は、ＨＭＤ１００の姿勢情報を視線方向決定部２１２に供給し、位置情報を処理部２２０に供給する。
【００４７】
視線方向決定部２１２は、ＨＭＤ１００の姿勢情報に応じてユーザの視線方向を定める。視線方向決定部２１２は、ＨＭＤ１００の姿勢情報を、ユーザの視線方向に変換する。視線方向決定部２１２は、決定した視線方向を、処理部２２０に供給する。処理部２２０において、画像生成部２４２は、視線方向決定部２１２から提供される視線方向を、プレイヤーキャラクタの視線を定める操作情報として利用する。実施例のゴルフゲームでは、画像生成部２４２が、提供される位置情報および視線方向に応じて、ゲーム空間内の仮想カメラの位置および方向を設定する。
【００４８】
入力装置情報取得部２１４は、撮影画像に含まれる発光体２２の撮影状態から、入力装置２０の動きを示す操作入力を取得する。具体的に入力装置情報取得部２１４は、撮影画像に含まれる発光体２２の画像の位置および大きさから、撮影画像ごとに実空間における発光体２２の位置情報を導出する。撮影画像ごとの発光体２２の位置情報は、入力装置２０の動きを示す操作入力を構成する。
【００４９】
入力装置情報取得部２１４は、撮影画像データを所定の閾値を用いて２値化処理し、２値化された画像を生成してよい。この２値化処理により、所定の閾値より大きい輝度をもつ画素の画素値が“１”に符号化され、所定の閾値以下の輝度を保持する画素の画素値が“０”に符号化される。この所定の閾値を超える輝度で発光体２２を点灯させることで、入力装置情報取得部２１４は、２値化された画像から、発光体画像の位置および大きさを特定できる。たとえば入力装置情報取得部２１４は、撮影画像における発光体画像の重心座標と、発光体画像の半径を特定する。
【００５０】
入力装置情報取得部２１４は、特定した発光体画像の位置および大きさから、撮像装置１４からみた入力装置２０の位置情報を導出する。入力装置情報取得部２１４は、発光体画像の重心座標からカメラ座標における位置座標を導出し、また発光体画像の半径から、撮像装置１４からの距離情報を導出する。この位置座標および距離情報は、入力装置２０の位置情報を構成する。入力装置情報取得部２１４は、撮影画像ごとに入力装置２０の位置情報を導出し、入力受付部２１６に供給する。
【００５１】
入力受付部２１６は、入力装置２０の位置情報、姿勢センサ５６のセンサデータおよび各種操作ボタンの入力データを受け付け、処理部２２０に供給する。
【００５２】
処理部２２０は、制御部２３０、弾道算出部２４０および画像生成部２４２を備える。制御部２３０は、初期設定部２３２、ヘッド制御部２３４、インパクト決定部２３６および駆動制御部２３８を有する。
【００５３】
実施例のゴルフゲームでは、ユーザが入力装置２０をゴルフクラブのように把持してスイングすると、入力受付部２１６が入力装置２０の動きを示す操作入力を受け付け、制御部２３０が、ゲーム空間内でゴルフプレイヤーとして機能するプレイヤーキャラクタの動きを、当該操作入力に応じて制御する。制御部２３０は、入力装置２０の動きを示す操作入力に応じて、ゴルフクラブのスイング軌道を算出する。弾道算出部２４０は、制御部２３０が算出したスイング軌道に、インパクト時のフェースの角度と、ヘッドスピード、フェースにおけるボールの当たった位置（インパクト位置）を加味して、ボールの弾道を算出する。
【００５４】
パラメータ保持部２５０は、ゴルフゲームの進行に必要なパラメータを保持する。パラメータ保持部２５０は、クラブヘッドとボールとの当たり判定用のインパクトパラメータを保持してよい。インパクトパラメータは、ゲームの難易度を選択するプレイモードや、クラブ種類ごとの性能に関して、当たり判定の特性を設定するものであってよい。たとえば初心者モードでは、クラブヘッドとボールのインパクトの瞬間の相対的な位置関係が多少離れていてもボールがフェースの中央に当たるように、一方で上級者モードでは、ボールがクラブヘッドの相対的な位置関係のみによってフェース上のボールの当たる位置が計算されるように、インパクトパラメータが設定されていてよい。また、飛距離が出やすいがボールをフェース中央に当てにくい性能や、逆にボールをフェース中央に当てやすいが飛距離が出にくいクラブ性能などが、インパクトパラメータとして設定されてもよい。
【００５５】
ゲームデータ保持部２５２は、ゴルフゲームのプログラムなどのゲームデータを保持する。制御部２３０は、ゲームデータ保持部２５２からプログラムを読み出して実行し、ユーザの操作入力に基づいて、プレイヤーキャラクタの動作とともに、プレイヤーキャラクタが持つゴルフクラブの動きを制御する。画像生成部２４２は、制御部２３０により制御されるゲームの画像を生成し、送信部２６０が、ゲーム画像をＨＭＤ１００および出力装置１５に送信する。
【００５６】
初期設定部２３２は、ＨＭＤ１００の実空間上の位置を初期設定する。初期設定部２３２により設定された位置は、ゲーム空間におけるプレイヤーキャラクタの頭部の基準位置に対応する。なおプレイヤーキャラクタの身長は、プレイヤーキャラクタをユーザが選択する段階で、ユーザによって選択されている。制御部２３０は、実空間において初期設定した位置からのずれ量を算出することで、ゲーム空間におけるプレイヤーキャラクタの頭部の位置を算出する。
【００５７】
図７は、ユーザがアドレス姿勢をとった状態を示す。ユーザが入力装置２０を把持している状態で、ヘッド制御部２３４は、入力装置２０の姿勢および発光体２２の位置にもとづいて、ワールド座標系におけるゴルフクラブの向きおよびヘッドの位置を決定する。ゴルフクラブの長さは、使用するクラブの種類によって定められてよく、またゴルフクラブが地面に向いているときのグリップの位置はプレイヤーキャラクタの身長にもとづいて設定されてよい。ヘッド制御部２３４は、入力装置２０の姿勢情報および発光体２２の位置情報から、入力装置２０を長さ方向に延長した向きで、グリップをプレイヤーキャラクタに握られたゴルフクラブをワールド座標系に配置する。
【００５８】
ヘッド制御部２３４は、入力受付部２１６から所定の周期で入力装置２０の位置情報および姿勢情報を取得して、入力装置２０のスイング軌道を特定し、ワールド座標系におけるゴルフクラブのスイング軌道、すなわちクラブヘッドの軌道を算出する。ヘッド制御部２３４は、算出したゴルフクラブのスイング軌道を画像生成部２４２に提供し、画像生成部２４２は、提供されたスイング軌道で、ゲームオブジェクトであるゴルフクラブのスイング映像を生成する。
【００５９】
インパクト決定部２３６は、ヘッド制御部２３４から、クラブヘッドとボールとの相対的な位置関係を取得する。インパクト決定部２３６は、パラメータ保持部２５０に格納されたインパクトパラメータを参照して、クラブヘッドがボールを打撃するか判定する。当り判定されると、インパクト決定部２３６は、ボールがフェースに当たった位置を特定し、弾道算出部２４０に供給する。
【００６０】
なおクラブヘッドとボールとの当り判定は一例であって、別の手法が採用されてもよい。上記したように、上級者モードや初心者モードなどのプレイモードやクラブ自体の性能等に応じたインパクトパラメータが、当たり判定の難易度を調整することで、ユーザの技量等が反映されるゲーム性を提供できる。
【００６１】
弾道算出部２４０は、インパクトされたボールの弾道を算出する。弾道算出部２４０は、フェースの角度、ゴルフクラブのスイングの軌道、ヘッドスピード、ボールがフェースに当たった位置から、ボールの初速および方向とスピンを決定して、弾道を算出する。弾道算出部２４０は、ヘッド制御部２３４から、算出されたゴルフクラブのスイング軌道を取得し、インパクト決定部２３６から、ボールがフェースに当たった位置を取得する。
【００６２】
弾道算出部２４０は、入力装置２０の姿勢センサ５６に含まれる３軸ジャイロセンサのセンサデータから、ゲームオブジェクトであるゴルフクラブのフェースの角度を取得する。入力装置２０の３軸ジャイロセンサのセンサデータは、入力装置２０の姿勢情報を形成する。パラメータ保持部２５０は、使用するクラブに関して、入力装置２０の３軸ジャイロセンサのセンサデータとフェースの角度との対応表を有し、弾道算出部２４０は、当該対応表を参照して、フェース角度を取得する。
【００６３】
弾道算出部２４０は、入力装置２０の姿勢センサ５６に含まれる３軸加速度センサのセンサデータから、ゴルフクラブのヘッドスピードを取得する。パラメータ保持部２５０は、使用するクラブに関して、３軸加速度センサのセンサデータとヘッドスピードとの対応表を有し、弾道算出部２４０は、当該対応表を参照して、ヘッドスピードを取得する。
【００６４】
弾道算出部２４０は、使用するクラブと、スイング軌道、ヘッドスピードにもとづいて、インパクトのパワーを算出し、算出したパワーから初速を決定してよい。インパクトの瞬間、算出したパワーは、最大パワーの何％という形式で、表示されてもよい。弾道算出部２４０は、ボールの左側が打撃されていれば、ボールの軌道を右に曲げてスライスボールとし、右側を打撃されていれば、左に曲げてフックボールとする弾道を算出してよい。
【００６５】
弾道算出部２４０は、初速および方向とスピンを決定すると、ボールに作用する力に応じて速度を調整しつつ、ボールの位置をフレーム画像ごとに算出する。弾道算出部２４０は、ボールの現在位置の座標に対して、フレームを単位とした速度を加算し、次のフレームにおけるボールの位置の座標を算出する。ボールの速度には、フレームごとに、重力、揚力、風力、空気抵抗が加算される。重力については、物理法則に則って、下向きに、９．８メートル毎秒毎秒とする。揚力は、インパクト時のクラブヘッドの向きとスイング軌道から算出し、ボール速度の２乗に比例する値とする。風力は、ホールの全ての場所において一定方向に一定速度としてもよいし、場所に応じて変化させてもよい。空気抵抗は、進行方向と逆向きに、速度に比例する値とする。このように、風の方向及び速度を考慮してボールの弾道を算出することにより、現実のゴルフと同様に、風の影響を考慮しながらショットを行う難しさを演出することができ、よりリアリティのあるゴルフゲームを実現することができる。
【００６６】
画像生成部２４２は、ＨＭＤ情報取得部２１０で取得されたＨＭＤ１００の位置、および視線方向決定部２１２で決定された視線方向にもとづいて、ゲーム空間内に仮想カメラの位置および方向を配置し、ゲーム画像を生成する。
【００６７】
図８（ａ）は、ＨＭＤ１００の表示パネル１３０に表示されるゲーム画像の例を示す。ユーザは入力装置２０をスイングする前、ゴルフクラブ３０２のクラブヘッド３０４とボール３００との相対的な位置関係を確認するために、アドレス姿勢をとる。図８（ａ）は、ユーザがアドレス姿勢をとっているときに表示されるゲーム画像の例を示す。ユーザは地面に置かれたボール３００を見ながらゴルフクラブ３０２の位置を調整し、スイング中に経由するべきアドレス姿勢を確認する。
【００６８】
図８（ｂ）は、表示パネル１３０に表示されるインパクト直後のゲーム画像の例を示す。ユーザはアドレス姿勢から入力装置２０をバックスイングし、勢いをつけて前方にスイングする。図８（ｂ）には、クラブヘッド３０４がボール３００を捉えて、ボール３００が勢いよく打ち出された様子が示される。
【００６９】
図９は、表示パネル１３０に表示されるゲーム画像の例を示す。ユーザは入力装置２０をスイングすると、その勢いで、ボールを打ち出した方向に顔を向ける。そのため表示パネル１３０には、ボールがピンフラッグに向かって飛んでいく様子が表示される。以上のように画像生成部２４２は、視線方向に応じて、表示パネル１３０に表示するゲーム画像を生成する。このゲーム画像は、出力装置１５から表示されてもよい。
【００７０】
実施例のゲームシステム１でユーザは、数十センチ以下の長さの入力装置２０をゲームコントローラとして利用する。実空間内におけるユーザの身長と入力装置２０の長さの比は、ゲーム空間におけるプレイヤーキャラクタの身長とゴルフクラブの長さの比よりも大きい。ゲームシステム１では、実際のゴルフクラブに比して短い入力装置２０をゲームコントローラとして利用することで、狭い空間内でもユーザは入力装置２０を思いっきりスイングできる。特にユーザはＨＭＤ１００を装着して、外界を見ることができないため、短い入力装置２０を利用することで、ゴルフゲームを安全に楽しめる。
【００７１】
上記したように、ユーザは入力装置２０をスイングする前、クラブヘッド３０４とボール３００との相対的な位置関係を確認するために、アドレス姿勢をとる。このとき図８（ａ）に示すゲーム画像が表示パネル１３０に表示されるが、表示パネル１３０には、ボール３００を上から見た画像が表示されるため、ボール３００とクラブヘッド３０４の高さ方向の位置関係は分かりづらい。
【００７２】
実際のゴルフでは、ユーザは、クラブヘッドをボール後方側の地面に配置して、地面の位置を確認する。そこで実施例のゴルフゲームにおいては、ヘッド制御部２３４が、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したか否かを判定し、接触した場合には、駆動制御部２３８が、入力装置２０に設けられた刺激発生部５８を駆動して、入力装置２０を把持するユーザの手に刺激を与え、ゴルフクラブが地面に接触したことを知らせる。実施例で刺激発生部５８は、振動を発生する振動子を有し、駆動制御部２３８は、振動子を駆動する駆動信号を生成して、送信部２６０が入力装置２０に送信する。
【００７３】
ヘッド制御部２３４は、ゲーム空間を表現するワールド座標系におけるゴルフクラブ先端の高さ方向の位置と、地面の高さ方向の位置とを比較する。具体的にヘッド制御部２３４は、入力装置２０の姿勢情報および発光体２２の位置情報から、ワールド座標系におけるクラブヘッド３０４の下面の高さ方向の位置（Ｙ軸座標値）を算出し、地面の高さ方向の位置と比較する。ここでヘッド制御部２３４が、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低くなることを判定すると、駆動制御部２３８が、入力装置２０の刺激発生部５８を駆動する駆動信号を生成する。
【００７４】
ユーザが必要以上に発光体２２を下方に位置させたアドレス姿勢をとると、ヘッド制御部２３４は、ゴルフクラブの先端の高さ方向の位置が、地面の高さ方向の位置よりも低くなることを判定する。そのためユーザに地面位置を知らせるために、駆動制御部２３８は、刺激発生部５８を駆動する駆動信号を生成し、送信部２６０は、駆動信号を入力装置２０に送信する。入力装置２０において、無線通信モジュール４８がゲーム装置１０から駆動指示を受け取ると、メイン制御部５２に供給し、メイン制御部５２は、刺激発生部５８に駆動指示を供給する。これにより刺激発生部５８は刺激を発生し、ユーザは、刺激を与えられることで、クラブヘッドが地面に到達したことを認識する。
【００７５】
なお駆動制御部２３８は、ゴルフクラブ先端の高さ方向の位置と、地面の高さ方向の位置との差に応じて、発生する刺激の大きさを調整してもよい。つまり（地面の高さ方向の位置−ゴルフクラブ先端の高さ方向の位置）が大きくなるほど、駆動制御部２３８は、発生する刺激が大きくなるように駆動信号を生成してよい。これによりユーザは、刺激の大きさで、クラブヘッドが仮想地面に潜り込んでいる深さを認識でき、入力装置２０を持ち上げるべき量を推測できる。
【００７６】
このように実施例の制御部２３０は、ゴルフクラブが地面に接触したときに、入力装置２０に設けられた刺激発生部５８を駆動して、入力装置２０を把持するユーザの手に刺激を与える機能をもつ。これによりユーザは、直観的に入力装置２０を下げすぎたことを認識でき、正しいアドレス姿勢を確認できる。
【００７７】
なお入力受付部２１６がユーザによる入力装置２０の所定の入力部の操作入力を受け付けている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、駆動制御部２３８は、入力装置２０に設けられた刺激発生部５８を駆動してもよい。このようにユーザが、所定の入力部を押下している間に、地面の位置を確認できるようにしてもよい。
【００７８】
またユーザが下方向を向いている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、駆動制御部２３８は、入力装置２０に設けられた刺激発生部５８を駆動してもよい。ユーザが下方向を向いているか否かは、視線方向決定部２１２から供給される視線方向で判断されてよい。ヘッド制御部２３４が、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触することを判定したとき、駆動制御部２３８が、視線方向からユーザが下方向を向いていることを判定すると、刺激発生部５８を駆動する駆動信号を生成してよい。ユーザが地面を確認するときは、必ず下方向を向くため、逆に下方向を向いていなければ、ヘッド制御部２３４は、クラブと地面との接触判定を行わなくてもよい。
【００７９】
ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低いとき、画像生成部２４２は、ゴルフクラブが地面に接触していることを示す画像を生成してもよい。
図１０（ａ）は、表示パネル１３０に表示されるゲーム画像の一例を示す。この例では画像生成部２４２が、地面と操作ボタン３０との位置関係をそのまま描画しており、シャフト先端のクラブヘッド３０４が地面に埋まっている様子が表示されている。このように画像生成部２４２が位置関係をそのまま描画することで、ユーザに、入力装置２０を上げるべきことを知らせてよい。
【００８０】
図１０（ｂ）は、表示パネル１３０に表示されるゲーム画像の別の例を示す。この例では、画像生成部２４２が、現実のゴルフクラブの動きを模した画像を生成している。現実の世界では、接地したゴルフクラブを上から押しつけると、クラブヘッドが体から離れる方向に地面の上を滑って動く。画像生成部２４２は、この動きを表現する画像を生成して、ユーザに、入力装置２０を上げるべきことを知らせてよい。
【００８１】
なお画像生成部２４２は、ゲーム画像における矛盾をなくすために、（地面の高さ方向の位置−ゴルフクラブ先端の高さ方向の位置）に応じてシャフト長を短くして、クラブヘッド３０４が地面に潜らないように表示してもよい。この場合、画像生成部２４２は、地面の色を変えたり、周辺の色を変えたりすることで、クラブヘッド３０４の下面の高さ方向の位置が、地面の高さ方向の位置よりも下がったことをユーザに知らせてよい。
【００８２】
なおプレイ中、ユーザは、たとえばゴルフクラブを変更したり、プレイを一時中断したりなど、ゲームに対して指示をしたい場合がある。画像生成部２４２は、入力装置２０の簡易な操作で、様々な指示を選択できるメニュー画像を表示することが好ましい。
【００８３】
図１１は、ゲーム空間中に表示されるメニュー画像の一例を示す。ユーザは、入力装置２０を発光体２２が上側となるように持ち、発光体２２とユーザの顔位置とを所定距離内とすると、画像生成部２４２が、メニュー画像を表示する。画像生成部２４２は、入力装置２０の姿勢情報から入力装置２０が上向きになっていることを判定し、入力装置２０の位置情報とＨＭＤ１００の位置情報から入力装置２０とＨＭＤ１００が所定距離内にあることを判定すると、メニュー画像の表示指示を受け付ける。このようにユーザは簡易な操作でメニュー画像を呼び出すことができる。
【００８４】
以上、本発明を実施例をもとに説明した。この実施例は例示であり、その各構成要素や各処理プロセスの組合せにいろいろな変形が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００８５】
ゴルフゲームは、ユーザが入力装置２０を素振りできるモード（素振りモード）を設定できるようにしてもよい。素振りモードでは、ユーザが入力装置２０をスイングすると、クラブヘッドの軌跡を確認できるように、クラブヘッドの軌道上に複数のヘッドの画像が静止画像として表示される。たとえば入力受付部２１６がユーザによる入力装置２０の所定の入力部の操作入力を受け付けている間、処理部２２０は、入力装置２０の動きを示す操作入力を、素振りモードにおける操作入力として受け付けてよい。
【００８６】
実際のゴルフで素振りをする際、ユーザは、ヘッドがボールに当たらないようにボールに対して少し後ろに下がった位置で、ゴルフクラブをスイングする。変形例のゴルフゲームでは、ユーザは、ヘッドがボールに当たらないように後ろに下がる必要はなく、ヘッドがボールに当たる立ち位置でスイングしてよい。素振りモードで処理部２２０は、クラブヘッドの軌道算出、クラブヘッドとボールとの当たり判定、およびスイングスピードの算出等の処理を行うが、クラブヘッドの軌道上にボールが存在していても、ボールを前方に飛ばす処理を実施しない。
【００８７】
素振りモードにおいてもインパクト決定部２３６は、ヘッド制御部２３４から、クラブヘッドとボールとの相対的な位置関係を取得する。インパクト決定部２３６は、パラメータ保持部２５０に格納されたインパクトパラメータを参照して、クラブヘッドがボールを打撃するか判定する。弾道算出部２４０は、入力装置２０の姿勢センサ５６に含まれる３軸加速度センサのセンサデータから、ゴルフクラブのヘッドスピードを取得する。
【００８８】
図１２（ａ）は、素振りモードによる素振り後のゲーム画像の例を示す。素振りモードにおいてユーザが入力装置２０をスイングした後、画像生成部２４２は、ヘッド制御部２３４で算出されたクラブヘッド３０４の軌道と、弾道算出部２４０で取得されたヘッドスピードから、クラブヘッド３０４の軌道上に、複数のヘッド画像３０６ａ、３０６ｂ、３０６ｃ、３０６ｄ、３０６ｅを表示する。画像生成部２４２は、複数のヘッド画像３０６を、所定色（たとえば青色）で表示してよい。
【００８９】
ヘッド画像３０６ｃは、ボール３００近傍を通過したときのクラブヘッド３０４の画像を示す。矢印３２０は、ボール３００近傍を通過したときのクラブヘッド３０４の方向を示してよい。図１２（ａ）の例では、クラブヘッド３０４がボール３００を打撃する軌道でユーザが入力装置２０をスイングしたため、ヘッド画像３０６ｃが、ボール３００を打撃している様子を示している。なお上記したように、素振りモードでボール３００が飛ぶことはない。
【００９０】
画像生成部２４２は、ヘッド画像３０６ｃの時間的に前側の位置に、ヘッド画像３０６ａ、３０６ｂを表示し、時間的に後側の位置に、ヘッド画像３０６ｄ、３０６ｅを表示する。各ヘッド画像３０６の間隔は、ヘッドスピードに応じて定められてよい。たとえばヘッド画像３０６ａ〜３０６ｅは、ヘッド画像３０６ｃを基準として、所定の時間間隔（たとえば０．１秒間隔）ずつ離れたスイング軌道上の位置に表示されてよい。
【００９１】
画像生成部２４２は、ボール３００近傍のヘッド画像３０６ｃの時間的前後の位置に、複数のヘッド画像３０６を表示することが好ましい。この例で画像生成部２４２は、ヘッド画像３０６ｃの前後に２枚ずつのヘッド画像３０６を表示している。これによりユーザは、クラブヘッド３０４の軌道を複数枚の静止画像により確認できる。
【００９２】
図１２（ｂ）は、素振りモードによる素振り後のゲーム画像の別の例を示す。素振りモードにおいてユーザが入力装置２０をスイングした後、画像生成部２４２は、ヘッド制御部２３４で算出されたクラブヘッド３０４の軌道と、弾道算出部２４０で取得されたヘッドスピードから、クラブヘッド３０４の軌道上に、複数のヘッド画像３０８ａ、３０８ｂ、３０８ｃ、３０８ｄ、３０８ｅを表示する。
【００９３】
ヘッド画像３０８ｃは、ボール３００近傍を通過したときのヘッド位置を示し、この例では、素振り時のゴルフクラブ３０２がボール３００を打撃する位置を通過したことを示している。図１２（ａ）と同様に、画像生成部２４２は、ヘッド画像３０８ｃの時間的に前側の位置に、ヘッド画像３０８ａ、３０８ｂを表示し、時間的に後側の位置に、ヘッド画像３０８ｄ、３０８ｅを表示する。ヘッド画像３０８ａ〜３０８ｅは、ヘッド画像３０８ｃを基準として、所定の時間間隔（たとえば０．１秒間隔）ずつ離れたスイング軌道上の位置に表示されてよい。
【００９４】
図１２（ａ）と図１２（ｂ）とを比較すると、ヘッド画像３０６の間隔の方が、ヘッド画像３０８の間隔よりも広いことが分かる。ヘッド画像３０６の間隔が広いことは、ヘッドスピードが速いことを表現し、ヘッド画像３０８の間隔が狭いことは、ヘッドスピードが遅いことを表現する。ヘッドスピードは、ボール３００の飛ぶ距離を定める要素であるため、ユーザは、素振りモードで入力装置２０を素振りを行うことで、スイングスピードを確認できる。なお画像生成部２４２は、通常のゲームモード中、スイング後にヘッド画像を表示しないが、ユーザが希望すれば表示できるようにしてもよい。
【００９５】
図１３（ａ）は、素振りモードによる素振り後のゲーム画像の別の例を示す。この素振りモードでは、ユーザはパターを選択しており、画像生成部２４２は、パターのクラブヘッド３０４を模した複数のヘッド画像３１０ａ〜３１０ｅを、クラブヘッド３０４の軌道上に表示する。たとえばユーザがアイアンを選択すると、画像生成部２４２は、アイアンのヘッド画像を表示する。このように画像生成部２４２は、プレイヤキャラクタが使用するクラブに合わせて、ヘッド画像を表示することが好ましい。
【００９６】
図１３（ｂ）は、素振りモードによる素振り後のゲーム画像の別の例を示す。この例では、ユーザが入力装置２０をスイングしたとき、クラブヘッド３０４の軌道上にボール３００が存在しておらず、空振りしている。画像生成部２４２は、ヘッド制御部２３４で算出されたクラブヘッド３０４の軌道と、弾道算出部２４０で取得されたヘッドスピードから、クラブヘッド３０４の軌道上に、複数のヘッド画像３１２ａ、３１２ｂ、３１２ｃ、３１２ｄ、３１２ｅを表示する。画像生成部２４２は、複数のヘッド画像３１２を、クラブヘッド３０４がボール３００を打撃したときとは異なる色（たとえば赤い色）で表示してよい。
【００９７】
ヘッド画像３１２ｃは、ボール３００近傍を通過したときのクラブヘッド３０４の画像を示し、矢印３２０は、ボール３００近傍を通過したときのクラブヘッド３０４の方向を示す。なお図１３（ｂ）に示す例では、クラブヘッド３０４がボール３００に当たっていないため、矢印３２０の表示は省略されてもよい。
【００９８】
画像生成部２４２は、ヘッド画像３１２ｃの時間的に前側の位置に、ヘッド画像３１２ａ、３１２ｂを配置し、時間的に後側の位置に、ヘッド画像３１２ｄ、３１２ｅを配置する。ヘッド画像３１２ａ〜３１２ｅは、ヘッド画像３１２ｃを基準として、所定の時間間隔（たとえば０．１秒間隔）ずつ離れたスイング軌道上の位置に表示されてよい。
【００９９】
ユーザは、複数のヘッド画像３１２による軌跡を見ることで、クラブヘッド３０４がボール３００に当たらなかったことを確認する。このように素振りモードは、ユーザの練習モードとして利用され、ユーザは、クラブヘッド３０４がうまくボール３００に当たるスイングを研究する。またヘッド画像３１２の色を、クラブヘッド３０４がボール３００に当たったときの色と異ならせることで、ユーザは、ミスショットであることをすぐに認識できる。
【０１００】
図１４は、素振りモードによる素振り後のゲーム画像の別の例を示す。図１４は、クラブヘッド３０４が地面にもぐり込んだ（ダフった）スイングが行われたときの表示例を示している。クラブヘッド３０４が地面にもぐり込んだとき、画像生成部２４２は、図１０（ａ）で示したように、ヘッド画像３１４の表示を消してよい。この例では、ヘッド画像３１４ｃの先の軌道で、クラブヘッド３０４が地面にもぐり込み、表示されなくなった様子が示される。このように素振りモードでは、ユーザがヘッド画像を見て、自分のスイングを確認できる。
【０１０１】
ゲームシステム１において、ユーザはＨＭＤ１００を装着しているため、実空間における撮像装置１４がどこにあるか確認することは難しく、そのため撮像装置１４に対して背を向ける状況も想定される。一方でゲーム装置１０は、ＨＭＤ１００の撮影画像を用いて、ＨＭＤ１００の姿勢情報を取得するため、ＨＭＤ１００の発光マーカ１１０は良好に撮影される必要がある。そこで画像生成部２４２は、ゲーム空間内に、ユーザが向くべき方向（つまり撮像装置１４が存在する方向）を示す印を表示してもよい。なおこの印は、ＨＭＤ１００が撮像装置１４に正対しているときには表示せず、撮像装置１４との正対方向に対してＨＭＤ１００が所定角度を超える向きとなったときに、表示してもよい。
【０１０２】
近年、エレクトロニックスポーツ（ｅスポーツ）のライブ中継が世界中に配信される機会が増えている。ウェブサイト上のストリーミング配信が一般的であるが、テレビ放送も行われている。実施例では図１にゲームシステム１の構成を示したが、処理装置１１が生成したゲーム画像がｅスポーツ用にストリーミング配信される場合、複数のユーザ用に複数の処理装置１１が用意されて、各処理装置１１からのゲーム画像がスイッチャによって選択されて、ＡＰ１７を介してネットワーク２上に配信されてよい。
【符号の説明】
【０１０３】
１・・・ゲームシステム、１０・・・ゲーム装置、１４・・・撮像装置、１５・・・出力装置、２０・・・入力装置、２２・・・発光体、１００・・・ＨＭＤ、１３０・・・表示パネル、２００・・・受信部、２１０・・・ＨＭＤ情報取得部、２１２・・・視線方向決定部、２１４・・・入力装置情報取得部、２１６・・・入力受付部、２２０・・・処理部、２３０・・・制御部、２３２・・・初期設定部、２３４・・・ヘッド制御部、２３６・・・インパクト決定部、２３８・・・駆動制御部、２４０・・・弾道算出部、２４２・・・画像生成部、２５０・・・パラメータ保持部、２５２・・・ゲームデータ保持部、２６０・・・送信部。
【産業上の利用可能性】
【０１０４】
本発明は、ゴルフゲームに利用できる。
【図１】
2020026458.tif 000003
【図２】
2020026458.tif 000004
【図３】
2020026458.tif 000005
【図４】
2020026458.tif 000006
【図５】
2020026458.tif 000007
【図６】
2020026458.tif 000008
【図７】
2020026458.tif 000009
【図８】
2020026458.tif 000010
【図９】
2020026458.tif 000011
【図１０】
2020026458.tif 000012
【図１１】
2020026458.tif 000013
【図１２】
2020026458.tif 000014
【図１３】
2020026458.tif 000015
【図１４】
2020026458.tif 000016
【手続補正書】
【提出日】令和2年8月17日(2020.8.17)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける入力受付部と、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する制御部と、
ゲーム画像を生成する画像生成部と、を備えたゲーム装置であって、
前記制御部は、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与え、
ゲーム空間において、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低いとき、前記画像生成部は、ゴルフクラブが地面に接触していることを示す画像を生成する、
ことを特徴とするゲーム装置。
【請求項２】
前記刺激発生部は、振動を発生する振動子である、
ことを特徴とする請求項１に記載のゲーム装置。
【請求項３】
前記制御部は、ゲーム空間において、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低くなると、刺激発生部を駆動する、
ことを特徴とする請求項１または２に記載のゲーム装置。
【請求項４】
前記制御部は、ゴルフクラブ先端の高さ方向の位置と、地面の高さ方向の位置との差に応じて、発生する刺激の大きさを調整する、
ことを特徴とする請求項３に記載のゲーム装置。
【請求項５】
入力装置は、棒状の筐体部分を有し、
実空間内におけるユーザの身長と入力装置の長さの比は、ゲーム空間におけるプレイヤーキャラクタの身長とゴルフクラブの長さの比よりも大きい、
ことを特徴とする請求項１から４のいずれかに記載のゲーム装置。
【請求項６】
前記入力受付部がユーザによる入力装置の所定の入力部の操作入力を受け付けている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、前記制御部は、入力装置に設けられた刺激発生部を駆動する、
ことを特徴とする請求項１から５のいずれかに記載のゲーム装置。
【請求項７】
ユーザが下方向を向いている間に、プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触すると、前記制御部は、入力装置に設けられた刺激発生部を駆動する、
ことを特徴とする請求項１から６のいずれかに記載のゲーム装置。
【請求項８】
ゲーム画像は、ヘッドマウントディスプレイに出力される、
ことを特徴とする請求項１から７のいずれかに記載のゲーム装置。
【請求項９】
ユーザの手に把持される入力装置の動きを示す操作入力を受け付けるステップと、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御するステップと、
プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与えるステップと、
ゲーム空間において、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低いときに、ゴルフクラブが地面に接触していることを示す画像を生成するステップと、
を有することを特徴とするゴルフゲームの制御方法。
【請求項１０】
コンピュータに、
ユーザの手に把持される入力装置の動きを示す操作入力を受け付ける機能と、
ゲーム空間内で、プレイヤーキャラクタの動きを、操作入力に応じて制御する機能と、
プレイヤーキャラクタが持つゴルフクラブがゲーム空間における地面に接触したときに、入力装置に設けられた刺激発生部を駆動して、入力装置を把持するユーザの手に刺激を与える機能と、
ゲーム空間において、ゴルフクラブ先端の高さ方向の位置が、地面の高さ方向の位置よりも低いときに、ゴルフクラブが地面に接触していることを示す画像を生成する機能と、
を実現させるためのプログラム。
【国際調査報告】
2020026458.tif 000017
2020026458.tif 000018
2020026458.tif 000019
2020026458.tif 000020