説明

画像処理装置、画像処理方法及びプログラム

【課題】移動体の移動速度が頻繁に変化するような場合であっても、仮想カメラの位置を移動体の位置に基づいて好適に制御できるようになる画像処理装置を提供すること。
【解決手段】画像処理装置は、仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する。画像処理装置では、移動体の位置に基づいて基礎位置が更新される(S102)。なお、この場合、更新前の基礎位置から移動体の位置までの距離と、基礎位置の前回更新時における、更新前の基礎位置から移動体の位置までの距離と、に基づいて、基礎位置が更新される。また、基礎位置に基づいて仮想カメラの状態が更新される(S103)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【0002】
仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を画面に表示する画像処理装置が知られている。例えば、このような画像処理装置としては、ボールやパックなどの移動体を用いて行われるスポーツのゲームを実行するスポーツゲーム装置が知られている。このようなスポーツゲーム装置では、仮想3次元空間内を移動するボールやパックなどを仮想カメラから見た様子を表す画像がゲーム画面に表示される。
【0003】
上記のような画像処理装置では、移動体が画面に表示されるように、仮想カメラを移動体に追従させる場合がある。例えば、上記のようなスポーツゲーム装置では、選手キャラクタがドリブル動作を行う場合、選手キャラクタに仮想カメラを追従させると、ボールがゲーム画面に表示されなくなってしまう場合があるため、仮想カメラをボールに追従させることが行われる。
【0004】
【特許文献1】特開2007−167141号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
仮想カメラを移動体に追従させる場合、下記のような不都合が生じる場合があった。例えばサッカーゲーム装置では、選手キャラクタがドリブル動作を行っている場合、ボールが頻繁に蹴り出されるため、ボールの移動速度が頻繁に変化する。このため、仮想カメラがボールに追従する場合には仮想カメラの移動速度も頻繁に変化してしまい、ユーザがゲーム画面を見難くなってしまう場合があった。特に、仮想カメラがボールに近づいた状態では、ボールや仮想カメラの移動量が大きくなってしまうため、ユーザがゲーム画面を見難くなってしまう場合があった。
【0006】
本発明は上記課題に鑑みてなされたものであって、その目的は、移動体の移動速度が頻繁に変化するような場合であっても、仮想カメラの位置を移動体の位置に基づいて好適に制御できるようになる画像処理装置、画像処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するために、本発明に係る画像処理装置は、仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理装置において、前記移動体の位置に基づいて基礎位置を更新する基礎位置更新手段と、前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御手段と、を含み、前記基礎位置更新手段は、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新する。
【0008】
また、本発明に係る画像処理方法は、仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理方法において、前記移動体の位置に基づいて基礎位置を更新する基礎位置更新ステップと、前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御ステップと、を含み、前記基礎位置更新ステップは、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新する。
【0009】
また、本発明に係るプログラムは、仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理装置としてコンピュータを機能させるためのプログラムであって、前記移動体の位置に基づいて基礎位置を更新する基礎位置更新手段、及び、前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御手段、として前記コンピュータを機能させ、前記基礎位置更新手段は、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新することを特徴とするプログラムである。
【0010】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。
【0011】
本発明によれば、移動体の移動速度が変化するような場合であっても、仮想カメラの位置を移動体の位置に基づいて好適に制御できるようになる。
【0012】
また本発明の一態様では、前記基礎位置更新手段は、前記基礎位置を更新するための第1のベクトルを取得する手段であって、更新前の基礎位置から前記移動体の位置への方向及び距離に対応する第2のベクトルと、前記基礎位置の前回更新時において取得された前記第1のベクトルと、を所定の割合で合成することによって、前記第1のベクトルを取得する手段と、前記基礎位置を、更新前の基礎位置と、前記第1のベクトルと、に基づいて更新する手段と、を含むようにしてもよい。前記所定の割合は、前記第2のベクトルに対応する割合が、前記基礎位置の前回更新時において取得された前記第1のベクトルの割合よりも小さく設定されるようにしてもよい。
【0013】
また本発明の一態様では、前記画像処理装置は、前記移動体を用いて行われるスポーツのゲームを実行するゲーム装置であってもよい。前記基礎位置更新手段は、前記移動体を保持する選手キャラクタのパラメータに基づいて、前記所定の割合を制御するようにしてもよい。
【0014】
また本発明の一態様では、前記画像処理装置は、前記移動体を用いて行われるスポーツのゲームを実行するゲーム装置であってもよい。前記基礎位置更新手段は、前記移動体を保持する選手キャラクタ又は前記移動体の位置に基づいて、前記所定の割合を制御するようにしてもよい。
【発明を実施するための最良の形態】
【0015】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。ここでは、画像処理装置の一態様であるゲーム装置に本発明を適用した例について説明する。本実施形態に係るゲーム装置は、例えば家庭用ゲーム機(据置型ゲーム機)、携帯ゲーム機、携帯電話機、携帯情報端末(PDA)、パーソナルコンピュータ、又はサーバコンピュータなどを用いて実現される。ここでは、本実施形態に係るゲーム装置を家庭用ゲーム機を用いて実現する場合について説明する。
【0016】
[1.ゲーム装置の構成]
図1は、本実施形態に係るゲーム装置10(画像処理装置)の全体構成を示す図である。図1に示すように、ゲーム装置10は、家庭用ゲーム機11、モニタ32、スピーカ34、及び光ディスク36(情報記憶媒体)を含む。モニタ32及びスピーカ34は家庭用ゲーム機11に接続される。モニタ32としては例えば家庭用テレビ受像機が用いられ、スピーカ34としては例えば家庭用テレビ受像機に内蔵されたスピーカが用いられる。
【0017】
家庭用ゲーム機11はコンピュータゲームシステムであり、バス12、マイクロプロセッサ14、主記憶16、画像処理部18、入出力処理部20、音声処理部22、光ディスク読み取り部24、ハードディスク26、通信インタフェース28、及びコントローラ30を含む。
【0018】
マイクロプロセッサ14は、図示しないROMに格納されるオペレーティングシステムや、光ディスク36から読み出されるプログラムに基づいて、家庭用ゲーム機11の各部を制御する。主記憶16は例えばRAMを含み、光ディスク36から読み出されたプログラム及びデータが必要に応じて主記憶16に書き込まれる。主記憶16はマイクロプロセッサ14の作業用メモリとしても用いられる。バス12はアドレス及びデータを家庭用ゲーム機11の各部でやり取りするために用いられる。
【0019】
画像処理部18はVRAMを含み、マイクロプロセッサ14から供給される画像データに基づいてVRAM上にゲーム画面を描画する。VRAM上に描画されたゲーム画面はビデオ信号に変換され、所定のタイミングでモニタ32に出力される。
【0020】
入出力処理部20はマイクロプロセッサ14が音声処理部22、光ディスク読み取り部24、ハードディスク26、通信インタフェース28、及びコントローラ30にアクセスするためのインタフェースである。音声処理部22はサウンドバッファを含み、光ディスク36からサウンドバッファに読み出された各種音声データ(例えばゲーム音楽、ゲーム効果音、メッセージなど)をスピーカ34から出力する。通信インタフェース28は、家庭用ゲーム機11を通信ネットワークに有線又は無線接続するためのインタフェースである。
【0021】
光ディスク読み取り部24は光ディスク36に記録されたプログラムやデータを読み取る。なお、ここではプログラムやデータを家庭用ゲーム機11に供給するために光ディスク36を用いるが、メモリカード等、他の情報記憶媒体を用いるようにしてもよい。また、例えばインターネットなどの通信ネットワークを介して遠隔地からプログラムやデータを家庭用ゲーム機11に供給するようにしてもよい。ハードディスク26は一般的なハードディスク装置(補助記憶装置)である。光ディスク36に記憶されることとして説明するプログラム及びデータはハードディスク26に記憶されていてもよい。
【0022】
コントローラ30はユーザが各種ゲーム操作を入力するための汎用操作入力手段である。コントローラ30は、例えば、方向指示操作に用いられる方向ボタン(十字ボタン)又は操作レバー(操作スティック)と、方向指示操作以外の操作に用いられるボタンと、を含む。複数のコントローラ30を家庭用ゲーム機11に接続することが可能である。入出力処理部20は一定周期毎(例えば1/60秒ごと)にコントローラ30の操作状態をスキャンし、そのスキャン結果を表す操作信号をバス12を介してマイクロプロセッサ14に渡す。マイクロプロセッサ14はその操作信号に基づいてユーザのゲーム操作を判定する。なお、コントローラ30は家庭用ゲーム機11に有線接続されてもよいし、無線接続されてもよい。
【0023】
ゲーム装置10では、例えばボール又はパックなどの移動物体を用いて行われるスポーツのゲームが実行される。ここでは、サッカーゲームがゲーム装置10で実行される場合を想定する。
【0024】
[2.仮想3次元空間]
ゲーム画面を生成するために仮想3次元空間が主記憶16に構築される。図2は仮想3次元空間の一例を示す。図2に示すように、仮想3次元空間40には、サッカーフィールドを表すオブジェクトであるフィールド42が配置される。フィールド42には例えばゴールライン44、タッチライン46、及びハーフウェイライン48が表される。また、フィールド42上には、サッカーのゴールを表すオブジェクトであるゴール50と、サッカー選手を表すオブジェクトである選手キャラクタ52と、サッカーボールを表すオブジェクトであるボール54と、が配置される。いずれか一方のチームに対応づけられたゴール50内にボール54が移動すると、他方のチームの得点イベントが発生する。図2では省略されているが、フィールド42上には22体の選手キャラクタ52が配置される。
【0025】
選手キャラクタ52とボール54とが近づくと、所定条件の下、その選手キャラクタ52とボール54とが関連づけられる。この場合、選手キャラクタ52の移動動作はドリブル動作になる。選手キャラクタ52にボール54が関連づけられた状態のことを「選手キャラクタ52がボール54を保持している」というように記載する。
【0026】
仮想3次元空間40には仮想カメラ56が設定される。仮想3次元空間40を仮想カメラ56から見た様子を表すゲーム画面がモニタ32に表示される。図3はゲーム画面の一例を示す。本実施形態では、ボール54がゲーム画面に表示されるように、仮想カメラ56の位置や視線方向58がボール54の位置に基づいて設定される。以下、仮想カメラ56の位置や視線方向58をボール54の位置に基づいて好適に設定するための技術について説明する。
【0027】
[3.ゲーム装置で実行される処理]
図4はゲーム装置10で所定時間(例えば1/60秒)ごとに実行される処理の一例を示すフロー図である。マイクロプロセッサ14は、光ディスク36から読み出されたプログラムに従って、図4に示す処理を実行する。
【0028】
図4に示すように、まず、マイクロプロセッサ14は選手キャラクタ52やボール54の状態(位置など)を更新する(S101)。例えば、ユーザが操作している選手キャラクタ52がドリブル動作を行っている場合、選手キャラクタ52やボール54の位置がユーザの方向指示操作に基づいて更新される。
【0029】
その後、マイクロプロセッサ14(基礎位置更新手段)は基礎位置をボール54の位置に基づいて取得する(S102)。後述するように、基礎位置は、仮想カメラ56の位置や視線方向58の制御の基礎とされる位置である。第n番目のフレームにおける基礎位置Pは下記の式(1)〜(4)によって算出される。なお、「B」は第n番目のフレームにおけるボール54の位置を示し、「*」は乗算演算子を示す。また、「k」は0<k<0.5を満足する一定の係数である。係数kの値は、kの値が(1−k)の値よりも小さくなるように設定される。本実施形態の場合、係数kの値は0.1である。図5は下記の式(1)〜(4)について説明するための図である。
【0030】
=(B−Pn−1)*k+Vn−1*(1−k) ・・・ (1)
=V*k+Pn−1 ・・・ (2)
=0 ・・・ (3)
=B ・・・ (4)
【0031】
ベクトルV(第1のベクトル)は、直前のフレーム(第n−1番目のフレーム)における基礎位置Pn−1から、現在のフレーム(第n番目のフレーム)におけるボール54の位置BへのベクトルPB(第2のベクトル)と、直前のフレームにおいて取得されたベクトルVn−1と、を所定の割合(k:1−k)で合成することによって得られるベクトルである。係数kの値が0.1である場合、ベクトルPBとベクトルVn−1とを1:9の割合で合成することによってベクトルVが得られる。上記の式(2)に示すように、ベクトルVは、現在のフレームにおける基礎位置Pを取得するための基礎とされる。具体的には、現在のフレームにおける基礎位置Pは、直前のフレームにおける基礎位置Pn−1から、ベクトルVが示す方向に、ベクトルVに係数kを乗じることによって得られるベクトルが示す距離だけ移動した位置に設定される。
【0032】
基礎位置が取得された後、マイクロプロセッサ14(仮想カメラ制御手段)はその基礎位置に基づいて仮想カメラ56の状態(位置や視線方向58など)を更新する(S103)。例えば、基礎位置と、仮想カメラ56の位置及び視線方向58と、が所定の関係を有するように、仮想カメラ56の位置や視線方向58が設定される。図6はS103の処理の一例について説明するための図である。図6に示す例では、仮想カメラ56の位置が、位置QからYw軸正方向に所定距離hだけ移動した位置Rに設定されている。位置Qは、基礎位置PからZw軸負方向に所定距離dだけ移動した位置である。また図6に示す例では、仮想カメラ56の視線方向58が、視線方向58をフィールド42上に投影することによって得られる方向58aがZw軸方向と一致し、かつ、視線方向58とYw軸負方向との間の角度が所定角度θとなるように設定される。なお、基礎位置Pと仮想カメラ56の位置及び視線方向58との関係は図6に示したものに限られない。
【0033】
仮想カメラ56の位置や視線方向58が決定された後、マイクロプロセッサ14はゲーム画面60を更新する(S104)。すなわち、仮想カメラ56から仮想3次元空間40を見た様子を表す画像が生成され、その画像がゲーム画面60に表示される。
【0034】
[4.まとめ]
以上に説明したゲーム装置10によれば、仮想カメラ56の制御の基礎とされる基礎位置(P)が、更新前の基礎位置(Pn−1)からボール54の現在位置(B)までの距離と、基礎位置の前回更新時における、更新前の基礎位置(Pn−2)からボール54の位置(Bn−1)までの距離と、に基づいて更新され、その結果として、下記に説明するように、ボール54の移動速度が変化するような場合であっても、仮想カメラ56をボール54の位置に基づいて好適に制御できるようになる。
【0035】
例えば、ある方向に向かって移動するボール54の移動速度が遅い速度から速い速度に大きく変化した場合を想定する。この場合、現在のフレームにおけるボール54の移動量が大きくなるため、直前のフレームにおける基礎位置Pn−1から、現在のフレームにおけるボール54の位置BへのベクトルPBは大きくなる。また、この場合、直前のフレームにおけるボール54の移動量は小さいため、二つ前のフレームにおける基礎位置Pn−2から、直前のフレームにおけるボール54の位置Bn−1へのベクトルPBn−1は小さく、その結果、直前のフレームにおいて得られたベクトルVn−1も小さい。この点、本実施形態では、基礎位置Pの決定の基礎とされるベクトルVは上記の式(1)によって得られるため、ベクトルVn−1が小さければ、ベクトルPBが大きくても、ベクトルVはそれ程大きくならない。その結果、基礎位置P及び仮想カメラ56の移動量の増加が抑えられる。仮想カメラ56の移動速度が大きく変化してしまうと、ユーザがゲーム画面60を見難くなってしまう場合があるが、ゲーム装置10によれば、ボール54の移動速度が遅い速度から速い速度に大きく変化しても、仮想カメラ56の移動速度はそれ程変化しないため、ユーザがゲーム画面60を見難くならないように図ることが可能になる。
【0036】
なお、ボール54の移動速度が遅い速度から速い速度に大きく変化した後、ボール54の移動速度が速い速度である状態が継続すると、ベクトルVの大きさは徐々に大きくなっていく。このため、基礎位置P及び仮想カメラ56の移動量も徐々に大きくなっていく。仮想カメラ56の移動速度が大きく変化してしまうと、ユーザがゲーム画面60を見難くなってしまう場合があるが、ゲーム装置10によれば、仮想カメラ56の移動速度は徐々に速くなっていくため、ユーザがゲーム画面60を見難くならないように図ることが可能になる。
【0037】
また例えば、ある方向に向かって移動するボール54の移動速度が速い速度から遅い速度に大きく変化した場合を想定する。この場合、現在のフレームにおけるボール54の移動量が小さくなるため、直前のフレームにおける基礎位置Pn−1から、現在のフレームにおけるボール54の位置BへのベクトルPBは小さくなる。また、この場合、直前のフレームにおけるボール54の移動量は大きいため、二つ前のフレームにおける基礎位置Pn−2から、直前のフレームにおけるボール54の位置Bn−1へのベクトルPBn−1は大きく、その結果、直前のフレームにおいて得られたベクトルVn−1も大きい。この点、本実施形態では、基礎位置Pの決定の基礎とされるベクトルVは上記の式(1)によって得られるため、ベクトルPBが小さくても、ベクトルVn−1が大きければ、ベクトルVはそれ程小さくならない。その結果、基礎位置Pや仮想カメラ56の移動量の減少が抑えられる。仮想カメラ56の移動速度が大きく変化してしまうと、ユーザがゲーム画面60を見難くなってしまう場合があるが、ゲーム装置10によれば、ボール54の移動速度が速い速度から遅い速度に大きく変化しても、仮想カメラ56の移動速度はそれ程変化せず、ユーザがゲーム画面60を見難くならないように図ることが可能になる。
【0038】
なお、ボール54の移動速度が速い速度から遅い速度に大きく変化した後、ボール54の移動速度が遅い速度である状態が継続すると、ベクトルVは徐々に小さくなっていく。このため、基礎位置P及び仮想カメラ56の移動量も徐々に小さくなっていく。仮想カメラ56の移動速度が大きく変化してしまうと、ユーザがゲーム画面60を見難くなってしまう場合があるが、ゲーム装置10によれば、仮想カメラ56の移動速度は徐々に遅くなっていくため、ユーザがゲーム画面60を見難くならないように図ることが可能になる。
【0039】
ところで、仮想カメラ56をボール54に完全に追従させた場合、すなわち、仮想カメラ56とボール54の位置関係が一定である場合、ボール54はゲーム画面60内の一定位置(例えば中心位置)に表示される。この場合、ゲーム画面60内でボール54は動かなくなってしまい、ユーザが違和感を感じてしまう場合がある。この点、ゲーム装置10では、基礎位置Pとボール54との位置関係が一定にならないため、仮想カメラ56とボール54との位置関係も一定にならず、上記のような不都合が生じないように図ることが可能になる。
【0040】
[5.変形例]
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0041】
[5−1.第1変形例]
例えば、いずれかの選手キャラクタ52がドリブル動作を行っている場合、その選手キャラクタ52のパラメータの値に基づいて、上記の式(1)及び(2)における係数kの値を変化させるようにしてもよい。
【0042】
例えば、ドリブル動作を行う選手キャラクタ52の疲労度を示す疲労度パラメータの値に基づいて、係数kの値を変化させるようにしてもよい。この場合、疲労度パラメータの値と、係数kの値と、を対応づけてなる係数データが光ディスク36に記憶される。係数データはテーブル形式のデータであってもよいし、数式形式のデータであってもよい。例えば、係数データでは、ドリブル動作を行う選手キャラクタ52の疲労度が高い場合の係数kの値(例えば0.2)が、疲労度が低い場合の係数kの値(例えば0.1)よりも大きくなるように設定される。このようにした場合、ドリブル動作を行う選手キャラクタ52の疲労度が高い場合には、疲労度が低い場合に比べて、選手キャラクタ52がボール54を蹴り出す場合(すなわち、ボール54の移動速度が速くなる場合)のベクトルVが大きくなる。この場合、基礎位置Pの移動量が大きくなり、仮想カメラ56の移動量も大きくなる。つまり、ボール54の移動量と仮想カメラ56の移動量との差が小さくなり、ゲーム画面60内に表されるボール54の移動量が小さくなる。その結果、選手キャラクタ52のドリブル動作が疲労によって遅くなったとユーザに感じさせることが可能になる。
【0043】
また例えば、ドリブル動作を行う選手キャラクタ52のドリブル能力の高さを示すドリブルパラメータの値に基づいて、係数kの値を変化させるようにしてもよい。この場合、ドリブルパラメータの値と、係数kの値と、を対応づけてなる係数データが光ディスク36に記憶される。この係数データでは、ドリブル動作を行う選手キャラクタ52のドリブル能力が高い場合の係数kの値(例えば0.1)が、ドリブル能力が低い場合の係数kの値(例えば0.2)よりも小さくなるように設定される。このようにした場合、ドリブル動作を行う選手キャラクタ52のドリブル能力が高い場合には、ドリブル能力が低い場合に比べて、選手キャラクタ52がボール54を蹴り出す場合(すなわち、ボール54の移動速度が速くなる場合)のベクトルVが小さくなる。この場合、基礎位置Pの移動量が小さくなり、仮想カメラ56の移動量も小さくなる。つまり、ボール54の移動量と仮想カメラ56の移動量との差が大きくなり、ゲーム画面60内に表されるボール54の移動量が大きくなる。その結果、ドリブル能力が低い選手キャラクタ52に比べて、ドリブル能力が高い選手キャラクタ52のドリブル動作は速いとユーザに感じさせることが可能になる。
【0044】
[5−2.第2変形例]
例えば、いずれかの選手キャラクタ52がドリブル動作を行っている場合、その選手キャラクタ52(又はボール54)の位置に基づいて、上記の式(1)及び(2)における係数kの値を変化させるようにしてもよい。
【0045】
この第2変形例では、選手キャラクタ52(又はボール54)の位置に関する条件と、係数kの値と、を対応づけてなる係数データが光ディスク36に記憶される。そして、上記の式(1)及び(2)では、ドリブル動作を行う選手キャラクタ52(又はボール54)の位置が満足する条件に対応づけられた係数kが用いられる。第2変形例では、例えば、複数の領域がフィールド42に設定され、係数データは、それら複数の領域の各々に係数kを対応づけてなるデータになる。そして、上記の式(1)及び(2)では、ドリブル動作を行う選手キャラクタ52(又はボール54)が位置する領域に対応づけられた係数kが用いられる。
【0046】
例えば、係数データでは、タッチライン46付近の領域に対応づけられる係数kの値(例えば0.1)が、それ以外の領域に対応づけられる係数kの値(例えば0.2)よりも小さく設定される。このようにした場合、選手キャラクタ52がタッチライン46付近の領域内をドリブルする場合には、それ以外の領域内をドリブルする場合に比べて、選手キャラクタ52がボール54を蹴り出す場合(すなわち、ボール54の移動速度が速くなる場合)のベクトルVが小さくなる。この場合、基礎位置Pの移動量が小さくなり、仮想カメラ56の移動量も小さくなる。つまり、ボール54の移動量と仮想カメラ56の移動量との差が大きくなり、ゲーム画面60内に表されるボール54の移動量が大きくなる。その結果、選手キャラクタ52がタッチライン46付近の領域内をドリブルする場合には、それ以外の領域内をドリブルする場合に比べて、選手キャラクタ52のドリブル動作が速いとユーザに感じさせることが可能になる。
【0047】
[5−3.その他の変形例]
ゲーム装置10で実行されるゲームはサッカーゲーム以外のスポーツゲームであってもよい。例えば、ボール(移動物体)を用いて行われるバスケットボールやアメリカンフットボールのゲームや、パック(移動物体)を用いて行われるアイスホッケーのゲームにも本発明は適用することができる。また、スポーツゲーム以外のゲームにも本発明は適用することができる。また、ゲーム装置10以外の画像処理装置にも本発明は適用することができる。仮想3次元空間40内を移動する移動体を仮想カメラ56から見た様子を表す画面を表示する画像処理装置に本発明は適用することができる。
【図面の簡単な説明】
【0048】
【図1】本実施形態に係るゲーム装置(画像処理装置)のハードウェア構成を示す図である。
【図2】仮想3次元空間の一例を示す図である。
【図3】ゲーム画面の一例を示す図である。
【図4】ゲーム装置が実行する処理を示すフロー図である。
【図5】基礎位置を取得するための式について説明するための図である。
【図6】仮想カメラの位置や視線方向を決定する処理の一例を説明するための図である。
【符号の説明】
【0049】
10 ゲーム装置、11 家庭用ゲーム機、12 バス、14 マイクロプロセッサ、16 主記憶、18 画像処理部、20 入出力処理部、22 音声処理部、24 光ディスク読み取り部、26 ハードディスク、28 通信インタフェース、30 コントローラ、32 モニタ、34 スピーカ、36 光ディスク、40 仮想3次元空間、42 フィールド、44 ゴールライン、46 タッチライン、48 ハーフウェイライン、50 ゴール、52 選手キャラクタ、54 ボール、56 仮想カメラ、58 視線方向、60 ゲーム画面。

