(57)【特許請求の範囲】
【請求項１】
着脱自在に装着された記憶手段に記憶されたゲームプログラムを読み出して、当該ゲームプログラムを実行することにより、仮想三次元空間に基づくゲーム画面を表示手段に表示し、当該ゲーム画面に対して遊戯者が行う操作手段に対する操作に応じて任意の方向の移動進路の選択が可能なゲームを実行するゲーム装置であって、
前記記憶手段は、複数の地形データを記憶し、
前記ゲーム装置は、
前記仮想三次元空間において移動体が移動進路として選択可能な複数のエリアを前記複数の地形データに対応させて設定する設定手段と、
前記仮想三次元空間における視点を前記移動体の位置に設定するとともに、前記視点から見た視野を前記移動体の進行方向に設定し、前記操作手段から入力される操作データに基づき前記複数のエリアのいずれかのエリア内を移動する前記移動体の進行方向前方に展開する地形であって、前記視野の視野角内において前記視点から所定距離の位置に設定された限界ライン内にある地形を、前記表示手段に表示する画像処理手段と、
前記遊戯者の前記操作手段の操作に応答して、
（ａ）前記移動体が存在するエリア内における前記移動体の現在位置および進行方向を特定し、
（ｂ）前記視野角内において前記視点から見て前記限界ラインよりもさらに所定距離だけ遠方にある位置に参照ラインを設定し、
（ｃ）前記視野角内にあり、かつ、前記参照ラインを含むエリアを検出し、
（ｄ）前記（ｃ）で検出されたエリアのうち、対応する地形データがワークメモリに読み込まれていないエリアを特定し、当該特定したエリアの地形データを前記記憶手段から読み出して前記ワークメモリに読み込む、
処理を一定時間毎に実行する実行手段と、
を備え、
前記画像処理手段は、前記移動体の移動により現在位置および／または進行方向が変更され、前記（ｃ）で検出された前記エリアのいずれかが前記限界ライン内に入ったとき、前記ワークメモリ内に先に読み込まれていた当該エリアに対応する前記地形データを用いて、当該現在位置に基づく限界ライン内の地形を前記表示手段に表示することを特徴とするゲーム装置。
【請求項２】
請求項１記載のゲーム装置において、
前記複数の地形データは、地形の種類に応じて前記記憶手段に記憶されており、
前記ワークメモリは、同一の記憶容量を有する複数のメモリブロックが設定されており、
前記記憶手段から読み出された地形データは、当該地形データの前記地形の種類に基づくデータ量に応じて前記複数のメモリブロックのうちの１以上のメモリブロックに読み込まれることを特徴とするゲーム装置。
【請求項３】
請求項２記載のゲーム装置において、
前記（ｄ）で前記特定したエリアの地形データを前記ワークメモリに読み込む際に、
前記ワークメモリに設定された複数のメモリブロックに未使用、且つ、前記特定したエリアの地形データのデータ量に対応する１以上のメモリブロックがあるか否かを判断し、  当該１以上のメモリブロックがあると判断した場合、前記特定したエリアの地形データを当該１以上のメモリブロックに読み込むことを特徴とするゲーム装置。
【請求項４】
請求項３記載のゲーム装置において、
前記複数のメモリブロックにそれぞれ対応した複数のカウント部と、
前記地形データが既に記憶されているメモリブロックに対応する前記エリア内に、前記移動体が存在するか否か、あるいは当該エリアが前記視野角内に存在するか否かを定期的に判断し、前記移動体が存在しない、あるいは当該エリアが前記視野角内に存在しないと判断されたエリアと対応する前記カウント部にカウント値をカウントするカウント手段と、
を備え、
前記（ｄ）で前記特定したエリアの地形データを前記ワークメモリに読み込む際に、
未使用、且つ、前記特定したエリアの地形データのデータ量に対応する１以上のメモリブロックが無いと判断した場合、前記複数のカウント部のそれぞれにカウントされている前記カウント値に基づいて、前記地形データが既に記憶されている１以上のメモリブロックを決定し、当該決定した１以上のメモリブロックに前記特定したエリアの地形データを読み込むことを特徴とするゲーム装置。
【請求項５】
請求項４記載のゲーム装置において、
前記カウント値に基づいて決定される前記地形データが既に記憶されている１以上のメモリブロックは、前記カウント部にカウントされているカウント値を比較し、当該カウント値のうちで最も高いカウント値あるいは最も低いカウント値がカウントされているカウント部と対応する１以上のメモリブロックに決定されることを特徴とするゲーム装置。
【請求項６】
請求項４記載のゲーム装置において、
前記カウント値に基づいて決定される前記地形データが既に記憶されている１以上のメモリブロックは、複数種の前記エリアに跨って地形データが連続して記憶されているメモリブロックを検索し、この検索されたメモリブロックを結合して１以上のメモリブロックの組を１組以上確保し、当該１組以上のメモリブロックと対応するカウント部にカウントされているカウント値に基づいて各組のカウント値の平均値を演算し、当該演算したカウント値のうちで最も高いカウント値あるいは最も低いカウント値がカウントされたカウント部と対応する１以上のメモリブロックの組に決定されることを特徴とするゲーム装置。
【請求項７】
請求項１乃至６の何れか一項記載のゲーム装置において、
前記移動体は前記仮想三次元空間を移動する車両であることを特徴とするゲーム装置。
【請求項８】
着脱自在に装着された記憶手段に記憶されたゲームデータを読み出す手段を有し、仮想三次元空間に基づくゲーム画面を表示手段に表示し、当該ゲーム画面に対して遊戯者が行う操作手段に対する操作に応じて任意の方向の移動進路の選択が可能なゲームを行うコンピュータ装置において実行されるデータ処理方法であって、
前記記憶手段は、複数の地形データを記憶するものであり、
前記コンピュータ装置が備えるＣＰＵに、
前記仮想三次元空間において移動体が移動進路として選択可能な複数のエリアを前記複数の地形データに対応させて設定するステップと、
前記仮想三次元空間における視点を前記移動体の位置に設定するとともに、前記視点から見た視野を前記移動体の進行方向に設定し、前記操作手段から入力される操作データに基づき前記複数のエリアのいずれかのエリア内を移動する前記移動体の進行方向前方に展開する地形であって、前記視野の視野角内において前記視点から所定距離の位置に設定された限界ライン内にある地形を、前記表示手段に表示するステップと、
前記遊戯者の前記操作手段の操作に応答して、
（ａ）前記移動体が存在するエリア内における前記移動体の現在位置および進行方向を特定し、
（ｂ）前記視野角内において前記視点から見て前記限界ラインよりもさらに所定距離だけ遠方にある位置に参照ラインを設定し、
（ｃ）前記視野角内にあり、かつ、前記参照ラインを含むエリアを検出し、
（ｄ）前記（ｃ）で検出されたエリアのうち、対応する地形データがワークメモリに読み込まれていないエリアを特定し、当該特定したエリアの地形データを前記記憶手段から読み出して前記ワークメモリに読み込む、
処理を一定時間毎に実行するステップと、
前記移動体の移動により現在位置および／または進行方向が変更され、前記（ｃ）で検出された前記エリアのいずれかが前記限界ライン内に入ったとき、前記ワークメモリ内に先に読み込まれていた当該エリアに対応する前記地形データを用いて、当該現在位置に基づく限界ライン内の地形を前記表示手段に表示するステップと、
を実行させることを特徴とするデータ処理方法。
【請求項９】
着脱自在に装着された記録媒体に記憶された複数の地形データ及びプログラムを読み出す手段を有し、仮想三次元空間に基づくゲーム画面を表示手段に表示し、当該ゲーム画面に対して遊戯者が行う操作手段に対する操作に応じて任意の方向に移動進路の選択が可能なゲームを実行するコンピュータ装置が備えるＣＰＵに、
前記仮想三次元空間において移動体が移動進路として選択可能な複数のエリアを前記複数の地形データに対応させて設定するステップと、
前記仮想三次元空間における視点を前記移動体の位置に設定するとともに、前記視点から見た視野を前記移動体の進行方向に設定し、前記操作手段から入力される操作データに基づき前記複数のエリアのいずれかのエリア内を移動する前記移動体の進行方向前方に展開する地形であって、前記視野の視野角内において前記視点から所定距離の位置に設定された限界ライン内にある地形を、前記表示手段に表示するステップと、
前記遊戯者の前記操作手段の操作に応答して、
（ａ）前記移動体が存在するエリア内における前記移動体の現在位置および進行方向を特定し、
（ｂ）前記視野角内において前記視点から見て前記限界ラインよりもさらに所定距離だけ遠方にある位置に参照ラインを設定し、
（ｃ）前記視野角内にあり、かつ、前記参照ラインを含むエリアを検出し、
（ｄ）前記（ｃ）で検出されたエリアのうち、対応する地形データがワークメモリに読み込まれていないエリアを特定し、当該特定したエリアの地形データを前記記録媒体から読み出して前記ワークメモリに読み込む、
処理を一定時間毎に実行するステップと、
前記移動体の移動により現在位置および／または進行方向が変更され、前記（ｃ）で検出された前記エリアのいずれかが前記限界ライン内に入ったとき、前記ワークメモリ内に先に読み込まれていた当該エリアに対応する前記地形データを用いて、当該現在位置に基づく限界ライン内の地形を前記表示手段に表示するステップと、
を実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ビデオゲーム装置に関する。特に、アミューズメントセンターや家庭に設置されたゲーム装置でよりリアルな画像表現を行い得るようにしたゲーム装置及びこれに用いられる画像処理装置に関する。
【背景技術】
【０００２】
コンピュータ技術の進歩に伴い、コンピュータグラフィックス技術を用いたビデオゲーム装置が広く利用されるようになってきた。この種のビデオゲーム装置はユーザに広く受け入れられている。そして、多種多様なゲーム装置が数多く案出され、それ等に対応した様々なゲームソフトが供給されている。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
ユーザがビデオゲームをより楽しむことができるようにするために、画像がよりリアルな表現で画面に表示されることが望まれる。例えば、カーレースのような車両競走においては、車両や背景の動きが自然に表現されることが望ましい。
【０００４】
この自然な動きを表現するための１つの要素として、広いゲーム空間のデータをＣＤ−ＲＯＭなどの記録媒体からゲーム装置内のメモリに読み込んで表示する場合のデータ読込みの制御が挙げられる。
【０００５】
同じゲーム空間であっても、ＲＰＧ（ロールプレイングゲーム）のようにキャラクタがゆっくり移動したり、一瞬で別の場所に移動するようなゲームの場合、一旦、画像処理を止めてデータ読込みを行うことが許されるので、かかるデータの読込み制御は非常に楽である。
【０００６】
しかしながら、キャラクタの連続移動がゲーム性に大きな影響を与える、例えばカーレースゲーム等の場合、車両の移動に伴って読込まなければならない背景データが膨大な量に及ぶので、かかるデータの読込み制御は非常に面倒になる。例えば、ＲＰＧのように画像処理を一旦止めてデータ読込みを行うと、ゲームが止まってしまって、カーレースゲームとして成立しなくなってしまう。一方、広いゲーム空間の背景データをＣＤ−ＲＯＭ等から全てメモリに読込んでおくことは、メモリ容量の観点や読み込み時間が膨大にかかる点から、実際問題として不可能である。
【０００７】
そこで、従来のカーレースゲームのようにキャラクタが高速で移動する画面を表現するゲームの場合、走行路に沿って背景データをエリア毎に分割しておき、必要な分のエリアの背景データを先読みしながら画像処理していた。
【０００８】
しかし、この先読みの手法で対処可能なゲームは、例えば移動オブジェクトとしての車両が予め決まっているコース（走行路）を走るカーレースゲームである。この場合、コース中のある地点を車両が通過すると、次のエリアの背景データを空きメモリ領域に記憶させていくという単純なものであった。近年のカーレースゲーム或いはカーゲームには、遊戯者がゲーム空間内で如何なる方向にも車両を走らせることが可能なことを特徴とするゲームが登場し始めている。このようなゲームの場合、車両の走行する方向は複数に枝分かれした走行路や、元来、走行路ではない草原などを走行することが遊戯者の操作に任されている。つまり、装置にとって、現在の車両速度や車両位置から近い将来走る走行路のブロックを単純に割り出し、背景データを先読みすることは非常に難しくなる。
【０００９】
よって、本発明は、遊戯者が車両などのオブジェクトをゲーム空間内で任意の方向に移動可能なゲームにおいて、比較的簡単な手法ながら、画像処理に必要な分の背景データを確実にその都度、先読みして、スムーズで、安定した、高品質のゲーム画像を提供できるようにすることを、その目的とする。
【課題を解決するための手段】
【００１０】
この目的を達成するために、本発明は、仮想３次元空間を移動する移動体を背景と共に表示するゲームに必要な背景データを画像処理に先だって記憶手段からワーク用メモリに読み込ませるようにしたゲーム装置において、前記表示の視野方向の限界ラインよりも所定距離だけ遠方位置に設定した参照ラインを用いて前記記憶手段から前記背景データを先読みする先読み手段を設けたことを特徴とする。
【００１１】
本発明の他の形態は、このゲーム装置において、前記記憶手段は前記背景データを予め複数のエリアに分割して記憶しているものであり、前記先読み手段は、前記参照ラインが前記エリアの何れに掛かっているかを判断する判断手段と、この判断手段により前記参照ラインに掛かっていると判断されたエリアの背景データを前記ワーク用メモリに読み込む読込み手段とを備えることを特徴とする。
【００１２】
本発明のさらに他の形態は、このゲーム装置において、前記複数のエリアは前記記憶手段に背景データの内容を背景の種類毎に且つほぼ等面積で分割して夫々記憶されており、且つ、前記ワーク用メモリは、同じ記憶容量に設定した複数のメモリブロックを有する一方で、前記読込み手段は、前記各エリアの背景データをそのデータ量に応じてｎ個以上（ｎは正の整数値）の前記メモリブロックに記憶させる手段である。
【００１３】
さらに他の形態は、前記読込み手段は、前記ワーク用メモリメモリブロックが空き領域か否かを判断する手段と、この判断により空き領域であると認識されたときに前記エリア毎の背景データをｎ個以上の前記メモリブロックに順次記憶させる手段とを有する。
【００１４】
さらに他の形態は、このゲーム装置において、前記ワーク用メモリの背景データ記憶済みのメモリブロックに相当した前記各エリア内に前記移動体が存在する、あるいは視界の範囲内にエリアが存在するか否かを検出してこれを定期的にカウントするカウント手段を備える一方で、前記読込み手段は、前記メモリブロックに空き領域が無いと判断されたときに、前記カウンタ手段による前記メモリブロックそれぞれに対するカウント値に基づき前記背景データを記憶させる記憶先のメモリブロックを決める決定手段を備える。
【００１５】
さらに他の形態は、このゲーム装置において、前記読み込み手段は、記憶させる背景データが複数個のメモリブロックを必要とするときには、前記複数個の連続したメモリブロックを決定する決定手段を備える。
【００１６】
さらに他の形態は、前記決定手段は、前記複数個の連続するメモリブロックに対する前記カウント値を比較して最も高い値あるいは低い値を呈する前記複数個の連続したメモリブロックを決める手段である。
【００１７】
さらに本発明の他の形態は、既述のゲーム装置において、前記決定手段が、前記複数個の連続するメモリブロックに対する前記カウント値の平均値を演算してこの演算値が最も高い値あるいは低い値を呈する前記複数個の連続したメモリブロックを決める手段である。さらに他の形態は、このゲーム装置において、前記移動体が前記仮想３次元空間を移動する車両である。
【００１８】
前記目的を達成する他の発明は、仮想３次元空間を移動する移動体を背景と共に表示するゲームに必要な背景データを画像処理に先だって記憶手段からワーク用メモリに読み込ませるようにしたゲーム装置のデータ処理方法において、前記表示の視野方向の限界ラインよりも所定距離だけ遠方位置に設定した参照ラインを用いて前記記録媒体から前記背景データを先読みするようにしたことを特徴とする。
【００１９】
本発明はさらに、前記背景データと各手段を実行するプログラムが記録された情報記録媒体であることを特徴とする。
【発明の効果】
【００２０】
以上述べたように、本発明によれば、遊戯者が車両などのオブジェクトをゲーム空間内で任意の方向に移動可能なゲームにおいて、比較的簡単な手法ながら、画像処理に必要な分の背景データを確実にその都度、先読みして、スムーズで、安定した、高品質のゲーム画像を提供できる。
【図面の簡単な説明】
【００２１】
【図１】本発明に係わる実施形態のゲーム装置の全体斜視図である。
【図２】このゲーム装置の電気的な概略構成を示すブロック図である。
【図３】ゲーム空間に作成される地形（背景）の一例をエリア分けした図である。
【図４】地形マップをエリア分けした一例を示す模式図である。
【図５】ワーク用メモリとしてのメインメモリに設定されるメモリブロックの一部を模式的に説明する図である。
【図６】先読みに係る読込み開始ライン（参照ライン）とエリアとの位置的な係わり具体を説明する図である。
【図７】ＣＰＵにより実行される先読み制御処理の概要を示すフローチャートである。
【図８】先読みに伴うメモリブロックへのデータ記憶の一例を説明する図である。
【図９】先読みに伴うメモリブロックへのデータ記憶の別の例を説明する図である。
【発明を実施するための形態】
【００２２】
次に、本発明の実施形態に係るゲーム装置を図１〜９に基づき説明する。
【００２３】
この実施形態のゲーム装置は、仮想３次元空間（ゲーム空間）内をオブジェクトとしての車両を移動させるカーレースゲームであって、とくに、車両の走行路が沢山、枝分かれしていて、目的地に達するのに幾通りもの道順が存在し、どの走行路を選択するか特定が困難であったり、草原や村など、走行路が明確に規定されていない場所を任意の方向に走行可能なカーゲームを提供する。
【００２４】
以下、このゲーム装置を説明する。図１に、この実施形態に係るゲーム装置の概観図を、図２にその電気的なハードウェアブロック図を示す。
【００２５】
本ゲーム装置は、図１に示すように、ゲーム装置本体１、コントローラ２およびサブユニット３を相互に接続して構成される。
【００２６】
ゲーム装置本体１はゲーム進行を司る制御装置本体である。ゲーム装置本体１は、複数のコントローラ２がコネクタＣを介して接続可能になっている。またゲーム装置本体１はＣＤ−ＲＯＭ用ドライブ１１を備え、ＣＤ−ＲＯＭ等の記録媒体（記憶手段）を着脱自在に装着できるようになっている。
【００２７】
コントローラ２は、遊戯者が操作する操作部としての構成を備えており、操作ボタン群２１、十字キー２２、アナログ方向キー２３、Ｒトリガースイッチ２４などを備え、コネクタＰを備えた接続コード４でゲーム装置本体１と接続可能になっている。これらの操作部は、移動オブジェクトとしての車両を３次元仮想空間内で移動させるのに必要なハンドル、アクセル、ブレーキ、シフトレバーなどを構成している。遊戯者はゲーム中にモニタ画面を見ながら、これらの操作部を適宜に操作する。これにより、その操作情報がゲーム装置本体１の後述するＣＰＵに伝えられ、ＣＰＵの制御の元に、車両をゲーム空間内で任意の方向に走行させることができる。
【００２８】
また、コントローラ２は、バックアップメモリ３を着脱自在に備えている。
【００２９】
ゲーム装置本体１はコンピュータ装置類似の構成を備え、図２に示すように、ＣＰＵブロック３０、ビデオブロック３１、サウンドブロック３２および通信装置３３などを備えている。
【００３０】
ＣＰＵブロック３０は、バスアビータ３００、ＣＰＵ３０１、メインメモリ３０２、ＲＯＭ３０３およびＣＤ−ＲＯＭドライブ１１を備えている。バスアビータ３００は、バスを介して相互に接続されるデバイスにバス占有時間を割り振ることにより、データの送受信を制御可能に構成されている。ＣＰＵ３０１は、メインメモリ３０２、ＲＯＭ３０３、ＣＤ−ＲＯＭドライブ１１、ビデオブロック３１およびサウンドブロック３２、コントローラ２を介してバックアップメモリ３にアクセス可能に構成されている。
【００３１】
ＣＰＵ３０１は、ゲームを遂行するのに必要な各種の処理及び制御を行い、画像データをグラフィックメモリ３１１に転送し、また音声データをサウンドメモリ３２１に転送可能になっている。ＲＯＭ３０３は、イニシャルプログラムローダの格納領域である。ＲＯＭ３０３は、記録媒体を構成する要素であり、ＣＰＵ３０１の処理に必要なプログラムが予め記録されている。なお、この記録媒体としては他に、ＣＤ−ＲＯＭなどを用いてもよい。
【００３２】
ＣＤ−ＲＯＭ用ドライブ１１は、外部から供給されるデータの記録媒体としてＣＤ−ＲＯＭを用いている。このＣＤ−ＲＯＭには、主ゲームプログラム、必要な各種のデータ、及び背景データ（テクスチャデータあるいはポリゴンデータ）が格納されており、これらのデータは必要に応じてメインメモリ３０２に読み込まれる。なお、このＣＤ−ＲＯＭの代わりに、他の各種記録媒体を使用してもよい。また通信装置３３を経由して、プログラムや背景データをメインメモリに転送するように構成してもよい。このように設定すれば遠隔地のサーバの固定ディスクなどからデータの転送が可能である。
【００３３】
ビデオブロック３１は、ＶＤＰ（Ｖｉｄｅｏ Ｄｉｓｐｌａｙ Ｐｒｏｃｅｓｓｏｒ）３１０、グラフィックメモリ３１１およびビデオエンコーダ３１２を備えている。これらの構成により、ビデオブロック３１は、ポリゴン画像データ（オブジェクトとての車両）の生成、背景画像の描画（テクスチャデータのマッピング）、背景画像にポリゴン画像データの合成、クリッピング処理等を行う。ビデオエンコーダ３１２は、ＶＤＰ３１０が生成した画像データをＮＴＳＣ方式やＰＡＬ方式等の所定のテレビジョン信号に変換し外部に接続されるメインモニタ３５（テレビ受像機のブラウン管等）に出力可能に構成されている。
【００３４】
サウンドブロック３２は、サウンドプロセッサ３２０、サウンドメモリ３２１およびＤ／Ａコンバータ３２２を備えている。これらの構成によりサウンドブロック３２は、波形データに基づく音声合成を行って音響信号を出力可能に構成されている。Ｄ／Ａコンバータ３２２は、サウンドプロセッサ３２０により生成された音声データをアナログ信号に変換し、外部に接続されるスピーカ３４（テレビ受像機のスピーカまたは音響装置のスピーカ）に出力可能に構成されている。
【００３５】
通信装置３３は、例えばモデムやターミナルアダプタであり、本ゲーム装置本体１に接続可能に構成され、本ゲーム装置本体１と外部回線とを接続するアダプターとして機能可能になっている。通信装置３３は、公衆回線網に接続されるインターネットサーバ等のゲーム供給用サーバから送信されたデータを受信し、ＣＰＵブロック３０のバスに供給可能になっている。公衆回線網としては、加入者回線、専用線、有線無線の別を問わない。
【００３６】
続いて、本実施形態の動作を、背景データのＣＤ−ＲＯＭからメインメモリ３０２への読込みを中心に説明する。この読込みは、ＣＰＵ３０１の制御の元に、本発明に係る先読みの手法で実行される。
【００３７】
最初に、この先読みを行うために設定される、背景データとしての地形マップとメインメモリ３０２の所定領域に割り当てられるそれぞれが同じ記憶容量に設定されたメモリブロックとの関係から説明する。
【００３８】
いま、本ゲーム装置のカーレースゲームで使用可能な仮想３次元空間に描写された地形マップを図３に例示する。同図はワールド座標系のｘｚ面を示すもので、このマップ上の太い黒線はメインの走行路Ｒを表している。この走行路Ｒは、通常の一定ルートを周回するカーレースゲームのものに比べて、非常に分岐路が多いのが特徴である。また、走行路Ｒは都会、村、草原といった非常に多くの種類及び数のフィールド内を回っており、しかも、走行路Ｒから外れて、それらのフィールドを任意の方向に走行できるようになっている。
【００３９】
いま、走行路を含む地形マップを、そのフィールドの種類毎に且つほぼ同じ広さとなるように区分けして複数のエリアを想定する。これにより、図３中に細線で区分けされたエリアＡＲ１，ＡＲ２，ＡＲ３，…が作成される。これら複数のエリアの内、一例として、１６個の相互に隣接するエリアＡＲ１，ＡＲ２，…，ＡＲ１６を地形マップ（背景データ）として図４のように表す。例えば、エリアＡＲ１は草原のフィールドを、エリアＡＲ２は村のフィールドなどと決まる。そして、フィールドの種類に応じて配置されるオブジェクト等が異なることから、データ量（背景データ量）も異なる点を考慮し、メインメモリに書き込むときに必要な記憶領域のブロック数を、エリアが草原であるときはメモリ内の１ブロックを、エリアが村又は町であるときはメモリ内の２ブロックを、そして、エリアが都市であるときはメモリ内の３ブロックとする。
【００４０】
図５に、このデータ書込みの一例を示す。同図の上から、草原エリアの地形データは１ブロックを使って、村エリアの地形データは２ブロックを連続して使って、さらに都市エリアの地形データは３ブロックを連続して使って格納される。各ブロックＭＢは同一の記憶容量を有する。このブロックＭＢには、それぞれ、ＣＰＵ３０１で処理されるソフトウエアカウンタＣＴのカウント値領域が設定され、そのカウント値が書き込まれる。このカウンタＣＴは、メインメモリ内の各ブロックＭＢに相当する各エリアＡＲに車両が存在しているか否か或いはカメラの視界に背景エリアが存在するか否かを定期的に判断し、車両が存在していないあるいは視界内に存在していないそのエリアの地形データを記憶しているブロックＭＢのカウンタＣＴのカウント値を、かかる判断毎にインクリメントする。このため、車両の走行が少ないエリアＡＲほど、それに対応するブロックＭＢのカウンタＣＴのカウント値は高くなる。したがって、このカウント値を確認することで、その対応するエリアＡＲを車両がどの程度頻繁に走行するかが分かる。なお、１つのエリアＡＲに対応するブロックＭＢが複数個であっても、そのブロック相互間でカウント値は同一である。
【００４１】
このように区分けした地形データに対し、先読みするためのエリアを探すことになるが、この探索の手法を図６に例示する。いま、車両ＶＬがエリアＡＲ６の村エリアを走行しているとする。この車両ＶＬには、その進行方向に沿った所定視野角θの視野が設定される。この視野の前方の所定距離には、表示時のクリッピング位置となる視野限界ラインＬＮ１が設定される。さらに、この視野において、視野限界ラインＬＮ１の前方の所定距離には本発明の先読み機能の一部を成す読込み開始ラインＬＮ２が設定される。
【００４２】
この読込み開始ラインＬＮ２は、地形データを先読み開始するエリアを決めるために先行する検出体である。このラインＬＮ２が、各エリアをその外接円で表したときに、視野内のラインＬＮ２がどの外接円（エリア）に掛かるか（又は入っているか）を特定し、その特定した外接円を持つエリアを先読み対象エリアとして決める手法を採っている。図６の場合は、読込み開始ラインＬＮ２は、都市エリアＡＲ１０とその横の村エリアＡＲ１１の外接円に共に掛かるので、現時点での先読みエリアはその両者ＡＲ１０及びＡＲ１１であると判断できる。
【００４３】
この先読みの手法に基づいて、ＣＰＵ３０１によって実行される地形データ（背景データ）読込みの処理例を図７に基づき説明する。この処理は一定時間毎の例えばタイマ割込み方式で実行される。
【００４４】
ＣＰＵ３０１は、まず、遊戯者の操作情報を読み込み、現在の車両位置及び進行方向をワールド座標系のｘｚ面上で特定する。
【００４５】
次いで、ＣＰＵ３０１は、現在の車両位置（視点）からその進行方向に沿った視野を見たとき、何れかの新たな（未だ背景データを読み込んでいない）エリアＡＲの中に読込み開始範囲、すなわち読込み開始ラインＬＮ２が入ったか否かを、前述したエリアの外接円を用いる方法で判断する（ステップＳ３）。この判断がＮＯとなるときは、読込み開始ラインＬＮ２が未だ新たなエリアＡＲには入っていないので、そのまま処理をメインルーチンに戻す。
【００４６】
これに対し、ステップＳ３でＹＥＳの判断となるとき、すなわち読込み開始ラインＬＮ２が新しい１個以上のエリアＡＲに入ったときは、メインメモリ３０２において未使用であって且つ必要数だけ連続したメモリブロックＭＢが在るか否かを判断する（ステップＳ４）。ただし、背景データを記憶させるのに必要なメモリブロック数＝１の場合は、「必要数だけ連続したメモリブロック」は１個のメモリブロックを意味する。このステップＳ４の判断がＹＥＳであるときは、新たなエリアＡＲからその背景データ（地形データ）を読み出し、その空いているメモリブロックに書き込む。
【００４７】
一方、ＣＰＵ３０１は、ステップＳ４でＮＯの判断が出たとき、すなわち必要数の連続した未使用のメモリブロックが無いときは、使用済みのメモリブロックＭＢ、…、ＭＢの中で、例えば都市ならば、１つの都市エリアの背景データを連続して記憶している必要数のメモリブロックがあるか否かを判断する（ステップＳ６）。この判断がＹＥＳのときは、メモリブロックＭＢに対応させているカウント値同士を比較し、その値が最も大きい値を呈するメモリブロックに、新たなエリアＡＲの背景データを記憶させる（ステップＳ７）。カウント値が大きいということは、そのメモリブロックの背景データの使用頻度がこれまでは少なく、これからも少ないであろうと推測できる。このため、そのようなメモリブロックの背景データを優先的に新規の背景データに更新する。
【００４８】
これに対して、ステップＳ６の判断がＮＯとなるときは、複数種のエリアに跨って背景データが連続して記憶されているメモリブロックを検索し、これらを結合して必要なブロック数を１組以上、確保する（ステップＳ８）。次にかかる連続するメモリブロックの組夫々について、各組のメモリブロックのカウント値の平均値を演算する（ステップＳ９）。次いで、ＣＰＵ３０１は演算したカウント値同士を比較して、最もカウント値が大きいメモリブロックの組を判断し、その組のメモリブロック夫々に新たなエリアＡＲの背景データを記憶させる（ステップＳ１０）。カウント値が最も大きいメモリブロックの組を探す理由は上述と同じである。
【００４９】
図８及び図９に、上述の先読み処理の例を模式的に示す。これらの図において、一重の丸印は、過去に読み込まれた背景データ（地形データ）が記憶されているブロックを示し、二重の丸印は、現在車両が存在するエリアの背景データが記憶されている、又は、そのエリアから視界の範囲内にあるエリアの背景データが記憶されているブロックを示す。また、*印は、ブロックが１つのエリアの背景データを連続して記憶していることを示す（−印で結んでいる）。さらに、＋記号は未使用のブロックであることを示す。
【００５０】
図８の例は、メインメモリ３０２に未使用（空き）のメモリブロックＭＢがあるので、これを使って、新たなエリアＡＲの背景データが記憶されていく様子を示している（図７のステップＳ３〜Ｓ５参照）。なお、車両は既に新たなエリアに移動しているものとする。
【００５１】
これに対し、図９の例は、過去に記憶した背景データを有するメモリブロックＭＢが新たな背景データで更新される様子を示す。すなわち、新たなエリアが検出され、その背景データで過去の連続した背景データが更新された後、その新たなエリア内に車両が既に移動している様子を示す。とくに、この図９の例は、新たなエリアの背景データの確保先として、連続した４個のメモリブロックが必要になった状態を説明している。このため、図７のステップＳ３，Ｓ４，Ｓ６，Ｓ８〜Ｓ１０の処理を介してカウント値の平均値が演算され、メモリブロックＮＯ．６〜９が選択された。このとき、隣のメモリブロックＮＯ．１０は空きブロックとして扱われる。このように先に読み込まれた背景データ（例えばブロックＮＯ．１〜５の背景データ）よりも後に読み込まれた背景データ（例えばブロックＮＯ．６〜１０の背景データ）の方が先に消去されるのは、車両のコースが直線的でなく、別のコースから過去に読み込まれたエリアに直接、進入するという、いわゆる蛇行走行やジグザグ走行で進んでいることが多いからである。
【００５２】
このように背景データ（地形データ）が先読みされるので、ＣＰＵ３０１は、これと操作情報を用いてカーレースゲームの画像処理を制御・指令することができる。かかる先読み処理では、先読み開始ラインを視界限界ラインよりも所定距離遠方に設定して、車両が進むエリアを確実に検知しているので、先読みを力任せに読み込むのとは異なり、確実で安定したエリア検知、すなわち先読みを行うことができる。したがって、装置内のメインメモリの記憶容量を格別アップさせる必要も無いし、勿論、画像処理を止めて背景データ読み込みを行う必要もない。したがって、この背景データを用いた画像処理によりモニタ３５に表示される画面では、画像欠落等も無く、高品質で安定した車両走行の画面を表示することができる。
【００５３】
なお、上述した実施形態において先読み検知のための先読み開始ラインは直線状であるとして説明したが、視点に対して円弧状であってもよい。この先読み開始ラインが新たなエリアに入ったか否かの判断は、エリアにその外接円を設定しなくても、矩形のエリアそのものと先読み開始ラインの位置とを比較してもよい。
【００５４】
さらに、メモリブロックの背景データの使用頻度を表すカウンタのカウント値の扱いは、車両が対応するエリアに存在しないことを一定時間毎に検知した後、前述とは反対に、カウント値を一定値からデクリメントするようにしてもよい。また、カウント値の領域は、ブロックＭＢ内に設定せず、メインメモリの所定の領域に各ブロックＭＢと関連づけて設定するようにしても良い。
【符号の説明】
【００５５】
１ ゲーム装置本体
２ コントローラ
１１ ＣＤ−ＲＯＭドライバ
３０ ＣＰＵブロック
３１ ビデオブロック
３２ サウンドブロック
３５ モニタ
３０１ ＣＰＵ（カウンタ手段も兼ねる）
３０２ メインメモリ（ワーク用メモリを兼ねる）
３１２ ビデオエンコーダ
３０３ ＲＯＭ
【図１】
0004535299.tif 000002
【図２】
0004535299.tif 000003
【図３】
0004535299.tif 000004
【図４】
0004535299.tif 000005
【図５】
0004535299.tif 000006
【図６】
0004535299.tif 000007
【図７】
0004535299.tif 000008
【図８】
0004535299.tif 000009
【図９】
0004535299.tif 000010