説明

プログラム、情報記憶媒体、ゲーム装置及びサーバシステム

【課題】送り先ターゲットに移動体を移動させる場面の画像を適切な視点で生成できるプログラム、情報記憶媒体、ゲーム装置及びサーバシステム等の提供。
【解決手段】ゲーム装置は、操作情報取得部と仮想カメラ制御部と移動体演算部と画像生成部とを含む。操作情報取得部は、モーションセンサからのモーション検出情報を操作情報として取得し、仮想カメラ制御部は、モーション検出情報に基づいて、仮想カメラの視線方向を、移動体の送り先ターゲット側に向ける制御を行う。移動体演算部は、仮想カメラの視線方向が向けられることで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体、ゲーム装置及びサーバシステム等に関する。
【背景技術】
【0002】
従来より、球技ゲームを仮想的にプレイすることができるゲーム装置が知られている。野球ゲームを例にとれば、守備側のプレーヤ(又はコンピュータ)が投手キャラクタを操作して、ボールを投げる。そして攻撃側のプレーヤ(又はコンピュータ)が打者キャラクタを操作して、投げられたボールを打ち、守備側のプレーヤが野手キャラクタを操作して、打たれたボールを捕球することで、野球ゲームを楽しむ。このような野球ゲームの従来技術としては例えば特許文献1に開示される技術がある。
【0003】
しかしながら、例えば野球ゲームでは、特にプレーヤが守備側である場合に、守備キャラクタの視点ではなく、バックネット付近やホームベース付近に設定された視点での画像が生成されるゲームが殆どであった。このため、打者が打ったボールを捕球して、一塁に投げてアウトにするというような場面を、野手側の視点から見た画像で表現することができなかった。このため、現実の野球をプレイしているような仮想現実感を、プレーヤに与えることが難しかった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2001−137554号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
本発明の幾つかの態様によれば、送り先ターゲットに移動体を移動させる場面の画像を適切な視点で生成できるプログラム、情報記憶媒体、ゲーム装置及びサーバシステム等を提供できる。
【課題を解決するための手段】
【0006】
本発明の一態様は、プレーヤの操作情報を取得する操作情報取得部と、取得された前記操作情報に基づいて、仮想カメラの制御を行う仮想カメラ制御部と、移動体の移動演算処理を行う移動体演算部と、オブジェクト空間内において前記仮想カメラから見える画像を生成する画像生成部を含み、前記操作情報取得部は、モーションセンサからのモーション検出情報を前記操作情報として取得し、前記仮想カメラ制御部は、前記モーション検出情報に基づいて、前記仮想カメラの視線方向を、前記移動体の送り先ターゲット側に向ける制御を行い、前記移動体演算部は、前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うゲーム装置に関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【0007】
本発明の一態様によれば、モーションセンサからのモーション検出情報が操作情報として取得される。そして、このモーション検出情報に基づいて、仮想カメラの視線方向を移動体の送り先ターゲット側に向ける制御が行われ、これにより仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる移動処理が行われる。従って、送り先ターゲットに移動体を移動させる場面の画像を、適切な視点で生成することが可能になり、モーションセンサで検出されたモーションに連動した視点の画像の生成が可能になる。
【0008】
また本発明の一態様では、前記モーションセンサは、携帯型ゲーム装置又はゲームコントローラに設けられるセンサであり、前記操作情報取得部は、前記プレーヤが前記携帯型ゲーム装置又は前記ゲームコントローラを動かすことで得られた前記モーション検出情報を、前記モーションセンサから取得し、前記仮想カメラ制御部は、前記携帯型ゲーム装置又は前記ゲームコントローラが動かされた方向側に、前記仮想カメラの視線方向を変化させる制御を行い、前記移動体演算部は、前記携帯型ゲーム装置又は前記ゲームコントローラが動かされた方向側に前記仮想カメラの視線方向が変化することで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行ってもよい。
【0009】
このようにすれば、プレーヤが携帯型ゲーム装置又はゲームコントローラを動かすと、その動かされた方向側に、仮想カメラの視線方向が変化し、これにより仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる移動処理が行われる。従って、プレーヤが携帯型ゲーム装置又はゲームコントローラを動かすことで、その動きに連動した視点の画像を生成できるようになる。
【0010】
また本発明の一態様では、水平方向に沿った軸をX軸とし、鉛直方向に沿った軸をY軸とした場合に、前記仮想カメラ制御部は、前記携帯型ゲーム装置又は前記ゲームコントローラを前記Y軸回りで回転させる操作が行われた場合に、前記仮想カメラの視線方向を、前記Y軸に対応するカメラ座標系のYC軸回りで回転させる制御を行い、前記移動体演算部は、前記仮想カメラの視線方向が前記YC軸回りで回転することで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行ってもよい。
【0011】
このようにすれば、プレーヤが、携帯型ゲーム装置又はゲームコントローラを、鉛直方向に沿ったY軸回りで回転させる操作が行われると、仮想カメラの視線方向がYC軸回りで回転し、これにより仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理が行われる。従って、プレーヤが携帯型ゲーム装置又はゲームコントローラをY軸回りで回転させることで、その回転の動きに連動した視点の画像を生成できるようになる。
【0012】
また本発明の一態様では、前記移動体のキャッチに成功したか否かを判定する判定部を含み(判定部としてコンピュータを機能させ)、前記仮想カメラ制御部は、前記携帯型ゲーム装置又は前記ゲームコントローラを前記X軸回りで回転させる操作が行われた場合に、前記仮想カメラの視線方向を、前記X軸に対応するカメラ座標系のXC軸回りで回転させる制御を行い、前記判定部は、前記XC軸回りで視線方向が回転する前記仮想カメラにより前記移動体が捕捉される捕捉条件が満たされており、前記移動体のキャッチ条件が満たされた場合に、前記移動体のキャッチに成功したと判定し、前記移動体演算部は、前記移動体のキャッチに成功したと判定され、所与の送り条件が満たされた場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行ってもよい。
【0013】
このようにすれば、プレーヤが携帯型ゲーム装置又はゲームコントローラをX軸回りで回転させると、それに応じて仮想カメラの視線方向がXC軸回りで回転し、仮想カメラにより移動体が捕捉される捕捉条件が満たされたかどうかが判断される。そして、捕捉条件が満たされて、キャッチ条件が満たされると、移動体のキャッチに成功したと判断され、更に所与の送り条件が満たされると、キャッチされた移動体を送り先ターゲットに移動させる移動処理が行われる。従って、実際に移動体を目で追ってキャッチするというような操作感覚をプレーヤに与えることが可能になり、仮想現実感の高いキャッチ操作等を実現することが可能になる。
【0014】
また本発明の一態様では、前記携帯型ゲーム装置又は前記ゲームコントローラの前記Y軸回りでの回転角度の変化量ΔθYに対する、前記仮想カメラの視線方向の前記YC軸回りでの回転角度の変化量ΔθYCを調整する調整部を含んでもよい(調整部としてコンピュータを機能させてもよい)。
【0015】
このようにすれば、携帯型ゲーム装置又はゲームコントローラの回転角度の変化量と仮想カメラの視線方向の回転角度の変化量の対応関係を調整できるようになり、プレーヤのゲーム操作性等の向上を図れる。
【0016】
また本発明の一態様では、前記調整部は、前記変化量ΔθYに対する前記変化量ΔθYCの調整処理を、プレーヤの操作情報又はゲーム状況に基づいて行ってもよい。
【0017】
このようにすれば、携帯型ゲーム装置又はゲームコントローラの回転角度の変化量と仮想カメラの視線方向の回転角度の変化量の対応関係を、プレーヤの操作情報やゲーム状況に応じて調整できるようになり、プレーヤのゲーム操作性等の向上を図れる。
【0018】
また本発明の一態様では、前記移動体演算部は、前記移動体のキャッチに成功したと判定され、所与の送り条件が満たされた場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行ってもよい。
【0019】
このようにすれば、移動体のキャッチに成功した後、所与の送り条件が満たされると、そのキャッチされた移動体が送り先ターゲットに移動するようになり、キャッチに成功した移動体を送り先ターゲットに対して適正に移動させることが可能になる。
【0020】
また本発明の一態様では、前記移動体演算部は、前記移動体のキャッチに成功したと判定され、プレーヤが送り指示操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行ってもよい。
【0021】
このようにすれば、移動体のキャッチに成功した後、プレーヤの送り指示操作をトリガーとして、キャッチされた移動体を送り先ターゲットに移動させることが可能になる。
【0022】
また本発明の一態様では、前記移動体演算部は、前記移動体のキャッチに成功したと判定され、プレーヤが前記仮想カメラの視線方向を前記送り先ターゲット側に向ける操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行ってもよい。
【0023】
このようにすれば、移動体のキャッチに成功した後、仮想カメラの視線方向を送り先ターゲット側に向ける操作をトリガーとして、キャッチされた移動体を送り先ターゲットに移動させることが可能になる。
【0024】
また本発明の一態様では、移動体演算部は、前記移動体のキャッチに成功したと判定され、プレーヤが前記仮想カメラの視線方向を前記送り先ターゲット側に向ける操作を行い、前記プレーヤが操作部を用いて送り指示操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行ってもよい。
【0025】
このようにすれば、移動体のキャッチに成功した後、プレーヤが、仮想カメラの視線方向を送り先ターゲット側に向ける操作を行い、その後に操作部を用いて送り指示操作を行うと、キャッチされた移動体が送り先ターゲットに移動するようになる。
【0026】
また本発明の一態様では、前記移動体演算部は、前記移動体を第1の送り先ターゲットに移動させる処理を行い、前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を第2の送り先ターゲットに移動させる処理を行ってもよい。
【0027】
このようにすれば、第1の送り先ターゲットに移動させた移動体を、更に第2の送り先ターゲットに移動させることが可能になり、多様なゲーム画像の生成が可能になる。
【0028】
また本発明の一態様では、前記移動体演算部は、前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を、ゲーム状況に基づき選択された前記第2の送り先ターゲットに移動させる処理を行ってもよい。
【0029】
このようにすれば、第1の送り先ターゲットに到達した移動体を、ゲーム状況に応じた第2の送り先ターゲットに移動させることが可能になり、ゲーム状況を反映させた移動体の移動処理を実現できる。
【0030】
また本発明の一態様では、前記移動体演算部は、前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を、プレーヤの指示操作により指示された前記第2の送り先ターゲットに移動させる処理を行ってもよい。
【0031】
このようにすれば、第1の送り先ターゲットに到達した移動体を、プレーヤの操作により指示された第2の送り先ターゲットに移動させることが可能になり、プレーヤの操作指示を反映させた移動体の移動処理を実現できる。
【0032】
また本発明の一態様では、前記仮想カメラ制御部は、前記移動体が前記第1の送り先ターゲットに移動した場合に、前記仮想カメラの視点位置を、前記第1の送り先ターゲットに対応する位置に設定し、前記仮想カメラの視線方向を、前記第2の送り先ターゲット側に向ける制御を行い、前記移動体演算部は、前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記第2の送り先ターゲットに対して、前記移動体を移動させる処理を行ってもよい。
【0033】
このようにすれば、移動体が第1の送り先ターゲットに移動すると、仮想カメラの視点位置や視線方向が切り替わるようになり、よりリアルな画像等の生成が可能になる。
【0034】
また本発明の一態様では、前記仮想カメラ制御部は、前記移動体が前記第1の送り先ターゲットに到達するまで、前記仮想カメラの視線方向を、前記移動体の送り元側に向ける制御を行ってもよい。
【0035】
このようにすれば、移動体が第1の送り先ターゲットに到達するまでの間は、移動体の送り元側が映るような画像が生成されるようになり、よりリアルな画像等の生成が可能になる。
【0036】
また本発明の一態様では、前記仮想カメラ制御部は、所与の基準方向を基準として、前記モーション検出情報に基づき前記仮想カメラの視線方向を前記移動体の送り先ターゲット側に向ける制御を行ってもよい。
【0037】
このようにすれば、基準方向を基準として、仮想カメラの視線方向をモーション検出情報に基づき変化させて、送り先ターゲット側に向けることが可能になる。
【0038】
また本発明の一態様では、前記仮想カメラ制御部は、前記仮想カメラの視点位置からゲームフィールド上の所定位置へと向かう方向を、前記基準方向に設定してもよい。
【0039】
このようにすれば、ゲームフィールド上の所定位置へと向かう方向を、基準方向に設定して、仮想カメラの視線方向をモーション検出情報に基づき変化させることが可能になる。
【0040】
また本発明の一態様では、前記仮想カメラ制御部は、複数の候補基準方向の中から選択された方向を、前記基準方向に設定してもよい。
【0041】
このようにすれば、複数の候補基準方向の中から、例えばプレーヤが所望する方向を基準方向として設定して、仮想カメラの視線方向をモーション検出情報に基づき変化させることが可能になる。
【0042】
また本発明の一態様では、前記仮想カメラ制御部は、プレーヤが基準方向の設定の操作を行ったときの前記仮想カメラの視線方向を、前記基準方向に設定してもよい。
【0043】
このようにすれば、プレーヤの基準方向の設定操作により基準方向を設定することが可能になり、プレーヤのゲーム操作性等を向上できる。
【0044】
また本発明の一態様では、前記移動体演算部は、プレーヤの操作情報に基づいてプレーヤキャラクタを移動させる処理を行い、前記仮想カメラ制御部は、前記プレーヤキャラクタの移動方向に対応する方向を、前記基準方向に設定してもよい。
【0045】
このようにすれば、プレーヤキャラクタが移動している方向が基準方向に設定されるようになり、例えば移動方向から振り向くような動きが行われると、それを検出して、仮想カメラの視線方向を変化させることなどが可能になる。
【0046】
また本発明の他の態様は、プレーヤの操作情報を取得する操作情報取得部と、取得された前記操作情報に基づいて、仮想カメラの制御を行う仮想カメラ制御部と、移動体の移動演算処理を行う移動体演算部と、オブジェクト空間内において前記仮想カメラから見える画像を生成するための画像生成用データを生成する画像生成用データ生成部とを含み、前記操作情報取得部は、モーションセンサからのモーション検出情報を前記操作情報として取得し、前記仮想カメラ制御部は、前記モーション検出情報に基づいて、前記仮想カメラの視線方向を、前記移動体の送り先ターゲット側に向ける制御を行い、前記移動体演算部は、前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うサーバシステムに関係する。
【図面の簡単な説明】
【0047】
【図1】本実施形態のゲーム装置の構成例。
【図2】図2(A)、図2(B)は本実施形態が適用される携帯型ゲーム装置の構成例。
【図3】図3(A)〜図3(C)はモーションセンサを用いた仮想カメラの視線方向の制御手法の説明図。
【図4】図4(A)、図4(B)は本実施形態の手法の説明図。
【図5】図5(A)、図5(B)も本実施形態の手法の説明図。
【図6】図6(A)、図6(B)はボールの捕球処理の説明図。
【図7】図7(A)、図7(B)もボールの捕球処理の説明図。
【図8】図8(A)、図8(B)は内野ゴロ時に本実施形態により生成される画像の例。
【図9】内野ゴロの捕球後の送球時に本実施形態により生成される画像の例。
【図10】図10(A)、図10(B)は外野フライ時に本実施形態により生成される画像の例。
【図11】図11(A)〜図11(C)は野球ゲーム以外の球技ゲームへの本実施形態の手法の適用例。
【図12】図12(A)、図12(B)は仮想カメラの視線方向の回転角度の調整手法の説明図。
【図13】図13(A)、図13(B)も仮想カメラの視線方向の回転角度の調整手法の説明図。
【図14】図14(A)、図14(B)は第1の送り先ターゲットから第2の送り先ターゲットに移動体を移動させる手法の説明図。
【図15】図15(A)、図15(B)も第1の送り先ターゲットから第2の送り先ターゲットに移動体を移動させる手法の説明図。
【図16】プレーヤの指示操作により第2の送り先ターゲットを選択する手法の説明図。
【図17】図17(A)、図17(B)は基準方向を基準として送り先ターゲットに移動体を移動させる手法の説明図。
【図18】図18(A)、図18(B)は複数の候補基準方向の中から選択された方向を基準方向に設定する手法の説明図。
【図19】図19(A)、図19(B)はプレーヤの基準方向の設定操作により基準方向を設定する手法の説明図。
【図20】図20(A)、図20(B)はプレーヤキャラクタの移動方向に対応する方向を基準方向に設定する手法の説明図。
【図21】図21(A)〜図21(C)はヒットボリュームを用いた第1の判定手法の説明図。
【図22】図22(A)、図22(B)もヒットボリュームを用いた第1の判定手法の説明図。
【図23】図23(A)、図23(B)はヒットボリュームの設定手法の変形例の説明図。
【図24】図24(A)〜図24(C)は仮想カメラの視野範囲に対応して設定された補足判定範囲を用いた第2の判定手法の説明図。
【図25】図25(A)〜図25(C)は仮想カメラの視点位置の移動の制御手法の説明図。
【図26】本実施形態の詳細な処理を説明するフローチャート。
【図27】本実施形態の詳細な処理を説明するフローチャート。
【図28】本実施形態の詳細な処理を説明するフローチャート。
【図29】本実施形態のサーバシステムの構成例。
【発明を実施するための形態】
【0048】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0049】
1.構成
図1に本実施形態のゲーム装置(画像生成システム、ゲームシステム)のブロック図の例を示す。なお、本実施形態のゲーム装置の構成は図1に限定されず、その構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【0050】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、方向指示キー、操作ボタン、アナログスティック、レバー、各種センサ(角速度センサ、加速度センサ等)、マイク、或いはタッチパネル型ディスプレイなどにより実現できる。
【0051】
操作部160のモーションセンサは、ゲームコントローラや携帯型ゲーム装置などの機器の動きを検出するものであり、このような機器の動きを検出することでプレーヤの操作モーションなどを検出できる。このモーションセンサは、例えば加速度センサ、角速度センサ(ジャイロセンサ)や、カメラの画像センサなどの種々のセンサにより実現できる。加速度センサは直交3軸方向の各加速度情報を検出する。具体的には互いに直交する座標軸をX軸、Y軸、Z軸とした場合に、X軸方向に沿った第1の加速度情報、Y軸方向に沿った第2の加速度情報、Z軸方向に沿った第3の加速度情報を検出して、センサ検出情報として出力する。この加速度センサは、例えばMEMS構造のピエゾ抵抗型や静電容量型のセンサなどにより実現できる。また角速度センサは、所定の回転軸回りの角速度情報を検出するセンサである。具体的に角速度センサは、直交3軸での角速度情報を検出するセンサであり、X軸、Y軸、Z軸回りでの角速度情報を検出する。例えばX軸回りの回転角度をα、Y軸回りの回転角度をβ、Z軸回りの回転角度をγとすると、これらのα、β、γについての角速度を検出して、センサ検出情報として出力する。この角速度センサは例えばMEMS構造の多軸角速度センシングジャイロスコープなどにより実現できる。モーションセンサとして画像センサ(CCD、CMOSセンサ等)を用いた場合には、画像センサにより撮像された撮像画像の画素の動き情報などにより、ゲームコントローラや携帯型ゲーム装置などの機器の動きを検出すればよい。
【0052】
なおモーションセンサは、ゲーム装置に内蔵されるものであってもよいし、ゲーム装置のオプションの外付け部品として用意されるものであってもよい。
【0053】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(DRAM、VRAM)などにより実現できる。そしてゲームプログラムや、ゲームプログラムの実行に必要なゲームデータは、この記憶部170に保持される。
【0054】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(DVD、CD等)、HDD(ハードディスクドライブ)、或いはメモリ(ROM等)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0055】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、LCD、有機ELディスプレイ、CRT、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0056】
補助記憶装置194(補助メモリ、2次メモリ)は、記憶部170の容量を補うために使用される記憶装置であり、SDメモリーカード、マルチメディアカードなどのメモリーカードなどにより実現できる。
【0057】
通信部196は、有線や無線のネットワークを介して外部(例えば他のゲーム装置、サーバ、ホスト装置)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
【0058】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170、補助記憶装置194)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0059】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などを行う。処理部100は記憶部170をワーク領域として各種処理を行う。この処理部100の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0060】
処理部100は、操作情報取得部102、ゲーム演算部104、オブジェクト空間設定部106、仮想カメラ制御部108、調整部109、移動体演算部110、判定部112、難易度設定部114、画像生成部120、音生成部130を含む。なおこれらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【0061】
操作情報取得部102は、プレーヤの操作情報を取得する。例えばプレーヤが操作部160を用いて各種操作を行うと、その操作情報を取得する。またプレーヤが、操作部であるゲームコントローラを動かすと、ゲームコントローラに内蔵されたモーションセンサからのモーション検出情報を、操作情報として取得する。或いは、携帯型ゲーム装置にモーションセンサが内蔵されている場合には、プレーヤが携帯型ゲーム装置を動かすと、携帯型ゲーム装置に内蔵されたモーションセンサが、その動きを検出する。そして操作情報取得部102は、モーションセンサからのモーション検出情報を、操作情報として取得する。取得された操作情報は記憶部170に一時的に保存される。
【0062】
ゲーム演算部104はゲーム演算処理を行う。ここでゲーム演算としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
【0063】
オブジェクト空間設定部106は、複数のオブジェクトが配置されるオブジェクト空間の設定処理を行う。例えば、キャラクタ(人、動物、ロボット、車、船舶、飛行機等)、ボール、マップ(地形)、建物、コース(道路)、樹木、壁などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のオブジェクトデータ記憶部172には、オブジェクト(パーツオブジェクト)の位置、回転角度、移動速度、移動方向等のデータであるオブジェクトデータがオブジェクト番号に対応づけて記憶される。オブジェクト空間設定部106は、例えば各フレーム毎にこのオブジェクトデータを更新する処理などを行う。
【0064】
仮想カメラ制御部108は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点、基準仮想カメラ)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
【0065】
調整部109は、携帯型ゲーム装置又はゲームコントローラの回転角度の変化量に対する仮想カメラの視線方向の回転角度の変化量の調整処理を行う。調整部109の詳細は後述する。
【0066】
移動体演算部110は、キャラクタやボール等の移動体を移動させるための演算を行う。また移動体(移動体オブジェクト)を動作させるための演算も行う。即ち操作部160によりプレーヤが入力した操作情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、移動体(オブジェクト、モデルオブジェクト)をオブジェクト空間内で移動させたり、移動体を動作(モーション、アニメーション)させる処理を行う。具体的には、移動体の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
【0067】
判定部112は、各種の判定処理を行う。例えばボールの捕捉条件が満たされたかどうかを判定する処理や、ボールの捕球が成功したかを判定する処理などを行う。判定部112の詳細は後述する。
【0068】
難易度設定部114は、ゲームの難易度(ハンディ)の設定処理を行う。例えば初級レベル、中級レベル、上級レベルなどの難易度を設定する。難易度の設定は、オプション画面などを用いてプレーヤが入力した情報に基づいて行ってもよいし、得点やゲーム場面などのゲーム状況等に応じてコンピュータが自動的に設定してもよい。
【0069】
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理、シミュレーション処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。具体的には、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、或いは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を、描画バッファ178(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画する。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、描画処理は頂点シェーダ処理やピクセルシェーダ処理等により実現することができる。
【0070】
なお、画像生成部120が、いわゆる立体視用の画像を生成するようにしてもよい。この場合には、基準となる仮想カメラの位置とカメラ間距離を用いて、左眼用仮想カメラ(第1の視点用仮想カメラ)と右眼用仮想カメラ(第2の視点用仮想カメラ)を配置設定する。そして画像生成部120が、オブジェクト空間内において左眼用仮想カメラから見える左眼用画像(第1視点画像)と、オブジェクト空間内において右眼用仮想カメラから見える右眼用画像(第2視点画像)を生成する。そしてこれらの左眼用画像、右眼用画像を用いて、眼分離眼鏡方式や、レンチキュラなどを用いた裸眼方式などにより、立体視を実現すればよい。
【0071】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
【0072】
そして本実施形態では、操作情報取得部102がプレーヤの操作情報を取得する。具体的にはモーションセンサからのモーション検出情報(加速度情報、角速度情報、画像情報等)を操作情報として取得する。またプレーヤが操作部160を操作することで得られる操作情報を取得する。
【0073】
そして仮想カメラ制御部108は、取得された操作情報に基づいて、仮想カメラの制御を行う。例えば仮想カメラの視線方向や視点位置の制御を行う。具体的には、モーションセンサからのモーション検出情報に基づいて、仮想カメラ(プレーヤキャラクタ)の視線方向を、移動体の送り先ターゲット側に向ける制御を行う。或いは、仮想カメラ制御部108は、プレーヤの操作情報にしたがって、仮想カメラの視線方向を変化させたり、仮想カメラの視点位置を移動させる制御を行う。この操作情報に基づく仮想カメラの視線方向や視点位置の制御は、操作情報にしたがってプレーヤキャラクタを移動させ、そのプレーヤキャラクタの移動等にしたがって仮想カメラの視線方向や視点位置を制御する場合を含む。
【0074】
なおプレーヤキャラクタは、その全部又は一部の部位がゲーム画像に実際に表示されるキャラクタであってもよいし、ゲーム画像に表示されない仮想的なキャラクタであってもよい。
【0075】
移動体演算部110は、プレイ対象であるボールの移動演算処理を行う。例えば仮想カメラの視線方向が向けられることで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理を行う。また移動体演算部110は、例えばボールが、バットやキャラクタの部位などの被ヒット体でヒットされた場合に、そのボールの軌道(移動軌道)を、所与のアルゴリズムやテーブルデータなどに基づき求める演算処理を行う。
【0076】
以上のように本実施形態では、モーションセンサからのモーション検出情報に基づいて仮想カメラの視線方向を送り先ターゲット側に向ける制御が行われると共に、仮想カメラの視線方向が向けられることで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理が行われる。このようにすることで、送り先ターゲットに移動体を移動させる場面を、適切な視点の画像で生成して表示部190に表示できるようになる。
【0077】
ここで移動体は、例えば球技ゲームにおけるボールである。なお移動体は、球技ゲームにおけるボールには限定されず、送り先ターゲットが決められて送り先ターゲットに移動されるオブジェクトであれば、種々のオブジェクトに適用できる。また送り先ターゲットは、例えば球技ゲームにおける送球ターゲットである。この送球ターゲットは、例えば野球ゲームでは、送球を受ける野手(塁)などであり、サッカーゲームやアメリカンフットボールなどでは、送球のパスを受ける選手や送球のシュートが打ち込まれるゴールなどである。またテニスゲームでは、ラケットにより打ち返されて送球されたボールが飛んで行く場所などである。但し、送り先ターゲットは球技ゲームにおける送球ターゲットには限定されず、球技ゲーム以外のゲームにおける送り先ターゲットであってもよい。また、モーション検出情報に基づいて仮想カメラの視線方向を送り先ターゲット側に向ける場合に、送り先ターゲットの方向に視線方向を完全に向けない場合であってもよい。また送り先ターゲットが仮想カメラの視野範囲に入ったという条件が満たされた場合に、送り先ターゲットに移動体を移動させてもよいし、プレーヤにより移動体の送り指示操作が行われた場合に、送り先ターゲットに移動体を移動させてもよい。
【0078】
またモーションセンサは、例えば携帯型ゲーム装置又はゲームコントローラに設けられるセンサである。そして操作情報取得部102は、プレーヤが携帯型ゲーム装置又はゲームコントローラを動かすことで得られたモーション検出情報を、モーションセンサから取得する。そして仮想カメラ制御部108は、携帯型ゲーム装置又はゲームコントローラが動かされた方向側に、仮想カメラの視線方向を変化させる制御を行う。そして移動体演算部110は、携帯型ゲーム装置又はゲームコントローラが動かされた方向側に仮想カメラの視線方向が変化することで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理を行う。
【0079】
例えば水平方向に沿った軸をX軸(第1の座標軸)とし、鉛直方向に沿った軸をY軸(第2の座標軸)とする。すると仮想カメラ制御部108は、携帯型ゲーム装置又はゲームコントローラをY軸回りで回転させる操作(ロールさせる操作)が行われた場合に、仮想カメラの視線方向を、Y軸に対応するカメラ座標系のYC軸回りで回転させる制御(ロールさせる制御)を行う。そして移動体演算部110は、仮想カメラの視線方向がYC軸回りで回転することで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理を行う。例えばプレーヤが携帯型ゲーム装置又はゲームコントローラを、鉛直方向に沿った軸であるY軸回りでロールさせる操作を行ったとする。この場合には、仮想カメラの視線方向を、実空間でのY軸に対応するカメラ座標系のYC軸回りでロールさせる制御を行う。例えばプレーヤが、携帯型ゲーム装置又はゲームコントローラを実空間において左方向又は右方向に回転(ロール)させる操作を行うと、仮想カメラの視線方向がオブジェクト空間において左方向又は右方向に変化する。そして、このようにして視線方向が変化する仮想カメラの視野範囲内に映る送り先ターゲットに対して、移動体を移動させる。
【0080】
また判定部112は、移動体のキャッチに成功したか否かを判定する。移動体がボールである場合にはボールの捕球に成功したか否かを判定する。そして仮想カメラ制御部108は、携帯型ゲーム装置又はゲームコントローラをX軸回りで回転させる操作が行われた場合に、仮想カメラの視線方向を、実空間でのX軸に対応するカメラ座標系のXC軸回りで回転させる制御を行う。例えばプレーヤが、携帯型ゲーム装置又はゲームコントローラを実空間において上方向又は下方向に回転(ロール)させる操作を行うと、仮想カメラの視線方向がオブジェクト空間において上方向又は下方向に変化する。また判定部112は、XC軸回りで視線方向が回転する仮想カメラにより移動体が捕捉される捕捉条件が満たされており、移動体のキャッチ条件(捕球条件)が満たされた場合に、移動体のキャッチ(捕球)に成功したと判定する。そして移動体演算部110は、移動体のキャッチに成功したと判定され、所与の送り条件(送球条件)が満たされた場合に、キャッチされた移動体を送り先ターゲット(送球先ターゲット)に移動させる処理を行う。
【0081】
また調整部109は、携帯型ゲーム装置又はゲームコントローラのY軸回りでの回転角度の変化量ΔθYに対する、仮想カメラの視線方向のYC軸回りでの回転角度の変化量ΔθYCを調整する。例えば変化量ΔθYに対する変化量ΔθYCの割合(比率情報)を調整する。具体的には調整部109は、変化量ΔθYに対する変化量ΔθYCの調整処理を、プレーヤの操作情報又はゲーム状況に基づいて行う。例えばプレーヤが、ゲーム設定のためのオプション画面等において操作部160を用いて入力した情報に基づいて、変化量ΔθYに対する変化量ΔθYCの調整処理を行う。或いは、仮想カメラと送り先ターゲットとの位置関係情報、ゲームの得点状況、ゲーム場面、又は難易度の設定状態などのゲーム状況に応じて、変化量ΔθYに対する変化量ΔθYCの調整処理を行う。
【0082】
また移動体演算部110は、移動体(ボール)のキャッチ(捕球)に成功したと判定され、所与の送り条件(送球条件)が満たされた場合に、キャッチされた移動体を送り先ターゲットに移動させる処理を行う。
【0083】
具体的には移動体演算部110は、移動体のキャッチに成功したと判定され、プレーヤが送り指示操作(送球指示操作)を行った場合に、キャッチされた移動体を送り先ターゲット(送球ターゲット)に移動(送球)させる処理を行う。ここで、送り指示操作は、例えば送り指示に対応する操作ボタン等の操作部材を操作することなどで実現される。
【0084】
或いは、移動体演算部110は、移動体のキャッチに成功したと判定され、プレーヤが仮想カメラの視線方向を送り先ターゲット側に向ける操作を行った場合に、キャッチされた移動体を送り先ターゲットに移動させる処理を行う。例えばキャッチに成功したプレーヤが、モーションセンサを内蔵する携帯型ゲーム装置又はゲームコントローラを、左側に位置する送り先ターゲット側に向ける操作を行った場合に、左側の送り先ターゲットに移動体を移動させる処理を行う。一方、携帯型ゲーム装置又はゲームコントローラを、右側に位置する送り先ターゲット側に向ける操作を行った場合に、右側の送り先ターゲットに移動体を移動させる処理を行う。
【0085】
また、移動体演算部110は、移動体のキャッチに成功したと判定され、プレーヤが仮想カメラの視線方向を送り先ターゲット側に向ける操作を行い、プレーヤが操作部を用いて送り指示操作を行った場合に、キャッチされた移動体を送り先ターゲットに移動させる処理を行う。例えばキャッチに成功したプレーヤが、モーションセンサを内蔵する携帯型ゲーム装置又はゲームコントローラを、送り先ターゲット側に向ける操作を行うことで、仮想カメラの視線方向が送り先ターゲット側に向けられる。そして例えばその後に、プレーヤが操作部160を用いて送り指示操作を行った場合(例えば送り指示の操作ボタンを押した場合)に、視線方向が向けられた送り先ターゲットに対して移動体を移動させる処理を行う。
【0086】
また移動体演算部110は、移動体を第1の送り先ターゲットに移動させる処理を行い、移動体が第1の送り先ターゲットに到達した後、到達した移動体を第2の送り先ターゲットに移動させる処理を行ってもよい。野球ゲームを例にとれば、ダブルプレイ(ゲッツー)の状況の時に、第1の送り先ターゲットである二塁にボールを送球する処理を行い、二塁に送球された後、ボールを第2の送り先ターゲットである一塁に送球する処理を行う。
【0087】
具体的には移動体演算部110は、移動体が第1の送り先ターゲットに到達した後、到達した移動体を、ゲーム状況に基づき選択された第2の送り先ターゲットに移動させる処理を行う。例えば送り先ターゲットの候補が複数存在する場合に、これらの複数の送り先ターゲットの中からゲーム状況により自動的に選択された送り先ターゲットを、第2の送り先ターゲットとして、移動体を移動させる処理を行う。野球ゲームを例にとれば、一塁にランナーがいるときにゴロ等が打たれたというゲーム状況では、ボールを二塁に送球する処理を行った後、自動的に一塁を選択してボールを送球する処理を行う。
【0088】
或いは移動体演算部110は、移動体が第1の送り先ターゲットに到達した後、到達した移動体を、プレーヤの指示操作により指示された第2の送り先ターゲットに移動させる処理を行ってよい。例えば送り先ターゲットの候補が複数存在する場合に、これらの複数の送り先ターゲットの中から、操作部160を用いたプレーヤの指示操作により選択された送り先ターゲットを、第2の送り先ターゲットとして、移動体を移動させる処理を行う。
【0089】
また仮想カメラ制御部108は、移動体が第1の送り先ターゲットに移動した場合に、仮想カメラの視点位置を、第1の送り先ターゲットに対応する位置に設定し、仮想カメラの視線方向を、第2の送り先ターゲット側に向ける制御を行ってもよい。そして移動体演算部110は、仮想カメラの視線方向が向けられることで仮想カメラの視野範囲に入った第2の送り先ターゲットに対して、移動体を移動させる処理を行う。例えば移動体が第1の送り先ターゲットに到達した後、視点位置が第1の送り先ターゲットに対応する位置に設定され、視線方向が第2の送り先ターゲット側に向けられた画像が生成される。野球ゲームを例にとれば、二塁にボールが送球された後、二塁手の視点で一塁側を見た画像が生成される。これにより、よりリアルな画像の生成が可能になる。
【0090】
この場合に仮想カメラ制御部108は、移動体が第1の送り先ターゲットに到達するまで、仮想カメラの視線方向を、移動体の送り元側に向ける制御を行ってもよい。このようにすれば、移動体が第1の送り先ターゲットに到達するまでの間は、送り元側の方向を見た画像が生成されるようになり、更にリアルな画像の生成が可能になる。
【0091】
また仮想カメラ制御部108は、所与の基準方向を基準として、モーション検出情報に基づき仮想カメラの視線方向を移動体の送り先ターゲット側に向ける制御を行ってもよい。即ちモーション検出情報に基づき仮想カメラの視線方向を変化させる場合に、基準方向を基準にして視線方向を変化させる。例えば携帯型ゲーム装置又はゲームコントローラのY軸回りでの回転角度がΔθYだけ変化したことがモーション検出情報により検出され、仮想カメラの視線方向をYC軸回りでの回転角度でΔθYCだけ変化させる場合を想定する。この場合には、基準方向に対してΔθYCだけ仮想カメラの視線方向を回転させる。
【0092】
このとき仮想カメラ制御部108は、仮想カメラの視点位置(プレーヤキャラクタの位置)からゲームフィールド上の所定位置へと向かう方向を、基準方向に設定してもよい。野球ゲームを例にとれば、ホームベースの位置に向かう方向を基準方向に設定する。サッカーゲーム等を例にとれば、ゴールの位置に向かう方向を基準方向に設定する。
【0093】
また仮想カメラ制御部108は、複数の候補基準方向の中から選択された方向を、基準方向に設定してもよい。例えば複数の候補基準方向の中から、操作部160を用いたプレーヤの指示操作により選択された方向を、基準方向に設定する。
【0094】
また仮想カメラ制御部108は、プレーヤが基準方向の設定の操作を行ったときの仮想カメラの視線方向を、基準方向に設定してもよい。即ちプレーヤが基準方向の設定操作を行うと、その時の仮想カメラの視線方向が基準方向に設定される。そして、その基準方向の設定操作時から、プレーヤが携帯型ゲーム装置又はゲームコントローラを例えばY軸回りで回転させると、基準方向を基準として、仮想カメラの視線方向をYC軸回りで回転させる。
【0095】
或いは移動体演算部110が、プレーヤの操作情報に基づいてプレーヤキャラクタを移動させる処理を行う場合に、仮想カメラ制御部108は、プレーヤキャラクタの移動方向に対応する方向を、基準方向に設定してもよい。例えばプレーヤの操作によりプレーヤキャラクタが走る場合に、その走っている方向に対応する方向を基準方向に設定する。そして、その状態でプレーヤが携帯型ゲーム装置又はゲームコントローラを例えばY軸回りで回転させると、プレーヤの走っている方向を基準方向として、仮想カメラの視線方向をYC軸回りで回転させる。
【0096】
また判定部112は、移動体のキャッチが成功したかについての判定処理を行う。例えば操作情報に基づき仮想カメラの視線方向が変化する場合に、視線方向が変化する仮想カメラによる移動体の捕捉条件が満たされており、移動体のキャッチ条件が満たされた場合に、移動体のキャッチが成功したと判定する。例えば移動体の捕捉条件及びキャッチ条件が満たされた場合(捕捉条件を満たしながら移動体がキャッチされた場合)に、移動体のキャッチが成功したと判定する。そして画像生成部120は、オブジェクト空間内において仮想カメラから見える画像を生成する。例えば操作情報に基づき視線方向が変化する仮想カメラの視点で画像を生成し、キャッチが成功した場合には、そのキャッチの成功を表す画像を生成して表示部190に表示する。
【0097】
ここで捕捉条件は、操作情報に応じて視線方向が変化する仮想カメラが移動体を捕捉しているという条件であり、仮想カメラにより移動体が捕捉状態にあると判定された場合(捕捉判定範囲に移動体が存在すると判定された場合)に満たされる条件である。またキャッチ条件は、プレーヤキャラクタにより移動体が実際にキャッチされたと判定された場合に満たされる条件であり、例えばグラブ、足や手などの部位、或いはラケットなどの被キャッチ体(被キャッチ体に対応するヒットボリューム)にボール等の移動体が接触した場合に、キャッチ条件が満たされたと判定できる。
【0098】
更に具体的には、判定部112は、仮想カメラ(又はプレーヤが操作するプレーヤキャラクタ)に追従するヒットボリューム(ヒットボックス、ヒットエリア、ヒット範囲)を設定する。そして設定されたヒットボリュームに移動体がヒット(接触)したと判定された場合に、移動体の捕捉条件及びキャッチ条件が満たされたと判定する。例えば操作情報に基づき仮想カメラの視線方向や視点位置が変化すると、その視線方向や視線位置の変化に追従するようにヒットボリュームの位置、方向又は形状等が設定され、そのヒットボリュームに移動体がヒットしたと判定されると、移動体の捕捉条件及びキャッチ条件が満たされたと判定する。
【0099】
例えば判定部112は、ヒットボリュームの形状、ヒット有効範囲、位置及び方向(向いている方向)の少なくとも1つを可変に制御する。具体的には、移動体の軌道に応じて、ヒットボリュームの形状、ヒット有効範囲、位置及び方向の少なくとも1つを変化させる。例えば移動体の軌道が低い軌道なのか高い軌道なのかに応じて、ヒットボリュームの形状、ヒット有効範囲、位置又は方向などを変化させる。なおヒット有効範囲は、ヒットチェックが有効となる範囲であり、同じ形状のヒットボリュームであっても、ヒット有効範囲の設定を異ならせることで、移動体とのヒットチェックが行われる範囲を可変に制御できるようになる。
【0100】
また判定部112は、移動体のキャッチ時(キャッチタイミング、キャッチ期間)にプレーヤが指示した方向に応じて、ヒットボリュームを変形させる処理又はヒット有効範囲を変化させる処理を行う。例えばプレーヤの指示方向にヒットボリュームを引き伸ばす変形処理やヒット有効範囲の変化処理などを行う。或いは、判定部112は、ゲーム条件の設定に応じて、ヒットボリュームの形状、ヒット有効範囲、位置及び方向の少なくとも1つを変化させる。具体的には、難易度設定部114によりゲームの難易度が設定された場合に、ゲームの難易度の設定に応じて、ヒットボリュームの形状、ヒット有効範囲、位置及び方向の少なくとも1つを変化させる。例えばゲーム難易度が第1の難易度(例えば初級)である場合と第2の難易度(例えば上級)である場合とで、ヒットボリュームの形状、ヒット有効範囲、位置又は方向等を異ならせる。なお、ヒットボリュームの形状等を変化させるゲーム条件は、ゲームの難易度には限定されず、例えばプレーヤキャラクタ(プレーヤ)の所持アイテム数、経験値又は体力値などのステータス情報であってもよい。
【0101】
また判定部112は、仮想カメラの視野範囲に対応して設定された捕捉判定範囲内に移動体が入っている場合に、仮想カメラが移動体を捕捉する捕捉条件が満たされていると判定し、捕捉条件が満たされた状態で移動体のキャッチ条件が満たされた場合に、移動体のキャッチが成功したと判定してもよい。例えば、キャッチタイミングの前の所与の期間において、仮想カメラの視野範囲に対応する捕捉判定範囲内に移動体が入っており、仮想カメラによる移動体の捕捉条件が満たされた状態で、キャッチ条件が満たされると、キャッチに成功したと判定する。この場合のキャッチ条件は、例えばプレーヤキャラクタやその部位に設定されたヒットボリュームを用いたヒットチェック処理により実現できる。また視野範囲や捕捉判定範囲は、エリアのような範囲であってもよいし、視線方向や画角により特定される角度範囲であってもよい。また捕捉判定範囲は、視野範囲そのものであってもよいし、視野範囲に内包される範囲であってもよい。また視野範囲は、仮想カメラの視線方向と画角により規定される厳密な視野範囲よりも若干広い範囲であってもよい。
【0102】
また判定部112は、捕捉判定範囲を可変に制御してもよい。具体的には、ゲームの難易度などのゲーム条件の設定に応じて、捕捉判定範囲を変化させる。例えばゲーム難易度が第1の難易度(例えば初級)である場合と第2の難易度(例えば上級)である場合とで、捕捉判定範囲の大きさ、形状又は位置等を異ならせる。
【0103】
また判定部112は、移動体に追従する移動体用ヒットボリュームを設定し、移動体用ヒットボリュームを用いて、移動体のキャッチ条件が満たされているかを判定してもよい。例えば移動体を内包するような比較的大きなサイズの移動体用ヒットボリュームを設定する。そして移動体用ヒットボリュームとプレーヤキャラクタや仮想カメラの位置とのヒットチェックを行い、ヒットしたと判定された場合には、キャッチ条件が満たされたと判定する。なお移動体用ヒットボリュームを用いて捕捉条件を判断することも可能である。また移動体の軌道の高低や、軌道の方向(横方向での軌道の方向)や、ゲーム難易度などのゲーム条件に応じて、移動体用ヒットボリュームの形状又はヒット有効範囲等を変化させてもよい。
【0104】
また判定部112は、移動体が第1の軌道で移動する場合には、仮想カメラの視線方向範囲(視線方向を含む範囲)が第1の視線方向範囲である場合に、捕捉条件が満たされていると判定する。一方、移動体が第1の軌道とは異なる第2の軌道(第1の軌道よりも高い軌道。第1の軌道とは方向が異なる軌道)で移動する場合には、仮想カメラの視線方向範囲が、第1の視線方向範囲とは異なる第2の視線方向範囲(第1の視線方向範囲よりも高い視線方向範囲。第1の視線方向範囲とは視線が向く方向が異なる視線方向範囲)である場合に、捕捉条件が満たされていると判定する。例えば、移動体が低い軌道で移動する場合には、仮想カメラの視線方向が低い場所を見る視線方向である場合に捕捉条件が満たされたと判定する。一方、移動体が高い軌道で移動する場合には、仮想カメラの視線方向が高い場所を見る視線方向である場合に捕捉条件が満たされたと判定する。或いは移動体が左方向の軌道で移動する場合には、仮想カメラの視線方向が左方向を見る視線方向である場合に捕捉条件が満たされたと判定する。一方、移動体が右方向の軌道で移動する場合には、仮想カメラの視線方向が右方向を見る視線方向である場合に捕捉条件が満たされたと判定する。
【0105】
また操作情報取得部102は、操作情報として、プレーヤが入力した第1の操作情報と第2の操作情報を取得してもよい。例えばモーションセンサからのモーション検出情報を第1の操作情報として取得し、操作部160の方向指示部(方向指示キー、アナログティック)からの方向指示情報を第2の操作情報として取得する。そして仮想カメラ制御部108は、第1の操作情報に基づいて、仮想カメラの視線方向を制御し、第2の操作情報に基づいて、仮想カメラの視点位置の移動又はプレーヤキャラクタの移動を制御する。例えば第1の操作情報であるモーション検出情報に基づいて、仮想カメラの視線方向を制御し、第2の操作情報である方向指示情報に基づいて、仮想カメラの視点位置の移動又はプレーヤキャラクタの移動を制御する。この場合の第1の操作情報に基づく仮想カメラの視線方向の制御は、第1の操作情報に基づきプレーヤキャラクタの向く方向(視線方向)を制御し、プレーヤキャラクタの向く方向に追従するように仮想カメラの視線方向を制御する場合を含む。また第2の操作情報に基づく仮想カメラの視点位置の移動の制御は、第2の操作情報に基づいてプレーヤキャラクタの移動を制御し、プレーヤキャラクタの移動に追従するように仮想カメラの視点位置の移動を制御する場合を含む。また、逆に、第1の操作情報が方向指示情報であり、第2の操作情報がモーション検出情報であってもよい。この場合には、方向指示情報に基づいて、仮想カメラの視線方向が制御され、モーション検出情報に基づいて、仮想カメラの視点位置の移動又はプレーヤキャラクタの移動が制御されることになる。
【0106】
また操作情報取得部102が、モーションセンサからのモーション検出情報を操作情報として取得した場合には、仮想カメラ制御部108は、モーション検出情報に基づいて、仮想カメラ(プレーヤキャラクタ)の視線方向を制御する。そして判定部112は、モーション検出情報に基づき仮想カメラの視線方向が変化する場合に、視線方向が変化する仮想カメラが移動体を捕捉する捕捉条件が満たされているかを判定する。具体的には、モーションセンサは携帯型ゲーム装置又はゲームコントローラに設けられるセンサであり、操作情報取得部102は、プレーヤが携帯型ゲーム装置又はゲームコントローラを動かすことで得られたモーション検出情報を、モーションセンサから取得する。そして仮想カメラ制御部108は、携帯型ゲーム装置の動きに応じて仮想カメラの視線方向が変化するように仮想カメラを制御する。例えばプレーヤが携帯型ゲーム装置又はゲームコントローラを、水平方向に沿った軸であるX軸回りでロールさせる操作を行った場合には、仮想カメラの視線方向を上下方向に変化させる。また携帯型ゲーム装置又はゲームコントローラを、鉛直方向に沿った軸であるY軸回りでロールさせる操作を行った場合には、仮想カメラの視線方向を左右方向に変化させる。そして判定部112は、携帯型ゲーム装置の動きに応じて仮想カメラの視線方向が変化する場合に、視線方向が変化する仮想カメラが移動体を捕捉する捕捉条件が満たされているかを判定する。
【0107】
なお本実施形態の手法はサーバシステムにより実現してもよい。図29にサーバシステムにより実現する場合の構成例を示す。
【0108】
サーバシステム500は、端末装置TM1〜TMnとネットワーク510を介して通信接続される。例えばサーバシステム500はホストであり、端末装置TM1〜TMnはクライアントである。サーバシステム500は例えば1又は複数のサーバ(認証サーバ、ゲームサーバ、通信サーバ、課金サーバ等)により実現できる。ネットワーク510(配信網、通信回線)は、例えばインターネットや無線LAN等を利用した通信路であり、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網や無線LAN等の通信網を含むことができる。また通信方法については有線/無線を問わない。
【0109】
端末装置TM1〜TMnは、例えば携帯型ゲーム装置、据え置き型の家庭用ゲーム装置、或いは業務用ゲーム装置等により実現される。携帯型ゲーム装置は専用のゲーム装置であってもよいし、携帯電話機や携帯型情報端末などのゲームプログラムの実行が可能な汎用の装置であってもよい。
【0110】
サーバシステム500は、処理部600、記憶部670、情報記憶媒体680、通信部696を含む。処理部600は、操作情報取得部602、ゲーム演算部604、オブジェクト空間設定部606、仮想カメラ制御部608、調整部609、移動体演算部610、判定部612、難易度設定部614、画像生成用データ生成部620、音生成用データ生成部630を含む。なおこれらの各部(各ブロック)の機能、動作等は、図1の各部(各ブロック)と同様である。
【0111】
例えばサーバシステム500の操作情報取得部602は、プレーヤの操作情報を取得し、仮想カメラ制御部608は、取得された操作情報に基づいて、仮想カメラの制御を行う。また移動体演算部610は、移動体の移動演算処理を行い、画像生成用データ生成部620は、オブジェクト空間内におい仮想カメラから見える画像を生成するための画像生成用データを生成する。
【0112】
そして本実施形態では操作情報取得部602は、モーションセンサからのモーション検出情報を操作情報として取得し、仮想カメラ制御部608は、モーション検出情報に基づいて、仮想カメラの視線方向を、移動体の送り先ターゲット側に向ける制御を行う。そして移動体演算部610は、仮想カメラの視線方向が向けられることで仮想カメラの視野範囲に入った送り先ターゲットに対して、移動体を移動させる処理を行う。
【0113】
なお、画像を生成するための画像生成用データとは、本実施形態の手法により生成された画像をTM1〜TMnの各端末装置において表示するためのデータであり、画像データそのものであってもよいし、各端末装置が画像を生成するために使用する各種データ(オブジェクトデータ、制御結果データ、判定結果データ又は表示画面の設定データ等)であってもよい。例えばサーバシステム500が、各端末装置の操作部からの操作情報を取得し、各種の制御処理や各種の判定処理を行い、画像を生成して、TM1〜TMnの各端末装置に配信(ストリーム配信等)する場合には、上述の画像生成用データは画像データそのものになる。一方、サーバシステム500が、各端末装置の操作部からの操作情報を取得し、各種の制御処理や各種の判定処理を行い、その制御結果や判定結果に基づいてTM1〜TMnの各端末装置が画像を生成する場合には、上述の画像生成用データは、制御結果データや判定結果データやオブジェクトデータなどになる。音生成用データ生成部630が生成する音生成用データについても同様である。
【0114】
なお操作情報取得部602、ゲーム演算部604、オブジェクト空間設定部606、仮想カメラ制御部608、調整部609、移動体演算部610、判定部612、難易度設定部614、画像生成用データ生成部620、記憶部670、情報記憶媒体680、通信部696等の詳細な機能、動作は図1で上述に説明したものと同様であるため、詳細な説明は省略する。
【0115】
2.本実施形態の手法
次に本実施形態の手法について具体的に説明する。なお、以下では本実施形態の手法を野球ゲームに適用した場合について主に説明するが、本実施形態の手法が適用されるゲームは野球ゲームに限定されず、例えばサッカー、アメリカンフットボール、バレーボール、テニス、バトミントンなどの種々の球技ゲームや、球技ゲーム以外の種々のゲーム(アクションゲーム、ロールプレイングゲーム、音楽ゲーム等)にも適用できる。
【0116】
2.1 送り先ターゲットへの移動体の移動処理
従来の野球ゲームでは、プレーヤが守備側である場合に、バックネット付近やホームベース付近に設定された視点での画像が生成されるゲームが殆どであった。このため、打者が打ったボールを捕球し、送球ターゲットである一塁等に視線を向けて、ボールを送球するというような操作感覚を、プレーヤに与えることが難しいという課題があった。
【0117】
このような課題を解決するために本実施形態では以下に説明する手法を採用する。例えば本実施形態では、プレーヤが守備側である場合(守備モード時)に、仮想カメラの視点を、バックネット付近やホームベース付近ではなく、守備を行う野手の視点位置に設定する。また、バッターがボールを打つ前は、仮想カメラの視線方向を、実際の野球のように、バッターが居るホームベースを向く方向に設定する。そしてプレーヤは、守備を行う野手をプレーヤキャラクタとして操作する。
【0118】
そして本実施形態では、ボール(広義には移動体)がヒットされて、ボールの捕球(広義にはキャッチ)に成功した場合に、プレーヤは、携帯型ゲーム装置を、送球ターゲット(広義には送り先ターゲット)である一塁側に向ける操作を行う。具体的には、携帯型ゲーム装置をY軸回りで左側に回転させる操作を行う。すると、この回転操作に連動して、オブジェクト空間内の仮想カメラの視線方向もY軸回りで左側に回転し、これにより一塁が視野範囲内に入るようになる。そして、このように送球ターゲットである一塁が視野範囲に入った状態で、プレーヤが送球操作を行うと、ボールが一塁に送球される。そしてバッターである走者が一塁に到達する前にボールが一塁に送球されると、走者はアウトになる。
【0119】
このようにすることで、プレーヤは、野手側の視点でボールを捕球し、自身の顔を向けるように携帯型ゲーム装置を左側に向けることで、一塁の方を向いて、ボールを送球できるようになる。従って、あたかも実際の野球のようにボールを捕球して一塁に送球しているかのような操作感覚をプレーヤに与えることができ、従来の手法に比べてプレーヤの仮想現実感を大幅に向上できるようになる。
【0120】
次に本実施形態の判定手法について更に具体的に説明する。以下では、仮想カメラの視線方向等を制御する手法として、携帯型ゲーム装置に設けられたモーションセンサを用いる手法を例にとり説明する。なお、ゲームコントローラに設けられたモーションセンサを用いて仮想カメラの視線方向等を制御してもよい。
【0121】
図2(A)、図2(B)に、本実施形態の手法が適用される携帯型ゲーム装置の構成例を示す。この携帯型ゲーム装置は、メイン表示部190Mとサブ表示部190Sを有する。サブ表示部190Sは、例えばタッチパネル方式の液晶ディスプレイにより実現され、ゲーム装置の筐体10に設けられる。メイン表示部190Mは、サブ表示部190Sよりも例えば画素数が多いディスプレイとなっており、例えば液晶ディスプレイなどにより実現される。なお、メイン表示部190Mは、例えば裸眼の立体視画像を表示できるディスプレイになっており、ゲーム画像が立体視で表示される。
【0122】
携帯型ゲーム装置の筐体10と筐体20は回動自在に設けられており、筐体10には、方向指示キー12、アナログスティック(ジョイスティック)14、操作ボタン16が設けられている。また図2(B)に示すように、筐体20の背面側(メイン表示部190Mの反対側)には第1、第2のカメラCM1、CM2が設けられている。これらの第1、第2のカメラCM1、CM2を用いて被写体を撮影することで、視差のある左眼用画像と右眼用画像を得ることが可能になり、立体視表示が可能になる。
【0123】
更に携帯型ゲーム装置には図示しないモーションセンサ(6軸センサ)が内蔵されている。そして、プレーヤが携帯型ゲーム装置を手に持って動かした場合に、このモーションセンサを用いることで、図2(A)のX軸、Y軸、Z軸方向での加速度や、X軸回り、Y軸回り、Z軸回りでの角速度を検出できる。これによりX軸、Y軸、Z軸方向での並進移動操作や、X軸回り、Y軸回り、Z軸回りでの回転角度(ロール操作、ロール角度)を検出できるようになる。なお、X軸(広義には第1の座標軸)は水平方向(表示部の画面の水平方向)に沿った軸であり、Y軸(広義には第2の座標軸)は鉛直方向(表示部の画面の鉛直方向)に沿った軸であり、Z軸(広義には第3の座標軸)はX軸、Y軸に直交する方向(奥行き方向)である。
【0124】
次に、モーション検出情報に基づく仮想カメラVCの視線方向VL等の制御について、図3(A)〜図3(C)を用いて詳細に説明する。
【0125】
例えば図3(A)のD1、D2に示すように、プレーヤは、携帯型ゲーム装置(又はゲームコントローラ)をX軸回りに回転(ロール)させる操作を行うことができる。この場合には、モーションセンサの角速度センサにより、このX軸回りでの回転操作(ロール操作)が検出される。
【0126】
そして図3(A)のD1に示すように、X軸において反時計回り(回転軸の正の側から見て反時計回り。負方向の回転)に携帯型ゲーム装置を回転(ロール)させた場合には、図3(B)のE1に示すように、カメラ座標系のXC軸において反時計回りに仮想カメラVCの視線方向VLが回転する。これにより、仮想カメラVCの視線方向VLを、例えば後述するような高い軌道のフライの捕球に好適な視線方向に設定できるようになる。
【0127】
一方、図3(A)のD2に示すように、X軸において時計回り(回転軸の正の側から見て時計回り。正方向の回転)で携帯型ゲーム装置を回転させた場合には、図3(B)のE2に示すように、カメラ座標系のXC軸において時計回りに仮想カメラVCの視線方向VLが回転する。これにより、仮想カメラVCの視線方向VLを、後述するような低い軌道のゴロの捕球に好適な視線方向に設定できるようになる。
【0128】
また図3(A)のD3、D4に示すように、プレーヤが、携帯型ゲーム装置(又はゲームコントローラ)をY軸回りに回転させた場合には、モーションセンサの角速度センサにより、このY軸回りでの回転操作が検出される。
【0129】
そして図3(A)のD3に示すように、Y軸において反時計回りに携帯型ゲーム装置を回転させた場合には、図3(C)のE3に示すように、カメラ座標系のYC軸において反時計回りに仮想カメラVCの視線方向VLが回転するようになる。
【0130】
一方、図3(A)のD4に示すように、Y軸において時計回りに携帯型ゲーム装置を回転させた場合には、図3(C)のE4に示すように、カメラ座標系のYC軸において時計回りに仮想カメラVCの視線方向VLが回転するようになる。
【0131】
そして本実施形態では、モーションセンサからのモーション検出情報を操作情報として取得し、このモーション検出情報に基づいて、仮想カメラの視線方向を移動体の送り先ターゲット側に向ける制御を行う。例えば図4(A)のA1に示すような携帯型ゲーム装置のY軸回りでの回転を、モーション検出情報により検出する。そして図4(B)のA2に示すように、モーション検出情報に基づいて、仮想カメラVCの視線方向VLを、移動体MOBの送り先ターゲットTGに向ける制御を行う。そして仮想カメラVCの視線方向VLが向けられることで仮想カメラVCの視野範囲に入った送り先ターゲットTGに対して、移動体MOBを移動させる処理を行う。
【0132】
このようにすれば、野球ゲームを例にとれば、ボールの捕球後の送球の際に、仮想カメラVCの視線方向VLを、送球ターゲット(送り先ターゲット)である1塁側に向けて、ボールを送球できるようになり、よりリアルな野球ゲームの画像を生成できるようになる。
【0133】
なお、モーションセンサとして、角速度センサ等ではなく、画像センサを用いて、携帯型ゲーム装置の回転操作を検出し、仮想カメラの視線方向等を制御してもよい。即ちカメラの撮像センサによる撮像画像を用いて、携帯型ゲーム装置の回転操作を検出して、仮想カメラの視線方向等を制御する。例えば図2(B)に示すようなカメラCM1、CM2により携帯型ゲーム装置の周りの風景を撮影し、得られたカメラCM1、CM2の撮像画像に対して画像処理を行うことで、撮像画像の画素の動き情報から携帯型ゲーム装置の回転操作を検出する。このようにすれば、携帯型ゲーム装置が有する画像センサをモーションセンサとして用い、携帯型ゲーム装置の回転操作を検出して、仮想カメラの視線方向等を制御できるようになる。
【0134】
また本実施形態の手法が適用されるゲーム装置は携帯型ゲーム装置には限定されず、例えば据え置きの家庭用ゲーム装置であってもよい。この場合には、例えば家庭用ゲーム装置のゲームコントローラに設けられたモーションセンサ(角速度センサ、加速度センサ、カメラ等)を利用して、携帯型ゲーム装置の場合と同様の手法で、ゲームコントローラに対する回転操作を検出し、仮想カメラの視線方向等を制御すればよい。
【0135】
次に本実施形態の手法を野球ゲームに適用した場合の送球処理の詳細について説明する。本実施形態では、ボールの捕球(広義には移動体のキャッチ)に成功し、所与の送球条件(広義には送り条件)が満たされた場合に、捕球(キャッチ)されたボール(移動体)の送球処理(移動処理)を行う。例えばボールの捕球に成功し、プレーヤが操作部を用いた送球指示操作を行った場合や、プレーヤが仮想カメラの視線方向を送球ターゲット側に向ける操作を行った場合に、捕球されたボールを送球ターゲットに送球する処理を行う。
【0136】
例えば図5(A)では、ボールBLの捕捉条件及び捕球条件が満たされて、ボールBLの捕球に成功している。そして、このように捕球が成功し、送球判定期間内において、プレーヤが、図3(A)のD3に示すように携帯型ゲーム装置をY軸において反時計回り(左側)に回転させる操作を行ったとする。すると図5(B)に示すように、仮想カメラVCの視線方向VLが、送球ターゲットである一塁ベースFBFの方に向き、ボールBLの送球処理が行われるようになる。具体的には、ボールの捕球に成功した後、送球判定期間内に図2(A)の操作ボタン16の中の送球指示ボタンを押すと、ボールBLが一塁に送球される。或いは、ボールの捕球に成功した後、携帯型ゲーム装置を回転させることで、仮想カメラVCの視線方向VLを一塁側に向ける操作を行うと、送球指示ボタンを押さなくても、自動的にボールが一塁に送球される。
【0137】
以上のようにすれば、ボールBLを捕球した後に、一塁側を向いて送球するというような、実際の野球の送球プレイに似た操作感覚を、プレーヤに与えることが可能になる。これにより、プレーヤの仮想現実感を更に向上することが可能になる。
【0138】
2.2 捕球処理
次にボールの捕球処理の詳細について図6(A)〜図10(B)を用いて説明する。
【0139】
従来の野球ゲームでは、プレーヤが守備側である場合に、バックネット付近やホームベース付近に設定された視点での画像が生成されるゲームが殆どであったため、打者が打ったボールを目で追いかけながら捕球してアウトにするというような操作感覚を、プレーヤに与えることが難しいという課題があった。そこで本実施形態では以下に説明するような捕球処理を採用している。
【0140】
例えばボールがヒットされて外野フライが飛んで来たとする。この時、プレーヤが適切な操作を行わないと、高めのフライのボールは仮想カメラの視野範囲外になり、視野範囲からボールが消えてしまう。
【0141】
このような状況において、本実施形態では、プレーヤは、仮想カメラの視線方向等を変化させる操作を行うことで、ボールが視野範囲内に入るようにする。即ちボールが仮想カメラにより捕捉されるような操作を行って、ボールを目で追いかける操作を行う。そして、このようにボールが視野範囲(捕捉判定範囲)に入った状態で、ボールの落下地点にプレーヤキャラクタが移動してボールを捕球(キャッチ)すれば、捕球に成功したと判定され、外野フライのキャッチでアウトになったと判定される。
【0142】
一方、打者が打ったボールがゴロである場合には、プレーヤが仮想カメラの視線方向等を変化させる操作を行って、下方向に仮想カメラの視線方向を向けてボールを捕捉しないと、ボールをキャッチできないようにする。即ち、仮想カメラによるボールの捕捉条件を満たしつつ、ボールをキャッチした場合に、ボールの捕球に成功したと判定する。
【0143】
このようにすることで、プレーヤが実際にボールを目で追いかけて捕捉しながら捕球地点に移動し、ボールをキャッチした場合に、捕球が成功したと判定されるようになる。従って、あたかも実際の野球のようにボールを追って捕球したかのような操作感覚をプレーヤに与えることができ、従来の手法に比べてプレーヤの仮想現実感を大幅に向上できるようになる。
【0144】
例えば図6(A)では、打者の打ったボールBLがゴロになっている。この場合にはプレーヤは、図6(B)に示すようにX軸の正方向側から見てX軸の時計回りで、携帯型ゲーム装置を回転させる。すると、このX軸の時計回りでの回転がモーションセンサ(角速度センサ)により検出される。そして、このX軸の時計回りでのモーション検出情報により、図6(A)に示すように、視線方向VLが下側方向を向くように仮想カメラVCが制御される。即ちカメラ座標系のXC軸で時計回りに仮想カメラVCの視線方向VLが回転し、この視線方向VLでの画像が生成されて表示部190に表示される。これにより、プレーヤの視界範囲内にボールBLが捕捉されて見えるようになり、仮想カメラVCがボールBLを捕捉するという捕捉条件が満たされる。そして、この状態で、例えばプレーヤが操作するプレーヤキャラクタCHP(仮想カメラ)が適正な捕球地点に移動して、捕球条件が満たされると、ゴロのボールBLの捕球に成功したと判定される。
【0145】
一方、図7(A)では、打者の打ったボールBLがフライになっている。この場合にはプレーヤは、図7(B)に示すようにX軸の正方向側から見てX軸の反時計回りで、携帯型ゲーム装置を回転させる。すると、このX軸の反時計回りでの回転がモーションセンサ(角速度センサ)により検出される。そして、このX軸の反時計回りでのモーション検出情報に基づいて、図7(A)に示すように、視線方向VLが上側方向を向くように仮想カメラVCが制御される。即ちカメラ座標系のXC軸で反時計回りに仮想カメラVCの視線方向VLが回転し、この視線方向VLでの画像が生成されて表示部190に表示される。これにより、プレーヤの視界範囲内にボールBLが捕捉されて見えるようになり、仮想カメラVCがボールBLを捕捉するという捕捉条件が満たされる。そして、この状態で、例えばプレーヤが操作するプレーヤキャラクタCHP(仮想カメラ)が適正な捕球地点に移動して、捕球条件が満たされると、フライのボールBLの捕球に成功したと判定される。
【0146】
図8(A)〜図9は、図6(A)、図6(B)で説明したゴロの処理時に生成されるゲーム画像の例である。
【0147】
図8(A)は、バッターがゴロのボールBLを打った場面のゲーム画像である。このようにボールBLがゴロである場合には、図6(B)に示すようにプレーヤがX軸の時計回りで携帯型ゲーム装置を回転させる操作を行うことで、図6(A)に示すように仮想カメラVCの視線方向VLが下側方向を向く。これにより、図8(B)のように、低い軌道のゴロのボールBLが仮想カメラVCの視野範囲内に入るゲーム画像が生成される。即ち、低い軌道のボールBLに対する捕捉条件が満たされて、仮想カメラVCによりボールBLが捕捉されたゲーム画像が生成される。
【0148】
そして図8(B)では、このような捕捉条件を満たした状態で、ボールBLの位置とプレーヤキャラクタCHP(仮想カメラ)の位置が一致して、捕球条件が満たされたため、ゴロのボールBLの捕球に成功したと判定される。
【0149】
なお図8(A)では、いわゆる一人称視点のゲーム画像が生成され、図8(B)の捕球タイミングでは、プレーヤキャラクタCHPのグラブが表示されている。但し図8(A)や図8(B)において、プレーヤキャラクタCHPの全体を表示するようにしてもよい。この場合には、ボールBLがプレーヤキャラクタCHPにより遮られて見えにくくなってしまう事態を防止するために、プレーヤキャラクタCHPを半透明表示等にすることが望ましい。
【0150】
図9は、図8(B)の捕球成功後に、プレーヤにより送球指示が行われ、捕球したボールが一塁に送球された場面のゲーム画像である。例えば捕球タイミングに対応して設定された送球判定期間において、プレーヤが携帯型ゲーム装置をY軸回りで回転させるロール操作を行って、仮想カメラVCの視線方向が一塁側に向けられた場合には、送球条件が満たされたと判断される。そして、捕球したボールBLを、送球ターゲットである一塁に送球する処理が行われる。或いは、仮想カメラVCの視線方向が一塁側に向けられ、且つ、送球判定期間において図2(A)の操作ボタン16の中の送球指示ボタン(送球動作に割り当てられたボタン)が押された場合に、送球条件が満たされたと判断される。そして、捕球したボールBLを一塁に送球する処理が行われる。そして、捕球と送球の両方に成功すると、図9に示すように「アウト」の結果表示が行われる。
【0151】
図10(A)、図10(B)は、図7(A)、図7(B)で説明したフライの処理時に生成されるゲーム画像の例である。
【0152】
図10(A)は、バッターがフライのボールBLを打った場面のゲーム画像である。このようにボールBLがフライである場合には、図7(B)に示すようにプレーヤがX軸の反時計回りに携帯型ゲーム装置を回転させる操作を行うことで、図7(A)に示すように仮想カメラVCの視線方向VLが上側方向を向く。これにより、図10(B)のように、高い軌道のフライのボールBLが仮想カメラVCの視野範囲内に入るゲーム画像が生成される。即ち、高い軌道のボールBLに対する捕捉条件が満たされて、仮想カメラVCによりボールBLが捕捉されたゲーム画像が生成される。
【0153】
そして図10(B)では、このような捕捉条件を満たした状態で、ボールBLの位置とプレーヤキャラクタCHP(仮想カメラ)の位置が一致して、捕球条件が満たされたため、フライのボールBLの捕球に成功したと判定される。
【0154】
以上のように本実施形態では、携帯型ゲーム装置(又はゲームコントローラ)をX軸回りで回転させる操作が行われた場合に、仮想カメラの視線方向をX軸に対応するカメラ座標系のXC軸回りで回転させる制御を行う。そしてXC軸回りで視線方向が回転する仮想カメラによりボール(移動体)が捕捉される捕捉条件が満たされており、ボールの捕球条件(キャッチ条件)が満たされた場合に、ボールの捕球に成功したと判定する。そしてボールの捕球に成功したと判定され、所与の送球条件(送り条件)が満たされた場合に、捕球されたボールを送球ターゲット(送り先ターゲット)に移動させる処理が行われる。具体的には、ボール(移動体)の捕球(キャッチ)に成功したと判定され、プレーヤが送球指示操作(送り指示操作)を行った場合に、捕球されたボールを送球ターゲット(送り先ターゲット)に移動させる処理を行う。或いは、ボールの捕球に成功したと判定され、プレーヤが仮想カメラの視線方向を送球ターゲットに向ける操作を行った場合に、捕球されたボールを送球ターゲットに移動させる処理を行う。
【0155】
更に具体的には、プレーヤは、ボールの捕球に成功した後、携帯型ゲーム装置を回転させることで、仮想カメラVCの視線方向VLを一塁側に向ける操作を行う。そして仮想カメラVCの視線方向VLが一塁側に向いた後に、プレーヤが送球指示ボタンを押すと、ボールが一塁に送球される。この場合に、例えば仮想カメラVCの視線方向VLが一塁側(送り先ターゲット側)に適切に向いていると判定された場合に、送球が可能であることをプレーヤに知らせる指示表示(例えば「送球OK」という表示)を行ってもよい。このようにすれば、プレーヤが、この指示表示を確認した後、送球指示ボタンを押すことで、ボールが一塁に送球されるようになる。
【0156】
以上のような本実施形態の手法によれば、プレーヤが、視野範囲にボールが入るような操作を行いながらボールを捕球すると、捕球が成功したと判定され、その後、送球条件が満たされると、ボールが送球される。従って、プレーヤは、あたかも実際のボールを目で追いかけて捕球するというような現実世界の野球と同様の操作感覚で、ボールを捕球し、捕球したボールを送球できるようになる。従って、プレーヤの仮想現実感を従来の手法に比べて格段に向上できる。また図6(A)のように打球がゴロである場合と、図7(A)のように打球がフライである場合とで、プレーヤは異なる操作を行ってボールを捕球する。従って、実際にゴロやフライを捕っているかのような操作感覚をプレーヤに与えることができる。
【0157】
特に、携帯型ゲーム装置のモーションセンサで仮想カメラの視線方向を制御すれば、プレーヤは、ゴロの場合には図7(B)のように携帯型ゲーム装置の方向(画面方向)を下側方向に向け、フライの場合には携帯型ゲーム装置の方向を上側方向に向けるという操作を行って、ゴロやフライのボールを捕球することになる。従って、プレーヤは、あたかも画面の向こう側に本当のボールが存在し、そのボールを捕球して送球しているかのような操作感覚でゲームプレイができるため、プレーヤの仮想現実感を更に向上できる。
【0158】
なお、以上では本実施形態の手法を野球ゲームに適用した場合について説明したが、本実施形態の手法は、野球ゲーム以外の種々の球技ゲーム等に適用可能である。
【0159】
例えば図11(A)〜図11(C)は、本実施形態の手法をサッカーゲームに適用した例である。図11(A)では、コンピュータ等が制御する相手キャラクタCHEが、プレーヤが操作するプレーヤキャラクタCHPに対してボールBLをパスしている。そして図11(B)では、プレーヤキャラクタCHPは、パスされたボールBLの捕球(キープ)に成功している。そして図11(C)では、捕球したボールBLを他のキャラクタにパスしたり、ゴールに対して蹴るなどの処理が、ボールBLの送球処理として行われている。このようなサッカーゲームにおいても、本実施形態の手法を採用することで、従来のサッカーゲームに比べて、プレーヤの仮想現実感を大幅に向上できるようになる。なおサッカーのセンタリングでのヘディングシュートを本実施形態の手法により実現してもよい。この場合には、センタリングされたボールが選手の頭に当たることが捕球に相当し、頭に当たったボールが跳ね返って飛ぶことが送球に相当する。
【0160】
更に本実施形態の手法は、野球やサッカーのゲーム以外にも、アメリカンフットボール、バレーボール、バスケットボール、テニス、卓球、バトミントン等の種々のゲームに適用できる。例えばアメリカンフットボールの場合には、クオータバックが投げたボールをランニングバッグがジャンプ等をして捕ることが捕球に相当する。またバレーボールの場合には、レシーブがボールの捕球に相当し、トスやアタックがボールの送球に相当する。またテニスや卓球の場合には、ラケットにボールが当たることがボールの捕球に相当し、ラケットに当たったボールが、打った方向に飛ぶことが送球に相当する。またバトミントンの場合にはシャトルがボールに相当することになる。
【0161】
2.3 回転角度の調整処理
さて、携帯型ゲーム装置を回転させることで仮想カメラの視線方向を変化させる場合に、何ら工夫を施さないと、プレーヤの意図しない視線方向の変化が生じ、プレーヤが不自然さを感じたり、プレーヤのゲームプレイに支障が生じるおそれがある。
【0162】
そこで本実施形態では、携帯型ゲーム装置の回転角度の変化量ΔθYに対する仮想カメラの視線方向の回転角度の変化量ΔθYCを調整する手法を採用している。
【0163】
例えば図12(A)のF1では、プレーヤが携帯型ゲーム装置をY軸回りで変化量ΔθY1の回転角度で回転させており、これによりF2では、仮想カメラVCの視線方向VLが変化量ΔθYC1の回転角度で回転している。これにより図12(B)に示すように、仮想カメラVCの視線方向VLが送球先ターゲット(送り先ターゲット)TGの方に向き、ボールBLが送球先ターゲットTGに送球される。
【0164】
一方、例えば図13(A)のF3では、プレーヤが携帯型ゲーム装置をY軸回りで変化量ΔθY2<ΔθY1の回転角度で回転させており、これによりF4では、仮想カメラVCの視線方向VLが変化量ΔθYC2=ΔθYC1の回転角度で回転している。これにより図13(B)に示すように、仮想カメラVCの視線方向VLが送球先ターゲットTGの方に向き、ボールBLが送球先ターゲットTGに送球される。
【0165】
このように図13(A)では、図12(A)に比べて、携帯型ゲーム装置のY軸回りでの回転角度の変化量ΔθYに対する仮想カメラVCの視線方向のYC軸回りの回転角度ΔθYCの変化量の割合ΔθYC/ΔθYが異なっている。即ち図13(A)では、割合ΔθYC/ΔθYが大きくなっており、携帯型ゲーム装置の回転角度の変化量が小さくても、図12(A)と同様の回転角度の変化量で仮想カメラVCの視線方向VLを回転させることができる。
【0166】
例えば野球ゲームにおいて、ゴロを捕球して一塁に送球する際に、ホームベース方向に向いていた視線方向を一塁に向けるためには、何ら調整処理を行わない場合には、携帯型ゲーム装置を例えばY軸回りで90度回転させる必要がある。
【0167】
しかしながら、このように携帯型ゲーム装置を90度回転させる動作をプレーヤに要求すると、プレーヤに大きな動作を強いることになり、プレーヤのゲーム操作性が悪化するおそれがある。
【0168】
この点、本実施形態のような調整処理を行えば、図13(A)に示すように、90度以下の少ない変化量ΔθY2の回転角度で携帯型ゲーム装置を回転させるだけで、仮想カメラVCの視線方向VLを90度回転させて、一塁に送球できるようになる。従って、プレーヤは小さな動作で仮想カメラVCの視線方向VLを一塁に向けることが可能になり、プレーヤのゲーム操作性を向上できる。例えば一塁の走者を二塁への送球でアウトにする場合にも、携帯型ゲーム装置を180度よりも小さな回転角度で回転させるだけで、仮想カメラVCの視線方向VLを180度回転させて、二塁に送球することが可能になり、ゲーム操作性を向上できる。
【0169】
なお、携帯型ゲーム装置の回転角度の変化量ΔθYに対する仮想カメラVCの視線方向の回転角度の変化量ΔθYCの割合ΔθYC/ΔθYの調整処理は、プレーヤの操作情報に基づき行ってもよいし、ゲーム状況に基づき行ってもよい。
【0170】
例えばプレーヤの操作情報に基づき調整処理を行う場合には、例えばゲーム開始前のオプション画面においてプレーヤが操作入力を行い、ΔθYC/ΔθYを調整する。例えば携帯型ゲーム装置の少ない回転角度変化で仮想カメラVCの視線方向を大きく回転させたい場合には、ΔθYC/ΔθYを大きな値に設定する。なお、ゲーム中にプレーヤが所定の操作を行うことで、ΔθYC/ΔθYを調整するようにしてもよい。
【0171】
またゲーム状況に基づき調整処理を行う場合には、第1のゲーム状況ではΔθYC/ΔθYを第1の割合RT1に設定し、第2のゲーム状況ではΔθYC/ΔθYを第2の割合RT2に設定すればよい。例えばボールを打ったバッターの走者を一塁でアウトにするような第1のゲーム状況では、ΔθYC/ΔθYを第1の割合RT1に設定し、一塁の走者を二塁でアウトにするような第2のゲーム状況では、ΔθYC/ΔθYを第2の割合RT2>RT1に設定する。このようにすれば、二塁に送球する場合には、一塁に送球する場合に比べて、ΔθYC/ΔθYの割合を大きな値に設定できる。従って、例えば一塁に送球する場合には、携帯型ゲーム装置を例えば90度回転させる必要がある場合にも、二塁に送球する場合には、携帯型ゲーム装置を180度よりも小さな回転角度で回転させるだけで済むようになり、ゲーム操作性を向上できる。
【0172】
なお、例えば一塁への送球時には、例えば割合ΔθYC/ΔθY=2に設定して、例えば45度の回転角度で視線方向が一塁に向くようにする一方で、二塁への送球時には例えば割合ΔθYC/ΔθY=3に設定して、例えば60度の回転角度で視線方向が二塁に向くようにしてもよい。
【0173】
また図12(A)〜図13(B)では、Y軸回りの回転角度の調整手法について説明したが、図6(A)〜図7(B)で説明したX軸回りの回転角度についても同様の調整処理を行うようにしてもよい。具体的には、携帯型ゲーム装置(ゲームコントローラ)のX軸回りでの回転角度の変化量ΔθXに対する、仮想カメラの視線方向のXC軸回りでの回転角度の変化量ΔθXCを調整する。この場合に、変化量ΔθXに対する変化量ΔθXCの調整処理を、プレーヤの操作情報又はゲーム状況に基づいて行う。
【0174】
このようにすれば、例えば割合ΔθXC/ΔθXCの値を大きくすることで、例えば図6(B)において携帯型ゲーム装置を下側方向にそれほど回転させなくても、図6(A)のようにゴロを捕球することが可能になる。また図7(B)において携帯型ゲーム装置を上側方向にそれほど回転させなくても、図7(A)のようにフライを捕球することが可能になる。
【0175】
2.4 第2の送球ターゲットへの送球
例えば野球ゲームでは、ダブルプレイ(ゲッツー)やトリプルプレイなどの送球処理についてもリアルに実現できることが望ましい。そこで本実施形態では、ボールなどの移動体を第1の送り先ターゲットに移動させる処理を行い、ボールが第1の送り先ターゲットに到達した後、到達した移動体を、第2の送り先ターゲットに移動させる処理を行う。
【0176】
例えば図14(A)では、仮想カメラVCの視線方向VLはホームベースHBSの方に向いている。そして、例えば一塁ベースFBFに走者がいる状況で、バッターがボールをヒットし、プレーヤキャラクタCHPがボールの捕球に成功したとする。この場合に、プレーヤが図4(A)、図4(B)等で説明したように携帯型ゲーム装置を例えば180度回転させることで、図14(B)に示すように仮想カメラVCの視線方向VLが二塁ベースSBFの方を向く。そして、プレーヤが送球指示操作などを行うことで送球条件が満たされると、ボールBLが第1の送球ターゲット(第1の送り先ターゲット)である二塁ベースSBFに送球される。
【0177】
そして、ボールBLが第1の送球ターゲットである二塁ベースSBFに到達した後、到達したボールBLが、ゲーム状況に基づき選択された或いはプレーヤの指示操作により指示された第2の送球ターゲットに送球される。
【0178】
具体的には図15(A)では、二塁ベースSBFにボールが送球された場合に、仮想カメラVCの視点位置が、第1の送球ターゲットである二塁ベースSBFに対応する位置に設定される。例えば図15(A)では、プレーヤキャラクタCHPから見て二塁ベースSBFの後方の位置に、仮想カメラVCの視点位置が設定される。この場合に、ボールが二塁ベースSBFに到達するまでは、仮想カメラVCの視線方向VLは、ボールBLの送り元側に向けられる。これにより、プレーヤは、ボールBLを送球したプレーヤキャラクタCHPを、二塁ベースSBF側の視点の画像で見ることが可能になる。
【0179】
次に、図15(B)に示すように、仮想カメラVCの視線方向VLが、第2の送球ターゲットである一塁ベースFBF側に向けられる。そして仮想カメラVCの視線方向VLが向けられることで仮想カメラVCの視野範囲に入った一塁に対してボールBLが送球される。
【0180】
このようにすれば、一塁の走者を二塁でアウトにすると共にバッターの走者を一塁でアウトにするダブルプレイの送球処理を実現できる。なお本実施形態により実現されるダブルプレイは、このようなダブルプレイには限定されず、例えば二塁の走者を三塁でアウトにすると共に一塁の走者を二塁でアウトにするなどの種々のダブルプレイや、トリプルプレイなどにも適用できる。
【0181】
また、ボールが第1の送球ターゲットに到達した後に、到達したボールを移動させる第2の送球ターゲットを、ゲーム状況に基づき選択してもよい。
【0182】
例えば一塁に走者がいる第1のゲーム状況では、二塁にボールが送球された後に、一塁を第2の送球ターゲットとして自動的に選択して、ボールを送球すればよい。また一塁及び二塁に走者がいる第2のゲーム状況では、三塁にボールが送球された後に、二塁又は一塁を第2の送球ターゲットとして自動的に選択して、ボールを送球すればよい。この場合、例えば二塁にボールが送球された後、一塁を第3の送球ターゲットとして自動的に選択してボールを送球してもよい。或いは一塁〜三塁の全てに走者がいる満塁の第3のゲーム状況では、ホームベースにボールが送球された後、一塁、二塁又は三塁を第2の送球ターゲットとして自動的に選択して、ボールを送球すればよい。この場合にも、一塁、二塁又は三塁にボールが送球された後、他の塁を第2の送球ターゲットとして自動的に選択してボールを送球してもよい。
【0183】
なお、送球ターゲットの自動選択においては、野手と塁の位置関係情報や、各塁にいる走者の能力パラメータなどに基づいて塁を選択することが望ましい。例えば、候補送球ターゲットとなる塁が複数存在する場合には、ボールを送球する野手に最も近い塁を自動選択すればよい。
【0184】
また、ボールが第1の送球ターゲットに到達した後に、到達したボールを移動させる第2の送球ターゲットを、プレーヤの指示操作に基づき選択してもよい。
【0185】
例えば図16に示すように、携帯型ゲーム装置の各操作ボタンを各累(各送り先ターゲット)に割り当ておく。図16では、例えばAボタン、Bボタン、Cボタン、Dボタンが、各々、ホームベースHBF、一塁ベースFBF、二塁ベースSBF、三塁ベースTBFに割り当てられる。
【0186】
そして例えばダブルプレイのゲーム状況において、プレーヤが携帯型ゲーム装置を二塁側に回転させることでボールが二塁に送球された後、プレーヤが、一塁ベースFBFに対応するBボタンを押すと、二塁から一塁への送球が行われるようになる。
【0187】
また、例えば一塁及び二塁に走者がいるゲーム状況において、プレーヤが携帯型ゲーム装置を三塁側に回転させることでボールが三塁に送球された後、プレーヤの判断によって、次の第2の送球ターゲットとなる一塁又は二塁を選択するようにする。例えばボールが三塁に送球された後、プレーヤが、一塁ベースFBFに対応するBボタンを押すと、ボールが一塁に送球される。一方、二塁ベースSBFに対応するCボタンを押すと、ボールが二塁に送球される。このようにすることで、野球ゲームにおける更にリアルな守備をプレーヤに体感させることが可能になる。
【0188】
2.5 基準方向
例えば角速度センサや加速度センサなどのモーションセンサを用いる場合には、検出された角速度や加速度を積分することで、回転角度や速度や距離を求める。このため例えば角速度センサにより携帯型ゲーム装置の回転角度を検出する場合には、仮想カメラの視線方向の回転角度の基準となる基準方向(基準回転角度)を設定することが望ましい。このようにすれば、角速度を積分することで得られた携帯型ゲーム装置の回転角度の変化と、基準方向とに基づいて、仮想カメラの視線方向を特定できるようになる。
【0189】
例えば図17(A)では、仮想カメラVCの視線方向VLの基準方向としてDRFが設定されている。この状態でG1に示すようにプレーヤが携帯型ゲーム装置を例えばY軸回りで回転させると、このY軸回りの回転角度がモーション検出情報として検出される。そして図17(B)に示すように、図17(A)で設定された基準方向DRFを基準として、モーション検出情報に基づき仮想カメラVCの視線方向VLを移動体の送り先ターゲット側に向ける制御を行う。即ち、仮想カメラのVCの視線方向VLを、携帯型ゲーム装置の回転角度に対応する回転角度だけ、基準方向DRFから回転させる。このようにすれば、仮想カメラのVCの視線方向VLが、基準方向DRFを基準として変化するようになり、角速度センサなどのモーションセンサを用いた場合にも、仮想カメラVCの視線方向VLを適正に制御できるようになる。
【0190】
この場合に基準方向DRFの設定手法としては種々の手法を採用できる。例えば仮想カメラの視点位置からゲームフィールド上の所定位置へと向かう方向を、基準方向に設定する。野球ゲームを例にとれば、仮想カメラの視点位置からホームベースへと向かう方向を基準方向に設定する。このようにすれば、図8(A)、図8(B)に示すように、ボールを捕球する前までは、打者がいるホームベースへと向かう基準方向に、仮想カメラの視線方向が設定され画像が生成されるようになる。そして一塁にボールを送球するためにプレーヤが携帯型ゲーム装置を左側方向に回転させると、仮想カメラの視線方向が、図8(A)、図8(B)のホームベース方向の基準方向から変化して、一塁方向へ向くようになる。これにより図9に示すように、一塁が視野範囲に入った画像が生成されて、一塁にボールが送球される画像が生成されるようになる。従って、野球ゲームの送球における仮想カメラの視線方向の適正な制御が可能になる。
【0191】
なお、例えばサッカーゲームやハンドボールゲームのように、ゲームフィールド上にゴールが配置されるゲームでは、仮想カメラの視点位置(プレーヤキャラクタの位置)からゴールへと向かう方向を基準方向に設定すればよい。
【0192】
また、複数の候補基準方向の中から選択された方向を、基準方向に設定してもよい。例えば図18(A)、図18(B)のサッカーゲームでは、敵ゴールと味方ゴールが存在する。この場合には、図18(A)のように仮想カメラVCの視点位置VPと敵ゴールの位置GP1を結ぶ方向が第1の候補基準方向DRF1になり、仮想カメラVCの視点位置VPと味方ゴールの位置GP2を結ぶ方向が第2の候補基準方向DRF2になる。そしてプレーヤは、これらの第1、第2の候補基準方向DRF1、DRF2の中から自身が所望する方向を選択して基準方向として設定する。
【0193】
例えば自チームが攻めている状況では、プレーヤは、敵ゴールの位置GP1に向かう第1の候補基準方向DRF1を基準方向として選択する。これにより、基準方向DRF1を基準として、モーション検出情報に基づき仮想カメラVCの視線方向VLが変化するようになる。そして、基準方向DRF1を基準として視線方向VLを変化させ、仮想カメラVCの視野範囲に入った味方キャラクタ等にボールをパスするなどの送球処理を実現できる。従って、攻撃時に最適な視線方向の制御を実現できるようになる。
【0194】
一方、自チームが守っている状況では、プレーヤは、味方ゴールの位置GP2に向かう第2の候補基準方向DRF2を基準方向として選択する。これにより、基準方向DRF2を基準として、モーション検出情報に基づき仮想カメラVCの視線方向VLが変化するようになり、守備時時に最適な視線方向の制御を実現できる。
【0195】
或いは、プレーヤが基準方向の設定の操作を行ったときの仮想カメラの視線方向を、基準方向に設定してもよい。例えば図19(A)の状態で、プレーヤが、携帯型ゲーム装置の操作部の操作ボタン等により基準方向の設定操作を行うと、その時の仮想カメラVCの視線方向VLが、基準方向DRFに設定される。そして、このように基準方向DRFが設定された後に、携帯型ゲーム装置の回転操作を行うと、図19(B)に示すように、基準方向DRFを基準として仮想カメラVCの視線方向VLが変化し、プレーヤが所望する送球ターゲットに対してボールを送球することが可能になる。このようにすれば、プレーヤが基準方向として設定することを望む方向を基準方向に設定することが可能になり、プレーヤのゲーム操作性を向上できる。
【0196】
また図20(A)では、プレーヤの操作情報に基づいてプレーヤキャラクタCHPが移動する処理が行われている。例えばプレーヤの指示する方向にプレーヤキャラクタCHPが走る処理が行われている。
【0197】
この場合に、例えばプレーヤキャラクタCHPの移動方向DCH(進行方向)に対応する方向を、基準方向DRFに設定する。そしてプレーヤが携帯型ゲーム装置の回転操作を行うと、図20(B)に示すように、プレーヤキャラクタCHPの移動方向DCHである基準方向DRFを基準として、仮想カメラVCの視線方向VLが変化する。
【0198】
このようにすれば、プレーヤキャラクタCHPが移動している方向が常に基準方向DRFに設定されるようになる。従って、例えばプレーヤが振り向くように携帯型ゲーム装置を左側や右側に回転させることで、プレーヤキャラクタCHPの左側や右側にいる味方キャラクタなどにボールをパスする操作などを容易に実現できるようになる。従って、プレーヤにとって好適な操作インターフェース環境を提供できるようになる。
【0199】
なお、一定間隔毎又は所与のインベント発生時に、基準方向の初期化を自動的に行うオートイニシャライズ処理を行うようにしてもよい。例えば一定間隔毎に(定期的に)、基準方向を初期方向に自動設定する処理を行う。或いは、例えば野球ゲームにおいてバッターが打席に入ったりボールを投げるイベントが発生した時や、サッカーゲームにおけるゴールイベントの発生時や、バスケットボールゲームにおけるシュートイベントの発生時などに、基準方向を初期方向に自動設定する処理を行う。例えば野球ゲームにおいては、ホームベースを向く方向を初期方向として、一定間隔毎や所与のイベント発生時に、基準方向を初期方向に設定する。このようにすることで、プレーヤが操作を行わなくても、基準方向が、一定間隔毎や所与のイベント発生時に、自動的に初期方向に設定されるようになるため、プレーヤの操作負担の軽減等を図れる。
【0200】
2.6 捕捉条件、捕球条件の判定手法の具体例
次に捕捉条件、捕球条件の判定手法の具体例について説明する。第1の判定手法では、プレーヤの操作情報により制御され仮想カメラに追従するヒットボリュームを設定し、そのヒットボリュームにボールがヒットした場合に、捕捉条件及び捕球条件が満たされたと判定する。
【0201】
例えば図21(A)では、プレーヤの操作情報により仮想カメラVCの視線方向VLや視点位置等が変化する場合に、その仮想カメラVCに追従するようにヒットボリュームHVが設定される。図21(A)では、仮想カメラVCの前方側(カメラ座標系のZ軸側)であり、例えばプレーヤキャラクタCHPの前方側にヒットボリュームHVが配置されている。そしてこのヒットボリュームHVのボールBLとのヒットチェックが行われる。具体的には、ヒットボリュームHVの前方側の第1の平面と後方側の第2の平面を用いてヒットチェックが行われ、例えばボールBLの軌道が第1、第2の平面の両方に交差した場合に、ボールBLがヒットして捕球されたと判定する。
【0202】
なお、プレーヤの操作情報によりプレーヤキャラクタCHPの位置や方向が制御され、そのプレーヤキャラクタCHPに追従するようにヒットボリュームHVが設定されてもよい。またヒットボリュームHVの形状は図21(A)のような直方体形状には限定されず、例えば楕円体(球体を含む)、柱体などの種々の形状を採用できる。
【0203】
図21(B)では、ボールBLが低い軌道のゴロになっている。この場合には、ヒットボリュームHVは、その長さが短い形状に設定されると共に、上側の位置に配置される。即ち、プレーヤキャラクタCHPの上半身に対応する領域にはヒットボリュームHVが設定されるが、下半身に対応する領域にはヒットボリュームHVは設定されない。
【0204】
そして図21(B)では、プレーヤは、図6(B)に示すような携帯型ゲーム装置のロール操作を行っていないため、仮想カメラVCの視線方向VLが水平方向に設定される。従って、ヒットボリュームHVは傾かずに、その長辺方向が鉛直方向になるように配置される。
【0205】
一方、図21(C)では、プレーヤは、低い軌道のボールBLに対して、図6(B)に示すように携帯型ゲーム装置をX軸回りで下側方向にロールさせる操作を行っている。これにより、仮想カメラVCの視線方向VLが下側方向に向く。そして、この仮想カメラVCの視線方向VLの向きの変化に連動して、図21(C)に示すように、ヒットボリュームHVを、その下端部が手前側(仮想カメラから見て手前側)に近づき、その上端部が奥側(仮想カメラから見て奧側)に遠ざかるように傾ける。即ち、その長辺方向が鉛直方向から奥側に傾くようにヒットボリュームHVを配置する。
【0206】
このようにすれば、ヒットボリュームHVの下側部が地面(ゲームフィールド)に近づくため、ボールBLが軌道の低いゴロであっても、ヒットボリュームHVにボールBLをヒットさせることが容易になる。従って、プレーヤは、ゴロのボールBLを、トンネルせずに捕球することが可能になる。
【0207】
例えばボールBLがゴロである時に、図21(B)に示すように携帯型ゲーム装置のロール操作を行わずに、ヒットボリュームHVが傾かなかった場合には、ボールBLはヒットボリュームHVにヒットせずに、トンネルになってしまう。
【0208】
この点、図21(C)のように仮想カメラVCの視線方向VLの向きの変化に連動して、ヒットボリュームHVを傾ければ、このようなトンネルは発生せずに、プレーヤは適正にボールBLを捕球できるようになる。即ち、低い軌道のゴロのボールBLに対して、プレーヤが携帯型ゲーム装置を下側方向にロールさせる操作を行うことで、仮想カメラVCの視線方向VLが下側方向に向く。これにより、ボールBLは仮想カメラVCの視野範囲に入り、仮想カメラVCによりボールBLが捕捉された状態になるため、捕捉条件は満たされる。そしてこの状態でボールBLがヒットボリュームHVにヒットすれば、捕球条件も満たされる。従って、図21(A)〜図21(C)のようにヒットボリュームHVを設定し、設定されたヒットボリュームHVにボールBLがヒットした場合には、ボールBLの捕捉条件及び捕球条件の両方が満たされたと判定できるようになる。
【0209】
また図22(A)では、ボールBLが高い軌道のフライになっている。この場合には、ヒットボリュームHVは、その長さがゴロの場合に比べて長い形状に設定される。そしてプレーヤキャラクタCHPの上半身及び下半身の両方に対応する領域にヒットボリュームHVが設定される。
【0210】
そして、図22(B)では、プレーヤは、高い軌道のボールBLに対して、図7(B)に示すように携帯型ゲーム装置をX軸回りで上側方向にロールさせる操作を行っている。これにより、仮想カメラVCの視線方向VLが上側方向に向く。そして、この仮想カメラVCの視線方向VLの向きの変化に連動して、ヒットボリュームHVを、その上端部が手前側に近づき、その下端部が奥側に遠ざかるように傾ける。そして、ヒットボリュームHVにボールBLがヒットした場合には、捕捉条件及び捕球条件の両方が満たされたと判断され、捕球が成功したと判定する。
【0211】
この場合に図22(A)、図22(B)のようにヒットボリュームHVを設定することで、高い軌道のフライのボールBLがヒットボリュームHVにヒットしやすくなる。例えばボールBLがフライである場合に、図21(B)、図21(C)のようにヒットボリュームHVの長さが短いと、フライを捕れる範囲が狭まってしまい、ゲームの難易度が高くなってしまう。この点、図22(A)、図22(B)のように、高い軌道のフライの場合にヒットボリュームHVを長い形状にすれば、ボールBLを捕れる範囲が広がり、フライであっても、比較的容易に捕球できるようになる。なお図21(B)〜図22(B)では、ボールBLの軌道等に応じてヒットボリュームHVの形状を変化させているが、ヒットボリュームHVの形状については変化させずに、ヒットボリュームHVのヒット有効範囲をボールBLの軌道等に応じて変化させてもよい。例えば低い軌道のゴロの場合には、ヒットボリュームHVのヒット有効範囲を小さな範囲に設定する。一方、高い軌道のフライの場合には、ヒットボリュームHVのヒット有効範囲を大きな範囲に設定する。このようすれば、ボールBLの軌道に応じて形状を変化させる手法と同等の効果を得ることができる。
【0212】
以上のように本実施形態の捕球処理の第1の判定手法では、ボールBLの軌道に応じて、ヒットボリュームHVの形状、ヒット有効範囲、位置及び方向の少なくとも1つを変化させている。例えば、ボールBLがゴロのように低い軌道(第1の軌道)である場合には、図21(B)、図21(C)に示すようにヒットボリュームHVを短い形状に設定したり、形状は変えずにヒット有効範囲を小さな範囲に設定する。またヒットボリュームHVの配置位置も上側に設定する。一方、ボールBLがフライのように高い軌道(第2の軌道)である場合には、図22(A)、図22(B)に示すようにヒットボリュームHVを長い形状に設定したり、形状は変えずにヒット有効範囲を大きな範囲に設定する。またヒットボリュームHVの配置位置は、ゴロの場合に比べて下側に設定する。このようにボールBLの軌道に応じてヒットボリュームHVの形状、ヒット有効範囲、位置等を設定すれば、ヒットボリュームHVにボールBLがヒットしたかどうかを判断するだけで、捕捉条件及び捕球条件が満たされたかどうかを判定できるようになる。従って、簡素な判定処理で捕捉条件及び捕球条件を判定することが可能になる。また本実施形態の第1の判定手法では、図21(B)、図21(C)のようにボールBLが低い第1の軌道で移動する場合には、仮想カメラVCの視線方向範囲が、低い第1の視線方向範囲である場合に、捕捉条件が満たされたと判定している。一方、図22(A)、図22(B)のようにボールBLが第1の軌道よりも高い第2の軌道で移動する場合には、仮想カメラVCの視線方向範囲が、第1の視線方向範囲よりも高い第2の視線方向範囲である場合に、捕捉条件が満たされたと判定している。或いはボールBLが左方向の軌道である第1の軌道で移動する場合には、視線方向範囲が左方向を向く視線方向の範囲である場合に捕捉条件が満たされたと判定し、ボールBLが右方向の軌道である第2の軌道で移動する場合には、視線方向範囲が右方向を向く視線方向の範囲である場合に捕捉条件が満たされたと判定してもよい。このようにすれば、プレーヤキャラクタCHPが横方向に飛んでボールBLをキャッチする状況での捕捉条件についても判定できるようになる。
【0213】
なおヒットボリュームHVの設定手法は図21(A)〜図22(B)で説明した手法には限定されず、種々の変形実施が可能である。
【0214】
例えば図23(A)では、低い軌道のゴロのボールBLに対して、図6(B)に示すような操作をプレーヤが行って、仮想カメラVCの視線方向VLが下側方向に向くと、それに連動してヒットボリュームHVも下側方向に移動する。これによりプレーヤは、低い軌道のゴロのボールBLを容易に捕球できるようになる。
【0215】
一方、図23(B)では、高い軌道のフライのボールBLに対して、図7(B)に示すような操作をプレーヤが行って、仮想カメラVCの視線方向VLが上側方向に向くと、それに連動してヒットボリュームHVも上側方向に移動する。これによりプレーヤは、高い軌道のフライのボールBLを容易に捕球できるようになる。なお図23(A)、図23(B)において、ボールBLの軌道の高低等に応じて、ヒットボリュームHVの位置(代表位置)のみならず、方向(配置方向)についても変化させてもよい。
【0216】
なお本実施形態では、ボールBLの捕球時にプレーヤが指示した方向に応じて、ヒットボリュームHVを変形させたりヒット有効範囲を変化させてもよい。
【0217】
また本実施形態では、ゲームの難易度に応じてヒットボリュームを設定してもよい。例えばゲームの難易度の設定に応じて、ヒットボリュームの形状、ヒット有効範囲、位置及び方向の少なくとも1つを変化させてもよい。
【0218】
次に本実施形態の捕球処理について第2の判定手法について説明する。第2の判定手法では、仮想カメラの視野範囲に対応して捕捉判定範囲を設定し、捕捉判定範囲内にボールが入っている場合に、仮想カメラによるボールの捕捉条件が満たされていると判定する。そして捕捉条件が満たされた状態でボールの捕球条件が満たされると、ボールの捕球が成功したと判定する。
【0219】
例えば図24(A)〜図24(C)では、プレーヤは、ボールBLが仮想カメラVCの視野範囲内(捕捉判定範囲内)に入るように、図7(B)のように携帯型ゲーム装置をロールさせる操作を行う。これにより、図24(A)〜図24(C)のようにボールBLの高さが徐々に低くなる場合に、ボールBLが仮想カメラVCの視野範囲内に入るように、仮想カメラVCの視線方向VL等が制御されるようになる。そして視野範囲に対応して設定された捕捉判定範囲内にボールBLが入っている場合には、ボールBLの捕捉条件が満たされたと判定する。そして、このような捕捉条件が満たされた状態で、図24(C)のように、仮想カメラVC(プレーヤキャラクタ)に設定された簡易的なヒットボリュームHVにボールBLがヒットして、捕球条件が満たされると、プレーヤによるボールBLの捕球が成功したと判定する。このように本実施形態の捕球処理の第2の判定手法では、ボールBLが低い第1の軌道で移動する場合には、仮想カメラVCの視線方向範囲が、低い第1の視線方向範囲である場合に、捕捉条件が満たされたと判定する。一方、ボールが第1の軌道よりも高い第2の軌道で移動する場合には、仮想カメラVCの視線方向範囲が、第1の視線方向範囲よりも高い第2の視線方向範囲である場合に、捕捉条件が満たされたと判定する。
【0220】
以上に説明した本実施形態の第2の判定手法によれば、視野範囲に対応する捕捉判定範囲にボールが入っているどうかを判断するだけで、捕捉条件を判定できるようになり、処理の簡素化等を図れる。また、捕捉条件と捕球条件が別個に判定されるため、捕捉条件の判定処理や捕球条件の判定処理を簡素化できるようになる。
【0221】
なお、捕球条件の判定手法や、捕球条件の判定用のヒットボリュームの設定手法としては、種々の変形実施が可能である。例えばプレーヤキャラクタの左手等の部位に対して、捕球条件を判定するためのヒットボリュームを設定してもよい。また仮想カメラの視野範囲やこれに対応する捕捉判定範囲は、仮想カメラの視線方向を基準とした角度により設定してもよい。このようにすれば、角度を用いた簡素な判定処理で、捕捉条件等の判定処理を実現できるようになる。また捕捉条件が満たされているかどうかを判定する期間は、捕球タイミングの直前の短い期間であってもよいし、長い期間であってもよい。
【0222】
また仮想カメラやキャラクタに追従するヒットボリュームではなく、ボールに追従するボール用ヒットボリュームを設定し、このボール用ヒットボリュームを用いて、ボールの捕球条件等が満たされているかを判定してもよい。このボール用ヒットボリュームを用いる手法については例えば特開平8−305891号公報に開示されている。この手法では、ボール用ヒットボリュームとプレーヤキャラクタ又は仮想カメラの位置とのヒットチェックを行い、ヒットしたと判定された場合にはボールの捕球に成功したと判定する。この場合に、例えばボールの軌道の高低や、軌道の方向や、ゲーム条件等に応じて、ボール用ヒットボリュームの形状又はヒット有効範囲等を制御してもよい。またボール用ヒットボリュームを用いてボールの捕捉条件を判定することも可能である。
【0223】
また、ボールの捕球を判定する処理は、ヒットボリュームを用いる手法には限定されない。例えばゲーム画像にゲージ等を表示し、ゲージの入力エリアでの入力の成功などを判定して、ボールの捕球に成功したか否かを判定してもよい。例えばゲージにより表される判定タイミングで、プレーヤが捕球操作の入力を行い、判定タイミングと入力タイミングが一致した場合に、捕球が成功したと判定してもよい。
【0224】
また、上述の第1、第2の判定処理の変形例として、ボールがカメラの視野範囲(捕捉判定範囲)に入っている場合には、ボールとヒットボリュームのヒットチェックを有効状態に設定して、ボールがヒットボリュームにヒットした場合に捕球に成功したと判定してもよい。そして、ボールがカメラの視野範囲(捕捉判定範囲)に入っていない場合には、ボールとヒットボリュームのヒットチェックを非有効状態に設定して、ボールがヒットボリュームをすり抜けてしまうようにする。このようにすれば、捕捉条件と捕球条件の両方を満たした場合に、ボールの捕球に成功したと判定できるようになる。
【0225】
2.7 仮想カメラの制御
次に、操作情報に基づく仮想カメラの制御処理の具体例について説明する。本実施形態では、プレーヤが入力した第1の操作情報と第2の操作情報を取得し、第1の操作情報に基づいて仮想カメラの視線方向を制御し、第2の操作情報に基づいて仮想カメラの視点位置の移動又はプレーヤキャラクタの移動を制御している。
【0226】
例えば図3(A)〜図7(B)で説明したように、本実施形態では、モーションセンサからのモーション検出情報を第1の操作情報として取得し、第1の操作情報であるモーション検出情報に基づいて、仮想カメラVCの視線方向VLを制御する。例えば図4(A)〜図5(B)のように携帯型ゲーム装置をY軸回りで左側又は右側方向にロールさせる第1の操作が行われた場合には、この第1の操作の情報であるモーション検出情報に基づいて、仮想カメラVCの視線方向VLをYC軸回りで回転させる。また図6(B)、図7(B)のように携帯型ゲーム装置をX軸回りで下側又は上側方向にロールさせる第1の操作が行われた場合には、この第1の操作の情報であるモーション検出情報に基づいて、図6(A)、図7(A)に示すように仮想カメラVCの視線方向VLをXC軸回りで回転させる。
【0227】
また本実施形態では、方向指示部からの方向指示情報を第2の操作情報として取得し、第2の操作情報である方向指示情報に基づいて、仮想カメラVCの視点位置の移動又はプレーヤキャラクタCHPの移動を制御する。
【0228】
例えば図25(A)や図25(B)のB1〜B4に示すように、方向指示部である方向指示キー12やアナログスティック14(ジョイスティック)を用いて上下左右方向の方向指示操作が行われたとする。この場合には、指示された方向に対応する方向に、仮想カメラVCの視点位置(プレーヤキャラクタの位置)を移動させる。
【0229】
具体的には、図25(A)や図25(B)のB1〜B4に示すような方向指示が行われた場合には、図25(C)のC1〜C4に示す方向に仮想カメラVC(プレーヤキャラクタ)を移動させる。例えば方向指示キー12やアナログスティック14などの方向指示部により、図25(A)、図25(B)のB1、B2に示すように上下方向の方向指示が行われた場合には、図25(C)のC1、C2に示すように、仮想カメラVCを前後方向に移動させる。
【0230】
一方、図25(A)、図25(B)のB3、B4に示すように左右方向の方向指示が行われた場合には、図25(C)のC3、C4に示すように、仮想カメラVCを左右方向に移動させる。更に具体的には、例えばボールを捕球する前(送球前)においては、仮想カメラVCの視線方向VLについては、常に基準位置となるホームベースHBSの方に向ける。具体的には、操作情報に基づいてX軸回り(第1の座標軸回り)では仮想カメラVCの視線方向VLを変化させると共に、Y軸回り(第2の座標軸回り)では仮想カメラVCの視線方向VLを固定する。そして、左右方向の方向指示が行われた場合には、例えばホームベースHBSを中心とした円弧線CT上において、仮想カメラVCを左右方向に移動させる。
【0231】
このようにすれば、仮想カメラVCは、ボールが飛んでくる方向に常に正対して配置されるようになる。従って、ゴロやフライのボールを捕球する際に、プレーヤは、仮想カメラVCの視線方向VLの上下方向の変化だけを、図6(B)、図7(B)のようなロール操作で制御すればよい。そして方向指示部による上下左右方向の指示で、自身の視点に対応する仮想カメラVCを前後左右方向に動かして、ボールの捕球位置に向かって移動して、ボールを捕球する。これにより、仮想カメラVCの視線方向VLの全ての方向での変化を、プレーヤが制御する手法に比べて、プレーヤのゲーム操作を簡素化でき、より使い易いゲーム操作インターフェース環境をプレーヤに提供できるようになる。
【0232】
2.8 詳細な処理例
次に本実施形態の詳細な処理例について図26、図27、図28のフローチャートを用いて説明する。
【0233】
図26は本実施形態の送球処理の詳細を説明するためのフローチャートである。
【0234】
まず、ボールのキャッチ(捕球)に成功したか否かについて判断し(ステップS31)、成功した場合には、図4(A)で説明したように、モーション検出情報によりY軸回りでの携帯型ゲーム装置の回転角度情報を取得する(ステップS32)。
【0235】
次に図4(B)に説明したように、取得されたY軸回りでの携帯型ゲーム装置の回転角度情報に基づいて、仮想カメラの視線方向をYC軸回りで回転させる(ステップS33)。この場合に、必要であれば図12(A)〜図13(B)で説明した回転角度の調整処理を行う。
【0236】
次に、送球期間内に送球指示ボタンが押されたか否かを判断する(ステップS34)。そして送球期間内に送球指示ボタンが押されなかった場合には、送球不成功と判断する(ステップS35)。一方、送球期間内に送球指示ボタンが押された場合には、送球成功と判断して、送球ターゲットにボールを移動させる処理を行う(ステップS36)。
【0237】
図27は、第1の判定手法を用いた場合の本実施形態の捕球処理の詳細を説明するためのフローチャートである。
【0238】
まずボールの移動演算処理を行って、ボールの移動軌道を求める(ステップS1)。この移動演算処理は、例えばバット等の被ヒット体によるボールのヒット方向やヒット強さなどに基づいて実現される。そして、図3(A)〜図7(B)で説明したように、操作情報に基づいて仮想カメラの視線方向を設定する(ステップS2)。
【0239】
次に、ボールの軌道(守備モード)を判断する(ステップS3)。そして低い軌道(内野手モード)である場合には、図21(B)、図21(C)で説明したように低い軌道用(内野手モード用)のヒットボリュームを設定する(ステップS4)。一方、高い軌道(外野手モード)である場合には、図22(A)、図22(B)で説明したように高い軌道用(外野手モード用)のヒットボリュームを設定する(ステップS5)。
【0240】
次に、ボールがヒットボリュームにヒットしたか否かを判定する(ステップS6)。そして、ヒットしなかった場合には、捕捉条件、捕球条件が満たされず、捕球が不成功であったと判定する(ステップS7)。一方、ボールがヒットした場合には、捕捉条件、捕球条件が満たされて、捕球が成功であったと判定する(ステップS8)。
【0241】
次に、送球条件を満たした送球操作が行われたか否かを判定する(ステップS9)。そして、送球条件を満たした送球操作が行われなかった場合には、送球が不成功であったと判定する(ステップS10)。例えば送球判定期間内に、送球に対応する所定の操作が行われなかった場合には、送球が不成功であったと判定される。一方、送球判定期間内に、送球に対応する所定の操作が行われた場合には、送球が成功であったと判定して、ボールの送球処理を行う(ステップS11)。
【0242】
図28は、第2の判定手法を用いた場合の本実施形態の捕球処理の詳細を説明するためのフローチャートである。
【0243】
まずボールの移動演算処理を行って、ボールの移動軌道を求める(ステップS21)。また操作情報に基づいて仮想カメラの視線方向を設定する(ステップS22)。
【0244】
次に、図24(A)〜図24(C)で説明したように、仮想カメラの視野範囲に設定された捕捉判定範囲内にボールが入っているか否かを判定する(ステップS23)。そしてボールが入っていない場合には、捕捉条件が満たされず、捕捉が失敗であったと判定する(ステップS24)。
【0245】
一方、捕捉判定範囲内にボールが入っている場合には、ボールがヒットボリュームにヒットしたか否かを判定する(ステップS25)。そして、ヒットしなかった場合には、捕球条件が満たされず、捕球が不成功であったと判定する(ステップS26)。一方、ボールがヒットした場合には、捕球が成功であったと判定する(ステップS27)。
【0246】
次に、送球条件を満たした送球操作が行われたか否かを判断する(ステップS28)。そして、送球条件を満たした送球操作が行われなかった場合には、送球が不成功であったと判定する(ステップS29)。一方、例えば送球判定期間内に、送球に対応する所定の操作が行われた場合には、送球が成功であったと判定して、ボールの送球処理を行う(ステップS30)。
【0247】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(移動体、送り先ターゲット、キャッチ、送り条件、移動等)と共に記載された用語(ボール、送球先ターゲット、捕球、送球条件、送球等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、仮想カメラの視線方向の制御処理、送り先ターゲットへの移動体の移動処理、回転角度の調整処理、送り先ターゲットの選択処理、捕捉条件や捕球条件の判定処理、ビューボリュームの設定処理等も本実施形態で説明したものに限定されず、これらと均等な手法・処理も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話機等の種々のゲーム装置に適用できる。例えばゲーム装置は、ゲームのプログラムがインストールされて実行される携帯電話機や携帯型情報端末であってもよい。
【符号の説明】
【0248】
VC 仮想カメラ、VL 視線方向、CHP プレーヤキャラクタ、MOB 移動体、
TG 送り先ターゲット、BL ボール、DRF 基準方向、
HV ヒットボリューム、RFV 視野範囲、RDT 捕捉判定範囲、
10、20 筐体、12 方向指示キー、14 アナログスティック、
16 操作ボタン、100 処理部、102 操作情報取得部、104 ゲーム演算部、
106 オブジェクト空間設定部、108 仮想カメラ制御部、109 調整部、
110 移動体演算部、112 判定部、120 画像生成部、130 音生成部、
160 操作部、170 記憶部、172 オブジェクトデータ記憶部、
178 描画バッファ、180 情報記憶媒体、190 表示部、192 音出力部、
194 補助記憶装置、196 通信部、
500 サーバシステム、510 ネットワーク、TM1〜TMn 端末装置、
600 処理部、602 操作情報取得部、604 ゲーム演算部、
606 オブジェクト空間設定部、608 仮想カメラ制御部、609 調整部、
610 移動体演算部、612 判定部、614 難易度設定部、
620 画像生成用データ生成部、630 音生成用データ生成部

【特許請求の範囲】
【請求項1】
プレーヤの操作情報を取得する操作情報取得部と、
取得された前記操作情報に基づいて、仮想カメラの制御を行う仮想カメラ制御部と、
移動体の移動演算処理を行う移動体演算部と、
オブジェクト空間内において前記仮想カメラから見える画像を生成する画像生成部として、
コンピュータを機能させ、
前記操作情報取得部は、
モーションセンサからのモーション検出情報を前記操作情報として取得し、
前記仮想カメラ制御部は、
前記モーション検出情報に基づいて、前記仮想カメラの視線方向を、前記移動体の送り先ターゲット側に向ける制御を行い、
前記移動体演算部は、
前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするプログラム。
【請求項2】
請求項1において、
前記モーションセンサは、携帯型ゲーム装置又はゲームコントローラに設けられるセンサであり、
前記操作情報取得部は、
前記プレーヤが前記携帯型ゲーム装置又は前記ゲームコントローラを動かすことで得られた前記モーション検出情報を、前記モーションセンサから取得し、
前記仮想カメラ制御部は、
前記携帯型ゲーム装置又は前記ゲームコントローラが動かされた方向側に、前記仮想カメラの視線方向を変化させる制御を行い、
前記移動体演算部は、
前記携帯型ゲーム装置又は前記ゲームコントローラが動かされた方向側に前記仮想カメラの視線方向が変化することで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするプログラム。
【請求項3】
請求項2において、
水平方向に沿った軸をX軸とし、鉛直方向に沿った軸をY軸とした場合に、
前記仮想カメラ制御部は、
前記携帯型ゲーム装置又は前記ゲームコントローラを前記Y軸回りで回転させる操作が行われた場合に、前記仮想カメラの視線方向を、前記Y軸に対応するカメラ座標系のYC軸回りで回転させる制御を行い、
前記移動体演算部は、
前記仮想カメラの視線方向が前記YC軸回りで回転することで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするプログラム。
【請求項4】
請求項3において、
前記移動体のキャッチに成功したか否かを判定する判定部として、
コンピュータを機能させ、
前記仮想カメラ制御部は、
前記携帯型ゲーム装置又は前記ゲームコントローラを前記X軸回りで回転させる操作が行われた場合に、前記仮想カメラの視線方向を、前記X軸に対応するカメラ座標系のXC軸回りで回転させる制御を行い、
前記判定部は、
前記XC軸回りで視線方向が回転する前記仮想カメラにより前記移動体が捕捉される捕捉条件が満たされており、前記移動体のキャッチ条件が満たされた場合に、前記移動体のキャッチに成功したと判定し、
前記移動体演算部は、
前記移動体のキャッチに成功したと判定され、所与の送り条件が満たされた場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項5】
請求項3又は4において、
前記携帯型ゲーム装置又は前記ゲームコントローラの前記Y軸回りでの回転角度の変化量ΔθYに対する、前記仮想カメラの視線方向の前記YC軸回りでの回転角度の変化量ΔθYCを調整する調整部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項6】
請求項5において、
前記調整部は、
前記変化量ΔθYに対する前記変化量ΔθYCの調整処理を、プレーヤの操作情報又はゲーム状況に基づいて行うことを特徴とするプログラム。
【請求項7】
請求項1乃至6のいずれかにおいて、
前記移動体演算部は、
前記移動体のキャッチに成功したと判定され、所与の送り条件が満たされた場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項8】
請求項7において、
前記移動体演算部は、
前記移動体のキャッチに成功したと判定され、プレーヤが送り指示操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項9】
請求項7において、
前記移動体演算部は、
前記移動体のキャッチに成功したと判定され、プレーヤが前記仮想カメラの視線方向を前記送り先ターゲット側に向ける操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項10】
請求項7において、
前記移動体演算部は、
前記移動体のキャッチに成功したと判定され、プレーヤが前記仮想カメラの視線方向を前記送り先ターゲット側に向ける操作を行い、前記プレーヤが操作部を用いて送り指示操作を行った場合に、キャッチされた前記移動体を前記送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項11】
請求項1乃至10のいずれかにおいて、
前記移動体演算部は、
前記移動体を第1の送り先ターゲットに移動させる処理を行い、前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を第2の送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項12】
請求項11において、
前記移動体演算部は、
前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を、ゲーム状況に基づき選択された前記第2の送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項13】
請求項11において、
前記移動体演算部は、
前記移動体が前記第1の送り先ターゲットに到達した後、到達した前記移動体を、プレーヤの指示操作により指示された前記第2の送り先ターゲットに移動させる処理を行うことを特徴とするプログラム。
【請求項14】
請求項11乃至13のいずれかにおいて、
前記仮想カメラ制御部は、
前記移動体が前記第1の送り先ターゲットに移動した場合に、前記仮想カメラの視点位置を、前記第1の送り先ターゲットに対応する位置に設定し、前記仮想カメラの視線方向を、前記第2の送り先ターゲット側に向ける制御を行い、
前記移動体演算部は、
前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記第2の送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするプログラム。
【請求項15】
請求項14において、
前記仮想カメラ制御部は、
前記移動体が前記第1の送り先ターゲットに到達するまで、前記仮想カメラの視線方向を、前記移動体の送り元側に向ける制御を行うことを特徴とするプログラム。
【請求項16】
請求項1乃至15のいずれかにおいて、
前記仮想カメラ制御部は、
所与の基準方向を基準として、前記モーション検出情報に基づき前記仮想カメラの視線方向を前記移動体の送り先ターゲット側に向ける制御を行うことを特徴とするプログラム。
【請求項17】
請求項16において、
前記仮想カメラ制御部は、
前記仮想カメラの視点位置からゲームフィールド上の所定位置へと向かう方向を、前記基準方向に設定することを特徴とするプログラム。
【請求項18】
請求項16において、
前記仮想カメラ制御部は、
複数の候補基準方向の中から選択された方向を、前記基準方向に設定することを特徴とするプログラム。
【請求項19】
請求項16において、
前記仮想カメラ制御部は、
プレーヤが基準方向の設定の操作を行ったときの前記仮想カメラの視線方向を、前記基準方向に設定することを特徴とするプログラム。
【請求項20】
請求項16において、
前記移動体演算部は、
プレーヤの操作情報に基づいてプレーヤキャラクタを移動させる処理を行い、
前記仮想カメラ制御部は、
前記プレーヤキャラクタの移動方向に対応する方向を、前記基準方向に設定することを特徴とするプログラム。
【請求項21】
コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至20のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項22】
プレーヤの操作情報を取得する操作情報取得部と、
取得された前記操作情報に基づいて、仮想カメラの制御を行う仮想カメラ制御部と、
移動体の移動演算処理を行う移動体演算部と、
オブジェクト空間内において前記仮想カメラから見える画像を生成する画像生成部とを含み、
前記操作情報取得部は、
モーションセンサからのモーション検出情報を前記操作情報として取得し、
前記仮想カメラ制御部は、
前記モーション検出情報に基づいて、前記仮想カメラの視線方向を、前記移動体の送り先ターゲット側に向ける制御を行い、
前記移動体演算部は、
前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするゲーム装置。
【請求項23】
プレーヤの操作情報を取得する操作情報取得部と、
取得された前記操作情報に基づいて、仮想カメラの制御を行う仮想カメラ制御部と、
移動体の移動演算処理を行う移動体演算部と、
オブジェクト空間内において前記仮想カメラから見える画像を生成するための画像生成用データを生成する画像生成用データ生成部とを含み、
前記操作情報取得部は、
モーションセンサからのモーション検出情報を前記操作情報として取得し、
前記仮想カメラ制御部は、
前記モーション検出情報に基づいて、前記仮想カメラの視線方向を、前記移動体の送り先ターゲット側に向ける制御を行い、
前記移動体演算部は、
前記仮想カメラの視線方向が向けられることで前記仮想カメラの視野範囲に入った前記送り先ターゲットに対して、前記移動体を移動させる処理を行うことを特徴とするサーバシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate


【公開番号】特開2012−101026(P2012−101026A)
【公開日】平成24年5月31日(2012.5.31)
【国際特許分類】
【出願番号】特願2010−294498(P2010−294498)
【出願日】平成22年12月29日(2010.12.29)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】