説明

ゲーム装置、ゲーム装置の制御方法及びプログラム

【課題】ユーザによって指定されたスクリーン座標値に対応する仮想3次元空間内の位置を比較的簡易な処理で判断できるようになるゲーム装置を提供すること。
【解決手段】基準点変換部72は、仮想3次元空間に設定される複数の基準点の各々を所定の座標変換演算を用いてスクリーン座標系に座標変換する。基準点選択部76は、ユーザによって指定されたスクリーン座標値と、複数の基準点の各々に対応するスクリーン座標値と、の比較結果に基づいて、複数の基準点のうちの少なくとも1つを選択する。基準点再設定部78は、基準点選択部76によって選択された基準点に基づいて、複数の基準点を再設定する。ゲーム処理部80は、基準点再設定部78によって再設定された複数の基準点のうちから基準点選択部76によって選択される基準点に基づいて、ゲーム処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はゲーム装置、ゲーム装置の制御方法及びプログラムに関する。
【背景技術】
【0002】
仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、該仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置が知られている。
【特許文献1】特開2005−050070号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記のようなゲーム装置において、例えば、特許3262677号公報に記載の操作具やタッチパネルなどのポインティングデバイスを用いて、ユーザにスクリーン座標値(スクリーン座標系における座標値)を指定させ、ユーザによって指定されたスクリーン座標値に対応する仮想3次元空間内の位置に基づいて進行するゲームを実現したい場合がある。このようなゲームを実現するためには、スクリーン座標値から、該スクリーン座標値に対応する仮想3次元空間内の位置を判断する必要がある。しかしながら、スクリーン座標値に対応する仮想3次元空間内の位置を判断するためには複雑な処理を実行しなければならなかった。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、スクリーン座標値に対応する仮想3次元空間内の位置を比較的簡易な処理で判断できるようになるゲーム装置、ゲーム装置の制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本発明に係るゲーム装置は、仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置において、ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標値指定受付手段と、前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換手段と、前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較手段と、前記比較手段による比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択手段と、前記基準点選択手段によって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定手段と、前記基準点再設定手段によって前記複数の基準点が再設定された場合、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、を再実行させる手段と、前記基準点再設定手段によって再設定された前記複数の基準点のうちから前記基準点選択手段によって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行手段と、を含むことを特徴とする。
【0006】
また、本発明に係るゲーム装置の制御方法は、仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置の制御方法において、ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標値指定受付ステップと、前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換ステップと、前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較ステップと、前記比較ステップによる比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択ステップと、前記基準点選択ステップによって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定ステップと、前記基準点再設定ステップによって前記複数の基準点が再設定された場合、前記基準点変換ステップによる変換と、前記比較ステップによる比較と、前記基準点選択ステップによる選択と、を再実行させるステップと、前記基準点再設定ステップによって再設定された前記複数の基準点のうちから前記基準点選択ステップによって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行ステップと、を含むことを特徴とする。
【0007】
また、本発明に係るプログラムは、仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置として、家庭用ゲーム機、携帯用ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末(PDA)やパーソナルコンピュータなどのコンピュータを機能させるためのプログラムであって、ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標値指定受付手段、前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換手段、前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較手段、前記比較手段による比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択手段、前記基準点選択手段によって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定手段、前記基準点再設定手段によって前記複数の基準点が再設定された場合、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、を再実行させる手段、及び、前記基準点再設定手段によって再設定された前記複数の基準点のうちから前記基準点選択手段によって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行手段、として前記コンピュータを機能させるためのプログラムである。
【0008】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。また、本発明に係るプログラム配信装置は、上記プログラムを記録した情報記憶媒体を備え、当該情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信装置である。また、本発明に係るプログラム配信方法は、上記プログラムを記録した情報記憶媒体を備え、当該情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信方法である。
【0009】
本発明は、仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、該仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置に関するものである。本発明では、ユーザによるスクリーン座標値の指定が受け付けられる。また、仮想3次元空間に設定される複数の基準点の各々が上記所定の座標変換演算を用いてスクリーン座標系に座標変換されることによって、複数の基準点の各々に対応するスクリーン座標値が取得される。また、ユーザによって指定されたスクリーン座標値と、複数の基準点の各々に対応するスクリーン座標値と、が比較される。そして、その比較結果に基づいて、複数の基準点のうちの少なくとも1つが選択される。さらに、選択された基準点に基づいて、仮想3次元空間に複数の基準点が再設定される。複数の基準点が再設定された場合、再設定された基準点に関して、上記の座標変換、比較及び選択が再実行される。そして、再設定された複数の基準点のうちから選択された基準点の仮想3次元空間における位置に基づいて、ゲーム処理が実行される。本発明によれば、複数の基準点のうちから基準点を選択する際において、例えば、複数の基準点のうちから、その基準点に対応するスクリーン座標値が、ユーザによって指定されたスクリーン座標値に最も近い基準点を選択するようにすることによって、ユーザによって指定されたスクリーン座標値に対応する仮想3次元空間内の位置を比較的簡易な処理で判断できるようになる。
【0010】
また、本発明の一態様では、前記基準点再設定手段は、前記基準点選択手段によって選択された基準点と所定の位置関係にある複数の位置を前記複数の基準点として再設定するようにしてもよい。
【0011】
また、本発明の一態様では、前記基準点再設定手段による再設定と、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、は所定条件が満足するまでくり返し実行されるようにしてもよい。
【0012】
また、本発明の一態様では、前記所定条件は、前記基準点再設定手段による再設定と、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、のくり返し実行済み回数が所定回数であるか否かの条件を含むようにしてもよい。
【0013】
また、本発明の一態様では、前記所定条件は、前記ユーザによって指定されたスクリーン座標値と、前記基準点選択手段によって選択された基準点に対応するスクリーン座標値と、の間の距離が所定距離未満であるか否かを条件を含むようにしてもよい。
【0014】
また、本発明の一態様では、前記基準点再設定手段によって再設定される基準点の数は、前記仮想3次元空間に最初に設定された基準点の数よりも多くなるようにしてもよい。
【発明を実施するための最良の形態】
【0015】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。
【0016】
図1は、本発明の実施形態に係るゲーム装置の構成を示す図である。図1に示すゲーム装置10は、家庭用ゲーム機11に情報記憶媒体たる光ディスク25及びメモリカード28が装着され、さらにモニタ18及びスピーカ22が接続されることによって構成される。例えば、モニタ18には家庭用テレビ受像機が用いられ、スピーカ22にはその内蔵スピーカが用いられる。
【0017】
家庭用ゲーム機11は、バス12、マイクロプロセッサ14、画像処理部16、音声処理部20、光ディスクドライブ24、メモリカードスロット27、通信インタフェース(I/F)29、コントローラインタフェース(I/F)30及び操作入力部31を含んで構成される公知のコンピュータゲームシステムである。操作入力部31以外の構成要素は筐体内に収容される。
【0018】
バス12はアドレス及びデータを家庭用ゲーム機11の各部でやり取りするためのものである。マイクロプロセッサ14、画像処理部16、音声処理部20、光ディスクドライブ24、主記憶26、メモリカードスロット27、通信インタフェース29及びコントローラインタフェース30は、バス12によって相互データ通信可能に接続される。
【0019】
マイクロプロセッサ14は、図示しないROMに格納されるオペレーティングシステムや、光ディスク25又はメモリカード28から読み出されるプログラム及びデータに基づいて、家庭用ゲーム機11の各部を制御する。主記憶26は、例えばRAMを含んで構成されるものであり、光ディスク25又はメモリカード28から読み出されたプログラム及びデータが必要に応じて書き込まれる。主記憶26はマイクロプロセッサ14の作業用としても用いられる。
【0020】
画像処理部16はVRAMを含んで構成されており、マイクロプロセッサ14から送られる画像データに基づいてVRAM上にゲーム画面を描画する。そして、画像処理部16はその内容をビデオ信号に変換して所定のタイミングでモニタ18に出力する。
【0021】
音声処理部20はサウンドバッファを含んで構成されており、光ディスク25から読み出され、該サウンドバッファに記憶されたゲーム音楽、ゲーム効果音、メッセージなどの各種音声データを再生してスピーカ22から出力する。
【0022】
光ディスクドライブ24は、マイクロプロセッサ14からの指示に従って、例えばCD−ROMやDVD−ROMなどの光ディスク25に記録されたプログラムやデータを読み取る。ここではプログラムやデータを家庭用ゲーム機11に供給するために光ディスク25を用いることとするが、例えばROMカードなどの他のあらゆる情報記憶媒体を用いるようにしてもよい。また、インターネットなどのデータ通信網を介して遠隔地からプログラムやデータを家庭用ゲーム機11に供給するようにしてもよい。
【0023】
メモリカードスロット27はメモリカード28を装着するためのインタフェースである。メモリカード28は不揮発性メモリ(例えばEEPROMなど)を含んで構成される。メモリカード28は、例えばセーブデータなどの各種ゲームデータを記憶するために用いられる。
【0024】
通信インタフェース29は、インターネットなどのデータ通信網に通信接続するためのインタフェースである。
【0025】
コントローラインタフェース30は、コントローラ32を無線接続するためのインタフェースである。コントローラインタフェース30としては、例えばBluetoothインタフェース規格に則ったインタフェースを利用することができる。なお、コントローラインタフェース30は、コントローラ32を有線接続するためのインタフェースとしてもよい。
【0026】
操作入力部31はユーザが操作入力を行うためのものである。操作入力部31は、例えば、モニタ18に表示されるゲーム画面上の位置をユーザが指し示すためのポインティングデバイスとしての機能を備える。操作入力部31としては、例えば特許3262677号公報に開示される技術を利用することができる。
【0027】
操作入力部31はコントローラ32と発光部38とを含んで構成される。また、コントローラ32は撮像部34と撮影画像解析部36とを含んで構成される。図2は操作入力部31の一例を示す図であり、図3はコントローラ32の一例を示す図である。
【0028】
図2に示すように、発光部38はモニタ18の上部に配置される。発光部38の両端部には光源40a,40bが備えられる。図3に示すように、コントローラ32の表面には方向ボタン44、ボタン46a,46b,46cが備えられる。方向ボタン44は十字形状を有しており、一般的にキャラクタやカーソルの移動方向を指示するのに用いられる。ボタン46a,46b,46cは各種ゲーム操作に用いられる。コントローラ32の一の側面には、例えばCCDなどの撮像素子である撮像部34が備えられる。また、コントローラ32には、例えばマイクロプロセッサなどである撮影画像解析部36が内蔵される。なお本明細書では、撮像部34が備えられた側面部をコントローラ32の前端部32aと呼ぶ。
【0029】
ユーザがコントローラ32の前端部32aをモニタ18の方に向けると、撮像部34の撮影画像には光源40a,40bが写し出される。撮影画像解析部36は、撮像部34の撮影画像に写し出された光源40a,40bの位置を解析する。撮影画像解析部36は、その解析結果に基づいてコントローラ32の位置及び傾きを取得する。より具体的には、撮影画像解析部36は、所定の基準位置42に対するコントローラ32の相対位置と、光源40a及び光源40bを結ぶ直線に対するコントローラ32の傾き角度と、を算出する。ゲーム装置10には、基準位置42とモニタ18に表示されるゲーム画面との位置関係に関する情報が記憶されており、コントローラ32の前端部32aが指し示すゲーム画面内の位置は、この撮影画像解析部36によって取得されるコントローラ32の位置及び傾きに基づいて特定される。なお本明細書では、撮影画像解析部36によって取得されるコントローラ32の位置及び傾きを示す情報、すなわち、コントローラ32の前端部32aが指し示すゲーム画面内の位置を特定するための情報のことを「ポインティング情報」と呼ぶ。
【0030】
コントローラ32からコントローラインタフェース30に対しては、一定周期ごと(例えば1/60秒ごと)にコントローラ32の操作状態を表す操作信号が送信される。例えば、上記のポインティング情報や、方向ボタン44、ボタン46a,46b,46cの押下状態を示す情報が操作信号として送信される。コントローラインタフェース30は、コントローラ32から受信した操作信号をバス12を介してマイクロプロセッサ14に渡す。マイクロプロセッサ14はこの操作信号に基づいてユーザのゲーム操作を判定する。例えば、マイクロプロセッサ14は、この操作信号(ポインティング情報)に基づいて、コントローラ32の前端部32aが指し示すゲーム画面内の位置を特定する。また例えば、マイクロプロセッサ14は、この操作信号に基づいて、方向ボタン44、ボタン46a、46b、46cの押下操作が行われたか否かを判定する。
【0031】
上記構成を備えるゲーム装置10では、光ディスク25から読み出されたサッカーゲーム用のプログラムが実行されることによってサッカーゲームが提供される。
【0032】
図4は、主記憶26に構築される仮想3次元空間(ゲーム空間)の一例を示している。図4に示すように、仮想3次元空間50には、サッカーのフィールドを表すフィールドオブジェクト52と、ゴールを表すゴールオブジェクト54と、が配置されることによって、サッカーの試合会場が形成される。フィールドオブジェクト52はXwZw平面に平行に配置される。フィールドオブジェクト52上には、サッカー選手を表す選手オブジェクト56と、サッカーボールを表すボールオブジェクト58と、が配置される。図4では省略されているが、フィールドオブジェクト52上には22体の選手オブジェクト56が配置される。
【0033】
仮想3次元空間50には仮想カメラ59(視点59a及び視線方向59b)が設定される。仮想カメラ59は例えばボールオブジェクト58に従動する。この仮想カメラ59から仮想3次元空間50を見た様子を表すゲーム画面がモニタ18に表示される。つまり、ゲーム画面には、視点59aから視線方向59bを見た場合の仮想3次元空間50の様子が表される。
【0034】
図5はゲーム画面の一例を示している。図5に示すように、ゲーム画面60には、ユーザによって操作される選手オブジェクト56である操作対象選手オブジェクト56aと、操作対象選手オブジェクト56aと同じチームに属する選手オブジェクト56である味方選手オブジェクト56bと、対戦相手チームに属する選手オブジェクト56である対戦相手選手オブジェクト56cと、が表示される。味方選手オブジェクト56b及び対戦相手選手オブジェクト56cはコンピュータによって操作される。
【0035】
また、ゲーム画面60には、仮想カメラ59から仮想3次元空間50を見た様子を表す画像とともに、円形状のカーソル62と、経過時間を示す経過時間画像64と、両チームの得点状況を示す得点状況画像66と、が表示される。カーソル62はコントローラ32の前端部32aが指し示す位置に表示される。
【0036】
このサッカーゲームでは、操作対象選手オブジェクト56aは、カーソル62の表示位置に対応する仮想3次元空間50内の位置に向かって移動する。このため、ユーザは、操作対象選手オブジェクト56aの移動目標位置(移動方向)を、コントローラ32の前端部32aで指し示すことによって指示する。また、操作対象選手オブジェクト56aがボールオブジェクト58を保持している状態で、ユーザがキック指示ボタン(例えばボタン46a)を押下すると、操作対象選手オブジェクト56aは、カーソル62の表示位置に対応する仮想3次元空間50内の位置に向かってボールオブジェクト58を蹴り出す。例えば、カーソル62が味方選手オブジェクト56bの位置に移動した状態で、ユーザがキック指示ボタンを押下すると、その味方選手オブジェクト56bに向かってボールオブジェクト58が蹴り出される。また例えば、カーソル62が、味方選手オブジェクト56b及び対戦相手選手オブジェクト56cがいない領域(フリースペース)に位置する状態で、ユーザがキック指示ボタンを押下すると、そのフリースペースに向かってボールオブジェクト58が蹴り出される。このため、ユーザは、操作対象選手オブジェクト56aのキック目標位置(キック方向)を、コントローラ32の前端部32aで指し示すことによって指示する。
【0037】
このようなサッカーゲームを実現する場合には、操作対象選手オブジェクト56aやボールオブジェクト58の移動方向を特定するために、コントローラ32の前端部32aが指し示すゲーム画面60内の位置(カーソル62の表示位置)から、その位置に対応する仮想3次元空間50内の位置を判断する必要がある。以下、カーソル62の表示位置に対応する仮想3次元空間50内の位置を判断するための技術について説明する。
【0038】
まず、ゲーム装置10に記憶されるデータについて説明する。
【0039】
光ディスク25には、仮想3次元空間50に配置される各オブジェクトの形状を表すモデルデータが記憶される。モデルデータは、オブジェクトを構成するポリゴンの各頂点の座標を示すデータである。
【0040】
主記憶26には、ゲームの状況を示すゲーム状況情報が記憶される。ゲーム状況情報には、例えばカーソル62の表示位置情報が含まれる。カーソル62の表示位置情報は、カーソル62のゲーム画面60内における表示位置を、スクリーン座標系における座標値(スクリーン座標値)によって示す情報である。なお、スクリーン座標系は図5に示すXY座標系である。また、ゲーム状況情報には、例えば選手オブジェクト56の位置情報、姿勢情報、移動方向情報や移動速度情報が含まれる。選手オブジェクト56の位置情報、姿勢情報、移動方向情報や移動速度情報は、選手オブジェクト56の仮想3次元空間50内における位置、姿勢、移動方向や移動速度を、ワールド座標系の座標値によって示す情報である。ここで、ワールド座標系は図4に示すXwYwZw座標系である。また、ゲーム状況情報には、例えばボールオブジェクト58の位置情報、移動方向情報や移動速度情報が含まれる。ボールオブジェクト58の位置情報、移動方向情報や移動速度情報は、ボールオブジェクト58の仮想3次元空間50内における位置、移動方向や移動速度を、ワールド座標系の座標値によって示す情報である。また、ゲーム状況情報には、例えば仮想カメラ59の位置情報や姿勢情報が含まれる。仮想カメラ59の位置情報や姿勢情報は、仮想カメラ59の仮想3次元空間50内における位置(視点59a)や姿勢(視線方向59b)を、ワールド座標系の座標値によって示す情報である。さらに、ゲーム状況情報には、例えば経過時間や両チームの得点状況を示す情報が含まれる。
【0041】
次に、ゲーム装置10で実行される処理について説明する。図6は、ゲーム装置10で所定時間(本実施の形態の場合には1/60秒)ごとに実行される処理のうち、本発明に関連するものを主として示すフロー図である。この処理は、光ディスク25から読み出されたプログラムがゲーム装置10(マイクロプロセッサ14)によって実行されることによって実現される。
【0042】
図6に示すように、ゲーム装置10はゲーム状況情報更新処理を実行する(S101)。ゲーム状況情報更新処理は、主記憶26に記憶されるゲーム状況情報を更新するための処理である。図7及び図8はゲーム状況情報更新処理を示すフロー図である。
【0043】
図7に示すように、ゲーム装置10は、コントローラ32から供給されるポインティング情報に基づいて、コントローラ32の前端部32aが指し示すゲーム画面60内の位置(スクリーン座標値)を取得する(S201)。そして、ゲーム装置10は、S201において取得されたスクリーン座標値をカーソル62の表示位置として記憶させるために、主記憶26に記憶されるカーソル62の表示位置情報を更新する(S202)。
【0044】
その後、ゲーム装置10は、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置を判断するための処理(S203乃至S214)を実行する。まず、ゲーム装置10は変数nの値を0に初期化する(S203)。
【0045】
また、ゲーム装置10は、フィールドオブジェクト52上に複数の基準点を初期設定する(S204)。図9は基準点の初期設定について説明するための図である。図9に示すように、ゲーム装置10は、フィールドオブジェクト52を長辺方向及び短辺方向にそれぞれ4分割することによって得られるブロックの各頂点を基準点Pij(i,jは1〜5の整数)として取得する。ここで、基準点P11とは左上の基準点を指し、基準点P15とは右上の基準点を指すこととする。また、基準点P51とは左下の基準点を指し、基準点P55とは右下の基準点を指すこととする。
【0046】
また、ゲーム装置10は変数laをLa/4に初期化し、変数lbをLb/4に初期化する(S205)。ここで、図9に示すように、Laはフィールドオブジェクト52の長辺の長さであり、Lbはフィールドオブジェクト52の短辺の長さである。
【0047】
その後、ゲーム装置10は各基準点Pijの位置座標をワールド座標系からスクリーン座標系に変換することによって、各基準点Pijに対応するスクリーン座標値を取得する(S206)。ここでは、後述のS102の処理において各オブジェクトの頂点座標をワールド座標系からスクリーン座標系に変換するために用いられる座標変換演算と同じ座標変換演算が用いられる。
【0048】
その後、ゲーム装置10は、各基準点Pijについて、その基準点Pijに対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、の間の距離を算出する(S207)。そして、ゲーム装置10は、複数の基準点Pijのうちから、S207で算出された距離が最も小さい基準点Pijを選択する(S208)。
【0049】
その後、ゲーム装置10は変数nの値に1を加算する(S209)。そして、ゲーム装置10は変数nの値がN未満であるか否かを判定する(S210)。
【0050】
変数nの値がN未満である場合、ゲーム装置10は、S208において選択された基準点Pijに基づいて、フィールドオブジェクト52上の基準点設定対象領域を決定する(S211)。図10は基準点設定対象領域について説明するための図である。ここで図10は、図9に示すように基準点Pijが設定された状態で、S208において基準点P33が選択された場合の基準点設定対象領域を示している。図10に示すように、ゲーム装置10は、フィールドオブジェクト52上の、下記の条件(1)及び(2)を満足するXw軸座標及びZw軸座標(xw,zw)が含まれる領域を基準点設定対象領域68に設定する。なお、下記の条件(1)及び(2)において、(xw0,zw0)は、S208で選択された基準点PijのXw軸座標及びZw軸座標を示す。
【0051】
xw0−(la/2)≦xw≦xw0+(la/2) ・・・ (1)
zw0−(lb/2)≦zw≦zw0+(lb/2) ・・・ (2)
【0052】
そして、ゲーム装置10は、S211で決定した基準点設定対象領域68に複数の基準点を再設定する(S212)。図11は基準点の再設定について説明するための図である。ここで図11は、図10に示すように基準点設定対象領域68が決定された場合について示している。図11に示すように、ゲーム装置10は、基準点設定対象領域68を長辺方向及び短辺方向にそれぞれ8分割することによって得られる各ブロックの各頂点を新たな基準点Pij(i,jは1〜9の整数)として設定する。ここで、基準点P11とは左上の基準点を指し、基準点P19とは右上の基準点を指すこととする。また、基準点P91とは左下の基準点を指し、基準点P99とは右下の基準点を指すこととする。
【0053】
ゲーム装置10は基準点Pijを再設定したら、変数laをla/8に更新し、変数lbをlb/8に更新する(S213)。その後、ゲーム装置10はS206の処理から再実行する。
【0054】
一方、S210において変数nの値がN未満でないと判定された場合、ゲーム装置10は、S208で選択された基準点Pijが、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置であると判断する(S214)。
【0055】
以上のように、ゲーム装置10では、フィールドオブジェクト52上に複数の基準点が設定される(S204及びS212参照)。またゲーム装置10では、各基準点に対応するスクリーン座標値が取得される(S206参照)。またゲーム装置10では、複数の基準点のうちから、スクリーン座標値がカーソル62のスクリーン座標値に最も近い基準点が選択される(S207及びS208参照)。上記の基準点の設定及び選択は所定回数繰り返される。このとき、上記の基準点の設定及び選択が繰り返されるごとに、基準点設定対象領域は狭くなっていく(S213参照)。そしてゲーム装置10では、上記の基準点の設定及び選択が所定回数繰り返されると、最後に選択された基準点が、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置として判断される(S214参照)。ゲーム装置10によれば、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置を比較的高精度に、かつ、比較的簡易な処理で特定することが可能になる。なお、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置の精度は、上記の基準点の設定及び選択を繰り返す回数を増やすことによって向上させることが可能である。
【0056】
ところで、基準点を初期設定する際(S204)、フィールドオブジェクト52上を細かく分割することによって、最初から多くの基準点を設定することも考えられる。このようにすれば、上記の基準点の設定及び選択を繰り返す必要がなくなる。しかしながら、この場合、多くの基準点に対して座標変換演算(S206)を行わなければならなくなり、処理負荷が重くなってしまう。この点、本実施の形態の場合、基準点を初期設定する際には、フィールドオブジェクト52上を比較的大まかに分割することによって、比較的少ない数の基準点を設定し、基準点を再設定する際に(S212)、すなわち、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置が含まれる領域がある程度特定された段階で、該領域をより細かく分割することによって、比較的多くの基準点を設定するようになっている。こうすれば、最初から多くの基準点を設定する態様に比べて、座標変換演算の回数を低く抑えることが可能になり、その結果として、処理負荷の軽減を図ることが可能になる。
【0057】
なおゲーム装置10は、基準点を初期設定する際(S204)、フィールドオブジェクト52全体を基準点設定対象領域とするのではなく、視点59aや視線方向59bに基づいて、フィールドオブジェクト52上の一部の領域を基準点設定対象領域として決定するようにしてもよい。こうすることによって、ゲーム装置10は、基準点を初期設定する際、例えば、フィールドオブジェクト52上の、ゲーム画面60への表示対象となる領域を基準点設定対象領域として決定し、該領域内に基準点を設定するようにしてもよい。こうすれば、基準点を初期設定する段階から、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置が含まれる領域がある程度特定された状態になるため、基準点の設定及び選択を繰り返す回数を減らすことができる。その結果として、処理負荷のさらなる軽減を図ることが可能になる。
【0058】
またゲーム装置10は、S210の処理を実行する代わりに、S208で選択された基準点に対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、の間の距離が所定の基準距離より大きいか否かを判定するようにしてもよい。ここで、「基準距離」とは、S208で選択された基準点に対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、がほぼ一致していると判断できるような距離である。この「基準距離」は、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置をどの程度の精度で特定したいかを考慮して設定される。この場合、ゲーム装置10は、上記距離が基準距離よりも大きい場合にはS211の処理を実行し、上記距離が基準距離以下である場合にはS214の処理を実行する。なお、この場合、S203及びS209の処理は省略することができる。このようにして、ゲーム装置10は、S208で選択された基準点に対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、がほぼ一致すると判断されるまで、基準点の設定及び選択を繰り返すようにしてもよい。こうすれば、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置の特定が一定の精度で行われるように担保することが可能になる。
【0059】
なおゲーム装置10は、S210において変数nの値がN未満であると判定された場合に、S208で選択された基準点に対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、の間の距離が所定の基準距離より大きいか否かを判定するようにしてもよい。そしてゲーム装置10は、上記距離が基準距離よりも大きい場合にはS211の処理を実行し、上記距離が基準距離以下である場合にはS214の処理を実行するようにしてもよい。S208で選択された基準点に対応するスクリーン座標値と、カーソル62の表示位置(スクリーン座標値)と、がほぼ一致すると判断されるような場合には、基準点の設定及び選択をそれ以上繰り返す必要がないと考えられる。この点、上記のようにすれば、基準点の設定及び選択の不必要な繰り返しを抑制することが可能になり、処理負荷の軽減を図ることが可能になる。
【0060】
S214において、S208で選択された基準点が、カーソル62の表示位置に対応するフィールドオブジェクト52上の位置であると判断された場合、ゲーム装置10は、S208で選択された基準点に基づいて、ゲーム状況情報を更新する(S215)。
【0061】
例えば、ゲーム装置10は、操作対象選手オブジェクト56aの位置情報や移動方向情報を、S208で選択された基準点の位置に基づいて更新する。より具体的には、ゲーム装置10は、「操作対象選手オブジェクト56aの現在位置から、S208で選択された基準点に向かう方向」を取得する。そして、ゲーム装置10は、該取得した方向を操作対象選手オブジェクト56aの移動方向として記憶させるべく、操作対象選手オブジェクト56aの移動方向情報を更新する。また、ゲーム装置10は、「操作対象選手オブジェクト56aの現在位置から、操作対象選手オブジェクト56aの移動方向に、操作対象選手オブジェクト56aの移動速度に応じた距離だけ離れた位置」を取得する。そして、ゲーム装置10は、該取得した位置を操作対象選手オブジェクト56aの現在位置として記憶させるべく、操作対象選手オブジェクト56aの位置情報を更新する。このようにして、操作対象選手オブジェクト56aの位置情報や移動方向情報が更新された結果として、ゲーム画面60に、カーソル62の表示位置に向かって操作対象選手オブジェクト56aが移動する様子が表される。なお、操作対象選手オブジェクト56aがボールオブジェクト58を保持している場合、ゲーム装置10は、操作対象選手オブジェクト56aの位置情報や移動方向情報を更新するとともに、ボールオブジェクト58の位置情報や移動方向情報も更新する。その結果として、操作対象選手オブジェクト56aがボールオブジェクト58を保持している場合には、ゲーム画面60に、カーソル62の表示位置に向かって操作対象選手オブジェクト56aがドリブルする様子が表されるようになる。
【0062】
また例えば、ゲーム装置10は、ボールオブジェクト58の位置情報や移動方向情報を、S208で選択された基準点の位置に基づいて更新する。例えば、ゲーム装置10は、操作対象選手オブジェクト56aがボールオブジェクト58を保持している否かを判定する。また、ゲーム装置10は、キック指示ボタンが押下されたか否かをコントローラ32から入力される操作信号に基づいて判定する。そして、ゲーム装置10は、操作対象選手オブジェクト56aがボールオブジェクト58を保持しており、かつ、キック指示ボタンが押下されたと判定した場合、「ボールオブジェクト58又は操作対象選手オブジェクト56aの現在位置から、S208で選択された基準点に向かう方向」を取得する。そして、ゲーム装置10は、該取得した方向をボールオブジェクト58の移動方向として記憶させるべく、ボールオブジェクト58の移動方向情報を更新する。また例えば、ゲーム装置10は、「ボールオブジェクト58の現在位置から、ボールオブジェクト58の移動方向に向かって、ボールオブジェクト58の移動速度に応じた距離だけ離れた位置」を取得する。そして、ゲーム装置10は、該取得した位置をボールオブジェクト58の現在位置として記憶させるべく、ボールオブジェクト58の位置情報を更新する。このようにして、ボールオブジェクト58の位置情報や移動方向情報が更新された結果として、操作対象選手オブジェクト56aがボールオブジェクト58を保持している状態でキック指示ボタンが押下された場合に、ゲーム画面60に、カーソル62の表示位置に向かってボールオブジェクト58が蹴り出される様子が表されるようになる。
【0063】
以上のゲーム状況情報更新処理(S101)が完了すると、ゲーム装置10はゲーム画面生成処理を実行する(S102)。ゲーム画面生成処理では、主記憶26に記憶されるゲーム状況情報に基づいて、ゲーム画面60がVRAM上に生成される。すなわち、ゲーム装置10は、仮想3次元空間50に配置された各オブジェクトの頂点座標を所定の座標変換演算を用いてワールド座標系からスクリーン座標系に座標変換することによって、仮想3次元空間50を仮想カメラ59を見た様子を表す視野画像をVRAM上に描画する。より具体的には、ゲーム装置10はジオメトリ処理を実行し、ワールド座標系から視点座標系、すなわち、視点59aを原点とし、視線方向59bをZw軸方向とする座標系への座標変換を行う。また、ゲーム装置10はクリッピング処理も行う。そして、ゲーム装置10は、視野範囲内の各オブジェクトを視点座標系からスクリーン座標系に座標変換することによって、視野画像をVRAM上に描画する。また、ゲーム装置10は、VRAM上に描画された視野画像に対して、カーソル62、経過時間画像64や得点状況画像66を上書き描画する。こうして、ゲーム画面60がVRAM上に生成される。VRAM上に生成されたゲーム画面60は所定のタイミングでモニタ18に表示される。
【0064】
次に、ゲーム装置10で実現される機能について説明する。図12は、ゲーム装置10で実現される機能のうち、本発明に関連するものを主として示す機能ブロック図である。図12に示すように、ゲーム装置10は、スクリーン座標値指定受付部70と、基準点変換部72と、比較部74と、基準点選択部76と、基準点再設定部78と、ゲーム処理部80と、を機能的に含んでいる。これらの機能ブロックは、例えば図6乃至図8に示す処理をゲーム装置10(マイクロプロセッサ14)に実行させるためのプログラムが光ディスク25から読み出され、ゲーム装置10(マイクロプロセッサ14)によって実行されることによって実現される。
【0065】
スクリーン座標値指定受付部70はマイクロプロセッサ14及び操作入力部31を主として実現される。スクリーン座標値指定受付部70は、ユーザによるスクリーン座標値の指定を受け付ける。例えば、スクリーン座標値指定受付部70は、コントローラ32から入力される操作信号(ポインティング情報)に基づいて、コントローラ32の前端部32aが指し示すゲーム画面60内の位置を取得する。言い換えれば、スクリーン座標値指定受付部70は、コントローラ32から入力される操作信号に基づいて、ゲーム画面60におけるカーソル62の表示位置(スクリーン座標値)を取得する。
【0066】
基準点変換部72はマイクロプロセッサ14を主として実現される。基準点変換部72は、仮想3次元空間50に設定される複数の基準点の各々を所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、上記複数の基準点の各々に対応するスクリーン座標値を取得する。ここで、所定の座標変換演算は、仮想3次元空間50を視点59aから見た様子を表すゲーム画面60を生成する際に、仮想3次元空間50に配置された各オブジェクトの頂点座標をワールド座標系からスクリーン座標系に座標変換するために用いられる座標変換演算と同じものである。
【0067】
比較部74はマイクロプロセッサ14を主として実現される。比較部74は、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値と、基準点変換部72によって取得された、複数の基準点の各々に対応するスクリーン座標値と、を比較する。例えば、比較部74は、複数の基準点の各々について、基準点変換部72によって取得されたその基準点の各々に対応するスクリーン座標値と、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値と、の間の距離を算出する。
【0068】
基準点選択部76はマイクロプロセッサ14を主として実現される。基準点選択部76は、比較部74による比較結果に基づいて、複数の基準点のうちの少なくとも1つを選択する。例えば、基準点選択部76は、複数の基準点のうちから、「基準点変換部72によって取得されたスクリーン座標値が、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値に最も近い基準点」を選択する。
【0069】
基準点再設定部78はマイクロプロセッサ14を主として実現される。基準点再設定部78は、基準点選択部76によって選択された基準点に基づいて、仮想3次元空間50に複数の基準点を再設定する。基準点再設定部78は、基準点選択部76によって選択された基準点と所定の位置関係にある複数の位置を複数の基準点として再設定する。
【0070】
基準点再設定部78によって複数の基準点が再設定された場合、基準点変換部72による変換と、比較部74による比較と、基準点選択部76による選択と、が再実行される。
【0071】
例えば、基準点再設定部78による再設定と、基準点変換部72による変換と、比較部74による比較と、基準点選択部76による選択と、の一連の処理は所定条件が満足するまでくり返し実行される。ここで、所定条件は、例えば、基準点再設定部78による再設定と、基準点変換部72による変換と、比較部74による比較と、基準点選択部76による選択と、の一連の処理のくり返し実行済み回数が所定回数であるか否かの条件を含む。また、所定条件は、例えば、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値と、基準点選択部76によって選択された基準点に対応するスクリーン座標値と、の間の距離が所定距離未満であるか否かの条件を含む。
【0072】
ゲーム処理部80はマイクロプロセッサ14を主として実現される。ゲーム処理部80は、基準点再設定部78によって再設定された複数の基準点のうちから基準点選択部76によって選択された基準点に基づいて、ゲーム処理を実行する。すなわち、ゲーム処理部80は、基準点再設定部78によって再設定された複数の基準点のうちから基準点選択部76によって選択された基準点に基づいて、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値に対応する仮想3次元空間50内の位置を判断する。基準点再設定部78による再設定と、基準点変換部72による変換と、比較部74による比較と、基準点選択部76による選択と、の一連の処理が所定条件が満足するまでくり返し実行される場合、ゲーム処理部80は、基準点選択部76によって最後に選択された基準点に基づいて、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値に対応する仮想3次元空間50内の位置を判断する。
【0073】
例えば、ゲーム処理部80は、基準点再設定部78によって再設定された複数の基準点のうちから基準点選択部76によって選択された一の基準点が、スクリーン座標値指定受付部70によって受け付けられたスクリーン座標値に対応する仮想3次元空間50内の位置であると判断する。そして、ゲーム処理部80は、その基準点の仮想3次元空間50における位置に基づいて、ゲーム処理(本実施の形態の場合、操作対象選手オブジェクト56aやボールオブジェクト58の移動制御処理など)を実行する。
【0074】
以上説明したように、ゲーム装置10によれば、ユーザによって指定されるスクリーン座標値に対応する仮想3次元空間50内の位置を比較的簡易な処理で判断できるようになる。その結果、ゲーム装置10によれば、ユーザによって指定されるスクリーン座標値に対応する仮想3次元空間50内の位置に基づいて進行するゲームを比較的簡易な処理で実現できるようになる。
【0075】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0076】
例えば、ゲーム装置10は、方向ボタン44を用いた方向指示操作に応じてカーソル62の表示位置情報を更新するようにしてもよい。すなわち、カーソル62は、方向ボタン44を用いた方向指示操作に応じてゲーム画面60内を移動するようにしてもよい。この場合、カーソル62の表示位置がユーザによって指定されたゲーム画面60内の位置(スクリーン座標値)に相当する。このようにして、ユーザが方向ボタン44を用いて、ゲーム画面60内の位置を指定できるようにしてもよい。
【0077】
また例えば、操作入力部31は例えばマウスやタッチパネルなどの他のポインティングデバイスであってもよい。例えば、カーソル62は、マウスを用いた操作に応じてゲーム画面60内を移動するようにしてもよい。この場合、カーソル62の表示位置がユーザによって指定されたゲーム画面60内の位置(スクリーン座標値)に相当する。このようにして、ユーザがマウスを用いて、ゲーム画面60内の位置を指定できるようにしてもよい。また例えば、カーソル62は、タッチパネルの押圧位置に表示されるようにしてもよい。この場合、カーソル62の表示位置、すなわちタッチパネルの押圧位置がユーザによって指定されたゲーム画面60内の位置(スクリーン座標値)に相当する。このようにして、ユーザがタッチパネルを用いて、ゲーム画面60内の位置を指定できるようにしてもよい。
【0078】
また例えば、本発明はサッカーゲーム以外のゲームを実行するゲーム装置10にも適用することができる。本発明は、ユーザによって指定されるスクリーン座標値に対応する仮想3次元空間50内の位置に基づいて進行するゲームを実行するゲーム装置10に適用することができる。
【0079】
また例えば、以上の説明では、プログラムを情報記憶媒体たる光ディスク25から家庭用ゲーム機11に供給するようにしたが、通信ネットワークを介してプログラムを家庭等に配信するようにしてもよい。図13は、通信ネットワークを用いたプログラム配信システムの全体構成を示す図である。図13に基づいて本発明に係るプログラム配信方法を説明する。図13に示すように、このプログラム配信システム100は、ゲームデータベース102、サーバ104、通信ネットワーク106、パソコン108、家庭用ゲーム機110、PDA(携帯情報端末)112を含んでいる。このうち、ゲームデータベース102とサーバ104とによりプログラム配信装置114が構成される。通信ネットワーク106は、例えばインターネットやケーブルテレビネットワークを含んで構成されている。このシステムでは、ゲームデータベース(情報記憶媒体)102に、光ディスク25の記憶内容と同様のプログラムが記憶されている。そして、パソコン108、家庭用ゲーム機110又はPDA112等を用いて需要者がゲーム配信要求をすることにより、それが通信ネットワーク106を介してサーバ104に伝えられる。そして、サーバ104はゲーム配信要求に応じてゲームデータベース102からプログラムを読み出し、それをパソコン108、家庭用ゲーム機110、PDA112等、ゲーム配信要求元に送信する。ここではゲーム配信要求に応じてゲーム配信するようにしたが、サーバ104から一方的に送信するようにしてもよい。また、必ずしも一度にゲームの実現に必要な全てのプログラムを配信(一括配信)する必要はなく、ゲームの局面に応じて必要な部分を配信(分割配信)するようにしてもよい。このように通信ネットワーク106を介してゲーム配信するようにすれば、プログラムを需要者は容易に入手することができるようになる。
【図面の簡単な説明】
【0080】
【図1】本実施の形態に係るゲーム装置のハードウェア構成を示す図である。
【図2】操作入力部の一例を示す図である。
【図3】コントローラの一例を示す図である。
【図4】仮想3次元空間の一例を示す図である。
【図5】ゲーム画面の一例を示す図である。
【図6】ゲーム装置で実行される処理を示すフロー図である。
【図7】ゲーム装置で実行される処理を示すフロー図である。
【図8】ゲーム装置で実行される処理を示すフロー図である。
【図9】基準点の初期設定について説明するための図である。
【図10】基準点設定対象領域について説明するための図である。
【図11】基準点の再設定について説明するための図である。
【図12】本実施の形態に係るゲーム装置の機能ブロック図である。
【図13】本発明の他の実施形態に係るプログラム配信システムの全体構成を示す図である。
【符号の説明】
【0081】
10 ゲーム装置、11,110 家庭用ゲーム機、12 バス、14 マイクロプロセッサ、16 画像処理部、18 モニタ、20 音声処理部、22 スピーカ、24 光ディスクドライブ、25 光ディスク、26 主記憶、27 メモリカードスロット、28 メモリカード、29 通信インタフェース、30 コントローラインタフェース、31 操作入力部、32 コントローラ、32a 前端部、34 撮像部、36 撮像画像解析部、38 発光部、40a,40b 光源、42 基準位置、44 方向ボタン、46a,46b,46c ボタン、50 仮想3次元空間、52 フィールドオブジェクト、54 ゴールオブジェクト、56 選手オブジェクト、58 ボールオブジェクト、59 仮想カメラ、59a 視点、59b 視線方向、60 ゲーム画面、62 カーソル、64 経過時間画像、66 得点状況画像、68 基準点設定対象領域、70 スクリーン座標値指定受付部、72 基準点変換部、74 比較部、76 基準点選択部、78 基準点再設定部、80 ゲーム処理部、100 プログラム配信システム、102 ゲームデータベース、104 サーバ、106 通信ネットワーク、108 パソコン、112 携帯情報端末(PDA)、114 プログラム配信装置。

