(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0009】
(実施形態)
以下、図面等を参照して、本発明の実施形態について説明する。
図1は、実施形態のゲームシステム1のブロック図である。
図2は、実施形態のゲーム機10,20の表示画面を示す図である。
図3は、実施形態のゲーム機30の表示画面を示す図である。
図4は、実施形態のコース50のコース地図である。
図5は、実施形態の走行履歴テーブルを示す図である。
図1に示すように、ゲームシステム1は、3台のゲーム機10,20,30を備える。なお、ゲームシステム1は、より複数のゲーム機により構成してもよい。
ゲーム機10,20,30は、大型の筐体により構成された業務用の装置であり、主にゲームセンタ等の店舗等に設置される。ゲーム機10,20,30は、インターネット、LAN等の通信網2により、通信可能に接続されている。ゲーム機10,20,30は、相互に通信可能であれば、例えば、同一店舗に並べて配置されていても、異なる店舗に配置されていてもよい。
図2、
図3に示すように、各ゲーム機10,20,30は、各プレイヤP(P1,P2,P3)が、三次元仮想空間であるゲーム空間内のコース50(
図4参照)を、キャラクタである自動車C(C1,C2,C3)をスタート地点からゴール地点まで操作するドライブゲーム装置である。各プレイヤPは、他のプレイヤP等とカーレース(対戦ゲーム)を行う。以下、ゲーム機10では、プレイヤP1が自動車C1を操作し、ゲーム機20では、プレイヤP2が自動車C2を操作し、ゲーム機30では、プレイヤP3が自動車C3を操作する例を説明する。
【0010】
図4に示すように、コース50は、2つの直線と、2つの半円のコーナを備えるオーバルコースである。
コース50には、自動車Cの位置として、走行距離Y、コース50上の左右位置X(コース位置)を示す座標を設けた。座標軸は、コース50を直線状である仮定し、進行方向Y、進行方向Yに直交するコース幅の方向を左右方向X(進行方向Yとは異なる方向)とした。座標軸の基準は、スタート地点をY=0とし、コース幅の中央をX=0とした。プレイヤPは、自動車Cを操作して、コース50を2周する。このため、2周目の走行距離Yの座標は、1周目の2倍にした。
【0011】
以下、ゲーム機10の構成を主に説明するが、他のゲーム機20,30の構成も同様である。
図1に示すように、ゲーム機10は、コイン投入口11、操作部12、表示部14、スピーカ15、記憶部16、制御部17を備える。
コイン投入口11は、プレイヤP1がプレイをするために、コインを投入する投入口である。コイン投入口11には、投入されたコインを検出する光学センサ(図示せず)等が設けられている。光学センサ等は、コイン検出信号を制御部17に出力する。
【0012】
操作部12は、プレイヤP1がプレイ前、プレイ中等に操作する部材である。操作部12の各部材は、操作情報を制御部17に出力する。
操作部12は、操作ボタン12a、ハンドル12b、アクセル12c、ブレーキ12dを備える。
操作ボタン12aは、プレイヤP1がプレイ開始前に自分の自動車C1を決めたり、他のプレイヤP2,P3とのカーレースを決定する場合等に操作するボタンである。
ハンドル12b、アクセル12c、ブレーキ12dは、現実の自動車を模した入力装置である。
ハンドル12bは、自動車C1の左右位置Xを変更する操舵部材である。
アクセル12cは、自動車C1の速度を増加させて、自動車C1を進行方向Yに進める部材である。
ブレーキ12dは、自動車C1の速度を減速させる部材である。
【0013】
表示部14は、例えば液晶表示装置等の表示装置である。
図2(a)に示すように、表示部14は、プレイ画面表示部14a、コース地図表示部14c、走行時間表示部14d、順位表示部14eを備える。
プレイ画面表示部14aは、プレイ画面14bの表示領域である。
プレイ画面14bは、現走行時間におけるプレイヤP1の現視点からのゲーム空間の画像(視点画像)を表示する画面である。実施形態では、プレイ画面14bは、自動車C1の後方から見た画像を用いるが、自動車C1の運転席から見た画像を用いてもよい。
コース地図表示部14cは、コース50の地図の表示領域である。
走行時間表示部14dは、現走行時間、つまりスタートしてから現在までの走行時間の表示領域である。
順位表示部14eは、C1の順位の表示領域である。
図1に示すように、スピーカ15は、BGMや効果音等を出力する音声出力部である。
【0014】
記憶部16は、ゲーム機10の動作に必要なプログラム、情報等を記憶するためのハードディスク、半導体メモリ素子等の記憶装置である。
記憶部16は、走行履歴テーブル16a,16b,16c、ゲームプログラム16dを記憶する。
【0015】
図5に示すように、走行履歴テーブル16a,16b,16cは、自動車C1,C2,C3がスタートしてからゴールするまでの走行履歴を、所定時間間隔で記憶するテーブルである。なお、所定時間間隔は、移動する自動車C1,C2,C3が滑らかに表示できる程度の長さある。このため、本来は、20(フレーム/秒)程度になるように、0.05秒程度間隔で、自動車C1,C2,C3が位置する座標が取得されていく。
図5には、これらを抜粋して、簡略して示した。
走行履歴テーブル16aは、ゲーム機10の自動車C1の走行履歴である。
走行履歴テーブル16aは、自動車C1の座標を記憶している。つまり、走行履歴テーブル16aは、走行履歴として、走行距離(移動距離)Y、左右位置X、走行時間を対応付けて記憶している。
走行履歴テーブル16b,16cは、ゲーム機20,30の自動車C2,C3の走行履歴(移動履歴情報)を記憶するテーブルである。
【0016】
図1に示すように、ゲームプログラム16dは、このドライブゲームのプログラムである。ゲームプログラムは、コース50に関する情報、自動車C1,C2,C3の立体形状(三次元形状)等を記憶している。また、ゲームプログラム16dは、自動車C1,C2,C3の車速に応じたエンジン音等の情報を記憶している。
制御部17は、ゲーム機10を統括的に制御するための制御装置であり、例えば、CPU(中央処理装置)等から構成される。制御部17は、記憶部16に記憶された各種プログラムを適宜読み出して実行することにより、前述したハードウェアと協働し、本発明に係る各種機能を実現している。
制御部17は、プレイ進行部17aを備える。
プレイ進行部17aは、プレイ進行を統括的に制御するための制御部である。
制御部17の詳細な処理は、後述する。
【0017】
同様に、ゲーム機20は、操作部22、表示部24、記憶部26、制御部27等を備える。また、ゲーム機30は、操作部32、表示部34、記憶部36、制御部37等を備える。
後述するように、各ゲーム機(例えばゲーム機10)は、他のゲーム機(例えばゲーム機20,30)から他の自動車C(例えば自動車C2,C3等)の位置を取得して、他のゲーム機(例えばゲーム機20,30)と同期してプレイ進行する。
【0018】
次に、ゲームシステム1の動作について説明する。
図6は、実施形態のメイン処理のフローチャートである。
図7は、実施形態の1位自動車の表示処理と、1位及び2位自動車の表示処理とを示すフローチャートである。
図8は、実施形態の走行履歴テーブルに対応した走行時間、走行距離を示す折れ線グラフである。
以下、説明を簡単にするために、
図4、
図8に示すように、各自動車Cが以下のように走行して、周回するものとする。
自動車C1:コーナ入口で減速しながらアウトコース(X=15)を走行し、コーナ中央でインコース(X=−15)を走行し、コーナ出口で加速しながらアウトコース(X=15)を走行する。技量が高く、短時間で周回できる。
自動車C2:入口で減速しコーナ出口で加速しながら、スタートからゴールするまで、コース中央(X=0)を走行する。中級者の走行である。また、2周目の第1コーナ出口辺りから、アクシデントのために減速した(
図8に示す矢印B参照)。
自動車C3:コーナ入口で減速しながらインコース(X=−15)を走行し、コーナ中央でアウトコース(X=15)にふくらみ、コーナ出口で加速しながらインコース(X=−15)を走行する。技量が低く、長時間かけて周回しなければならない。
また、現走行時間の自動車Cの画像を「現画像R(他キャラクタ現画像)」といい、現走行時間よりも前の自動車Cを再現した画像を「再現画像G(他キャラクタ再現画像)」という。再現画像Gは、車体の向こう側が透過して見える半透明の画像であり(
図2(b)に示す再現画像G1参照)、いわゆるゴースト画像といわれるものである。
【0019】
図6に示すように、最初に、ステップS(以下「S」という)1において、プレイ進行部17a,27a,37aは、処理を開始する。各プレイ進行部17a,27a,37aは、他のゲーム機10,20,30の操作情報に基づいて、同時にプレイ開始する。
S2において、プレイ進行部17a,27a,37aは、現走行時間を表示する(
図2(a)、
図2(b)、
図3(a)参照)。対戦ゲームは、同時スタートし同時進行するプレイである。このため、ゲーム機10,20,30の現走行時間の表示は、同じである。
S3において、プレイ進行部17a,27a,37aは、3台の自動車Cの現在位置(X,Y)を取得して、走行履歴テーブル(
図5参照)に記憶する。
プレイ進行部17a,27a,37aは、自機の自動車Cの現在位置は、自機の操作部12,22,32の操作情報に基づいて算出して取得する。また、他機の自動車Cの現在位置は、他のゲーム機の出力に基づいて取得する。このため、プレイ進行部17a,27a,37aは、自機の自動車Cの現在位置を、他機に出力する。
【0020】
例えば、ゲーム機10では、プレイ進行部17aは、操作部12の操作情報に基づいて、自機の自動車C1の位置を算出して取得し、これを他のゲーム機20,30に出力する。また、プレイ進行部17aは、ゲーム機20,30からの出力に基づいて、自動車C2,C3の現在位置を取得する。
図5に示すように、このため、ゲーム機10,20,30の走行履歴テーブル16a,26a,36aには、自動車C1について同じ情報が記憶される。同様に、走行履歴テーブル16b,26b,36bには、自動車C2について同じ情報が記憶され、また、走行履歴テーブル16c,26c,36cには、自動車C3について同じ情報が記憶される。
なお、
図5は、プレイ終了後のテーブルを示すため、ゴールするまでの情報が全て取得されているが、プレイ中には、走行時間経過に応じて、情報が随時記憶されていく。
また、プレイ進行部17a,27a,37aは、他機の操作情報を取得し、他機の自動車Cの現在位置を、自機の自動車Cと同様に算出して取得してもよい。この場合には、各プレイ進行部17a,27a,37aは、自機の操作情報を他機に出力すればよい。
プレイ中には、プレイ進行部17a,27a,37aは、自機の自動車Cの車速に合わせて、エンジン音等の音声情報を、スピーカ15,25,35から出力するようになっている。
【0021】
S4において、プレイ進行部17a,27a,37aは、自機の自動車(自車)Cの現画像を作成して、プレイ画面に表示する。
一例として、300秒経過時におけるプレイ画面について説明する。
ゲーム機10のプレイ進行部17aは、操作部12の出力に基づいて、自動車C1の現在位置を算出する。この例では、現在位置(X,Y)=(15,3000)である(
図5の欄31a,31b参照)。そして、プレイ進行部17aは、自動車C1の例えば10m後方位置(現視点位置)から見たプレイ画面14bに表示する(
図2(a)参照)。
同様に、ゲーム機20のプレイ進行部27aは、自動車C2の現在位置(0,2500)を取得して(
図5の欄32a,32b参照)、プレイ画面24bに表示する(
図2(b)参照)。ゲーム機30のプレイ進行部37aは、自動車C3の現在位置(−15,2000)を取得して(
図5の欄33a,33b参照)、プレイ画面34bに表示する(
図3(a)参照)。
【0022】
S5において、プレイ進行部17a,27a,37aは、現走行時間を判定時として、自機の自動車Cの座標位置、他機の自動車Cの座標に基づいて、自機の自動車Cが1位であるか否かを判定する。つまり、プレイ進行部17a,27a,37aは、自機の自動車Cが他機の自動車Cよりも後方にいるか否かを判定する。
プレイ進行部17a,27a,37aは、自機の自動車Cが1位であると判定した場合には(S5:YES)、S9に進み、一方、自動車Cが1位ではないと判定した場合には(S5:NO)、S6に進む。
【0023】
例えば、上記300秒経過時には、プレイ進行部17aは、自機の自動車C1が1位であるので(S5:YES)、S9に進む。この場合には、後述するS7,S8に進まない。
図2(a)に示すように、このため、プレイ進行部17aは、プレイ画面14bには、自機の自動車C1のみを表示する。
一方、プレイ進行部27a,37aは、自機の自動車C2,C3が2位又は3位であるので(S5:NO)、S6に進む。
【0024】
S6において、プレイ進行部17a,27a,37aは、S5と同様にして、自機の自動車Cが2位であるか否かを判定する。プレイ進行部17a,27a,37aは、S5と同様にして、自機の自動車Cが2位であると判定した場合には(S6:YES)、S7に進み、一方、2位ではないと判定した場合(S6:NO)、つまり3位であると判定した場合には、S8に進む。
例えば、上記300秒経過時には、ゲーム機20のプレイ進行部27aは、自機の自動車C2が2位であるので(S6:YES)、S7に進む。一方、ゲーム機30のプレイ進行部37aは、自機の自動車C3が3位であるので(S6:NO)、S8に進む。
【0025】
(1位自動車の表示処理)
S7において、プレイ進行部17a,27a,37aは、1位自動車の表示処理を行う。1位自動車の表示処理は、自機の自動車Cが2位のゲーム機が、他機の1位の自動車Cを表示する表示処理である。
ここでは、上記300秒経過時の場面で、自機の自動車C2が2位であるゲーム機20が、1位の自動車C1(他キャラクタ)を表示する処理を説明する。
図7に示すように、S7aにおいて、プレイ進行部27aは、現走行時間300秒を判定時として、走行履歴テーブル26a,26bを参照し、自機の自動車C2及び1位の自動車C1間の差が50m(規定距離)よりも大きいか否かを判定する。つまり、プレイ進行部27aは、自機の自動車C2が1位の自動車C1の50mよりも後方にいるか否かを判定する(後方判定処理)。
プレイ進行部27aは、差が50mよりも大きいと判定した場合には(S7a:YES)、S7bに進み、一方、差が50mよりも大きくない場合と判定した場合(S7a:NO)、つまり50m以内であると判定した場合には、S7cに進む。
現走行時間300秒の走行距離Yは、自動車C2が2500m、自動車C1が3000mである。このため、プレイ進行部27aは、両者の差が500mであり、50mよりも大きいので(S7a:YES)、S7bに進む。
【0026】
S7bにおいて、プレイ進行部27aは、自動車C2の現走行距離の50m前方の1位の自動車C1の左右位置Xを、走行履歴テーブル26aから読み出す。つまり、プレイ進行部27aは、自機の自動車C1の現走行距離2500mに50mを加算して(
図8参照)、Y=2550mの自動車C1の左右位置X=−15を読み出す(
図5の欄31c,31d参照)。なお、Y=2550mの走行履歴が存在しない場合には、プレイ進行部27aは、その前後の走行履歴に基づいて、補間して作成する。
プレイ進行部27aは、その自動車C1の座標(−15,2550)に基づいて、現視点位置からの自動車C1の再現画像G1を作成する。再現画像G1は、自動車C1が走行時間256秒経過時(
図5の欄31d参照)の自動車C1の画像を再現したものである。
図2(b)に示すように、プレイ進行部27aは、再現画像G1をプレイ画面24b内に表示する。
プレイ進行部27aは、S2からの処理を繰り返す場合に(後述するS10:YES)、両者の差が50mよりも大きい限り(S7:YES)、常時、50m前方の再現画像G1を表示する(S7b)。このため、再現画像G1は、自動車C1の走行映像を、自動車C2の速度に合わせて、ゆっくりと再生したものになる。
【0027】
これにより、ゲーム機20のプレイヤP2は、1位の自動車C2の走行ライン等を参考にしながら走行できる。また、自動車C1が実際にはプレイ画面24bから消える程、前方に離れてしまっても、プレイヤP2は、プレイヤP1と対戦しているように感じる。これにより、ゲームシステム1は、プレイヤP2のプレイ意欲を維持させることができる。
【0028】
S7cにおいて、プレイ進行部27aは、現走行時間の1位の自動車Cの左右位置Xに基づいて、現走行時間の現視点からの自動車C1の現画像R1を、プレイ画面24bに表示する。現画像R1の図示は、省略するが、半透明ではない自動車C2と同様な画像である。このため、プレイヤP2は、現画像R1と、再現画像G1とを簡単に判別できる。
プレイ進行部27aは、S2からの処理を繰り返す場合に(後述するS10:YES)、自動車C1,C2の差が50m以内である限り(S7:NO)、常時、1位の現画像を作成して表示する(S7c)。このため、プレイ進行部27aは、現経過時間の自動車C1の位置を反映して、プレイ画面24bを表示できる。これにより、プレイヤP2は、リアルタイムの対戦ゲームをプレイできる。
S7dにおいて、プレイ進行部27aは、メイン処理(
図6)に戻る。
【0029】
(1位及び2位自動車の表示処理)
S8において、プレイ進行部17a,27a,37aは、1位及び2位自動車の表示処理を行う。1位及び2位自動車の表示処理は、自機の自動車Cが3位のゲーム機が、他機の1位、2位の自動車Cを表示する表示処理である。
自機の自動車C3(キャラクタ)が3位のゲーム機30が、1位、2位の自動車C1,C2(他キャラクタ)を表示する処理を説明する。
図7に示すように、S8aにおいて、プレイ進行部37aは、現走行時間300秒を判定時として、走行履歴テーブル36a,36b,36cを参照し、自機の自動車C3及び2位の自動車C2の差が50m(規定距離)よりも大きいか否かを判定する。つまり、プレイ進行部37aは、自機の自動車C3が2位の自動車C2の50mよりも後方にいるか否かを判定する(後方判定処理)。
プレイ進行部37aは、差が50mよりも大きいと判定した場合には(S8a:YES)、S8bに進み、一方、差が50mよりも大きくない場合と判定した場合(S8a:NO)、つまり50m以内であると判定した場合には、S8cに進む。
【0030】
例えば、300秒経過時には、走行距離Yは、自機の自動車C3が2000m(
図5の欄33a,33b参照)、2位の自動車C2が2500m(
図5の欄32a,32b参照)である。このため、プレイ進行部37aは、両者の差が500mであり、50mよりも大きいので(S8a:YES)、S8bに進む。
一方、450秒経過時には、走行距離Yは、自機の自動車C3が3000m(
図5の欄33c,33d参照)、2位の自動車C2が3050mである(
図5の欄32g,32h参照)。このため、プレイ進行部37aは、両者の差が50m以内であるので(S8a:NO)、S8cに進む。
【0031】
S8bにおいて、
図3(a)に示すように、プレイ進行部37aは、走行履歴テーブル36a,36bを参照して、自動車C1,C2の再現画像G1,G2を作成し、プレイ画面34bに表示する。再現画像G1,G2の作成方法は、上記S7bと同様である。
但し、プレイ進行部37aは、1位の自動車C1については、自動車C3(Y=2000)よりも100m前方(Y=2100)に設定し(
図8参照)、走行履歴テーブル36aから位置(15,2100)を読み出す(
図5の欄31e,31f参照)。つまり、再現画像G1は、自動車C1の走行時間202の画像を再現したものである。
一方、プレイ進行部37aは、2位の自動車C2については、自動車C3(Y=2000)よりも50m前方(Y=2050)に設定し(
図8参照)、走行履歴テーブル36bから位置(0,2050)を読み出す(
図5の欄32e,32f参照)。つまり、再現画像G2は、自動車C2の走行時間241の画像を再現したものである。
【0032】
このように、プレイ進行部37aは、1位の自動車C1を100m前方にとし、一方、2位の自動車C2を50m前方にして、より遠方にいる自動車C程、離間距離を長くして再現画像G1,G2を表示する。このため、プレイ進行部37aは、再現画像G1,G2を順位に応じた順番でプレイ画面34bに表示できる。また、プレイヤP3は、自動車C1,C2の両方から大きく離れてしまっても、プレイヤP1,P2と対戦しているように感じてプレイできるし、また、順位を明確に把握しながらプレイできる。
【0033】
S8cにおいて、プレイ進行部37aは、現走行時間を判定時として、走行履歴テーブル36a,36cを参照し、1位との差が100m(規定距離)よりも大きいか否かを判定する(後方判定処理)。プレイ進行部37aは、自機の自動車C3と、1位の自動車C1との差が100mよりも大きいと判定した場合には(S8c:YES)、S8dに進み、一方、100mよりも大きくないと判定した場合(S8c:NO)、つまり100m以内であると判定した場合には、S8eに進む。
450秒経過時には、1位の自動車C1は、既にゴールしている。このため、プレイ進行部37aは、1位との差が100mよりも大きいと判定して(S8c:YES)、S8dに進む。
【0034】
S8dにおいて、
図3(b)に示すように、プレイ進行部37aは、1位の自動車C1については、再現画像G1を作成してプレイ画面34bに表示し、一方、2位の自動車C2については、現画像R2を作成してプレイ画面34bに表示する。
ここで、S8dに進む場合は、2位との差が50m以内であり(S8a:NO)、一方、1位との差が100mよりも大きい場合である(S8c:NO)。つまり、S8dに進む場合は、2位の自動車C2が50m以内という至近距離にいるものの、1位の自動車C1には、100m以上に十分に離されてしまった場面である。
【0035】
そこで、プレイ進行部37aは、2位の自動車C2については、S7cと同様に、現経過時間450の自動車C2の位置(0,3050)に基づいて(
図5の欄32g,32h参照)、現画像R2を表示する。これは、S7cと同様に、プレイヤP3がプレイヤP2との間でリアルタイムの対戦ゲームをプレイできるようにするためである。
一方、プレイ進行部37aは、1位の自動車C1については、S7bと同様に、自機の自動車C3よりも100m前方(Y=3100)に対応した位置(15,3100)を反映し(
図5の欄31g,31h参照)、走行時間308の再現画像G1を表示する。これは、S7bと同様に、プレイヤP3が1位の自動車C1の走行ライン等を参考にでき、また、自動車C1が離れてしまっても、プレイヤP1との対戦ゲームを感じるようにするためである。
【0036】
ここで、現走行時間450秒よりも前までは、2位、3位の自動車C2,C3間は、50mよりも大きく離れていた(S8a:YES)。このため、プレイ進行部37aは、現走行時間450秒よりも前までは、50m前方の再現画像G1,G2(
図3(a)参照)をプレイ画面に表示していた(S8a:YES→S8b)。
図8に示すように、ところが、2位の自動車C2がアクシンデントのために減速し、450秒経過時に、自動車C2,C3の差が50m以内に縮まった(S8a:NO)。
そのため、プレイ進行部37aは、450秒経過時に、2位の自動車C2を、
図3(a)に示す再現画像G2から、
図3(b)に示す現画像R2に切り替えて、プレイ画面34bに表示する(S8a:NO→S8c:YES→S8d)。また、この場合、再現画像G2及び現画像R2は、画像のコマがつながるので、再現画像G2から現画像R2の切り替時の映像は、滑らかであり、違和感がない。
このように、ゲーム機30は、自機の自動車C3と、2位の自動車C2が50m以上離れてしまっても、50m以内に追いついて接近した場合には、現走行時間に応じたプレイに切り替えて、プレイヤP2,P3の対戦ゲームを再開できる。
また、ゲーム機30は、1位の自動車C1については100mよりも離れているかを判定し(S8c)、2位の自動車C2については50mよりも離れているかを判定する(S8a)。つまり、ゲーム機30は、自動車C1,C2毎に判定する。これにより、自動車C3が接近した自動車C2のみを再現画像G2から現画像R2に切り替え、1位の再現画像G1を継続して表示できる(S8d)。これにより、ゲーム機30は、この自動車C2のみを、現経過時間に応じたプレイに切り替えることができる。
【0037】
S8eにおいて、プレイ進行部37aは、1位、2位の自動車C1,C2の現画像を表示する(プレイ画面の図示は、省略する)。この場面では、自動車C2が50m以内かつ自動車C1が100m以内にいるので(S8a:NO→S8c:NO)、プレイヤP3がプレイヤP1,P2との間でリアルタイムの対戦ゲームをプレイできるようにするためである。
S8fにおいて、プレイ進行部37aは、メイン処理(
図6)に戻る。
【0038】
S9において、プレイ進行部17a,27a,37aは、順位表示部14e,24e,34eに自機の自動車Cの順位を表示する。
また、プレイ進行部17a,27a,37aは、コース地図表示部14c,24c,34cに、現走行時間における各自動車C1,C2,C3の位置を表示する。このため、コース地図表示部14c,24c,34cには、現走行時の各自動車C1,C2,C3の位置が反映され、同様な表示になる(
図2(a)、
図2(b)、
図3(a)参照)。
これにより、例えば、3位のプレイヤPは、プレイ画面の再現画像G1,G2を見ながらプレイしていても、他の自動車C1,C2の現在の位置を把握できる(
図3(a)参照)。また、1位のプレイヤP1は、他機の自動車C2,C3との間にどの程度の差を付けているかを把握できる(
図2(a)参照)。
【0039】
S10において、プレイ進行部17a,27a,37aは、例えば、プレイ時間が終了したか、自機の自動車Cがゴールしたか否か等を判定することにより、プレイ終了したか否かを判定する。プレイ進行部17a,27a,37aは、プレイ終了であると判定した場合には(S10:YES)、S11に進み、プレイ終了ではないと判定した場合には(S10:NO)、S2からの処理を繰り返す。
【0040】
なお、詳細な説明は、省略するが、プレイ進行部17a,27a,37aは、自機の自動車Cよりも先行する自動車Cが規定距離内におり、先行する自動車Cの現画像Rを表示していても(S7c、S8d、又はS8e)、S2からの処理を繰り返し、規定距離よりも離れてしまった場合には(S7a:YES、S8a:YES、又はS8c:YES)、現画像Rを再現画像Gに切り替えることができる(S7b、S8b、又はS8d)。この場合にも、プレイ進行部17a,27a,37aは、先行する自動車Cのコマの切り替えを、滑らかに行うことができる。
S11において、プレイ進行部17a,27a,37aは、処理を終了する。
【0041】
以上説明したように、実施形態のゲームシステム1は、自動車Cと他の自動車Cとが離れてしまっても、他の自動車Cの再現画像Gを常時表示するので、遅いプレイヤPであっても、プレイ意欲を維持させることができる。また、自動車Cと他の自動車Cとが規定距離内に接近した場合には、現画像Rに切り替えて表示するので、現走行時間に応じた対戦ゲームを再開できる。
【0042】
以上、本発明の実施形態について説明したが、本発明は前述した実施形態に限定されるものではなく、後述する変形形態のように種々の変形や変更が可能であって、それらも本発明の技術的範囲内である。また、実施形態に記載した効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、実施形態に記載したものに限定されない。なお、前述した実施形態及び後述する変形形態は、適宜組み合わせて用いることもできるが、詳細な説明は省略する。
【0043】
(変形形態)
(1)本実施形態において、各ゲーム機(ゲーム機等)は、他のゲーム機(ゲーム機等)と同期して、プレイ進行する例を示したが、これに限定されない。例えば、複数のゲーム機のうち1つが、ホストコンピュータとして機能して他のゲーム機を制御してもよい。この場合には、他のゲーム機の操作情報が、この1つのゲーム機に出力して、そして、この1つのゲーム機が、各ゲーム機に対応した自動車の位置を算出し、また、プレイ画面を作成し、他のゲーム機に出力すればよい。
【0044】
(2)本実施形態において、システムは、複数のプレイヤが同時に対戦する例を示したが、これに限定されない。例えば、プレイヤが、他のプレイヤが過去にプレイした自動車の履歴情報や、予め模範的な操作を反映した自動車の履歴情報を用いて、対戦できるようにしてもよい。この場合には、過去の履歴情報を、テーブルで記憶しておき、プレイヤのスタート時と、過去の履歴情報のスタート時とを同期させて、プレイ開始すればよい。
【0045】
(3)本実施形態において、システムは、キャラクタとして自動車を、プレイ空間内で移動する例を示したが、これに限定されない。キャラクタは、プレイヤの操作に応じて、移動すれば、いずれの形態でもよい。例えば、キャラクタは、他の乗り物(飛行機等)、生き物(人等)でもよい。
【0046】
(4)本実施形態において、自動車の履歴情報は、走行距離、左右位置である例を示したが、これに限定されない。例えば、これらの情報に加えて自動車の傾き等を加えてもよい。この場合には、自動車の後輪が滑った場合等の自動車の動きを、リアルに表示できる。
また、キャラクタが飛行機等のように鉛直方向にも移動できる場合には、履歴情報は、鉛直方向の座標を備えてもよい。
【0047】
(5)本実施形態において、各プレイ進行部は、規定距離よりも離れた自動車の再現画像を、プレイ画面に出力する例を示したが、これに限定されない。各プレイ進行部は、再現画像(他キャラクタ再現画像)をプレイ画面に表示する場合に、再現画像の自動車の車速(移動速度)に対応したエンジン音等の音声情報を、スピーカから出力してもよい。この場合には、制御部が、走行履歴テーブルに基づいて再現画像の自動車の移動量を算出し、この移動量と、現時間の経過時間に基づいて、再現画像の自動車の車速を算出すればよい。
これにより、ゲームシステムは、再現画像のリアル感を向上し、遅いプレイヤPであっても、プレイ意欲を維持させる効果を向上できる。
また、制御部は、再現画像の自動車の車速に基づいて、その車速に対応した操作内容を予測し、ブレーキ音、ブレーキ痕、タイヤがスライドした場合の煙等を出力してもよい。
【0048】
(6)本実施形態において、各走行履歴テーブルは、走行距離に関する情報(移動距離情報)として走行距離(移動距離)そのものを記憶し、左右位置に関する情報(コース位置情報)として左右位置(コース位置)そのものを記憶する例を示したが、これに限定されない。例えば、走行履歴テーブルは、走行履歴として各プレイヤの操作部の操作履歴と、走行時間とを対応付けて記憶していてもよい。この場合には、プレイ進行部が、プレイ開始に、操作履歴及び走行時間に基づいて、走行時間に対応した走行距離、左右位置を算出すればよい。