(57)【要約】【構成】画像処理装置は、たとえばサイズの異なる複数の操作オブジェクトＡ，Ｂ，Ｃごとに関連付けられたそれぞれの視点位置データＥ１，Ｅ２，Ｅ３を記憶している。プレイヤの操作に基づいて、仮想３次元空間に登場させる操作オブジェクトが選択されると、その操作オブジェクトに対応する視点位置データが読み出されて、視点位置が設定される。視点位置データは、たとえば、サイズの異なる何れの操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるように設定されている。そして、この視点位置に基づいて操作オブジェクトを含む３次元画像が表示される。【効果】選択する操作オブジェクトによってゲームの有利不利が生じることがなく、同じゲーム性を与えることができる。【選択図】  図５
2004318558.tif 000002
【特許請求の範囲】
【請求項１】
仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイに表示する画像処理装置であって、
プレイヤによって操作される操作手段、
前記操作手段の操作に基づいて、サイズの異なる複数の操作オブジェクトのうち前記仮想３次元空間に登場させる操作オブジェクトを選択する選択手段、
前記選択手段によって選択された前記操作オブジェクトに応じて視点位置を設定する視点位置設定手段、および
前記視点位置設定手段によって設定された前記視点位置に基づいて、前記操作オブジェクトを含む３次元画像を表示する画像表示手段を備える、画像処理装置。
【請求項２】
前記複数の操作オブジェクトごとに関連付けられたそれぞれの視点位置データを記憶する視点位置データ記憶手段をさらに備え、
前記視点位置設定手段は、前記選択手段によって選択された前記操作オブジェクトに対応する前記視点位置データを前記視点位置データ記憶手段から読み出して、前記視点位置を設定する、請求項１記載の画像処理装置。
【請求項３】
前記視点位置データは、前記選択手段によっていずれの操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるようにそれぞれ設定されている、請求項２記載の画像処理装置。
【請求項４】
前記視点位置データは注視点からの距離データを含み、
前記視点位置設定手段は、前記選択手段によって選択された前記操作オブジェクトに対応する前記距離データを読み出して、前記視点位置を設定する、請求項２または３記載の画像処理装置。
【請求項５】
前記視点位置データは注視点からの角度データまたは高さデータを含み、
前記視点位置設定手段は、前記選択手段によって選択された前記操作オブジェクトに対応する前記角度データまたは前記高さデータを読み出して、前記視点位置を設定する、請求項２ないし４のいずれかに記載の画像処理装置。
【請求項６】
プレイヤによって操作される操作手段を備え、仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイに表示する画像処理装置に実行させる画像処理プログラムであって、
前記画像処理装置のコンピュータに、
前記操作手段の操作に基づいて、サイズの異なる複数の操作オブジェクトのうち前記仮想３次元空間に登場させる操作オブジェクトを選択する選択ステップ、
前記選択ステップによって選択された前記操作オブジェクトに応じて視点位置を設定する視点位置設定ステップ、および
前記視点位置設定ステップによって設定された前記視点位置に基づいて、前記選択ステップによって選択された前記操作オブジェクトを含む３次元画像を表示する画像表示ステップを実行させる、画像処理プログラム。
【請求項７】
前記画像処理装置は、前記複数の操作オブジェクトごとに関連付けられたそれぞれの視点位置データを記憶する視点位置データ記憶手段をさらに備え、
前記視点位置設定ステップは、前記選択ステップによって選択された前記操作オブジェクトに対応する前記視点位置データを前記視点位置データ記憶手段から読み出して、前記視点位置を設定する、請求項６記載の画像処理プログラム。
【請求項８】
前記視点位置データは、前記選択ステップによっていずれの前記操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるようにそれぞれ設定されている、請求項７記載の画像処理プログラム。
【請求項９】
前記視点位置データは注視点からの距離データを含み、
前記視点位置設定ステップは、前記選択ステップによって選択された前記操作オブジェクトに対応する前記距離データを読み出して、前記視点位置を設定する、請求項７または８記載の画像処理プログラム。
【請求項１０】
前記視点位置データは注視点からの角度データまたは高さデータを含み、
前記視点位置設定ステップは、前記選択ステップによって選択された前記操作オブジェクトに対応する前記角度データまたは前記高さデータを読み出して、前記視点位置を設定する、請求項７ないし９のいずれかに記載の画像処理プログラム。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は画像処理装置および画像処理プログラムに関し、特にたとえば仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイに表示する画像処理装置および画像処理プログラムに関する。
【０００２】
【従来の技術】
従来のこの種の画像処理装置の一例がたとえば特許文献１および特許文献２に開示される。特許文献１は、オブジェクトの位置などの状態変化に伴って、視点位置を切換える技術に関するものである。たとえば、プレイヤの操作する自キャラクタと敵キャラクタとが所定距離以上離れているときは、仮想カメラを自キャラクタに主観的な画像となる第１の視点位置に設定し、自キャラクタと敵キャラクタとが所定距離内に接近したときには、仮想カメラを戦闘状況の視認性を高める第２の視点位置に切換えて設定している。
【０００３】
また、特許文献２は、カメラ視点とプレイヤキャラクタとの間にカメラ視点を遮る障害物が存在するときに、カメラ視点をプレイヤキャラクタへ接近させて障害物による遮りを回避した画像表示に切換える技術に関するものである。また、カメラ視点をプレイヤキャラクタの背後に接近させた場合に、プレイヤキャラクタを輪郭線表現や半透明表現などの透視可能な画像にすることにより、プレイヤキャラクタによって視野が遮られることを回避している。
【０００４】
【特許文献１】
特開２００１−２６９４８２号公報
【特許文献２】
特開２００２−３６０９２０号公報
【０００５】
【発明が解決しようとする課題】
しかし、上述の従来技術は、プレイヤの操作する操作オブジェクトと他のオブジェクトとの位置関係に応じて視点位置を切換えるものである。したがって、たとえばサイズの異なる複数の操作オブジェクトの中から１つを選択してプレイするようなゲームにおける次のような問題には対応できなかった。
【０００６】
すなわち、そのようなゲームにおいては、操作オブジェクト自体によって遮られる視野の範囲が、選択した操作オブジェクトによって異なってくるので、ゲームの同一性が損なわれ、同じゲーム性を与えることができないという問題があった。
【０００７】
たとえば、操作オブジェクトとして複数のカートを選択できる従来のレースゲーム等においては、どのカートを選択しても１つの視点位置が採用されていた。したがって、操作オブジェクトとして大，中，小サイズのカートを選択できるレースゲームにおいて、その視点位置を中サイズのカートで最適な画像となるように設定した場合、サイズの大きい（特に背の高い）カートを選択したときには、たとえば図１１に示すように、操作オブジェクト自体によって遮られる範囲が大きくなり、コース予測が困難になるという問題があった。逆にサイズの小さいカートを選択したときには、小さすぎて迫力を欠くきらいがあった。さらに、そのような遮り範囲の違いによって、操作性も異なるものとなってしまう。このように、従来技術では、選択した操作オブジェクトのサイズの違いによって、ゲームに有利不利が生じてしまい、同じゲーム性を与えることができないという問題があった。また、たとえば対戦ゲーム等においてはプレイヤ間に不公平感を生じてさせてしまうという問題があった。
【０００８】
それゆえに、この発明の主たる目的は、サイズの異なる複数の操作オブジェクトのいずれを選択しても、同じゲーム性を与えることができる、画像処理装置および画像処理プログラムを提供することである。
【０００９】
【課題を解決するための手段】
第１の発明（請求項１にかかる発明）は、仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイに表示する画像処理装置である。この画像処理装置は、操作手段、選択手段、視点位置設定手段、および画像表示手段を備える。操作手段はプレイヤによって操作される。選択手段は、操作手段の操作に基づいて、サイズの異なる複数の操作オブジェクトのうち仮想３次元空間に登場させる操作オブジェクトを選択する。視点位置設定手段は、選択手段によって選択された操作オブジェクトに応じて視点位置を設定する。画像表示手段は、視点位置設定手段によって設定された視点位置に基づいて、操作オブジェクトを含む３次元画像を表示する。
【００１０】
請求項２は、請求項１に従属する画像処理装置であって、視点位置データ記憶手段をさらに備える。視点位置データ記憶手段は、複数の操作オブジェクトごとに関連付けられたそれぞれの視点位置データを記憶する。視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する視点位置データを視点位置データ記憶手段から読み出して、視点位置を設定する。
【００１１】
請求項３は、請求項２に従属する画像処理装置であって、視点位置データは、選択手段によっていずれの操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるようにそれぞれ設定されている。
【００１２】
請求項４は、請求項２または３に従属する画像処理装置であって、視点位置データは注視点からの距離データを含む。視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する距離データを読み出して、視点位置を設定する。
【００１３】
請求項５は、請求項２ないし４のいずれかに従属する画像処理装置であって、視点位置データは注視点からの角度データまたは高さデータを含む。視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する角度データまたは高さデータを読み出して、視点位置を設定する。
【００１４】
第２の発明（請求項６にかかる発明）は、プレイヤによって操作される操作手段を備え、仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイに表示する画像処理装置に実行させる画像処理プログラムである。この画像処理プログラムは、画像処理装置のコンピュータに、選択ステップ，視点位置設定ステップ，および画像表示ステップを実行させる。選択ステップは、操作手段の操作に基づいて、サイズの異なる複数の操作オブジェクトのうち仮想３次元空間に登場させる操作オブジェクトを選択する。視点位置設定ステップは、選択ステップによって選択された操作オブジェクトに応じて視点位置を設定する。画像表示ステップは、視点位置設定ステップによって設定された視点位置に基づいて、選択ステップによって選択された操作オブジェクトを含む３次元画像を表示する。
【００１５】
請求項７は、請求項６に従属する画像処理プログラムであって、画像処理装置は、複数の操作オブジェクトごとに関連付けられたそれぞれの視点位置データを記憶する視点位置データ記憶手段をさらに備える。この画像処理プログラムでは、視点位置設定ステップは、選択ステップによって選択された操作オブジェクトに対応する視点位置データを視点位置データ記憶手段から読み出して、視点位置を設定する。
【００１６】
請求項８は、請求項７に従属する画像処理プログラムであって、視点位置データは、選択ステップによっていずれの操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるようにそれぞれ設定されている。
【００１７】
請求項９は、請求項７または８に従属する画像処理プログラムであって、視点位置データは注視点からの距離データを含む。この画像処理プログラムでは、視点位置設定ステップは、選択ステップによって選択された操作オブジェクトに対応する距離データを読み出して、視点位置を設定する。
【００１８】
請求項１０は、請求項７ないし９のいずれかに従属する画像処理プログラムであって、視点位置データは注視点からの角度データまたは高さデータを含む。この画像処理プログラムでは、視点位置設定ステップは、選択ステップによって選択された操作オブジェクトに対応する角度データまたは高さデータを読み出して、視点位置を設定する。
【００１９】
【作用】
請求項１では、画像処理装置（１０：実施例で相当する参照符号。以下同じ。）は、仮想３次元空間に登場する操作オブジェクトを所定の視点位置から見た画像をディスプレイ（３４）に表示する。操作手段（２６）はプレイヤによって操作される。選択手段（３６，７０ａ，Ｓ３−Ｓ５）は、操作手段の操作に基づいて、サイズの異なる複数の操作オブジェクト（７２ａ，７２ｂ，７２ｃ）のうち仮想３次元空間に登場させる操作オブジェクトを選択する。視点位置設定手段（３６，７０ｂ，Ｓ７−Ｓ１７）は、選択手段によって選択された操作オブジェクトに応じて視点位置を設定する。そして、画像表示手段（３６，４２，７０ｃ，Ｓ１９）は、視点位置設定手段によって設定された視点位置（Ｅ１，Ｅ２，Ｅ３）に基づいて、操作オブジェクト（Ａ，Ｂ，Ｃ）を含む３次元画像を表示する。したがって、この発明によれば、選択された操作オブジェクトに応じて視点位置を設定するので、サイズの異なる何れの操作オブジェクトが選択されても、最適なサイズの操作オブジェクトとして表示され、同じゲーム性を与えることができる。
【００２０】
請求項２では、視点位置データ記憶手段（７４）は、複数の操作オブジェクトごとに関連付けられたそれぞれの視点位置データを記憶する。そして、視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する視点位置データを視点位置データ記憶手段から読み出して、視点位置を設定する。したがって、視点位置を簡単に設定できる。
【００２１】
請求項３では、視点位置データは、選択手段によっていずれの操作オブジェクトが選択されても略同じサイズの操作オブジェクトとして表示されるようにそれぞれ設定されている。したがって、操作オブジェクトによって遮られる視野範囲を略均一にすることができるので、同じゲーム性を与えることができる。
【００２２】
請求項４では、視点位置データは、注視点（Ｉ１，Ｉ２，Ｉ３）からの距離データ（Ｘ１，Ｘ２，Ｘ３）を含む。そして、視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する注視点からの距離データを読み出して、視点位置を設定する。したがって、視点距離を簡単に設定できる。
【００２３】
請求項５では、視点位置データは、注視点からの角度データ（α１，α２，α３）または高さデータ（Ｈ１，Ｈ２，Ｈ３）を含む。そして、視点位置設定手段は、選択手段によって選択された操作オブジェクトに対応する注視点からの角度データまたは高さデータを読み出して、視点位置を設定する。したがって、視点角度または視点の高さを簡単に設定できる。
【００２４】
請求項６−１０でも、請求項１−５と同様に、サイズの異なる何れの操作オブジェクトが選択されても、最適なサイズの操作オブジェクトとして表示され、同じゲーム性を与えることができる。
【００２５】
【発明の効果】
請求項１および６によれば、選択された操作オブジェクトに応じて視点位置を設定するので、サイズの異なる何れの操作オブジェクトを選択しても、最適なサイズの操作オブジェクトとして表示される。そのため、選択する操作オブジェクトによってゲームの有利不利が生じることがなく、同じゲーム性を与えることができる。また、たとえば対戦ゲーム等においては、互いにサイズの異なる操作オブジェクトを選択することによって生じる不公平感をなくすことができる。
【００２６】
請求項２および７によれば、操作オブジェクトごとに設定すべき視点位置データを記憶しているので、視点位置の設定を簡単な処理で行うことができる。
【００２７】
請求項３および８によれば、サイズの異なる何れの操作オブジェクトを選択しても、略同じサイズの操作オブジェクトとして表示されるので、操作オブジェクトによって遮られる視野範囲が略均一となり、同じゲーム性を与えることができる。
【００２８】
請求項４および９によれば、視点位置データとして、操作オブジェクトごとに、注視点からの距離データを記憶しているので、視点距離の設定を簡単な処理で行うことができる。また、操作オブジェクトのサイズに応じた視点距離を設定することによって、画面に表示される操作オブジェクトを最適なサイズで表示させることができる。
【００２９】
請求項５および１０によれば、視点位置データとして、操作オブジェクトごとに、注視点からの角度データまたは高さデータを記憶しているので、視点角度または視点の高さの設定を簡単な処理で行うことができる。また、操作オブジェクトのサイズに応じて、視点角度または視点の高さを最適な位置に設定することによって、画面に表示される操作オブジェクトを最適なサイズで表示させることができる。
【００３０】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００３１】
【実施例】
図１に示すこの実施例の画像処理装置１０は、たとえばビデオゲームシステムであり、ビデオゲーム装置ないしビデオゲーム機（以下、単に「ゲーム機」ともいう。）１２を含む。このゲーム機１２には電源が与えられるが、この電源は、実施例では、一般的なＡＣアダプタ（図示せず）であってよい。ＡＣアダプタは家庭用の標準的な壁ソケットに差し込まれ、家庭用電源を、ゲーム機１２を駆動するのに適した低いＤＣ電圧信号に変換する。他の実施例では、電源として、バッテリが用いられてもよい。
【００３２】
ゲーム機１２は、略立方体のハウジング１４を含み、ハウジング１４の上端には光ディスクドライブ１６が設けられる。光ディスクドライブ１６には、ゲームプログラム（画像処理プログラム）を記憶した情報記憶媒体の一例である光ディスク１８が装着される。ハウジング１４の前面には複数の（実施例では４つの）コネクタ２０が設けられる。これらコネクタ２０は、ケーブル２４によって、コントローラ２２をゲーム機１２に接続するためのものであり、この実施例では最大４つのコントローラをゲーム機１２に接続することができる。
【００３３】
コントローラ２２には、その上面，下面，あるいは側面などに、操作手段（コントロール）２６が設けられる。操作手段２６は，たとえば２つのアナログジョイスティック，１つの十字キー，複数のボタンスイッチ等を含む。１つのアナログジョイスティックは、スティックの傾き量と方向とによって、操作オブジェクトとしてのプレイヤキャラクタ（プレイヤがコントローラ２２によって操作可能な動画キャラクタ）の移動方向および／または移動速度ないし移動量などを入力するために用いられる。他のアナログジョイスティックも同様に、傾斜方向によって、たとえばプレイヤキャラクタの移動を制御する。十字スイッチは、アナログジョイスティックに代えてプレイヤキャラクタの移動方向を指示するために用いられる。ボタンスイッチは、プレイヤキャラクタの動作を指示するために利用されたり、プレイヤキャラクタの移動スピード調節等に用いられる。ボタンスイッチは、さらに、たとえばメニュー選択やポインタあるいはカーソル移動を制御する。
【００３４】
なお、この実施例ではコントローラ２２がケーブル２４によってゲーム機１２に接続された。しかしながら、コントローラ２２は、他の方法、たとえば電磁波（たとえば電波または赤外線）を介してワイヤレスで、ゲーム機１２に接続されてもよい。また、コントローラ２２の操作手段の具体的構成は、もちろん実施例の構成に限られるものではなく、任意の変形が可能である。たとえば、アナログジョイスティックは１つだけでもよいし、用いられなくてもよい。十字スイッチは用いられなくてもよい。
【００３５】
ゲーム機１２のハウジング１４の前面のコネクタ２０の下方には、少なくとも１つの（実施例では２つの）メモリスロット２８が設けられる。このメモリスロット２８にはメモリカード３０が挿入される。メモリカード３０は、光ディスク１８から読み出したゲームプログラムやデータをローディングして一時的に記憶したり、このゲームシステム１０を利用してプレイしたゲームのゲームデータ（たとえばゲームの結果）をセーブ（保存）しておくために利用される。
【００３６】
ゲーム機１２のハウジング１４の後面には、ＡＶケーブルコネクタ（図示せず）が設けられ、そのコネクタを用いて、ＡＶケーブル３２を通してゲーム機１２にモニタ（ディスプレイ）３４を接続する。このモニタ３４は典型的にはカラーテレビジョン受像機であり、ＡＶケーブル３２は、ゲーム機１２からの映像信号をカラーテレビのビデオ入力端子に入力し、音声信号を音声入力端子に与える。したがって、カラーテレビ（モニタ）３４の画面上にたとえば３次元（３Ｄ）ビデオゲームのゲーム画像が表示され、左右のスピーカ３４ａからゲーム音楽（ＢＧＭ）や効果音などのゲーム音声（たとえばステレオ）が出力され得る。
【００３７】
このゲームシステム１０において、ユーザまたはゲームプレイヤがゲーム（または他のアプリケーション）をプレイするために、ユーザはまずゲーム機１２の電源をオンし、ついで、ユーザはビデオゲーム（もしくはプレイしたいと思う他のアプリケーション）をストアしている適宜の光ディスク１８を選択し、その光ディスク１８をゲーム機１２のディスクドライブ１６にローディングする。応じて、ゲーム機１２がその光ディスク１８にストアされているソフトウェアに基づいてビデオゲームもしくは他のアプリケーションを実行し始めるようにする。ユーザはゲーム機１２に入力を与えるためにコントローラ２２を操作する。たとえば、操作手段２６のどれかを操作することによってゲームもしくは他のアプリケーションをスタートさせる。操作手段２６の他のものを動かすことによって、たとえば、複数の操作オブジェクトから実際にプレイする操作オブジェクトを選択したり、そして、その操作オブジェクト（プレイヤオブジェクト）を異なる方向に移動させたりすることができる。
【００３８】
図２は図１実施例のビデオゲームシステム１０の電気的な内部構成を示すブロック図である。ビデオゲーム機１２には、中央処理ユニット（以下、「ＣＰＵ」という。）３６が設けられる。ＣＰＵ３６は、コンピュータ或いはプロセサなどとも呼ばれ、ゲーム機の全体的な制御を担当する。このＣＰＵ３６ないしコンピュータは、ゲームプロセサとして機能し、バスを介して、メモリコントローラ３８に結合される。メモリコントローラ３８は主として、ＣＰＵ３６の制御の下で、バスを介して結合されるメインメモリ４０の書込みや読出しを制御する。メインメモリ４０は作業領域またはバッファ領域として使用される。メモリコントローラ３８にはＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：グラフィックス処理装置）  ４２が結合される。
【００３９】
ＧＰＵ４２は、描画手段の一部を形成し、たとえばシングルチップＡＳＩＣで構成され、メモリコントローラ３８を介してＣＰＵ３６からのグラフィクスコマンド（ｇｒａｐｈｉｃｓ  ｃｏｍｍａｎｄ：作画命令）を受け、そのコマンドに従って、ジオメトリユニット４４およびレンダリングユニット４６によって３次元（３Ｄ）ゲーム画像を生成する。つまり、ジオメトリユニット４４は、３次元座標系の各種キャラクタやオブジェクト（複数のポリゴンで構成されている。そして、ポリゴンとは少なくとも３つの頂点座標によって定義される多角形平面をいう）の回転，移動，変形等の座標演算処理を行う。レンダリングユニット４６は、各種オブジェクトの各ポリゴンにテクスチャ（Ｔｅｘｔｕｒｅ：模様画像）を貼り付けるテクスチャマッピングなどのレンダリング処理を行う。したがって、ＧＰＵ４２によって、３次元モデルからゲーム画面上に表示すべき３Ｄ画像データが作成され、そして、その画像データがフレームバッファ４８内に描画（記憶）される。
【００４０】
なお、ＧＰＵ４２が作画コマンドを実行するにあたって必要なデータ（プリミティブまたはポリゴンやテクスチャ等）は、ＧＰＵ４２がメモリコントローラ３８を介して、メインメモリ４０から入手する。
【００４１】
フレームバッファ４８は、たとえばラスタスキャンモニタ３４の１フレーム分の画像データを描画（蓄積）しておくためのメモリであり、ＧＰＵ４２によって１フレーム毎に書き換えられる。後述のビデオＩ／Ｆ５８がメモリコントローラ３８を介してフレームバッファ４８のデータを読み出すことによって、モニタ３４の画面上にゲーム画像が表示される。なお、フレームバッファ４８の容量は、表示したい画面の画素（ピクセルまたはドット）数に応じた大きさである。たとえば、ディスプレイないしモニタ３４の画素数に応じた画素数（記憶位置またはアドレス）を有する。
【００４２】
また、Ｚバッファ５０は、フレームバッファ４８に対応する画素（記憶位置またはアドレス）数×１画素当たりの奥行データのビット数に相当する記憶容量を有し、フレームバッファ４８の各記憶位置に対応するドットの奥行き情報または奥行データ（Ｚ値）を記憶するものである。
【００４３】
なお、フレームバッファ４８およびＺバッファ５０は、ともにメインメモリ４０の一部を用いて構成されてもよい。
【００４４】
メモリコントローラ３８はまた、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）５２を介して、サブメモリ（ＡＲＡＭ）５４に結合される。したがって、メモリコントローラ３８は、ＣＰＵ３６の制御の下で、メインメモリ４０だけでなく、ＡＲＡＭ５４の書込みおよび／または読出しを制御する。
【００４５】
ＤＳＰ５２は、たとえばサウンドプロセサとして機能しオーディオ処理タスクを実行する。ＡＲＡＭ５４は、ディスク１８から読み出された、たとえば音波形データ（サウンドデータ）をストアするためのオーディオメモリとして用いられ得る。ＤＳＰ５２は、メモリコントローラ３８を介してＣＰＵ３６からのオーディオ処理コマンドを受け、そのコマンドに従って、必要な音波形データを抽出し、たとえばピッチ変調，音声データと効果データとのミキシング等の処理／ミックスを行う。オーディオ処理コマンドは、たとえばサウンド処理プログラム等の実行によって、メインメモリ４０に書き込まれた、たとえば演奏制御データ（サウンドデータ）を順次読み出して解析することによって発生される。音波形データは順次読み出されて、ゲームオーディオコンテンツを生成するためにＤＳＰ５２によって処理される。結果として生成されたコンテンツないしオーディオ出力データはたとえばメインメモリ４０にバッファされ、次いで、スピーカ３４ａでたとえばステレオ音声として出力するために、オーディオＩ／Ｆ６２に転送される。したがって、その音（サウンド）がスピーカ３４ａから出力される。
【００４６】
なお、生成されるオーディオデータは、２ｃｈステレオ再生用に限られず、たとえば５．１ｃｈ，６．１ｃｈ，７．１ｃｈ等のサラウンド再生あるいはモノラル再生などに対応可能であるのはもちろんである。
【００４７】
メモリコントローラ３８は、さらに、バスによって、各インタフェース（Ｉ／Ｆ）５６，５８，６０，６２および６４に結合される。
【００４８】
コントローラＩ／Ｆ５６は、コントローラ２２のためのインタフェースであり、コントローラ２２の操作手段２６の操作信号またはデータをメモリコントローラ３８を通してＣＰＵ３６に与える。
【００４９】
ビデオＩ／Ｆ５８は、フレームバッファ４８にアクセスし、ＧＰＵ４２で作成した画像データを読み出して、画像信号または画像データ（ディジタルＲＧＢピクセル値）をＡＶケーブル３２（図１）を介してモニタ３４に与える。
【００５０】
外部メモリＩ／Ｆ６０は、ゲーム機１２の前面に挿入されるメモリカード３０（図１）をメモリコントローラ３８に連係させる。それによって、メモリコントローラ３８を介して、ＣＰＵ３６がこのメモリカード３０にデータを書込み、またはメモリカード３０からデータを読み出すことができる。
【００５１】
オーディオＩ／Ｆ６２は、メモリコントローラ３８を通してバッファから与えられるオーディオデータまたは光ディスク１８から読み出されたオーディオストリームを受け、それらに応じたオーディオ信号（音声信号）をモニタ３４のスピーカ３４ａに与える。
【００５２】
なお、ステレオ音声の場合には、スピーカ３４ａは、少なくとも、左右１つずつ設けられる。また、サラウンド再生の場合には、たとえば、モニタ３４のスピーカ３４ａとは別に、さらに５つと低音用の１つ（７．１ｃｈの場合）とがＡＶアンプ等を介して設けられてよい。
【００５３】
そして、ディスクＩ／Ｆ６４は、そのディスクドライブ１６をメモリコントローラ３８に結合し、したがって、ＣＰＵ３６がディスクドライブ１６を制御する。このディスクドライブ１６によって光ディスク１８から読み出されたプログラムデータやオブジェクトデータ，テクスチャデータ，サウンドデータ等が、ＣＰＵ３６の制御の下で、メインメモリ４０に書き込まれる。
【００５４】
図３には、メインメモリ４０のメモリマップが示される。メインメモリ４０は、ゲームプログラム記憶領域７０，オブジェクトデータ記憶領域７２，視点位置データ記憶領域７４，サウンドデータ記憶領域７６およびその他のデータの記憶領域７８を含む。
【００５５】
ゲームプログラム記憶領域７０には、光ディスク１８から読み出したゲームプログラムが一度に全部または部分的かつ順次的に記憶される。このゲームプログラムに従ってＣＰＵ３６がゲーム処理を実行する。ゲームプログラムは、この実施例では、操作オブジェクト選択プログラム７０ａ，視点位置設定プログラム７０ｂ，画像表示プログラム７０ｃおよびその他ゲームの進行に必要な各種プログラム７０ｄを含む。なお、操作オブジェクト選択プログラム７０ａは、複数の操作オブジェクトのうち仮想３次元空間に登場させてプレイする操作オブジェクトを選択するためのものである。視点位置設定プログラム７０ｂは、選択された操作オブジェクトに対応する仮想カメラの視点位置（カメラ位置）を設定するためのものである。画像表示プログラム７０ｃは、設定された視点位置に基づいて、操作オブジェクトを含む３次元ゲーム画像を表示するためのものである。
【００５６】
オブジェクトデータ記憶領域７２には、カートＡオブジェクトデータ７２ａ，カートＢオブジェクトデータ７２ｂ，カートＣオブジェクトデータ７２ｃ，敵オブジェクトデータ７２ｄ，背景オブジェクトデータ７２ｅ，およびその他のオブジェクトデータ７２ｆ等が記憶される。カートＡオブジェクトデータ７２ａ，カートＢオブジェクトデータ７２ｂおよびカートＣオブジェクトデータ７２ｃは、プレイヤによって選択されて操作される複数の操作オブジェクトである。この実施例では、たとえばカートを用いたレースゲームが想定され、サイズの異なるカートＡ，ＢおよびＣの３つが準備される。各オブジェクトはポリゴンによって形成され、また、各データにはたとえばその位置座標や状態等の情報が含まれる。
【００５７】
視点位置データ記憶領域７４には、複数の操作オブジェクトごとの視点位置データが記憶され、サウンドデータ記憶領域７６には、ゲームＢＧＭ等に関するサウンドデータが記憶される。また、その他のデータの記憶領域７８には、その他ゲーム進行に必要な各種データやフラグ等が記憶される。なお、メインメモリ４０のオブジェクトデータ記憶領域７２，視点位置データ記憶領域７４およびサウンドデータ記憶領域７６等には、各データが光ディスク１８から一度に全部、または必要に応じて部分的かつ順次的にロードされる。
【００５８】
図４には、視点位置データ記憶領域７４に記憶される視点位置データテーブルの一例が示される。また、図５には、この視点位置データに基づいた操作オブジェクトとその視点位置との位置関係の一例が示される。図４に示すように、視点位置データ記憶領域７４には、複数の操作オブジェクトとしてのカートＡ，ＢおよびＣごとに関連付けられた、それぞれに固有の視点位置Ｅ１，Ｅ２およびＥ３に関する視点位置データが予め記憶される。図５から分かるように、視点位置Ｅ１，Ｅ２およびＥ３は、注視点Ｉ１，Ｉ２およびＩ３の後方の斜め上に位置するように設定される。なお、注視点Ｉ１，Ｉ２およびＩ３は、図５に示すように、たとえば重心等のような各操作オブジェクトＡ，ＢおよびＣの特定の点等に設定され得る。視点位置Ｅは、ゲームの進行における操作オブジェクトの移動に従って、基本的には注視点Ｉとの相対的な位置関係を維持したまま、注視点Ｉとともに仮想３次元空間内を移動する。
【００５９】
視点位置Ｅは、たとえば注視点Ｉからの距離Ｘおよび角度αによって決まるので、視点位置データは、注視点からの距離データおよび注視点からの角度データを含む。この実施例では、カートＡが大サイズであり、カートＢが中サイズであり、そしてカートＣが小サイズであるので、カメラ位置Ｅ１，Ｅ２およびＥ３のそれぞれの注視点Ｉ１，Ｉ２およびＩ３からの距離（水平距離）Ｘ１，Ｘ２およびＸ３は、たとえばＸ１＞Ｘ２＞Ｘ３の関係で設定され、かつ、それぞれの注視点Ｉ１，Ｉ２およびＩ３からの角度（仰角または俯角）α１，α２およびα３は、たとえばα１＞α２＞α３の関係で設定される。
【００６０】
なお、視点位置Ｅは、たとえば注視点Ｉからの距離Ｘおよび高さＨによっても決まるので、他の実施例では、視点位置データは、図４に併せて示すように、角度データに代えて、注視点からの高さ（垂直距離）データを含んでよい。この場合、カメラ位置Ｅ１，Ｅ２およびＥ３のそれぞれの注視点Ｉ１，Ｉ２およびＩ３からの高さＨ１，Ｈ２およびＨ３は、たとえばＨ１＞Ｈ２＞Ｈ３の関係で設定される。
【００６１】
このような視点位置データは、複数の操作オブジェクトＡ，ＢおよびＣのいずれを選択しても、ゲームとしての同一性が損なわれないような最適なサイズでその操作オブジェクトが表示されるように、すなわち、その操作オブジェクトに適応した視点位置となるように、それぞれ設定される。具体的には、例えばカートのサイズが大きい程、注視点Ｉからの距離Ｘおよび角度α（高さＨ）を大きくし、カートのサイズが小さい程、注視点Ｉからの距離Ｘおよび角度α（高さＨ）を小さくする。このように、操作オブジェクトのサイズに応じた視点距離および視点角度もしくは視点の高さを設定することによって、画面に表示される操作オブジェクトを最適なサイズで表示させることができる。
【００６２】
また、視点位置データは、望ましくは、複数の操作オブジェクトＡ，ＢおよびＣのいずれが選択されても、各操作オブジェクトＡ，ＢおよびＣが略同じサイズを有する操作オブジェクトとして表示されるようにそれぞれ設定される。これによって、各操作オブジェクトによって遮られる範囲を略均一にすることができ、同じゲーム性を与えることができる。
【００６３】
また、このように操作オブジェクトごとに設定すべき固有の視点位置データを予め記憶しているので、視点位置の設定を簡単な処理で行うことができる。
【００６４】
図６には、この画像処理装置１０の動作の一例が示される。ゲームをプレイするとき、上述のように光ディスク１８をゲーム機１２にセットし、電源を投入すると、図６の最初のステップＳ１で、ＣＰＵ３６は、たとえばメモリクリアなどの初期化処理を実行し、光ディスク１８からプログラムおよびデータを読み出して、図３に示すようにメインメモリ４０に必要なプログラムおよびデータをロードする。
【００６５】
ＣＰＵ３６はこのプログラムに従って処理を開始すると、ステップＳ３で、たとえば、メインメモリ４０のオブジェクトデータ記憶領域７２およびその他の記憶領域７８等から図示しない操作オブジェクト選択画面を表示するために必要なデータを読み出し、ＧＰＵ４２を用いてその選択画面をフレームバッファ４８に描画するとともに、ビデオＩ／Ｆ５８を起動する。これによって、複数の操作オブジェクトの中から、仮想３次元空間に登場させて実際に操作する操作オブジェクトの選択を行うための選択画面がモニタ３４に表示される。この図示しない操作オブジェクト選択画面には、たとえば図７に示すような操作オブジェクトＡ，ＢおよびＣが個別または一緒に表示され、プレイヤによる選択が促される。図７から分かるように、この実施例の３つの操作オブジェクトＡ，ＢおよびＣは、互いにサイズが異なるものであり、操作オブジェクトＡが最も大きく、操作オブジェクトＣが最も小さい。
【００６６】
次に、ステップＳ５で、ＣＰＵ３６は、操作オブジェクトが決定されたか否かを判断する。このステップＳ５で“ＮＯ”であれば、つまり、コントローラ２２からの操作入力信号が操作オブジェクトを決定するものでない場合等には、ステップＳ３に戻って処理を繰り返し、プレイヤによる操作オブジェクトの決定を促す。一方、ステップＳ５で“ＹＥＳ”であれば、つまり、操作入力信号が操作オブジェクトの選択を決定するものである場合には、ＣＰＵ３６は、続くステップＳ７，Ｓ９で、どの操作オブジェクトが選択されたのかを判断する。
【００６７】
ステップＳ７では、ＣＰＵ３６は、カートＡが選択されたか否かを判断し、“ＹＥＳ”であれば、続くステップＳ１１で、カートＡに対応する視点位置データを視点位置データ記憶領域７４からメインメモリ４０の所定のワークエリアに読み出す。一方、ステップＳ７で“ＮＯ”であれば、ＣＰＵ３６は、続くステップＳ９で、カートＢが選択されたか否かを判断する。このステップＳ９で“ＹＥＳ”であれば、ＣＰＵ３６は、続くステップＳ１３で、カートＢに対応する視点位置データを視点位置データ記憶領域７４から読み出す。他方、ステップＳ９で“ＮＯ”であれば、この実施例では操作オブジェクトＣが選択されたこととなるので、ＣＰＵ３６は、続くステップＳ１５で、カートＣに対応する視点位置データを視点位置データ記憶領域７４から読み出す。
【００６８】
続いて、ステップＳ１７で、ＣＰＵ３６は、読み出された視点位置データに基づいて、仮想３次元空間内における仮想カメラの位置を設定する。すなわち、たとえば図５に示すように、カートＡが選択された場合には、カートＡに対応する視点位置データ（図４）に基づいてカメラ位置Ｅ１が設定され、カートＢが選択された場合には、カートＢに対応する視点位置データに基づいてカメラ位置Ｅ２が設定され、または、カートＣが選択された場合には、カートＣに対応する視点位置データに基づいてカメラ位置Ｅ３が設定される。
【００６９】
そして、ステップＳ１９で、ＣＰＵ３６は、ＧＰＵ４２等を用いて、設定されたカメラに基づくゲーム画像表示処理を実行する。したがって、操作オブジェクトごとに設定される視点位置に基づいた３次元ゲーム画像がモニタ３４に表示される。具体的には、たとえば、プログラムおよび操作手段２６からの操作入力等に応じてゲームを進行させ、ワールド座標系での操作オブジェクトの位置を更新し、これに応じて注視点位置および仮想カメラ位置も更新する。なお、注視点とカメラ位置との相対位置関係は維持される。そして、操作オブジェクト，敵オブジェクト，および背景オブジェクトなどの位置を、仮想カメラを基準とする３次元のカメラ座標系に変換するとともに、その３次元のカメラ座標系を２次元の投影平面座標系に変換し、また、クリッピング（ｃｌｉｐｐｉｎｇ：不可視世界の切り取り）等も併せて実行する。また、操作オブジェクト，敵オブジェクト，その他オブジェクト等の必要なテクスチャをそれぞれ読み出して、それぞれのオブジェクト等にマッピングする。このようにして、レンダリングされた３次元画像データがフレームバッファ４８に描画される。したがって、このステップＳ１９のゲーム画像表示処理によって、操作オブジェクトごとに設定される仮想カメラ位置に基づいた３次元ゲーム画像がモニタ３４に表示される。なお、図示はしていないが、サウンド処理等も実行されてゲームＢＧＭ等のサウンドもスピーカ３４ａから出力される。
【００７０】
図８，図９および図１０には、このステップＳ１９の処理によってモニタ３４に表示されるゲーム画像（表示画面）の一例が示される。図８は大サイズのカートＡが選択された場合の画像であり、図９は中サイズのカートＢが選択された場合の画像であり、そして、図１０は小サイズのカートＣが選択された場合の画像である。なお、操作オブジェクトごとの視点位置の相違は、たとえば、表示画面の下端縁から各操作オブジェクト（またはその影）までのオフセット長さの相違や背景のコースの見え方の相違等にも現れている。
【００７１】
これら図８−１０から分かるように、各操作オブジェクトＡ，ＢおよびＣはそれぞれ最適なサイズで表示される。さらに、この実施例では、各操作オブジェクトＡ，ＢおよびＣは略同じ大きさの操作オブジェクトとして表示画面中に表示される。したがって、操作オブジェクト自体によって遮られる範囲の大きさは略同じであり、いずれの操作オブジェクトが選択された場合にも同じゲーム性を与えることができる。また、同様に、操作の面でも略同じような操作性を与えることができる。
【００７２】
また、従来技術と比較すると、大サイズの操作オブジェクトＡの場合、従来技術では、図１１に示すように、操作オブジェクト自体によって遮られる範囲が大き過ぎるので、コース前方も大きく隠されてしまい、プレイヤはコース予測が困難であった。しかし、この実施例では、図８に示すように、遮られる範囲は適切な大きさであり、コースの進路等も適切に表示されることとなるので、コース予測が困難になるようなおそれはない。また、小サイズの操作オブジェクトＣの場合にも、図１０に示すように、適切なサイズで表示されるので、迫力を欠いてしまうようなことはない。
【００７３】
図６のステップＳ１９のゲーム画像表示処理は、続くステップＳ２１でゲーム終了であると判断されるまで繰り返され、プログラムおよび操作手段２６からの操作入力等に応じてゲームが進行されるとともにそのゲーム画像が表示される。一方、ステップＳ２１で、“ＹＥＳ”であれば、つまり、たとえばゲーム終了が選択され、またはゲームオーバになった場合等には、ＣＰＵ３６はゲーム終了処理を実行してこの処理を終了する。
【００７４】
この実施例によれば、選択された操作オブジェクトに応じて視点位置を設定するので、サイズの異なる何れの操作オブジェクトを選択しても、その操作オブジェクトに最適なサイズで表示することができる。さらに、この実施例では略同じサイズの操作オブジェクトとして表示することができるので、操作オブジェクトによって遮られる視野範囲を略均一にすることができる。したがって、選択する操作オブジェクトによってゲームの有利不利が生じることがなく、同じゲーム性を与えることができる。また、たとえば対戦ゲーム等においては、互いにサイズの異なる操作オブジェクトを選択することによって生じる不公平感をなくすことができる。
【００７５】
なお、上述の実施例では、複数の操作オブジェクトごとに関連付けたそれぞれの視点位置データに基づいて、それぞれの視点位置を設定するようにしているが、たとえば、ほとんど同じ程度のサイズの操作オブジェクトが複数ある場合等には、それらの操作オブジェクトには、ゲームの同一性が損なわれない範囲で同じ視点位置を設定するようにしてもよい。また、たとえば、非常に多数（たとえば１０００以上等）の操作オブジェクトを有していてデータ量が多くなる場合等には、少数の操作オブジェクトに対して予め設定しておいた視点位置データに基づいて、残りの多数の操作オブジェクトに適応する視点位置データを補間等によって算出するようにしてもよい。
【図面の簡単な説明】
【図１】この発明の一実施例の画像処理装置の外観を示す図解図である。
【図２】図１実施例におけるゲーム機の内部構成の一例を示すブロック図である。
【図３】図２におけるメインメモリのメモリマップの一例を示す図解図である。
【図４】視点位置データテーブルの一例を示す図解図である。
【図５】操作オブジェクトとその視点位置との位置関係の一例を示す図解図である。
【図６】図１実施例の画像処理装置の動作の一例を示すフロー図である。
【図７】図１実施例において選択可能なサイズの異なる複数の操作オブジェクトを示す図解図であり、（Ａ）は大サイズのカートＡオブジェクトを示し、（Ｂ）は中サイズのカートＢオブジェクトを示し、（Ｃ）は小サイズのカートＣオブジェクトを示す。
【図８】図１実施例において大サイズのカートＡオブジェクトが選択された場合のゲーム画像の一例を示す図解図である。
【図９】図１実施例において中サイズのカートＢオブジェクトが選択された場合のゲーム画像の一例を示す図解図である。
【図１０】図１実施例において小サイズのカートＣオブジェクトが選択された場合のゲーム画像の一例を示す図解図である。
【図１１】従来技術において大サイズのカートＡオブジェクトが選択された場合のゲーム画像の一例を示す図解図である。
【符号の説明】
１０  …画像処理装置
１２  …ゲーム機
１８  …光ディスク
２２  …コントローラ
２６  …操作手段
３４  …モニタ
３６  …ＣＰＵ
４０  …メインメモリ
４２  …ＧＰＵ
Ａ，Ｂ，Ｃ  …操作オブジェクト
【図１】
2004318558.tif 000003
【図２】
2004318558.tif 000004
【図３】
2004318558.tif 000005
【図４】
2004318558.tif 000006
【図５】
2004318558.tif 000007
【図６】
2004318558.tif 000008
【図７】
2004318558.tif 000009
【図８】
2004318558.tif 000010
【図９】
2004318558.tif 000011
【図１０】
2004318558.tif 000012
【図１１】
2004318558.tif 000013