【特許請求の範囲】
【請求項1】
仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理装置において、
前記移動体の位置に基づいて基礎位置を更新する基礎位置更新手段と、
前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御手段と、
を含み、
前記基礎位置更新手段は、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新する、
ことを特徴とする画像処理装置。
【請求項2】
請求項1に記載の画像処理装置において、
前記基礎位置更新手段は、
前記基礎位置を更新するための第1のベクトルを取得する手段であって、更新前の基礎位置から前記移動体の位置への方向及び距離に対応する第2のベクトルと、前記基礎位置の前回更新時において取得された前記第1のベクトルと、を所定の割合で合成することによって、前記第1のベクトルを取得する手段と、
前記基礎位置を、更新前の基礎位置と、前記第1のベクトルと、に基づいて更新する手段と、を含み、
前記所定の割合は、前記第2のベクトルに対応する割合が、前記基礎位置の前回更新時において取得された前記第1のベクトルの割合よりも小さく設定される、
ことを特徴とする画像処理装置。
【請求項3】
請求項2に記載の画像処理装置において、
前記画像処理装置は、前記移動体を用いて行われるスポーツのゲームを実行するゲーム装置であり、
前記基礎位置更新手段は、前記移動体を保持する選手キャラクタのパラメータに基づいて、前記所定の割合を制御する、
ことを特徴とする画像処理装置。
【請求項4】
請求項2に記載の画像処理装置において、
前記画像処理装置は、前記移動体を用いて行われるスポーツのゲームを実行するゲーム装置であり、
前記基礎位置更新手段は、前記移動体を保持する選手キャラクタ又は前記移動体の位置に基づいて、前記所定の割合を制御する、
ことを特徴とする画像処理装置。
【請求項5】
仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理方法において、
前記移動体の位置に基づいて基礎位置を更新する基礎位置更新ステップと、
前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御ステップと、
を含み、
前記基礎位置更新ステップは、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新する、
ことを特徴とする画像処理方法。
【請求項6】
仮想3次元空間内を移動する移動体を仮想カメラから見た様子を表す画像を生成する画像処理装置としてコンピュータを機能させるためのプログラムであって、
前記移動体の位置に基づいて基礎位置を更新する基礎位置更新手段、及び、
前記基礎位置に基づいて前記仮想カメラの状態を更新する仮想カメラ制御手段、
として前記コンピュータを機能させ、
前記基礎位置更新手段は、更新前の基礎位置から前記移動体の位置までの距離と、前記基礎位置の前回更新時における、更新前の基礎位置から前記移動体の位置までの距離と、に基づいて、前記基礎位置を更新する、
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2010−46219(P2010−46219A)
【公開日】平成22年3月4日(2010.3.4)
【国際特許分類】
【出願番号】特願2008−212091(P2008−212091)
【出願日】平成20年8月20日(2008.8.20)
【出願人】(506113602)株式会社コナミデジタルエンタテインメント (1,441)
【Fターム(参考)】