【特許請求の範囲】
【請求項1】
仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置において、
ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標値指定受付手段と、
前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換手段と、
前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較手段と、
前記比較手段による比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択手段と、
前記基準点選択手段によって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定手段と、
前記基準点再設定手段によって前記複数の基準点が再設定された場合、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、を再実行させる手段と、
前記基準点再設定手段によって再設定された前記複数の基準点のうちから前記基準点選択手段によって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行手段と、
を含むことを特徴とするゲーム装置。
【請求項2】
請求項1に記載のゲーム装置において、
前記基準点再設定手段は、前記基準点選択手段によって選択された基準点と所定の位置関係にある複数の位置を前記複数の基準点として再設定することを特徴とするゲーム装置。
【請求項3】
請求項1又は2に記載のゲーム装置において、
前記基準点再設定手段による再設定と、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、は所定条件が満足するまでくり返し実行されることを特徴とするゲーム装置。
【請求項4】
請求項3に記載のゲーム装置において、
前記所定条件は、前記基準点再設定手段による再設定と、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、のくり返し実行済み回数が所定回数であるか否かの条件を含むことを特徴とするゲーム装置。
【請求項5】
請求項3又は4に記載のゲーム装置において、
前記所定条件は、前記ユーザによって指定されたスクリーン座標値と、前記基準点選択手段によって選択された基準点に対応するスクリーン座標値と、の間の距離が所定距離未満であるか否かを条件を含むことを特徴とするゲーム装置。
【請求項6】
請求項1乃至5のいずれかに記載のゲーム装置において、
前記基準点再設定手段によって再設定される基準点の数は、前記仮想3次元空間に最初に設定された基準点の数よりも多いことを特徴とするゲーム装置。
【請求項7】
仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置の制御方法において、
ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標値指定受付ステップと、
前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換ステップと、
前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較ステップと、
前記比較ステップによる比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択ステップと、
前記基準点選択ステップによって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定ステップと、
前記基準点再設定ステップによって前記複数の基準点が再設定された場合、前記基準点変換ステップによる変換と、前記比較ステップによる比較と、前記基準点選択ステップによる選択と、を再実行させるステップと、
前記基準点再設定ステップによって再設定された前記複数の基準点のうちから前記基準点選択ステップによって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行ステップと、
を含むことを特徴とするゲーム装置の制御方法。
【請求項8】
仮想3次元空間に配置されたオブジェクトを所定の座標変換演算を用いてスクリーン座標系に座標変換することによって、前記仮想3次元空間を所与の視点から見た様子を表すゲーム画面を表示するゲーム装置としてコンピュータを機能させるためのプログラムであって、
ユーザによるスクリーン座標値の指定を受け付けるスクリーン座標指定受付手段、
前記仮想3次元空間に設定される複数の基準点の各々を前記所定の座標変換演算を用いて前記スクリーン座標系に座標変換することによって、前記複数の基準点の各々に対応するスクリーン座標値を取得する基準点変換手段、
前記ユーザによって指定されたスクリーン座標値と、前記複数の基準点の各々に対応するスクリーン座標値と、を比較する比較手段、
前記比較手段による比較結果に基づいて、前記複数の基準点のうちの少なくとも1つを選択する基準点選択手段、
前記基準点選択手段によって選択された基準点に基づいて、前記仮想3次元空間に複数の基準点を再設定する基準点再設定手段、
前記基準点再設定手段によって前記複数の基準点が再設定された場合、前記基準点変換手段による変換と、前記比較手段による比較と、前記基準点選択手段による選択と、を再実行させる手段、及び、
前記基準点再設定手段によって再設定された前記複数の基準点のうちから前記基準点選択手段によって選択された基準点の前記仮想3次元空間における位置に基づいて、ゲーム処理を実行するゲーム処理実行手段、
として前記コンピュータを機能させるためのプログラム。

【図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


【公開番号】特開2008−154777(P2008−154777A)
【公開日】平成20年7月10日(2008.7.10)
【国際特許分類】
【出願番号】特願2006−346763(P2006−346763)
【出願日】平成18年12月22日(2006.12.22)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】