(57)【特許請求の範囲】
【請求項１】
ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行するゲーム装置において、
前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶する選手キャラクタ位置記憶手段と、
前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得する移動目標位置取得手段と、
前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置しているか否かを判定する判定手段と、
前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御手段と、
を含み、
前記判定手段は、前記操作対象選手キャラクタと前記移動目標位置との間の距離が大きくなるほど前記判定領域が小さくなるように、前記判定領域の大きさを制御する手段を含む、
ことを特徴とするゲーム装置。
【請求項２】
請求項１に記載のゲーム装置において、
前記味方選手制御手段は、
前記操作対象選手キャラクタと前記移動目標位置との間の距離が基準距離以下であるか否かを判定する手段と、
前記操作対象選手キャラクタと前記移動目標位置との間の距離が前記基準距離以下である場合、前記味方選手キャラクタを前記移動目標位置から離れるように移動させる手段と、を含む、
ことを特徴とするゲーム装置。
【請求項３】
請求項１又は２に記載のゲーム装置において、
前記味方選手制御手段は、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、前記移動目標位置から該味方選手キャラクタの現在位置への方向に基づいて、該味方選手キャラクタの移動方向を決定する手段を含むことを特徴とするゲーム装置。
【請求項４】
請求項１乃至３のいずれかに記載のゲーム装置において、
前記ゲームは所定領域内で行われるスポーツのゲームであり、
前記味方選手制御手段は、前記味方選手キャラクタを前記移動目標位置から離れるように移動させる場合、該味方選手キャラクタが前記所定領域外に出ないように制御する、
ことを特徴とするゲーム装置。
【請求項５】
請求項４に記載のゲーム装置において、
前記味方選手制御手段は、
前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタの移動方向を決定する手段と、
前記味方選手キャラクタが前記移動方向に移動したと仮定した場合における、前記所定領域の境界までの移動距離が所定の基準距離未満である否かを判定する手段と、
前記所定領域の境界までの移動距離が前記基準距離未満であると判定された場合、前記移動方向を補正する手段と、
前記味方選手キャラクタを前記移動方向に前記基準距離移動させる手段と、を含む、
ことを特徴とするゲーム装置。
【請求項６】
請求項４に記載のゲーム装置において、
前記味方選手制御手段は、
前記所定領域内に設定される複数の部分領域の各々に対応づけて、前記味方選手キャラクタの移動方向に関する移動方向情報を記憶する手段と、
前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタの現在位置を含む前記部分領域に対応づけられた前記移動方向情報に基づいて、該味方選手キャラクタの移動方向を決定する手段と、を含む、
ことを特徴とするゲーム装置。
【請求項７】
請求項１乃至６のいずれかに記載のゲーム装置において、
前記操作対象選手キャラクタと前記味方選手キャラクタとの間の連係度を示す連係度パラメータを記憶するパラメータ記憶手段を含み、
前記味方選手制御手段は、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータに基づいて、該味方選手キャラクタを前記移動目標位置から離れるように移動させる、
ことを特徴とするゲーム装置。
【請求項８】
請求項７に記載のゲーム装置において、
前記味方選手制御手段は、
前記連係度パラメータが所定条件を満足するか否かを判定する手段と、
前記判定領域内に位置すると判定された前記味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータが前記所定条件を満足する場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる手段と、を含む、
ことを特徴とするゲーム装置。
【請求項９】
請求項７又は８に記載のゲーム装置において、
前記味方選手制御手段は、前記味方選手キャラクタの移動開始を、該味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータに基づいて待機させる手段を含むことを特徴とするゲーム装置。
【請求項１０】
ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が
所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行
するゲーム装置の制御方法において、
前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶して
なる選手キャラクタ位置記憶手段の記憶内容を読み出すステップと、
前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得
する移動目標位置取得ステップと、
前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置し
ているか否かを判定する判定ステップと、
前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選
手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御ステップと、
を含み、
前記判定ステップは、前記操作対象選手キャラクタと前記移動目標位置との間の距離が大きくなるほど前記判定領域が小さくなるように、前記判定領域の大きさを制御するステップを含む、
ことを特徴とするゲーム装置の制御方法。
【請求項１１】
ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が
所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行
するゲーム装置としてコンピュータを機能させるためのプログラムであって、
前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶する
選手キャラクタ位置記憶手段、
前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得
する移動目標位置取得手段、
前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置し
ているか否かを判定する判定手段、及び、
前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選
手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御手段、
として前記コンピュータを機能させ、
前記判定手段は、前記操作対象選手キャラクタと前記移動目標位置との間の距離が大きくなるほど前記判定領域が小さくなるように、前記判定領域の大きさを制御する手段を含む、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はゲーム装置、ゲーム装置の制御方法及びプログラムに関する。
【背景技術】
【０００２】
ユーザの操作に従って移動する操作対象選手キャラクタと、１又は複数の味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームが知られている。例えば、サッカーゲーム、バスケットボールゲーム又はアイスホッケーゲームなどが知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２５９９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のようなスポーツゲームでは、ユーザが操作対象選手キャラクタに対して指定した移動目標位置に味方選手キャラクタが位置していると、その味方選手キャラクタが邪魔になって操作対象キャラクタが見え難くなってしまう場合がある。その結果、例えば操作対象選手キャラクタに対する操作に支障をきたしてしまう場合がある。
【０００５】
本発明は上記課題に鑑みてなされたものであって、その目的は、ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームにおいて、味方選手キャラクタが邪魔になって操作対象キャラクタが見え難くなってしまうことが起こらないように図ることが可能になるゲーム装置、ゲーム装置の制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、本発明に係るゲーム装置は、ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行するゲーム装置において、前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶する選手キャラクタ位置記憶手段と、前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得する移動目標位置取得手段と、前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置しているか否かを判定する判定手段と、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御手段と、を含むことを特徴とする。
【０００７】
また、本発明に係るゲーム装置の制御方法は、ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行するゲーム装置の制御方法において、前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶してなる選手キャラクタ位置記憶手段の記憶内容を読み出すステップと、前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得する移動目標位置取得ステップと、前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置しているか否かを判定する判定ステップと、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御ステップと、を含むことを特徴とする。
【０００８】
また、本発明に係るプログラムは、ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームを実行するゲーム装置として、家庭用ゲーム機（据置型ゲーム機）、携帯ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）やパーソナルコンピュータなどのコンピュータを機能させるためのプログラムであって、前記操作対象選手キャラクタの位置と、前記味方選手キャラクタの位置と、を記憶する選手キャラクタ位置記憶手段、前記ユーザの操作内容に基づいて、前記操作対象選手キャラクタの移動目標位置を取得する移動目標位置取得手段、前記移動目標位置に基づいて特定される判定領域内に前記味方選手キャラクタが位置しているか否かを判定する判定手段、及び、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる味方選手制御手段、として前記コンピュータを機能させるためのプログラムである。
【０００９】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。また、本発明に係るプログラム配信装置は、上記プログラムを記録した情報記憶媒体を備え、該情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信装置である。また、本発明に係るプログラム配信方法は、上記プログラムを記録した情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信方法である。
【００１０】
本発明では、ユーザの操作に従って移動する操作対象選手キャラクタと、味方選手キャラクタと、が所属する操作対象チームと、対戦相手チームと、の間で行われるスポーツのゲームが実行される。また本発明では、操作対象選手キャラクタの位置と、味方選手キャラクタの位置と、が記憶される。また、ユーザの操作内容に基づいて、操作対象選手キャラクタの移動目標位置が取得される。移動目標位置に基づいて特定される判定領域内に味方選手キャラクタが位置しているか否かが判定される。そして、判定領域内に味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタを移動目標位置から離れるように移動させる。本発明によれば、味方選手キャラクタが邪魔になって操作対象キャラクタが見え難くなってしまうことが起こらないように図ることが可能になる。
【００１１】
また本発明の一態様では、前記味方選手制御手段は、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、前記移動目標位置から該味方選手キャラクタの現在位置への方向に基づいて、該味方選手キャラクタの移動方向を決定する手段を含むようにしてもよい。
【００１２】
また本発明の一態様では、前記ゲームは所定領域内で行われるスポーツのゲームであり、前記味方選手制御手段は、前記味方選手キャラクタを前記移動目標位置から離れるように移動させる場合、該味方選手キャラクタが前記所定領域外に出ないように制御するようにしてもよい。
【００１３】
また本発明の一態様では、前記味方選手制御手段は、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタの移動方向を決定する手段と、前記味方選手キャラクタが前記移動目標方向に移動したと仮定した場合における、前記所定領域の境界までの移動距離が所定の基準距離未満であるか否かを判定する手段と、前記所定領域の境界までの移動距離が前記基準距離未満であると判定された場合、前記味方選手キャラクタの移動方向を補正する手段と、前記味方選手キャラクタを前記移動方向に前記基準距離移動させる手段と、を含むようにしてもよい。
【００１４】
また本発明の一態様では、前記味方選手制御手段は、前記所定領域内に設定される複数の部分領域の各々に対応づけて、前記味方選手キャラクタの移動方向に関する移動方向情報を記憶する手段と、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタの現在位置を含む前記部分領域に対応づけられた前記移動方向情報に基づいて、該味方選手キャラクタの移動方向を決定する手段と、を含むようにしてもよい。
【００１５】
また本発明の一態様では、前記操作対象選手キャラクタと前記味方選手キャラクタとの間の連係度を示す連係度パラメータを記憶するパラメータ記憶手段を含み、前記味方選手制御手段は、前記判定領域内に前記味方選手キャラクタが位置していると判定された場合、該味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータに基づいて、該味方選手キャラクタを前記移動目標位置から離れるように移動させるようにしてもよい。
【００１６】
また本発明の一態様では、前記味方選手制御手段は、前記連係度パラメータが所定条件を満足するか否かを判定する手段と、前記判定領域内に位置すると判定された前記味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータが前記所定条件を満足する場合、該味方選手キャラクタを前記移動目標位置から離れるように移動させる手段と、を含むようにしてもよい。
【００１７】
また本発明の一態様では、前記味方選手制御手段は、前記味方選手キャラクタの移動開始を、該味方選手キャラクタと前記操作対象選手キャラクタとの間の連係度を示す前記連係度パラメータに基づいて待機させる手段を含むようにしてもよい。
【００１８】
また本発明の一態様では、前記判定手段は、前記操作対象選手キャラクタと前記移動目標位置との間の距離に基づいて、前記判定領域の大きさを制御する手段を含むようにしてもよい。
【００１９】
また本発明の一態様では、前記味方選手制御手段は、前記操作対象選手キャラクタと前記移動目標位置との間の距離が基準距離以下であるか否かを判定する手段と、前記操作対象選手キャラクタと前記移動目標位置との間の距離が前記基準距離以下である場合、前記味方選手キャラクタを前記移動目標位置から離れるように移動させる手段と、を含むようにしてもよい。
【図面の簡単な説明】
【００２０】
【図１】本実施の形態に係るゲーム装置のハードウェア構成を示す図である。
【図２】操作入力部の一例を示す図である。
【図３】コントローラの一例を示す図である。
【図４】仮想３次元空間の一例を示す図である。
【図５】ゲーム画面の一例を示す図である。
【図６】ゲーム画面の一例を示す図である。
【図７】本実施の形態に係るゲーム装置の機能ブロック図である。
【図８】ゲーム状況データの一例を示す図である。
【図９】判定領域の一例を示す図である。
【図１０】味方制御部の動作について説明するための図である。
【図１１】ゲーム装置が実行する処理を示すフロー図である。
【図１２】ゲーム装置が実行する処理を示すフロー図である。
【図１３】移動方向候補の補正について説明するための図である。
【図１４】ピッチの分割の一例について説明するための図である。
【図１５】連係度パラメータデータの一例を示す図である。
【図１６】本発明の他の実施形態に係るプログラム配信システムの全体構成を示す図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施形態の例について図面に基づき詳細に説明する。本発明の実施形態に係るゲーム装置は、例えば家庭用ゲーム機（据置型ゲーム機）、携帯ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）又はパーソナルコンピュータ等によって実現される。ここでは、本発明の実施形態に係るゲーム装置を家庭用ゲーム機によって実現する場合について説明する。
【００２２】
図１は、本発明の実施形態に係るゲーム装置の構成を示す。図１に示すゲーム装置１０は、家庭用ゲーム機１１、モニタ３０、スピーカ３１、光ディスク３２及びメモリカード３３を含んで構成される。モニタ３０及びスピーカ３１は家庭用ゲーム機１１に接続される。光ディスク３２及びメモリカード３３は情報記憶媒体であり、家庭用ゲーム機１１に装着される。モニタ３０としては例えば家庭用テレビ受像機が用いられる。スピーカ３１としては例えば家庭用テレビ受像機に内蔵されたスピーカが用いられる。光ディスク３２としては例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどが用いられる。
【００２３】
家庭用ゲーム機１１は公知のコンピュータゲームシステムである。家庭用ゲーム機１１は、バス１２、マイクロプロセッサ１３、主記憶１４、画像処理部１５、音声処理部１６、光ディスクドライブ１７、メモリカードスロット１８、通信インタフェース（Ｉ／Ｆ）１９、コントローラインタフェース（Ｉ／Ｆ）２０及び操作入力部２１を含んで構成される。操作入力部２１以外の構成要素は家庭用ゲーム機１１の筐体内に収容される。
【００２４】
バス１２はアドレス及びデータを家庭用ゲーム機１１の各部でやり取りするためのものである。マイクロプロセッサ１３、主記憶１４、画像処理部１５、音声処理部１６、光ディスクドライブ１７、メモリカードスロット１８、通信インタフェース１９及びコントローラインタフェース２０は、バス１２によって相互データ通信可能に接続される。
【００２５】
マイクロプロセッサ１３は、図示しないＲＯＭに格納されるオペレーティングシステムや、光ディスク３２又はメモリカード３３から読み出されるプログラム及びデータに基づいて、家庭用ゲーム機１１の各部を制御する。主記憶１４は例えばＲＡＭを含み、光ディスク３２又はメモリカード３３から読み出されたプログラム及びデータが必要に応じて書き込まれる。主記憶１４はマイクロプロセッサ１３の作業用としても用いられる。
【００２６】
画像処理部１５はＶＲＡＭを含み、マイクロプロセッサ１３から送られる画像データに基づいてＶＲＡＭ上にゲーム画面を描画する。そして画像処理部１５は、そのゲーム画面をビデオ信号に変換して所定のタイミングでモニタ３０に出力する。音声処理部１６はサウンドバッファを含む。音声処理部１６は、光ディスク３２からサウンドバッファに読み出された各種音声データ（ゲーム音楽、ゲーム効果音、メッセージ等）を再生してスピーカ３１から出力する。
【００２７】
光ディスクドライブ１７は、光ディスク３２に記録されたプログラムやデータをマイクロプロセッサ１３からの指示に従って読み取る。ここではプログラムやデータを家庭用ゲーム機１１に供給するために光ディスク３２を用いることとするが、例えばメモリカード３３などの他のあらゆる情報記憶媒体を用いるようにしてもよい。また、インターネットなどのデータ通信網を介して遠隔地からプログラムやデータを家庭用ゲーム機１１に供給するようにしてもよい。
【００２８】
メモリカードスロット１８はメモリカード３３を装着するためのインタフェースである。メモリカード３３は不揮発性メモリ（例えばＥＥＰＲＯＭなど）を含み、例えばセーブデータなどの各種ゲームデータを記憶する。通信インタフェース１９は、インターネットなどのデータ通信網に通信接続するためのインタフェースである。
【００２９】
コントローラインタフェース２０は複数のコントローラ２２を無線接続するためのインタフェースである。コントローラインタフェース２０としては、例えばＢｌｕｅｔｏｏｔｈ(登録商標)インタフェース規格に則ったインタフェースを利用できる。なお、コントローラインタフェース２０はコントローラ２２を有線接続するためのインタフェースとしてもよい。
【００３０】
操作入力部２１はユーザが操作入力を行うためのものである。操作入力部２１は、例えば、モニタ３０に表示されるゲーム画面上の位置をユーザが指し示すためのポインティングデバイスとしての機能を備える。操作入力部２１としては、例えば特許３２６２６７７号公報に開示される技術を利用できる。操作入力部２１は、１又は複数のコントローラ２２と、発光部２５と、を含む。図２は操作入力部２１の一例を示し、図３はコントローラ２２の一例を示す。
【００３１】
図２に示すように、発光部２５は複数の光源を含み、モニタ３０の上部に配置される。図２に示す例では、発光部２５の両端部に光源３４ａ，３４ｂが設けられている。なお、発光部２５はモニタ３０の下部に配置されるようにしてもよい。
【００３２】
図３に示すように、コントローラ２２は方向ボタン３６、ボタン３７ａ，３７ｂ，３７ｃを含む。方向ボタン３６は十字形状を有し、一般的に方向指示操作に用いられる。ボタン３７ａ，３７ｂ，３７ｃは各種ゲーム操作に用いられる。また図１に示すように、コントローラ２２は撮像部２３と撮影画像解析部２４とを含む。撮像部２３は例えばＣＣＤなどの撮像素子であり、コントローラ２２の前端部２２ａ（一の側面）に設けられる。撮影画像解析部２４は例えばマイクロプロセッサなどであり、コントローラ２２に内蔵される。
【００３３】
ユーザがコントローラ２２の前端部２２ａをモニタ３０の方に向けると、撮像部２３の撮影画像には光源３４ａ，３４ｂが写し出される。撮影画像解析部２４は、撮像部２３の撮影画像に写し出された光源３４ａ，３４ｂの位置を解析し、その解析結果に基づいてコントローラ２２の位置及び傾きを取得する。例えば、撮影画像解析部２４は、所定の基準位置３５に対するコントローラ２２の相対位置と、光源３４ａ及び光源３４ｂを結ぶ直線に対するコントローラ２２の傾き角度と、を算出する。ゲーム装置１０は、基準位置３５と、モニタ３０に表示されるゲーム画面と、の位置関係に関する情報を記憶しており、この情報と、撮影画像解析部２４によって取得されるコントローラ２２の位置及び傾きと、に基づいて、コントローラ２２の前端部２２ａが指し示す位置（Ｐ）のスクリーン座標値（スクリーン座標系の座標値）を取得する。なお以下では、コントローラ２２の前端部２２ａが指し示す位置（Ｐ）のことを「コントローラ２２の指示位置」と記載する。また、撮影画像解析部２４によって取得されるコントローラ２２の位置及び傾きを示す情報、すなわち、コントローラ２２の指示位置のスクリーン座標値を特定するための情報のことを「ポインティング情報」と記載する。
【００３４】
コントローラ２２からマイクロプロセッサ１３に対しては、一定周期ごと（例えば１／６０秒ごと）にコントローラ２２の操作状態を表す操作信号がコントローラインタフェース２０を介して送信される。この操作信号には、例えば、コントローラ２２を識別する識別情報と、上記のポインティング情報と、各ボタンの押下状態を示す情報と、が含まれる。マイクロプロセッサ１３は、各コントローラ２２から供給される操作信号に基づいて、そのコントローラ２２の指示位置を特定したり、そのコントローラ２２において方向ボタン３６、ボタン３７ａ，３７ｂ，３７ｃが押下されたか否かを判定する。
【００３５】
上記構成を備えるゲーム装置１０では、例えば、ユーザの操作対象チームと、対戦相手チームと、の間のサッカーゲームが実行される。このサッカーゲームは、光ディスク３２から読み出されたプログラムが実行されることによって実現される。
【００３６】
主記憶１４には仮想３次元空間（ゲーム空間）が構築される。図４は仮想３次元空間の一例を示す。図４に示すように、仮想３次元空間４０には、サッカーのフィールドを表すフィールドオブジェクト４２が配置される。フィールドオブジェクト４２には例えばゴールライン４３（エンドライン）やタッチライン４５（サイドライン）が表される。サッカーの試合は、ゴールライン４３及びタッチライン４５によって囲まれた領域であるピッチ４１内で行われる。またフィールドオブジェクト４２上には、ゴールを表すゴールオブジェクト４４と、サッカー選手を表す選手オブジェクト４６（選手キャラクタ）と、サッカーボールを表すボールオブジェクト４８と、が配置される。
【００３７】
図４では省略されているが、フィールドオブジェクト４２上には、ユーザの操作対象チームに所属する複数の選手オブジェクト４６（例えば２０名の選手オブジェクト４６）のうちからユーザによって選択された１１名の選手オブジェクト４６が配置される。同様に、対戦相手チームに所属する複数の選手キャラクタ４６（例えば２０名の選手オブジェクト４６）のうちからマイクロプロセッサ１３又は対戦相手ユーザによって選択された１１名の選手オブジェクト４６が配置される。実際のサッカーの試合と同様に、仮想３次元空間４０に配置される選手オブジェクト４６（試合に出場する選手オブジェクト４６）は試合開始時に決定され、試合中やハーフタイムに変更される。
【００３８】
選手オブジェクト４６とボールオブジェクト４８とが近づくと、所定条件の下、その選手オブジェクト４６とボールオブジェクト４８とが関連づけられる。この場合、ボールオブジェクト４８は選手オブジェクト４６に従動する。この様子は選手オブジェクト４６のドリブル動作として表される。以下では、ボールオブジェクト４８が選手オブジェクト４６に関連づけられた状態のことを「選手オブジェクト４６がボールオブジェクト４８を保持している」というように記載する。
【００３９】
ゴールオブジェクト４４の一方はユーザチームに関連づけられ、他方は対戦相手チームに関連づけられる。一方のチームに関連づけられたゴールオブジェクト４４内にボールオブジェクト４８が移動すると、他方のチームの得点イベントが発生する。
【００４０】
また、仮想３次元空間４０には仮想カメラ４９（視点）が設定される。仮想カメラ４９は例えばボールオブジェクト４８の移動に基づいて仮想３次元空間４０内を移動する。
【００４１】
図５はゲーム画面５０の一例を示す。図５に示すように、ゲーム画面５０には、仮想３次元空間４０を仮想カメラ４９から見た様子を表す画像が表示される。また、ゲーム画面５０は時間経過を示す時間欄５２と得点状況を示す得点欄５４とを含む。さらに、ゲーム画面５０には、ユーザのコントローラ２２の指示位置を示すカーソル５６が表示される。図５ではカーソル５６の形状が円形状になっているが、円形以外の形状であってもよい。
【００４２】
ユーザは、操作対象チームに所属する選手オブジェクト４６に対して移動方向やキック方向などを指示できる。ここで、選手オブジェクト４６の移動方向やキック方向の指示方法について説明する。
【００４３】
まずユーザは指示を与えたい選手オブジェクト４６を選択する。すなわち、ユーザは指示を与えたい選手オブジェクト４６をコントローラ２２の前端部２２ａで指し示し、該選手オブジェクト４６までカーソル５６を移動させる。この状態でユーザが選択ボタン（例えばボタン３７ｂ）を押下すると、該選手オブジェクト４６が操作対象（指示対象）として選択される。なお以下では、操作対象として選択中の選手オブジェクト４６のことを「操作対象選手オブジェクト」と記載する。
【００４４】
操作対象選手オブジェクトはカーソル５６の位置（カーソル５６の表示位置に対応する仮想３次元空間４０内の位置）に向かって移動するようになる。このため、ユーザは、操作対象選手オブジェクトの移動方向をコントローラ２２の前端部２２ａで指し示すことによって指示できる。
【００４５】
また、ユーザは操作対象選手オブジェクトに対して移動目標位置を設定することができる。操作対象選手オブジェクトに対して移動目標位置を設定する場合、ユーザは移動目標位置設定ボタン（例えばボタン３７ｃ）を押しながらカーソル５６を操作対象選手オブジェクトから所望の移動目標位置まで移動させる。図６はこの場合のゲーム画面５０の一例を示す。図６に示すように、この場合のゲーム画面５０には、操作対象選手オブジェクトからカーソル５６への矢印画像５８が表示される。この状態でユーザが移動目標位置設定ボタンの押下を解除すると、その時点のカーソル５６の位置（カーソル５６の表示位置に対応する仮想３次元空間４０内の位置）が操作対象選手オブジェクトの移動目標位置として設定される。移動目標位置が設定された操作対象選手オブジェクトは、カーソル５６の位置に関係になく、移動目標位置に向かって移動し続けるようになる。この場合、ユーザが他の選手オブジェクト４６を操作対象として選択した後も、操作対象選手オブジェクトであった選手オブジェクト４６は移動目標位置に向けて移動し続ける。
【００４６】
操作対象選手オブジェクトがボールオブジェクト４８を保持している場合、ユーザは操作対象選手オブジェクトのキック方向をコントローラ２２の前端部２２ａで指し示すことによって指示できる。すなわち、ユーザがキック指示ボタン（例えばボタン３７ａ）を押下すると、カーソル５６の位置（カーソル５６の表示位置に対応する仮想３次元空間４０内の位置）への方向がキック方向として設定され、操作対象選手オブジェクトは該キック方向にボールオブジェクト４８を蹴り出す。例えば、他の選手オブジェクト４６にカーソル５６が移動した状態でユーザがキック指示ボタンを押下すると、該選手オブジェクト４６へのパスを操作対象選手オブジェクトが実行する。
【００４７】
なお、操作対象選手オブジェクトとして選択中の選手オブジェクト４６以外の選手オブジェクト４６は所定の行動決定アルゴリズムに従って行動する。
【００４８】
以下、上記のゲーム装置１０において、操作対象選手オブジェクトに対して移動目標位置が設定された場合の味方選手オブジェクトの移動制御を好適に実行するための技術について説明する。
【００４９】
図７は、ゲーム装置１０で実現される機能のうち、本発明に関連するものを主として示す機能ブロック図である。図７に示すように、ゲーム装置１０はゲームデータ記憶部６０（選手キャラクタ位置記憶手段）と、移動目標位置取得部６２と、判定部６４と、味方選手制御部６６と、を含む。これらの機能ブロックはマイクロプロセッサ１３がプログラムを実行することによって実現される。
【００５０】
ゲームデータ記憶部６０は例えば主記憶１４や光ディスク３２によって実現される。ゲームデータ記憶部６０はサッカーゲームを実行するためのゲームデータを記憶する。ゲームデータ記憶部６０は、例えば、各オブジェクトの形状を示すモデルデータ、選手オブジェクト４６の各種動作を示すモーションデータや、各選手オブジェクト４６の各種能力（例えばパス能力、シュート能力やドリブル能力等）の高さを示す能力パラメータデータを記憶する。
【００５１】
また、ゲームデータ記憶部６０はゲームの現在状況を示すゲーム状況データを記憶する。図８はゲーム状況データの一例を示す。ゲーム状況データは試合時間データと得点状況データとを含む。またゲーム状況データはカーソル５６の位置データを含む。カーソル５６の位置データは、例えばカーソル５６の表示位置や、カーソル５６の表示位置に対応する仮想３次元空間４０内の位置を示すデータである。またゲーム状況データは、仮想カメラ４９の状態データと、ボールオブジェクト４８の状態データと、を含む。仮想カメラ４９の状態データは位置データ、姿勢（視線方向）データ等を含む。ボールオブジェクト４８の状態データは位置データ、移動方向・速度データ等を含む。
【００５２】
またゲーム状況データは、仮想３次元空間４０に配置された各選手オブジェクト４６の状態データを含む。選手オブジェクト４６の状態データは位置データ、姿勢データ、移動方向・速度データ、移動目標位置データ、指示対象フラグ、ボール保持フラグ等を含む。移動目標位置データは、選手オブジェクト４６に対して設定された移動目標位置を示すデータである。「操作対象フラグ」は選手オブジェクト４６が操作対象選手オブジェクトとして選択中であるか否かを示すデータである。「ボール保持フラグ」は選手オブジェクト４６がボールオブジェクト４８を保持中であるか否かを示すデータである。なお図８において、「選手オブジェクト（Ａ０１）」、「選手オブジェクト（Ａ０２）」及び「選手オブジェクト（Ａ１１）」はユーザの操作対象チームの選手オブジェクト４６を示し、「選手オブジェクト（Ｂ０１）」及び「選手オブジェクト（Ｂ１１）」は対戦相手チームの選手オブジェクト４６を示している。
【００５３】
移動目標位置取得部６２はマイクロプロセッサ１３を主として実現される。移動目標位置取得部６２はユーザの操作内容に基づいて、操作対象選手オブジェクトの移動目標位置を取得する。すなわち、移動目標位置取得部６２は操作対象選手オブジェクトの移動目標位置の指定操作を受け付ける。そして、移動目標位置取得部６２は、ユーザによって指定された、操作対象選手オブジェクトの移動目標位置を取得する。
【００５４】
判定部６４はマイクロプロセッサ１３を主として実現される。判定部６４は、ユーザが操作対象選手オブジェクトの移動目標位置を指定した場合、該移動目標位置に基づいて特定される判定領域内に味方選手オブジェクト（ユーザの操作対象チームに所属する他の選手オブジェクト４６）が位置しているか否かを判定する。図９は判定領域の一例を示す図である。図９に示す判定領域７２は操作対象選手オブジェクトの移動目標位置７０からの距離が所定距離（Ｒ）以内である領域である。
【００５５】
味方選手制御部６６はマイクロプロセッサ１３を主として実現される。味方選手制御部６６は、味方選手オブジェクトが判定領域７２内に位置していると判定された場合、該味方選手オブジェクトを移動目標位置から離れるように移動させる。本実施の形態の場合、味方選手制御部６６は、味方選手オブジェクトが判定領域７２内に位置していると判定された場合、移動目標位置から該味方選手オブジェクトの現在位置への方向に基づいて、該味方選手オブジェクトの移動方向を決定する。図１０は味方選手制御部６６の動作の一例について説明するための図である。図１０に示す例では、味方選手オブジェクト４６ａ，４６ｂが判定領域７２内に位置している。この場合、味方選手制御部６６は味方選手オブジェクト４６ａ，４６ｂの移動目標位置を下記に示すように設定し、該移動目標位置に向けての移動を味方選手オブジェクト４６ａ，４６ｂに開始させる。味方選手オブジェクト４６ａの移動目標位置は、移動目標位置７０から味方選手オブジェクト４６ａの現在位置の方に伸ばした直線の方向７４ａに、味方選手オブジェクト４６ａの現在位置から所定距離（Ｌ）移動した位置７６ａに設定される。同様に、味方選手オブジェクト４６ｂの移動目標位置は、移動目標位置７０から味方選手オブジェクト４６ｂの現在位置の方に伸ばした直線の方向７４ｂに、味方選手オブジェクト４６ｂの現在位置から所定距離（Ｌ）移動した位置７６ｂに設定される。なお、所定距離（Ｌ）は、例えば判定領域７２の半径（Ｒ）以上に設定される。また、この場合、味方選手オブジェクト４６ａ，４６ｂの移動目標位置は、移動目標位置がピッチ４１（所定領域）外になってしまわないようにして設定される。詳細については後述する（図１２のＳ２０６及びＳ２０７、図１３参照）。
【００５６】
次に、上記の機能ブロックを実現するためにゲーム装置１０が実行する処理について説明する。図１１はゲーム装置１０が所定時間（例えば１／６０秒）ごとに実行する処理を示すフロー図である。マイクロプロセッサ１３は光ディスク３２に記憶されるプログラムに従って、図１１に示す処理を実行する。
【００５７】
図１１に示すように、マイクロプロセッサ１３は、コントローラ２２から供給される操作信号（ポインティング情報）に基づいて、カーソル５６の位置データを更新する（Ｓ１０１）。また、マイクロプロセッサ１３は各選手オブジェクト４６の状態データを更新する（Ｓ１０２）。
【００５８】
図１２はこのステップ（Ｓ１０２）の処理の一部として実行される処理を示すフロー図である。図１２に示す処理では、まずマイクロプロセッサ１３（移動目標位置取得部６２）は、操作対象選手オブジェクトに対してユーザが移動目標位置を設定したか否かを判定する（Ｓ２０１）。すなわち、移動目標位置の指定操作が行われたか否かがコントローラ２２から供給される操作信号に基づいて判定される。操作対象選手オブジェクトに対して移動目標位置が設定された場合、マイクロプロセッサ１３（移動目標位置取得部６２）は操作対象選手オブジェクトの移動目標位置データを更新し、操作対象選手オブジェクトの移動目標位置として、その時点のカーソル５６の表示位置に対応する仮想３次元空間４０内の位置を設定する（Ｓ２０２）。
【００５９】
その後、マイクロプロセッサ１３（判定部６４）は判定領域７２内に味方選手オブジェクトが位置しているか否かを判定する（Ｓ２０３）。判定領域７２は、操作対象選手オブジェクトの移動目標位置（ユーザが指定した移動目標位置）からの距離が所定距離（Ｒ）以下の領域である（図９参照）。判定領域７２内に味方選手オブジェクトが位置している場合、マイクロプロセッサ１３は、判定領域７２内に位置している味方選手オブジェクトのいずれかを着目味方選手オブジェクトとして選出する（Ｓ２０４）。そして、マイクロプロセッサ１３（味方選手制御部６６）は該着目味方選手オブジェクトを処理の対象として、下記に説明する処理（Ｓ２０５〜Ｓ２０８）を実行する。
【００６０】
すなわち、マイクロプロセッサ１３は、操作対象選手オブジェクトの移動目標位置から着目味方選手オブジェクトの現在位置の方に伸ばした直線の方向を、着目味方選手オブジェクトの移動方向候補として取得する（Ｓ２０５）。例えば図１０における味方選手オブジェクト４６ａが着目味方選手オブジェクトである場合には、操作対象選手オブジェクトの移動目標位置７０から味方選手オブジェクト４６ａの現在位置の方に伸ばした直線の方向７４ａが移動方向候補として取得される。
【００６１】
その後、マイクロプロセッサ１３は、その移動方向候補に対応する移動目標位置候補がピッチ４１内であるか否かを判定する（Ｓ２０６）。このステップでは、まず、着目味方選手オブジェクトの現在位置から、移動方向候補に、所定距離（Ｌ）移動した位置が移動目標位置候補として取得される。例えば図１０における味方選手オブジェクト４６ａが着目味方選手オブジェクトである場合には、味方選手オブジェクト４６ａの現在位置から、方向７４ａ（移動方向候補）に、所定距離（Ｌ）移動した位置７６ａが移動目標位置候補として取得される。そして、その移動目標位置候補がピッチ４１内であるか否かが判定される。言い換えれば、このステップでは、着目味方選手オブジェクトが現在位置から移動方向候補に移動し続けたと仮定した場合において、ピッチ４１の境界（ゴールライン４３又はタッチライン４５）までの移動距離が所定距離（Ｌ）以上であるか否かが判定される。ピッチ４１の境界（ゴールライン４３又はタッチライン４５）までの移動距離が所定距離（Ｌ）以上である場合、着目味方選手オブジェクトが現在位置から移動方向候補に所定距離（Ｌ）移動したとしても、着目味方選手オブジェクトはピッチ４１外に出ない。すなわち、この場合、移動目標位置候補がピッチ４１内になる。
【００６２】
移動目標位置候補がピッチ４１内でない場合、マイクロプロセッサ１３は移動方向候補を補正する（Ｓ２０７）。図１３はこの処理を説明するための図である。例えば図１３に示すように、マイクロプロセッサ１３は、移動方向候補を所定方向（例えば時計回りの逆方向）に所定角度（θ）回転することによって得られる方向を新たな移動方向候補として取得する。この場合、味方選手オブジェクトの現在位置が回転の中心に設定される。なお、操作対象選手オブジェクトの移動目標位置７０が回転の中心として設定されるようにしてもよい。そして、マイクロプロセッサ１３は、補正後の移動方向候補に対応する移動目標位置候補がピッチ４１内であるか否かを判定する（Ｓ２０６）。移動方向候補の補正は、移動目標位置候補がピッチ４１内になるまで繰り返される。例えば図１３に示す味方選手オブジェクト４６ｃの場合、Ｓ２０５では、操作対象選手オブジェクトの移動目標位置７０から味方選手オブジェクト４６ｃの現在位置の方に伸ばした直線の方向７４ｃ−１が移動方向候補として取得される。しかし、この移動方向候補（方向７４ｃ−１）に対応する移動目標位置候補７６ｃ−１はピッチ４１外である。このため、移動方向候補の補正が行われ、方向７４ｃ−２が新たな移動方向候補として取得される。しかし、この移動方向候補（方向７４ｃ−２）に対応する移動目標位置候補７６ｃ−２もピッチ４１外である。このため、移動方向候補の補正が再度行われ、方向７４ｃ−３が新たな移動方向候補として取得される。この移動方向候補（方向７４ｃ−３）に対応する移動目標位置候補７６ｃ−３はピッチ４１内であるため、移動方向候補の補正は行われず、下記に説明するＳ２０８の処理が実行される。
【００６３】
一方、移動目標位置候補がピッチ４１内である場合、マイクロプロセッサ１３は着目味方選手オブジェクトの移動目標位置データを更新し、その移動目標位置候補を、着目味方選手オブジェクトの移動目標位置として設定する（Ｓ２０８）。
【００６４】
その後、マイクロプロセッサ１３は、判定領域７２内に位置している味方選手オブジェクトのうちに、Ｓ２０５〜Ｓ２０８の処理を実行済みでない味方選手オブジェクトが存在するか否かを判定する（Ｓ２０９）。そのような味方選手オブジェクトが存在する場合、マイクロプロセッサ１３はそのような味方選手オブジェクトのいずれかを新たな着目味方選手オブジェクトとして選出する（Ｓ２１０）。そして、マイクロプロセッサ１３は該着目味方選手オブジェクトを処理の対象として、上記に説明した処理（Ｓ２０５〜Ｓ２０８）を実行する。一方、上記のような味方選手オブジェクトが存在しない場合、すなわち、判定領域７２内に位置しているすべての味方選手オブジェクトに対してＳ２０５〜Ｓ２０８の処理を実行済みである場合、本処理は終了する。
【００６５】
Ｓ１０２の処理では、上記に説明した処理（図１２参照）の他に、例えば下記に説明するような処理も実行される。例えば、移動目標位置が設定されている選手オブジェクト４６の状態データが、該選手オブジェクト４６が移動目標位置に向かって移動するように更新される。より具体的には、移動目標位置が設定されている選手オブジェクト４６の位置データが更新され、該選手オブジェクト４６の位置が、現在の位置から移動目標位置への方向に、該選手オブジェクト４６の移動速度に応じた距離だけ移動した位置に更新される。また例えば、移動目標位置が設定されている選手オブジェクト４６が移動目標位置まで到達した場合、移動目標位置の設定が解除される。また例えば、操作対象選手オブジェクトに対して移動目標位置が設定されていない場合、カーソル５６の表示位置に対応する仮想３次元空間４０内の位置に向かって操作対象選手オブジェクトが移動するように、操作対象選手オブジェクトの状態データが更新される。また例えば、コントローラ２２から供給される操作信号に基づいて、キック指示ボタンが押下されたと判定された場合、操作対象選手オブジェクトがキック動作を行うように、操作対象選手オブジェクトの状態データが更新される。また例えば、操作対象選手オブジェクト以外の選手オブジェクト４６の状態データが所定の行動決定アルゴリズムに従って更新される。
【００６６】
図１１に示すように、各選手オブジェクト４６の状態データが更新された後、マイクロプロセッサ１３はボールオブジェクト４８の状態データを更新する（Ｓ１０３）。例えば、ボールオブジェクト４８の位置データが更新され、ボールオブジェクト４８の位置が、現在の位置から、移動方向に、移動速度に応じた距離だけ移動した位置に更新される。また例えば、いずれかの選手オブジェクト４６がボールオブジェクト４８をキックした場合、キック方向にボールオブジェクト４８が移動するように、ボールオブジェクト４８の状態データが更新される。
【００６７】
その後、マイクロプロセッサ１３は仮想カメラ４９の状態データを更新する（Ｓ１０４）。例えば、ボールオブジェクト４８の位置等に基づいて、仮想カメラ４９の状態データが更新される。また、マイクロプロセッサ１３は試合時間データや得点状況データを更新する（Ｓ１０５）。例えば、ボールオブジェクト４８が一方のチームのゴールオブジェクト４４内に移動した場合、他方のチームの得点イベントが発生し、他方のチームの得点が増加される。
【００６８】
その後、マイクロプロセッサ１３及び画像処理部１５はゲーム画面５０をゲーム状況データに基づいて更新する（Ｓ１０６）。まず、仮想３次元空間４０を仮想カメラ４９から見た様子を表す画像がＶＲＡＭ上に描画される。その後、ＶＲＡＭ上に描画された画像の所定位置に時間欄５２や得点欄５４が上書き描画される。また、ＶＲＡＭ上に描画された画像上にカーソル５６も上書き描画される。このようにしてＶＲＡＭ上に描画された画像はゲーム画面５０としてモニタ３０に表示出力される。
【００６９】
以上に説明したゲーム装置１０では、操作対象選手オブジェクトに対して移動目標位置が設定された場合、味方選手オブジェクトが該移動目標位置から離れるように制御される。このため、ゲーム装置１０によれば、味方選手オブジェクトが邪魔になって操作対象選手オブジェクトが見え難くなってしまうことが起こらないように図ることが可能になる。
【００７０】
またゲーム装置１０によれば、ゲーム画面５０の表示に係る処理負荷の軽減を図ることが可能になる。複数の選手オブジェクト４６が密集している領域がゲーム画面５０に表示される場合、それらの各選手オブジェクト４６について演算処理（座標変換演算等）を行わなければならなくなるため、処理負荷が重くなってしまう。この点、ゲーム装置１０によれば、操作対象選手オブジェクトの移動目標位置から離れるように味方選手オブジェクトが制御されるため、操作対象選手オブジェクトの移動目標位置付近に位置する選手オブジェクト４６の数を減らすことが可能になる。その結果として、操作対象選手オブジェクトの移動目標位置付近の領域がゲーム画面５０に表示される場合の、ゲーム画面５０の表示に係る処理負荷が軽減される。ゲーム装置１０では、操作対象選手オブジェクトの移動目標位置から離れるように味方選手オブジェクトが制御されるため、操作対象選手オブジェクトと１又は複数の味方選手オブジェクトとが近くに位置する頻度が低下する。すなわち、ゲーム装置１０によれば、複数の選手オブジェクト４６（操作対象選手オブジェクトと１又は複数の味方選手オブジェクト）が同時にゲーム画面５０に表示される頻度が低下する。その結果、ゲーム画面５０の表示に係る処理負荷が軽減される。
【００７１】
ところで、味方選手オブジェクトをマークする対戦相手選手オブジェクト（対戦相手チームに所属する選手オブジェクト４６）が存在する場合、該対戦相手選手オブジェクトも味方選手オブジェクトに追従して移動目標位置から離れるようになる。その結果、味方選手オブジェクトが操作対象選手オブジェクトの移動目標位置付近にスペースを作る動きを行う様子をユーザは楽しめるようになる。
【００７２】
またゲーム装置１０では、操作対象選手オブジェクトの移動目標位置付近に位置する味方選手オブジェクトが、該移動目標位置から味方選手オブジェクトの現在位置の方に伸ばした直線の方向に移動するように制御される（図１０参照）。このため、プレイヤは操作対象選手オブジェクトの移動目標位置を設定することによって、味方選手オブジェクトの移動方向を指示することもできるようになる。すなわち、プレイヤは、操作対象選手オブジェクトの移動目標位置を、操作対象選手オブジェクトの移動目標位置から味方選手オブジェクトの現在位置の方に伸ばした直線の方向が所望の方向となるように設定することによって、味方選手オブジェクトを所望の方向に移動させることもできる。
【００７３】
またゲーム装置１０では、図１２のＳ２０６及びＳ２０７の処理が実行されることによって、味方選手オブジェクトがピッチ４１外に出ないように図られている。操作対象選手オブジェクトの移動目標位置から離れるように味方選手オブジェクトが移動させる場合において該味方選手オブジェクトがピッチ４１外に出てしまうと、ユーザに違和感を感じさせてしまう。この点、ゲーム装置１０によれば、そのような違和感をユーザに感じさせないように図ることが可能になる。
【００７４】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【００７５】
例えば、ピッチ４１を複数の部分領域に分割し、判定領域７２内に位置する味方選手オブジェクトの移動方向に関する移動方向データ（移動方向情報）を各部分領域に対応づけて記憶しておくようにしてもよい。例えば、移動方向データは、判定領域７２内に位置する味方選手オブジェクトに対して設定可能な移動方向を示すデータである。なお、移動方向データは、判定領域７２内に位置する味方選手オブジェクトに対して設定不可能な移動方向を示すデータであってもよい。図１４はピッチ４１の分割の一例について説明するための図である。図１４に示す例ではピッチ４１が９つの部分領域Ａ〜Ｉに分割されている。例えば、ゴールライン４３及びタッチライン４５の双方に隣接する部分領域Ａ，Ｃ，Ｇ，Ｉに対しては、味方選手オブジェクトがゴールライン４３又はタッチライン４５を越えてしまわないような移動方向の範囲を示す移動方向データが対応づけられる。また例えば、ゴールライン４３に隣接する部分領域Ｄ，Ｆに対しては、味方選手オブジェクトがゴールライン４３を越えてしまわないような移動方向の範囲を示す移動方向データが対応づけられる。また例えば、タッチライン４５に隣接する部分領域Ｂ，Ｈに対しては、味方選手オブジェクトがタッチライン４５を越えてしまわないような移動方向の範囲を示す移動方向データが対応づけられる。
【００７６】
この場合、図１１に示す処理において、マイクロプロセッサ１３（味方選手制御部６６）はＳ２０５〜Ｓ２０８の処理に代えて下記に説明するような処理を実行する。すなわち、マイクロプロセッサ１３は着目味方選手オブジェクトが位置する部分領域を特定する。次に、マイクロプロセッサ１３は着目味方選手オブジェクトが位置する部分領域に対応づけられた移動方向データを読み出し、該移動方向データが示す移動方向の範囲内で、着目味方選手オブジェクトの移動方向を決定する。そして、マイクロプロセッサ１３は、着目味方選手オブジェクトの現在位置から、決定された移動方向に、所定距離（Ｌ）移動した位置を、着目味方選手オブジェクトの移動目標位置として設定する。
【００７７】
このようにしても、操作対象選手オブジェクトの移動目標位置から離れるように味方選手オブジェクトを移動させる場合において該味方選手オブジェクトがピッチ４１外に出てしまわないように図ることが可能になる。
【００７８】
また例えば、ゲームデータ記憶部６０は、ユーザの操作対象チームに所属する選手オブジェクト４６同士の連係度（連係の熟練度）を示す連係度パラメータを記憶するようにしてもよい。図１５は連係度パラメータデータの一例を示す図である。なお図１５において、「Ａ０１」、「Ａ０２」、「Ａ０３」、「Ａ１８」、「Ａ１９」及び「Ａ２０」はユーザの操作対象チームに所属する選手オブジェクト４６の識別情報（ＩＤ）を示す。図１５に示す連係度パラメータデータには、ユーザの操作対象チームに所属する選手オブジェクト４６の各々について、その選手オブジェクト４６と、他の選手オブジェクト４６の各々と、の間の連係度を示す連係度パラメータが記憶されている。連係度パラメータは０から１００までの値をとり、連係度パラメータの値が高いほど連係度が高いことを示す。
【００７９】
ここで、連係度パラメータが変化する場合について説明する。ここでは、第１の選手オブジェクト４６（例えば、ＩＤが「Ａ０１」である選手オブジェクト４６）と、第２の選手オブジェクト４６（例えば、ＩＤが「Ａ０２」である選手オブジェクト４６）と、の間の連係度パラメータが変化する場合を例に説明する。例えば、第１及び第２の選手オブジェクト４６との双方が試合に出場している場合、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。また例えば、第１及び第２の選手オブジェクト４６のポジション（ＧＫ、ＤＦ、ＭＦ、ＦＷ）が近い場合、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。
【００８０】
また例えば、第１及び第２の選手オブジェクト４６の間でパスが成功した場合、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。また例えば、第１の選手オブジェクト４６からのパスを受けた第２の選手オブジェクト４６が得点を上げた場合、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。
【００８１】
また例えば、第１の選手オブジェクト４６が試合中に行動した領域と、第２の選手オブジェクト４６が試合中に行動した領域と、の重なり具合に基づいて、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。この場合、例えば下記に説明するような処理が実行される。すなわち、ピッチ４１が縦横にそれぞれｎ，ｍ分割され、ピッチ４１がｎ＊ｍ個の区画に分割される。そして、それらの各区画ごとに、第１の選手オブジェクト４６が試合中にその区間内に位置していた時間が計測される。また、それらの各区画ごとに、第２の選手オブジェクト４６が試合中にその区画内に位置していた時間も計測される。そして、第１の選手オブジェクト４６の計測結果と、第２の選手オブジェクト４６の計測結果と、の比較結果に基づいて、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。例えば、第１の選手オブジェクト４６が最も長い時間位置していた区画と、第２の選手オブジェクト４６が最も長い時間位置していた区画と、が一致する場合、第１及び第２の選手オブジェクト４６の間の連係度パラメータの値が上昇する。
【００８２】
また、味方選手制御部６６は、上記に説明した連係度パラメータに基づいて、味方選手オブジェクトを操作対象選手オブジェクトの移動目標位置から離れるように移動させるようにしてもよい。例えば、図１１に示す処理において、Ｓ２０４又はＳ２１０の処理が実行された後、Ｓ２０５の処理が実行される前に、マイクロプロセッサ１３（味方選手制御部６６）は下記に説明するような処理を実行するようにしてもよい。すなわち、マイクロプロセッサ１３は操作対象選手オブジェクトと着目味方選手オブジェクトとの間の連係度パラメータを読み出す。次に、マイクロプロセッサ１３は該連係度パラメータの値が所定の基準値以上であるか否かを判定する。そして、連係度パラメータの値が基準値以上である場合、マイクロプロセッサ１３はＳ２０５〜Ｓ２０８の処理を実行する。一方、連係度パラメータの値が基準値以上でない場合、マイクロプロセッサ１３はＳ２０５〜Ｓ２０８の処理を実行することなく、Ｓ２０９の処理を実行する。
【００８３】
こうすれば、操作対象選手オブジェクトと味方選手オブジェクトとがお互いに理解し合っている場合に、味方選手オブジェクトが操作対象選手オブジェクトの邪魔をしないように（操作対象選手オブジェクトのためにスペースを作るように）行動するようになる。その結果、操作対象選手オブジェクトと味方選手オブジェクトとがお互いに理解し合っているか否かをユーザに感じさせることができるようになる。すなわち、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度の高さ（低さ）をユーザに感じさせることができるようになる。
【００８４】
なお、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度パラメータの値に基づいて、該味方選手オブジェクトの移動開始を待機させるようにしてもよい。例えば、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度パラメータの値が所定の基準値以上である場合、該味方選手オブジェクトが直ちに移動を開始するようにし、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度パラメータの値が基準値以上でない場合、所定時間が経過した後に該味方選手オブジェクトが移動を開始するようにしてもよい。または、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度パラメータの値に基づいて決定される待機時間が経過した後、該味方選手オブジェクトが移動を開始するようにしてもよい。この場合、連係度パラメータの値と待機時間とを対応づけてなるデータが記憶され、このデータに基づいて待機時間が決定される。なお、このデータはテーブル形式のデータであってもよいし、演算式形式のデータであってもよい。また、このデータは連係度が高くなると待機時間が短くなるようにして設定される。
【００８５】
こうすれば、操作対象選手オブジェクトと味方選手オブジェクトとがお互いに理解し合っている場合には、操作対象選手オブジェクトの邪魔をしないようにするための行動（操作対象選手オブジェクトのためにスペースを作るための行動）を味方選手オブジェクトが比較的早期に開始するようになる。一方、操作対象選手オブジェクトと味方選手オブジェクトとがお互いに理解し合っていない場合には、操作対象選手オブジェクトの邪魔をしないようにするための行動（操作対象選手オブジェクトのためにスペースを作るための行動）を味方選手オブジェクトが開始するのが遅れるようになる。このようにしても、操作対象選手オブジェクトと味方選手オブジェクトとがお互いに理解し合っているか否かをユーザに感じさせることができるようになる。すなわち、操作対象選手オブジェクトと味方選手オブジェクトとの間の連係度の高さ（低さ）をユーザに感じさせることができるようになる。
【００８６】
また例えば、図１１に示す処理では、Ｓ２０３の処理が実行される前に、マイクロプロセッサ１３（味方選手制御部６６）は、操作対象選手オブジェクトの位置と移動目標位置との間の距離が所定の基準距離以下であるか否かを判定するようにしてもよい。そして、該距離が基準距離以下である場合、マイクロプロセッサ１３はＳ２０３〜Ｓ２１０の処理を実行し、該距離が基準距離以下でない場合、マイクロプロセッサ１３はＳ２０３〜Ｓ２１０の処理を実行しないようにしてもよい。
【００８７】
こうすれば、操作対象選手オブジェクトと移動目標位置（移動目標位置付近の味方選手オブジェクト）との間の距離が比較的大きい場合には、操作対象選手オブジェクトと味方選手オブジェクトとの間の意思疎通が円滑に行なわれない様子が好適に演出されるようになる。
【００８８】
また例えば、判定領域７２の大きさは、操作対象選手オブジェクトと移動目標位置との間の距離に基づいて変化するようにしてもよい。本実施の形態の場合、基準距離（Ｒ）の長さが、操作対象選手オブジェクトと移動目標位置との間の距離に基づいて変化するようにしてもよい。この場合、操作対象選手オブジェクトと移動目標位置との間の距離と、基準距離（Ｒ）と、を対応づけてなるデータが記憶される。またこの場合、図１１のＳ２０３において、マイクロプロセッサ１３（判定部６４）は、操作対象選手オブジェクトの現在位置と、移動目標位置と、の間の距離に対応する基準距離（Ｒ）を上記のデータに基づいて取得する。その後、マイクロプロセッサ１３（判定部６４）は、操作対象選手オブジェクトの移動目標位置（ユーザが指定した移動目標位置）からの距離が基準距離（Ｒ）以下である判定領域７２内に味方選手オブジェクトが位置しているか否かを判定する。
【００８９】
この場合、上記のデータは、例えば、操作対象選手オブジェクトと移動目標位置との間の距離が大きくなると、判定領域７２が小さくなるようにして設定するとよい。こうすれば、操作対象選手オブジェクトと移動目標位置（移動目標位置付近の味方選手オブジェクト）との間の距離が比較的大きい場合には判定領域７２が比較的狭くなるため、その結果として、操作対象選手オブジェクトのために用意されるスペースが比較的狭くなる。一方、操作対象選手オブジェクトと移動目標位置（移動目標位置付近の味方選手オブジェクト）との間の距離が比較的小さい場合には判定領域７２が比較的広くなるため、その結果として、操作対象選手オブジェクトのために用意されるスペースが比較的広くなる。このようにしても、操作対象選手オブジェクトと移動目標位置（移動目標位置付近の味方選手オブジェクト）との間の距離に応じて、操作対象選手オブジェクトと味方選手オブジェクトとの間の意思疎通が円滑に行われたり又は行われなかったりする様子が好適に演出されるようになる。
【００９０】
また例えば、ゲーム装置１０で実行されるゲームは、３つの座標要素によって構成される３次元ゲーム空間をゲーム画面５０に表示するゲームに限られない。ゲーム装置１０で実行されるゲームは、２つの座標要素によって構成される２次元ゲーム空間をゲーム画面５０に表示するゲームであってもよい。すなわち、ゲーム装置１０で実行されるゲームは、ボールキャラクタや選手キャラクタの位置等が２つの座標要素で管理されるゲームであってもよい。
【００９１】
また例えば、ゲーム装置１０で実行されるゲームは、２名以上のユーザによって行われるゲームであってもよい。また例えば、ゲーム装置１０で実行されるゲームはサッカーゲームに限られない。ゲーム装置１０で実行されるゲームはサッカーゲーム以外のスポーツゲーム（バスケットボールゲームやアイスホッケーゲーム等）であってもよい。
【００９２】
また例えば、操作入力部２１はタッチパネル又はマウス等であってもよい。
【００９３】
また例えば、カーソル５６は方向ボタン３６の操作に従って移動するようにしてもよい。また例えば、ユーザが方向ボタン３６を操作することによって、指示対象の選手オブジェクト４６の移動方向やキック方向を直接指示できるようにしてもよい。この場合、カーソル５６の表示を省略することができる。
【００９４】
また例えば、カーソル５６を表すオブジェクトを仮想３次元空間４０に配置することによって、カーソル５６がゲーム画面５０に表示されるようにしてもよい。
【００９５】
また例えば、以上の説明では、プログラムを情報記憶媒体たる光ディスク３２を介してゲーム装置１０に供給するようにしたが、通信ネットワークを介してプログラムをゲーム装置１０に配信するようにしてもよい。図１６は、通信ネットワークを用いたプログラム配信システムの全体構成を示す図である。図１６に基づいて本発明に係るプログラム配信方法を説明する。図１６に示すように、このプログラム配信システム１００はゲーム装置１０、通信ネットワーク１０６、プログラム配信装置１０８を含む。通信ネットワーク１０６は、例えばインターネットやケーブルテレビネットワークを含む。プログラム配信装置１０８はゲームデータベース１０２、サーバ１０４を含む。このシステムでは、ゲームデータベース（情報記憶媒体）１０２に、光ディスク３２に記憶されたプログラムと同様のプログラムが記憶される。そして、ゲーム装置１０を用いて需要者がゲーム配信要求をすることにより、それが通信ネットワーク１０６を介してサーバ１０４に伝えられる。そして、サーバ１０４はゲーム配信要求に応じてゲームデータベース１０２からプログラムを読み出し、それをゲーム装置１０に送信する。ここではゲーム配信要求に応じてゲーム配信するようにしたが、サーバ１０４から一方的に送信するようにしてもよい。また、必ずしも一度にゲームの実現に必要な全てのプログラムを配信（一括配信）する必要はなく、ゲームの局面に応じて必要な部分を配信（分割配信）するようにしてもよい。このように通信ネットワーク１０６を介してゲーム配信するようにすれば、プログラムを需要者は容易に入手することができるようになる。
【符号の説明】
【００９６】
１０  ゲーム装置、１１  家庭用ゲーム機、１２  バス、１３  マイクロプロセッサ、１４  主記憶、１５  画像処理部、１６  音声処理部、１７  光ディスクドライブ、１８
メモリカードスロット、１９  通信インタフェース、２０  コントローラインタフェース、２１  操作入力部、２２  コントローラ、２２ａ  前端部、２３  撮像部、２４  撮像画像解析部、２５  発光部、３０  モニタ、３１  スピーカ、３２  光ディスク、３３
メモリカード、３４ａ，３４ｂ  光源、３５  基準位置、３６  方向ボタン、３７ａ，３７ｂ，３７ｃ  ボタン、４０  仮想３次元空間、４１  ピッチ、４２  フィールドオブジェクト、４３  ゴールライン、４４  ゴールオブジェクト、４５  タッチライン、４６
選手オブジェクト、４６ａ，４６ｂ，４６ｃ  味方選手オブジェクト、４８  ボールオブジェクト、４９  仮想カメラ、５０  ゲーム画面、５２  時間欄、５４  得点欄、５６
カーソル、５８  矢印画像、６０  ゲームデータ記憶部、６２  移動目標位置取得部、６４  判定部、６６  味方選手制御部、７０  移動目標位置、７２  判定領域、７４ａ，７４ｂ，７４ｃ−１，７４ｃ−２，７４ｃ−３  方向、７６ａ，７６ｂ，７６ｃ−１，７６ｃ−２，７６ｃ−３  位置、１００  プログラム配信システム、１０２  データベース、１０４  サーバ、１０６  通信ネットワーク、１０８  プログラム配信装置。
【図１】
0005540128.tif 000002
【図２】
0005540128.tif 000003
【図３】
0005540128.tif 000004
【図４】
0005540128.tif 000005
【図５】
0005540128.tif 000006
【図６】
0005540128.tif 000007
【図７】
0005540128.tif 000008
【図８】
0005540128.tif 000009
【図９】
0005540128.tif 000010
【図１０】
0005540128.tif 000011
【図１１】
0005540128.tif 000012
【図１２】
0005540128.tif 000013
【図１３】
0005540128.tif 000014
【図１４】
0005540128.tif 000015
【図１５】
0005540128.tif 000016
【図１６】
0005540128.tif 000017