(57)【特許請求の範囲】
【請求項１】
座標空間内に画定されたコースにチェックポイントが設けられ、該コースを二つの移動体が移動してレースを行うゲームプログラムを記憶した記憶媒体と、
前記ゲームプログラムを実行して生成されたゲーム画像を表示する表示部と、
前記表示部に表示される移動体に対応して遊戯者が操作する入力操作部と、
を備え、前記入力操作部からの操作入力に応答して前記ゲームプログラムを実行するコンピュータシステムにおけるゲーム制御方法において、
前記コンピュータシステムは、
所定のサンプリング時毎に、前記操作入力に基づいて前記コース内における第一及び第二の移動体の位置を演算し、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報に基づいて、前記第一及び第二の移動体の夫々を操作する遊戯者ごとのゲーム画像を前記表示部に表示するとともに、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一又は第二の移動体のうち先頭移動体が前記コース上のチェックポイントを通過したことを判定し、前記先頭移動体が該チェックポイントを通過したときに、前記先頭移動体が該チェックポイントを通過してからの経過時間をタイマーにより計測し、後方移動車を操作する遊戯者が参照しうるように該遊技者のゲーム画像に前記経過時間を含めて前記表示部に表示し、
前記先頭移動体が該チェックポイントを通過してからの経過時間が予め設定された時間に達するまでに、後方移動体が該チェックポイントを通過したか否かを判定し、
該後方移動体が該チェックポイントを通過したことを検出したとき、前記タイマーをリセットして、該後方移動体を操作する遊技者のゲーム画像を継続して表示部に表示し、該後方移動体が該チェックポイントを通過しないことを検出したとき、ゲーム終了の表示を前記表示部に表示することを特徴とするゲーム制御方法。
【請求項２】
請求項１において、更に、前記コンピュータシステムは、
ゲーム開始信号を受けてから経過時間をカウントし、所定の設定時間を経過した時点で、ゲーム終了の表示を前記表示部に表示することを特徴とするゲーム制御方法。
【請求項３】
座標空間内に画定されたコースにチェックポイントが設けられ、該コースを二つの移動体が移動してレースを行うゲームプログラムを記憶した記憶媒体と、
前記ゲームプログラムを実行して生成されたゲーム画像を表示する表示部と、
前記表示部に表示される移動体に対応して遊戯者が操作する入力操作部と、
前記入力操作部からの操作入力に応答して前記ゲームプログラムを実行する制御手段とを備えたゲーム遊戯装置において、
前記制御手段は、
所定のサンプリング時毎に、前記操作入力に基づいて前記コース内における第一及び第二の移動体の位置を演算し、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報に基づいて、前記第一及び第二の移動体の夫々を操作する遊戯者ごとのゲーム画像を前記表示部に表示するとともに、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一又は第二の移動体のうち先頭移動体が前記コース上のチェックポイントを通過したことを判定し、前記先頭移動体が該チェックポイントを通過したときに、前記先頭移動体が該チェックポイントを通過してからの経過時間をタイマーにより計測し、後方移動車を操作する遊戯者が参照しうるように該遊技者のゲーム画像に前記経過時間を含めて前記表示部に表示し、
前記先頭移動体が該チェックポイントを通過してからの経過時間が予め設定された時間に達するまでに、後方移動体が該チェックポイントを通過したか否かを判定し、
該後方移動体が該チェックポイントを通過したことを検出したとき、前記タイマーをリセットして、該後方移動体を操作する遊技者のゲーム画像を継続して表示部に表示し、該後方移動体が該チェックポイントを通過しないことを検出したとき、ゲーム終了の表示を前記表示部に表示する
ことを特徴とするゲーム遊戯装置。
【請求項４】
請求項３において、前記制御手段は、更に、
ゲーム開始信号を受けてから経過時間をカウントし、所定の設定時間を経過した時点で、ゲーム終了の表示を前記表示部に表示することを特徴とするゲーム遊戯装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンピュータ・システムを利用した移動体相互間の仮想時間差または仮想距離差を測定する方法及びその測定装置に係り、特に、複数の遊戯者による車等の移動体のレースにおいて所定時間以上の差が検出されると、または所定距離以上の差が検出されるとゲーム終了とする移動体相互間の仮想時間差または仮想距離差の測定方法及びその測定装置に関する。
【０００２】
【従来の技術】
従来から、コンピュータ・システムを利用したカーレースの遊戯装置は、アーケード向けや家庭用のゲーム装置等で様々な種類のものが開発され実用化されている。
【０００３】
これらのカーレース遊戯装置の場合、実際のカーレースを参考にしてゲームの遊戯方法が開発されているため、レースのスタート地点とゴール地点とが予め確定しており、それらのゲームでは、遊戯者はスタート地点からゴール地点までレース内の自分の車に対して所定の操作を行い、車がゴールするまでの時間や順番を競うものが大半である。例えば、レース場内のコースで競争するカーレースの場合は、決められたコースを何周するかがゲームの開始前に決められている。また、ラリー形式のカーレースの場合でも、スタート地点から所定のコースを経由して最終的なゴール地点までのコースがゲーム開始前に決められている。
【０００４】
特に、アーケード用の遊戯装置の場合は、遊戯者が所定の料金を投入してからゲームを開始し、固定のコースのゴールに到着してゲームを終了させることで、ゲームに要する時間を比較的一定の長さにすることができる。これは、複数の遊戯者が遊戯装置を共有するというアーケード用の場合には、遊戯装置の単価を予想することができる点やその収益を上げることができる点などで有益である。
【０００５】
【発明が解決しようとする課題】
しかしながら、コンピュータ・システムを利用してカーレースの遊戯装置を実現する場合、単純に、現実のカーレースのやり方を再現するだけでは、ゲームの種類に限りがあり、遊戯者にとって魅力に欠けることになる。一方、家庭用のゲーム装置の場合は、一つのゲームに要する時間は比較的フレキシブルに決めることができ、上述したようなアーケード等に設置される業務用の遊戯装置よりも遊戯方法については融通性の高いものである。従って、家庭用のゲーム装置は、従来のカーレースのやり方に捕らわれることなく、よりゲーム性の高い方法を採用することができる。
【０００６】
その場合、長時間の耐久力を競い合うような方法にすることも可能である。ただし、従来の方法の如く、単にコースの距離を長くするというだけのゲームでは、レースの後半が惰性によりすすめられる場合があり、遊戯者にとって興味が半減することになる。従って、このような場合は、何らかの形で遊戯者に緊張感を与え続ける必要があるし、また適当なところでゲーム終了とすることが求められる。
【０００７】
また、複数の遊戯者によりカーレースで競争しあう場合、両者の能力に大きな開きがある時にも、従来の様に、予め決められた距離または長さのコースを完走するまでゲームが終了しないとすると、レースの後半は単に惰性でゲームの操作を続けなければならないことになり、遊戯者にとって興味が半減することになる。従って、かかる場合は、何らかの形でゲームの操作能力に長けた遊戯者が相手の遊戯者にハンディーを与えることができれば、より緊張したゲームを体験することができる。更に、遊戯者がコンピュータにより制御される車と競争する場合でも、同様のことが言える。
【０００８】
そこで、本発明は、従来の一般的なカーレースとは異なるレースの方法とそれを実現する遊戯装置に採用される移動体相互間の仮想時間差や仮想距離差を測定する方法及びその測定装置を提供することを目的とする。
【０００９】
更に、本発明の目的は、一定の距離またはコースを完走する従来の形式ではなく、競争しあう移動体の差が、所定の設定時間以上になった時にレースを終了する移動体相互間の仮想時間差の測定方法及びその測定装置を提供することにある。
【００１０】
更に、本発明の目的は、一定の距離またはコースを完走する従来の形式ではなく、競争しあう移動体の差が、所定の設定距離以上になった時にレースを終了する移動体相互間の仮想距離差の測定方法及びその測定装置を提供することにある。
【００１１】
【課題を解決するための手段】
上記の目的は、本発明の第一の発明によれば、レース用のゲームプログラムを記憶した記憶媒体と、該ゲームプログラムを実行するゲーム本体部と、該ゲーム本体部からの画像信号によりゲーム画面が表示される表示部と、該ゲーム画面に対応して遊戯者が少なくともアクセル、ブレーキ、ハンドルの操作入力を該ゲーム本体部に行う入力操作部とを使って行うレースゲームにおいて、
所定のサンプリング時毎に、所定の座標空間内に画定されたコース内における第一及び第二の移動体の位置を演算により求める工程と、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一又は第二の移動体のうち先頭移動体が前記コース上の所定のポイントを通過したことを検出する工程と、
前記先頭移動体が該所定のポイントを通過してから所定の設定時間以内に該後方移動体が当該所定のポイントを通過しないかどうかを、前記演算により求めたコース内の位置情報から検出する工程と、
該後方移動体が前記設定時間以内に当該所定のポイントを通過しないことを検出した時、ゲーム終了の表示を前記ゲーム画面に表示する工程を有することを特徴とする移動体相互間の仮想時間差測定方法を提供することにより達成される。
【００１２】
更に、上記の目的は、本発明の第二の発明によれば、レース用のゲームプログラムを記憶した記憶媒体と、該ゲームプログラムを実行するゲーム本体部と、該ゲーム本体部からの画像信号によりゲーム画面が表示される表示部と、該ゲーム画面に対応して遊戯者が少なくともアクセル、ブレーキ、ハンドルの操作入力を該ゲーム本体部に行う入力操作部とを使って行うレースゲーム方法において、
所定のサンプリング時毎に、所定の座標空間内に画定されたコース内における第一及び第二の移動体の位置を演算により求める工程と、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一及び第二の移動体の間の前記コース上での距離を演算により求める工程と、該演算により求めた第一及び第二の移動体の間の該コース上での距離が、所定の設定距離以上になったか否かを検出する工程と、
当該距離が、該所定の設定距離以上になったことを検出した時、ゲーム終了の表示を前記ゲーム画面に表示する工程を有することを特徴とする移動体相互間の仮想距離測定方法を提供することにより達成される。
【００１３】
更に、上記の目的は、本発明の第三の発明によれば、上記第一または第二の発明において、更に、ゲーム開始信号を受けてから経過時間をカウントし、所定の設定時間を経過した時点で、ゲーム終了の表示を前記ゲーム画面に表示する工程を有することを特徴とする測定方法を提供することにより達成される。
【００１４】
更に、上記の目的は、本発明の第四の発明によれば、遊戯者からの操作信号に従って、レース用のゲームプログラムを記憶した記憶媒体からの当該ゲームプログラムを実行し、ゲーム画面が表示される表示部に画像信号を供給する遊戯装置であって、
所定のサンプリング時毎に、所定の座標空間内に画定されたコース内における第一及び第二の移動体の位置を演算により求め、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一又は第二の移動体のうち先頭移動体が前記コース上の所定のポイントを通過したことを検出し、
前記先頭移動体が該所定のポイントを通過してから所定の設定時間以内に該後方移動体が当該所定のポイントを通過しないかどうかを、前記演算により求めたコース内の位置情報から検出し、
該後方移動体が前記設定時間以内に当該所定のポイントを通過しないことを検出した時、ゲーム終了の表示を前記ゲーム画面に表示する画像信号を前記表示部に供給する制御手段を有する移動体相互間の仮想時間差測定装置を提供することにより達成される。
【００１５】
更に、上記の目的は、本発明の第五の発明によれば、遊戯者からの操作信号に従って、レース用のゲームプログラムを記憶した記憶媒体からの当該ゲームプログラムを実行し、ゲーム画面が表示される表示部に画像信号を供給する遊戯装置であって、
所定のサンプリング時毎に、所定の座標空間内に画定されたコース内における第一及び第二の移動体の位置を演算により求め、
前記演算により求めた前記第一及び第二の移動体のコース内の位置情報から、該第一及び第二の移動体の間の前記コース上での距離を演算により求め、
該演算により求めた第一及び第二の移動体の間の該コース上での距離が、所定の設定距離以上になったか否かを検出し、
当該距離が、該所定の設定距離以上になったことを検出した時、ゲーム終了の表示を前記ゲーム画面に表示する画像信号を前記表示部に供給する制御手段を有する移動体相互間の仮想距離測定装置を提供することにより達成される。
【００１６】
更に、上記の目的は、本発明の第六の発明によれば、上記第四または第五の発明において、前記制御部は、更に、ゲーム開始信号を受けてから経過時間をカウントし、所定の設定時間を経過した時点で、ゲーム終了の表示を前記ゲーム画面に表示する画像信号を前記表示部に供給することを特徴とする測定装置を提供することにより達成される。
【００１７】
上記の発明によれば、先頭移動体と後方移動体との間の仮想時間差または仮想距離が測定できるので、所定時間以上離されると或いは所定距離離されるとゲーム終了とすることができ、コースを全て完走することなくゲームを終了させることができる。従って、遊戯者は、レースの最初から緊張感をもって操作しなければならなくなり、ゲーム性が高まることになる。
【００１８】
また、設定時間或いは設定距離を変更することで、ゲーム終了までの時間を長くしたり短くしたりすることができるし、遊戯者の技量の差に応じたハンディキャップ的な使い方をすることもできる。
【００１９】
また、上記の発明では、所定のサンプリング時毎に、移動体の位置を演算して、その求められた位置情報に従って種々の判定を行っている。表示装置にゲーム画面を表示する場合は、一定の周期で表示装置に描画することになるため、その周期と同期して上記サンプリング時を設定することで、演算に必要な時間を確保することができる。勿論、表示装置への描画の周期の整数倍のサンプリング周期であっても良い。
【００２０】
【発明の実施の形態】
以下、本発明の実施の形態について、図面に従って説明する。
【００２１】
図１は、遊戯装置の基本的な構成と、基本的な表示画像の例を示す図である。基本的な構成は、ゲームのソフトウエアが記憶されたゲーム・カートリッジやコンパクト・ディスクが装着され、そのソフトウエアを実行する本体部１０と、その本体部に有線または無線により接続され、本体部１０にアクセル、ステアリング方向、ブレーキ、トランスミッション等の操作情報を入力する入力操作部１１と、本体部にて処理された画像を表示する表示装置１２とからなる。
【００２２】
操作部１１には、ハンドルを模した形状１３になっており、そのハンドルを左右に回転させることでステアリングの方向が入力され、各種のボタン１４を押すことにより、アクセル、ブレーキ、トランスミッションの操作情報が入力される。
【００２３】
本体部１０内には、一般的なゲームに利用されるコンピュータシステムと同様の構成であり、例えば、ゲーム・カートリッジやコンパクト・ディスク内のプログラムをロードし実行するＣＰＵ等が内蔵されている。
【００２４】
本実施の形態では、表示画像の基本的な構成は、図に示される通り、遊戯者がレースの車に乗車した場合にフロントガラスから見える光景と、レースに必要な情報とからなる。図に示される様に、画面の中央部に手前から延びるコース２０と、画面左下に位置する、タコメータ表示２１、現在のトランスミッションの段数表示２２、現在の速度表示２３を有する。更に、右上隅には、競技中の車の数を分母とし遊戯者の車の順位を分子とする順位情報表示２４も含まれる。
【００２５】
そして、画面の左上隅には、ゲーム自体の経過時間（Ｔｏｔａｌ  Ｔｉｍｅ）表示２５と、先頭の車からの遅れ時間を示す表示２６が含まれる。２７は、先頭の車の表示であるが、先頭車との距離、または時間の差が大きくなると、先頭車は画面から消えて表示されなくなる。
【００２６】
［遊戯装置の構成］
図２は、上記の本体部１０内の基本的な構造例を説明するためのブロック図である。その概略は以下の通りである。
【００２７】
図中、５０はメインのＣＰＵであり、ゲームプログラムに従ってゲームの処理や画像の演算処理等を行う。メインＣＰＵ５０は、ＣＰＵバス５２を通じて、演算処理中のワークメモリ領域を提供したり、演算の結果得られたデータの蓄積、外部からのゲームプログラムやコース、車、背景の画像データ等を蓄積するランダム・アクセス・メモリ（ＲＡＭ）５４、最初のプログラムロードを行うプログラム（ＩＰＬ）を蓄積するリード・オンリ・メモリ５６に接続されている。またシステム全体のリセット管理と入力操作部１１等の外部機器とのインターフェースを制御するシステムマネージャー兼周辺制御装置５８も、ＣＰＵバス５２に接続されている。６２はインターフェース回路である。
【００２８】
６４はシステム・コントロール・ユニット（ＳＣＵ）であり、ＣＰＵ５０のコープロセッサの役割を有し、各バス５２、６６の制御を行う。さらに、ダイレクト・メモリ・アクセス（ＤＭＡ）コントローラを内蔵して、メインＣＰＵ５０の動作中に、表示用のデータを画像メモリ（ＶＲＡＭ）７８に転送する。
【００２９】
システム・コントローラ・ユニット６４には、バス６６を通じて第一の画像表示プロセッサ（ＶＤＰ１）６８、第二の画像表示プロセッサ（ＶＤＰ２）７０、音声プロセッサ７２、表示装置７４、ＣＤＲＯＭ（コンパクト・ディスク・ＲＯＭ）７６が接続されている。７３はエンコーダ、７５はＣＤＲＯＭ用のインターフェースである。
【００３０】
第一の画像表示プロセッサ６８は、コース、車、背景、ゲーム情報等のパーツの画像データの制御を行うプロセッサであり、画像処理のコマンドやそれに伴うキャラクタデータがメインＣＰＵ５０から書き込まれた画像メモリ７８と、表示すべき表示データをピクセル単位で記憶する二つのフレーム・バッファ８０、８２が接続される。更に、第二の画像表示プロセッサ７０は、フレーム・バッファ８０、８２に書き込まれたデータを所定の優先度に従って表示装置１２に画像表示を行うよう制御するプロセッサで、画像メモリ８４とカラー情報を蓄積するカラーＲＡＭ８６等が接続されている。
【００３１】
上記の様な構成をした本体部１０に、本発明に係るカーレースゲームについてのプログラム及びパーツ等の画像データを記憶したＣＤＲＯＭ７５が装着されると、それらの記憶されたデータが、ゲームの進行に応じて適宜メモリ５４にロードされる。
【００３２】
また、本体部１０のシステム内は、１／６０秒の周期のシステムクロックに同期して各種の動作制御が行われるが、フレーム・バッファ８０、８２への表示データの書き込みは、その１／２分周された１／３０秒の周期で行われ、表示装置１２へは、１／６０秒に一回の周期でフレーム・バッファ内のデータが描画される。従って、この例では、フレーム・バッファに書き込まれた表示データは、同じものが二回づつ表示装置１２に描画されることになる。
【００３３】
［ゲームのフロー］
図３は、カーレースゲームの全体の動作を説明するための動作フローチャートである。本実施の形態のカーレースでは、先頭と後方の車の位置を逐次演算により求めておき、先頭の車があるチェックポイント（ＣＰ）を通過してから、所定の設定時間Ｔ１以内に後方の車がそのチェックポイントを通過できなかった場合は、ゲーム終了とすることを基本的な構成としている。また、所定の設定したゲームトータル時間Ｔ２を経過した場合もゲーム終了とするようにしている。従って、複数の遊戯者によりゲームを行う場合は、設定したゲームトータル時間Ｔ２が経過する間に先頭と後方の車の間に設定した時間Ｔ１以上の差がつくか否かが、ゲーム終了の要件となる。また、単独の遊戯者によりゲームを行う場合は、相手は本体部１０内のプログラムに従って制御される仮想の車となり、上記と同様の内容がゲーム終了の要件となる。
【００３４】
以下、図３に従って、適宜図４、５、６を参照にしながらゲームのフローについて説明する。
【００３５】
先ず、ゲームが始まる時に、種々の初期値が設定される。例えば、本ゲームにおいて最も重要な初期値は、先頭車と後方車との間の時間Ｔ１と、トータルのゲーム時間Ｔ２である。これらの値は、遊戯者により任意に設定される値である。また、ゲームの進行上必要なものとして、各チェックポイントでの車の間の時間を測定するタイマーのリセット、ゲーム経過時間用のタイマーのリセット等が含まれる。
【００３６】
ゲーム進行に伴うクロックは、１／６０秒を一周期とするシステムクロックを１／２に分周した１／３０秒を一周期とするゲーム用クロックである。通常の画像表示の制御は、１秒間に６０回の描画を行うが、本実施例のゲームの表示画像であるフレームは、１秒間に３０枚で構成される。従って、一つのフレームが２回描画され、１秒間に３０フレームが表示されることになる。そこで、ゲーム中の各種演算処理も、１／３０秒毎に行われることになる。従って、この１／３０秒毎に、車の位置情報についてのサンプリングが行われることになる。
【００３７】
図３に戻ると、初期値が設定またはリセットされると（ステップ３０）、先ず、ゲームの経過時間ｔに１／３０秒が加算される（ステップ３１）。このゲームの経過時間ｔは、例えば、本体部１０内のＲＡＭ５４内のワーク領域内の所定アドレス領域に記憶される。また、既に各チェックポイント毎に対応するタイマーが起動している場合は、その起動しているタイマーの時間を１／３０秒加算する。
【００３８】
次に、２人の遊戯者でゲームを行う場合を仮定して説明すると、第一の遊戯者１Ｐの車の位置Ｑ２（ｘ２，ｚ２）と、第二の遊戯者２Ｐの車の位置Ｒ２（ｘ２，ｚ２）とがＣＰＵ５０により演算され、ＲＡＭ５４内のワーク領域内の所定のアドレスの領域に記憶される（ステップ３２）。
【００３９】
そして、演算により求められたそれぞれの位置Ｑ２（ｘ２，ｚ２）とＲ２（ｘ２，ｚ２）がそれぞれコース内のどのブロックに属しているかを検出する演算処理がＣＰＵ５０により行われ、ＲＡＭ５４のワーク領域内に記憶される（ステップ３３）。
【００４０】
上記のステップ３２と３３での演算処理について、図４、５に従って更に説明する。このゲームにおいて、カーレースに使用されるコース２０は、図４に示される通り、絶対的な座標（Ｘ，Ｙ，Ｚ）系の中で、例えば１２８個のブロックＢ１，Ｂ２，．．．Ｂ１２８に分割されて定義されている。但し、Ｙ軸は図４の紙面に対して垂直方向の軸であるため以下の説明では、簡単のために省略する。
【００４１】
図４に示されたコース２０の例では、スタート地点から一周するまでを１２８個のブロックに分割しているが、そのコース２０内には、競技車の間の時間を計測するためのチェックポイントＣＰが４箇所（ＣＰ１，ＣＰ２，ＣＰ３，ＣＰ４）設けられている。このチェックポイントＣＰの数は任意に設定することができる。例えば、各ブロック毎にチェックポイントＣＰを設定することも可能である。
【００４２】
図５には、より具体的に、コース２０の各ブロックの定義の方法が示されている。例えば、代表してブロックＢ６を例に取ると、ブロックＢ６は、ブロックＢ６を形成する４つの点Ｌ5 ，Ｌ6 ，Ｍ5 ，Ｍ6 の座標（ｘ5l，ｚ5l），（ｘ6l，ｚ6l），（ｘ5m，ｚ5m），（ｘ6m，ｚ6m）のデータにより定義されている。従って、ゲームプログラムと関連データが記憶されているゲーム用のＣＤＲＯＭ７６内には、コース２０の情報として、上記の座標によるデータが記憶されている。従って、コース２０全体としては、Ｌ1 −Ｌ128 ，Ｍ1 −Ｍ128 の座標データが記憶されている。
【００４３】
次に、競争車の位置を求める演算について説明する。この演算は、前述した通り１／３０秒毎に一回の頻度で行われる。その場合、１／３０秒前の位置座標Ｑ1 （ｘ1 ，ｚ1 ）から現在の位置座標Ｑ2 （ｘ2 ，ｚ2 ）が求められる。具体的には、座標Ｑ1 （ｘ1 ，ｚ1 ）に、その間の入力操作装置１１から入力された操作情報に従った移動量（Δｘ，Δｚ）が加算されることで現在の位置座標Ｑ2 （ｘ2 ，ｚ2 ）が求められる。
【００４４】
移動量（Δｘ，Δｚ）は、アクセルとブレーキ及びトランスミッション等から求められるスピードと、ステアリング１３の方向から演算により求められる。演算は、ＣＰＵ５０により行われ、前の位置座標Ｑ1 （ｘ1 ，ｚ1 ）データ、移動量（Δｘ，Δｚ）のデータ、そして現在の位置座標Ｑ2 （ｘ2 ，ｚ2 ）データは、ＲＡＭ５４内のワーク領域の所定のアドレス領域に記憶される。尚、移動量を加算して現在の位置座標Ｑ2 を求めるにあたり、コース２０の外への移動は禁止される様に演算処理される。具体例としては、コースを三次元座標で定義しておき、コース２０の両側には車が横切ることを禁止する壁が存在する様に、コースの定義が行われることで実現可能である。
【００４５】
次に、競争車の位置座標Ｑ2 が求められたら、その位置座標Ｑ2 がコース２０のどのブロックに属しているかの演算が行われる。この演算は、競争車がコース２０内の何処に位置するのか、更に所定のチェックポイントＣＰを通過したかどうかを判定するために重要である。
【００４６】
非常に単純な演算方法によれば、１／３０秒前の競争車の位置座標Ｑ1 が属するブロックＢ５からある距離進行または後退しているはずであるから、例えば現在の位置座標Ｑ2 （ｘ2 ，ｚ2 ）が、ブロックＢ５を形成する４点Ｌ4 ，Ｌ5 ，Ｍ4 ，Ｍ5 の中に位置するかどうかの演算、そこに位置しなければ、隣のブロックＢ６を形成する４点Ｌ5 ，Ｌ6 ，Ｍ5 ，Ｍ6 の中に位置するかどうかの演算、というふうに順番にチェックして行けばよい。
【００４７】
但し、１／３０秒間に複数ブロック先まで移動することが可能な場合は、上記の演算方法では、演算に時間がかかりすぎる場合がある。その場合は、例えば、図５中に一点鎖線で書かれているように、任意の大きな碁盤の目を定義しておき、各碁盤の目にはどのブロックが属しているかをコース情報として予めメモリに記憶しておくことで、効率的に演算を行うことができる。即ち、現在の位置座標Ｑ2 （ｘ2 ，ｚ2 ）がどの碁盤の目に属しているかを演算により求め、その碁盤の目に属している２−３個のコースのブロックの何れに属しているかを、上記した４点の座標内に位置するかどうかの演算で求めることができる。
【００４８】
上記の演算は、コースの定義や競争車のスピード等、ゲーム固有のパラメータにより、適宜最適な方法が当業者には容易に考えられる。
【００４９】
再度、図３に戻ると、上記の如く現在の位置座標と属するブロックが演算により求められて、ＲＡＭ５４内に記憶されると、先頭の車がコース内のチェックポイントＣＰを通過したかどうかの判断がなされる（ステップ３４）。これは、新たに属することになったブロックがチェックポイントＣＰのブロックかどうかの演算により検知される。図５の例では、属するブロックがＢ５からＢ６に移動した結果、チェックポイントＣＰ１を通過したことが検知される。
【００５０】
先頭車がチェックポイントＣＰ１を通過したことが検知されると、そのチェックポイントＣＰ１に対応するタイマーが計測を開始する（ステップ３５）。具体的には、ＲＡＭ５４のワーク領域の所定アドレス領域に、タイマーの領域を設け、１／３０秒毎に、ステップ３１にてタイマーの時間をインクリメントしていくことで可能である。
【００５１】
そして、後方の車がそのチェックポイントＣＰ１に入ったかどうかの演算が、上記の先頭車と同様にして行われる（ステップ３６）。未だ入っていない場合は、対応するタイマーが、ゲームの最初に設定された時間Ｔ１未満かどうかの演算が行われる（ステップ３８）。この演算もＣＰＵ５０により行われる。Ｔ１秒以上を経過している場合は、先頭車との間にＴ１秒以上の差が付いたことを意味し、その時点でゲーム終了（ステップ４１）となる。
【００５２】
後方の車がチェックポイントＣＰを通過した場合は、ステップ３７にて、チェックポイントＣＰに対応するタイマーの時間がリセットされる。具体的には、対応するメモリ領域内の値がゼロに変更される。
【００５３】
後方の車がチェックポイントＣＰに入ったか、或いは入ってなくてもまだタイマーがＴ１未満である場合は、ゲームのトータル時間が、最初に設定したＴ２未満であるかどうかのチェック演算が行われる（ステップ３９）。そして、既にＴ２時間を経過している場合は、ゲーム終了となる。
【００５４】
未だにＴ２時間を経過していない場合は、ゲームの継続をする必要があり、ステップ４０にて、現在の状態に従ってゲーム画像の表示が行われる。具体的には、図１で示したようなパーツが、前述の第一の画像表示プロセッサ６８によりピクセル単位の画像情報としてフレームバッファ８０，８２に書き込まれ、第二の画像表示プロセッサ７０により、表示装置１２に表示される。表示装置に表示されるものとしてゲームの進行上重要なものは、ゲームのトータル時間表示２５、順位表示２４及びチェックポイントＣＰを先頭車が通過した後の経過時間の表示２６である。遊戯者が後方車を操作している場合は、先頭車が通過してからの時間が表示２６に表示され、遊戯者が先頭車を操作している場合は、自らがチェックポイントＣＰを通過した後の経過時間が表示２６に表示される。後方車がチェックポイントＣＰを時間内に通過した場合は、表示２６はクリアされる。
【００５５】
そして、その後、再度上述した動作フロー（ステップ３１から４０まで）が、次のゲーム周期（１／３０秒毎）においても繰り返される。
【００５６】
さて、２人の遊戯者により２台の競争車がカーレースを行っている場合に、先頭の車がチェックポイントＣＰを通過してから、対応するタイマーが時間の計測を開始し、後方の車がそのチェックポイントＣＰを通過するかどうかについて、図６の例に従って具体的に説明する。
【００５７】
図６の（１）には、時刻ｔn の先頭車１Ｐと後方車２Ｐの位置の移動例が示されている。そして、（２）（３）には、時刻ｔn から設定時間Ｔ１が経過した時刻ｔn ＋k における先頭車１Ｐと後方車２Ｐの位置の異なる移動例が示されている。即ち、時刻ｔn において、先頭車１ＰがチェックポイントＣＰ１を通過した時点で、対応するタイマーが計測を開始する。そして、時刻ｔn ＋k において、図６（２）の如く後方車２ＰがＲ1 からＲ2 に移動してチェックポイントＣＰ１を通過した場合は、図３のフローチャートのステップ３７にてタイマーがリセットされて、ゲームが継続される。一方、時刻ｔn ＋k において、図６（３）の如く後方車２Ｐが未だにブロックＢ５内に居る場合は、図３のフローチャートのステップ３６でＮｏ、さらにステップ３８にてＮｏと判定されて、ゲーム終了となる。
【００５８】
また、何れの場合でも、時刻ｔn ＋k がゲーム最初に設定したトータル時間Ｔ２を越えている場合は、ステップ３９にてＮｏと判定されてゲーム終了となる。
【００５９】
［別のゲームのフロー］
上記の図３のゲームのフローチャートによれば、先頭車がチェックポイントＣＰを通過してからの後方車が同ポイントを通過する迄の時間が設定時間Ｔ１を越えると、ゲームオーバとしていた。それに対して、別のやり方として、先頭車と後方車間の時間ではなくて、先頭車と後方車間の距離が設定した距離Ｌｇを越えるとゲームオーバとすることも考えられる。図７には、その場合のゲームのフローチャートが示されている。図３と同様の処理の部分には同じ番号を付している。
【００６０】
ゲームがスタートして、初期値を設定するステップ３０から先頭車と後方車（１Ｐ，２Ｐが位置するブロックを検出するステップ３３までは図３と同様である。但し、初期値としては、ゲームオーバになる距離Ｌｇが設定されることになる。
【００６１】
そして、ステップ４２にて、先頭車と後方車の間の距離を求める演算が行われ、そのデータがメモリ５４に記憶される。両車の間の距離は、先ず両者が属するブロックの情報から、間に存在するブロックを導き、それらのブロック毎の距離が累積される。更に、先頭車と後方車が属しているブロック内での隣接するブロックまでの距離が求められ、累積値に加算される。これらの演算は全てＣＰＵ５０にて行われる。そして、両車の間の距離が設定値Ｌｇ未満であるかどうかの判断がステップ４３にて行われる。設定値Ｌｇ未満である場合は、ゲームが継続し、設定値Ｌｇ以上の場合は、ゲームオーバとなる。
【００６２】
それ以外のステップ３９と４０は図３で説明したのと同様である。但し、ステップ４０での表示情報には、先頭車と後方車間の時間ではなく、距離が含まれることになる点で異なる。
【００６３】
このように、先頭車と後方車の間の距離が、予め設定した距離Ｌｇ以上になるとゲームオーバとすることで、図３のフローチャートの例の如く、チェックポイントＣＰに対応するタイマーを監視する必要がなくなり、演算処理量を少なくすることができる。ゲーム性としては、チェックポイントに関係なくゲームオーバの危険があるため、より緊張感の高いゲームを提供することができる。
【００６４】
図８は、２人の遊戯者により上述したカーレースを行う場合の表示画面の例である。図１と同じ部分には同じ番号を付している。遊戯者１Ｐが先頭で、遊戯者２Ｐが後方の場合についてであり、順位表示２４、チェックポイントＣＰのタイマーの表示２６等で異なる情報が表示されている。
【００６５】
上記の実施例では、ゲームのトータル経過時間が設定時間を越えた場合は、ゲーム終了とするようにしているが、本発明は、ゲームのトータル経過時間の制約をなくした場合でも適用できる。その場合でも、先頭車と後方車との間の時間または距離が設定時間または距離を越えた場合にゲーム終了とすることで、従来にないゲーム性を提供することができる。
【００６６】
また、３名以上の遊戯者が同時にカーレースのゲームを行う場合でも、本発明は適用できる。その場合は、先頭車がチェックポイントＣＰを通過してから対応するタイマーを開始し、設定時間以内にそのチェックポイントＣＰを通過できなかった後方車若しくは設定距離以上に車間距離を広げられた後方車から順にゲーム終了をさせていくことになる。
【００６７】
【発明の効果】
以上説明した通り、本発明によれば、カーレースのゲームにおいて、スタートからゴールまでが固定されたコースを完走する速さを競うのではなくて、コース内のチェックポイントＣＰを通過する時間の差が設定時間を越えるかどうかで競うため、遊戯者はゲーム開始から緊張感があふれるゲームを体験することができる。従って、設定時間を短くすれば、短時間内でゲームが終了するという設定が可能である。また、設定時間を長くすれば、長時間に渡る持久力を競うというゲーム設定にすることができる。更に、ゲームの操作能力に大きな差がある場合には、設定時間の長短で適切なハンディキャップを設定することができ、幅広く複数の遊戯者間で競技することができる。
【００６８】
更に、別のゲームとして、複数の遊戯者の車の間のコース上での距離が、設定距離を越えるかどうかで競うようにすることで、コース内に数カ所設けられたチェックポイントＣＰ毎に両者の間を監視するのではなく、常に両者間の距離を監視するため、遊戯者はより緊張感を体験することができる。また、コースの条件によっては、例えば舗装された直線部分でゲームオーバになるなど、新たな要素が加えられることになり、更に遊戯者は緊張感を体験することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態の遊戯装置の構成例と画面例を示す図である。
【図２】本発明の実施の形態の遊戯装置のブロック図である。
【図３】ゲームの動作のフローチャート図である。
【図４】ゲームの動作を説明するための図である。
【図５】ゲームの動作を説明するための図である。
【図６】ゲームの動作を説明するための図である。
【図７】別のゲームの動作のフローチャート図である。
【図８】２人の遊戯者による場合の画面の例を示す図である。
【符号の説明】
１０  ゲーム本体部
１１  操作入力部
１２  表示装置
２０  コース
２７  先頭車
ＣＰ  チェックポイント
【図１】
0004033922.tif 000002
【図２】
0004033922.tif 000003
【図３】
0004033922.tif 000004
【図４】
0004033922.tif 000005
【図５】
0004033922.tif 000006
【図６】
0004033922.tif 000007
【図７】
0004033922.tif 000008
【図８】
0004033922.tif 000009