JPH08131656A - ゲーム装置及びその衝突判定方法 - Google Patents
ゲーム装置及びその衝突判定方法Info
- Publication number
- JPH08131656A JPH08131656A JP6300243A JP30024394A JPH08131656A JP H08131656 A JPH08131656 A JP H08131656A JP 6300243 A JP6300243 A JP 6300243A JP 30024394 A JP30024394 A JP 30024394A JP H08131656 A JPH08131656 A JP H08131656A
- Authority
- JP
- Japan
- Prior art keywords
- collision
- obstacle
- player
- game
- moving body
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/64—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/64—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
- A63F2300/643—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/80—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
- A63F2300/8017—Driving on land or water; Flying
Abstract
確にかつ迅速に行うことができるゲーム装置を提供する
こと。 【構成】 プレーヤの操縦するプレーヤ移動体が移動す
る仮想ゲーム空間を演算し、前記仮想ゲーム空間のゲー
ム画面をディスプレイ上に表示するゲーム装置である。
このゲーム装置は、プレーヤ移動体と前記障害物との距
離データを求める距離データ演算部122と、前記プレ
ーヤ移動体から見た、前記障害物の位置する方向を第1
の方向として検出する第1の方向検出部124と、前記
障害物の向きを第2の方向として検出する第2の方向検
出部126と、前記プレーヤ移動体と障害物の形状に基
づき得られる衝突距離データを、前記第1の方向および
第2の方向の組み合わせ条件に対応づけて記憶するテー
ブルメモリ128と、前記障害物の前記第1の方向およ
び第2の方向に基づき、対応する衝突距離データを前記
テーブルメモリから読み出し、前記障害物との距離デー
タと比較することによりとの衝突判定を行う判定部13
0と、を含む。
Description
物との衝突判定を行うゲーム装置に関する。
ゲーム画面を見ながら、プレーヤがレーシングカーを走
行させ、他のレーシングカーと競争するドライブゲーム
装置が知られている。
縦するレーシングカーが他のレーシングカーと抜きつ抜
かれつのデッドヒートを行う場合が多く、この場合に、
プレーヤレーシングカーが他のレーシングカーに接触
し、あるいは追突すると、そのスピードが一時的に大幅
にダウンしたり、車両がスピンしたりするなどのゲーム
演出が行われ、実際のサーキットレースと同様な興奮を
味わえるように形成されているものが多い。
ングカーと他のレーシングカー等の障害物との衝突判定
(以下ヒットチェックという)をどのようにして正確に
行うかが、ゲームの面白さを左右する重要な要因とな
る。不正確なヒットチェックが行われると、プレーヤレ
ーシングカーが障害物に衝突していないのに、衝突した
と判断されてダメージを受けることになるため、ゲーム
のリアリティが損なわれ、プレーヤにとっての面白さが
大幅に低下してしまうからである。
は、このようなヒットチェックを正確に、かつ簡単な演
算処理で高速に行うことができないという問題があっ
た。
シングカーのヒットチェック用の形状モデルを単純な長
方形に設定し、仮想ゲーム空間内においてこのプレーヤ
レーシングカーの長方形と、他の障害物の長方形との間
の幾何学的な重なりが発生した場合に、衝突が発生した
と判断していた。衝突判定用形状モデルとして単純な長
方形を採用することにより、CPUの衝突判定用の演算
処理に要する負担を大幅に軽減することができる。
わめてラフな衝突判定となってしまい、複雑な形状をし
たレーシングカー同士の衝突を正確に判定することがで
きないという問題があった。
シングカーと同様な形状をしたレーシングカーを、コン
ピュータグラフィックスの手法を用いて作成し、リアリ
ティの高いゲーム演出ができるように形成されているも
のが多い。この場合に、単純な形状モデルでレーシング
カー相互のヒットチェックを行うと、そのヒットチェッ
クがきわめて不正確であることがプレーヤに容易に判明
してしまい、これがゲームの面白さを低下させる大きな
要因となる。
レーシングカーのヒットチェック用形状モデルを、複数
の長方形の組合せとして設定し、ヒットチェックの精度
を高めたものも知られている。
方形の個数分だけヒットチェックを行わなければなら
ず、特に、レーシングカーが複雑な形状をしている場合
には、前記長方形の個数が多くなり、ヒットチェックに
要する演算処理に時間と手間がかかりすぎ、これが他の
ゲーム演算に悪影響を及ぼしてしまうという問題があっ
た。
技術では、プレーヤレーシングカーと障害物とが衝突し
たことしかわからず、その衝突の状況データ(たとえば
2台のレーシングカーがどのような状況で衝突したのか
というデータ)を得るためには、ヒットチェックとは別
のデータ処理が必要となるという問題があった。
なされたものであり、その目的は、プレーヤ移動体と障
害物との衝突判定を、正確にかつ迅速に行うことができ
るゲーム装置およびその衝突判定方法を提供することに
ある。
害物との衝突判定と同時に、その衝突の状況を簡単に認
識することができるゲーム装置を得ることにある。
成するため、請求項1の発明は、プレーヤ移動体を操縦
するプレーヤ操作手段と、プレーヤの操縦するプレーヤ
移動体が移動する仮想ゲーム空間を演算するゲーム演算
手段と、を含み、前記仮想ゲーム空間のゲーム画面をデ
ィスプレイ上に表示するゲーム装置において、前記ゲー
ム演算手段は、前記プレーヤ移動体と障害物との衝突判
定を行う衝突判定手段を有し、その衝突判定結果を反映
した仮想ゲーム空間を演算するよう形成され、前記衝突
判定手段は、前記プレーヤ移動体と前記障害物との距離
データを求める距離データ演算手段と、前記プレーヤ移
動体から見た、前記障害物の位置する方向を第1の方向
として検出する第1の方向検出手段と、前記障害物の向
きを第2の方向として検出する第2の方向検出手段と、
前記プレーヤ移動体と障害物の形状に基づき得られる衝
突距離データを、前記第1の方向および第2の方向の組
み合わせ条件に対応づけて記憶するテーブルメモリと、
前記障害物の前記第1の方向および第2の方向に基づ
き、対応する衝突距離データを前記テーブルメモリから
読み出し、前記障害物との距離データと比較することに
より衝突判定を行う判定手段と、を含むことを特徴とす
る。
り、プレーヤ移動体から見た障害物の位置する方向が第
1の方向として検出され、第2の方向検出手段により、
障害物の向きが第2の方向として検出される。
めプレーヤ移動体と障害物の形状に基づき得られる衝突
距離データが、前記第1および第2の方向の組合せ条件
に対応づけて記憶されている。
に基づき、前記テーブルメモリーから対応する衝突距離
データを読み出し、これと、前記障害物とプレーヤ移動
体との距離データと比較し衝突判定を行う。
動体と障害物との衝突距離が、前記第1および第2の方
向により変化することに着目し、その衝突距離データを
前記第1および第2の方向に対応づけてあらかじめ測定
し、テーブルメモリーに記憶する構成を採用している。
このような構成を採用することにより、複雑な形状をし
たプレーヤ移動体および障害物の衝突判定を、簡単な演
算処理で正確に行うことが可能となり、よりリアリティ
の高いゲームを行うことができるゲーム装置を提供する
ことができる。
において、前記衝突判定手段は、前記障害物として他の
移動体との衝突判定を行うことを特徴とする。
間内で競争するレーシングカー同士の衝突判定を、正確
に行うことができる。
〜2のいずれかにおいて、前記ゲーム演算手段は、前記
プレーヤ移動体と障害物との予備衝突判定を行う予備衝
突判定手段を有し、前記衝突判定手段は、前記予備衝突
判定で衝突と判定された障害物に対し衝突判定を行うこ
とを特徴とする。
ラフな予備衝突判定をあらかじめ行い、衝突と判断され
た障害物に対し、請求項1の発明の衝突判定を行うこと
により、衝突判定の対象となる障害物が多数存在する場
合に、その衝突判定動作をよりスムーズにかつ少ない演
算量で行うことが可能となる。
〜3のいずれかにおいて、前記距離データ演算手段は、
前記障害物の座標データを前記プレーヤ移動体のローカ
ル座標系の座標データに変換し、プレーヤ移動体と前記
障害物との距離データを求めるよう形成され、前記第1
の方向検出手段は、前記ローカル座標系において、前記
障害物の位置する方向を第1の方向として検出するよう
形成され、前記第2の方向検出手段は、前記プレーヤ移
動体の向きを基準とした障害物の向きを第2の方向とし
て検出するよう形成されたことを特徴とする。
衝突判定を、障害物のデータをプレーヤ移動体のローカ
ル座標系のデータに変換して行う構成とすることによ
り、仮想ゲーム空間内での衝突判定をより簡単に行うこ
とが可能となる。
〜4のいずれかにおいて、前記距離データ演算手段は、
前記距離データとして、プレーヤ移動体と前記障害物と
の実際の距離と相関のあるデータを求めるよう形成され
たことを特徴とする。
ーヤ移動体と障害物との距離は、両者の実際の距離を用
いて表すこともできるが、実際の距離と相関をもったデ
ータを用いて表すこともできる。とくに、請求項4の発
明のように、プレーヤ移動体のローカル座標系の座標デ
ータに、前記障害物の座標データを変換する場合には、
その座標データそのものが、実際の距離と比例する場合
がある。このような場合には、前記座標データを、前記
距離データとして用いることにより、実際の距離データ
を求めるための演算を省略することができ、より簡単に
衝突判定を行うことが可能となる。
〜5のいずれかにおいて、前記テーブルメモリは、前記
第1の方向および第2の方向の組み合わせ条件により特
定されるプレーヤ移動体と障害物との衝突状況に合せた
衝突演出用データを、前記第1の方向および第2の方向
の組み合わせ条件に対応づけて記憶するよう形成され、
前記判定手段は、前記障害物の前記第1の方向および第
2の方向に基づき、対応する衝突演出用データを前記テ
ーブルメモリから読み出し出力するよう形成されたこと
を特徴とする。
衝突の状況は、前記第1および第2の方向の組み合わせ
により特定される。従って、この衝突の状況に合せた、
プレーヤ移動体の衝突演出用データを、あらかじめテー
ブルメモリーへ記憶しておき、プレーヤ移動体と障害物
とが衝突したと判断された場合に、対応する衝突演出用
データを出力すればよい。このようにすることにより、
プレーヤ移動体と障害物との衝突の演出を行うための演
算処理を大幅に軽減して、少ない演算量でスムーズに衝
突演出を行うことができる。
〜6のいずれかのゲーム装置が相互にデータ伝送可能に
接続され、各ゲーム装置のプレーヤがディスプレイ上に
表示されるゲーム画面を見ながら他のゲーム装置のプレ
ーヤと共通のゲーム空間内で、各プレーヤ移動体を競争
させながらゲームを行うよう形成されたことを特徴とす
る。
装置間で、互いにゲーム成績を競い合いながら移動体を
競争させるマルチプレーヤゲームを行うことができる。
ゲームを行う各プレーヤ移動体同士の衝突判定を、正確
に行うことができることから、各プレーヤがゲームの面
白さを十分に味わうことができるマルチプレーヤゲーム
システムを実現できる。
の操縦するプレーヤ移動体が移動する仮想ゲーム空間を
演算し、前記仮想ゲーム空間のゲーム画面をディスプレ
イ上に表示するゲームシステムにおいて、前記プレーヤ
移動体と障害物の形状に基づき得られる衝突距離データ
を、前記プレーヤ移動体から見た前記障害物の位置する
第1の方向と、前記障害物の向きを表す第2の方向の組
み合わせ条件に対応づけて予めテーブルテータとして作
成して記憶する工程と、前記仮想ゲーム空間内における
前記障害物の位置する第1の方向を検出するとともに、
障害物の向きを表す第2の方向を検出する工程と、検出
された前記1の方向および第2の方向に対応する前記衝
突距離データと、前記プレーヤ移動体と前記障害物との
距離データとを比較することにより前記プレーヤ移動体
と前記障害物との衝突判定を行う工程と、を含むことを
特徴とする。
プレーヤ移動体と障害物との衝突判定を、正確にかつ簡
単に行うことができる衝突判定方法を実現することがで
きる。
ム空間内に設定されたレーシングコースでレースを行う
ゲーム装置を例にとり説明する。
ームシステムが示されている。実施例のゲームシステム
は、複数の独立したゲーム装置1−1,1−2,…が、
データ伝送ラインを介して互いに接続されている。
ーヤレーシングカーが、他のプレーヤの操縦するレーシ
ングカーや、コンピュータの操縦するコンピュータカー
と順位を競い合うように形成されている。
2,…というのは、各ゲーム装置1−1,1−2,…が
それぞれ独立にシングルプレーヤゲームを行うことがで
きるように形成されることを意味する。もちろん、デー
タ伝送ラインを介し、他のプレーヤとの間で、同一のゲ
ーム空間内においてマルチプレーヤゲームを行うことも
できる。
運転席と同様に形成されている。そして、プレーヤは、
シート18に着座し、ディスプレイ10に映し出された
疑似3次元画像(ゲーム画面)を見ながら、操作部12
に設けられたハンドル14、アクセル15、シフトレバ
ー16、ブレーキ等を操作して架空のレーシングカーを
運転してゲームを行う。
示されている。なお、他のゲーム装置との間でデータの
送受信を行う構成についての説明は、省略する。
部12と、ゲーム演算部100と、画像合成部200
と、前記ディスプレイ10とを含む。
シフトレバー16及びその他のペダル類等の、プレーヤ
の操作する部材である。
2からの入力信号と、あらかじめ定められたゲームプロ
グラムとに基づき、各種のゲーム演算を行い、画像合成
部200を用いてディスプレイ10上にドライビングゲ
ーム用のゲーム画面を表示させる。
は、所定の3次元ゲーム空間内に、図4に示すよう設定
されたレーシングコース20を、プレーヤの操縦により
レーシングカーが移動するようにゲーム演算を行う。そ
して、この3次元ゲーム空間を、画像合成部200を用
い所定の視点座標系の投影面に透視投影変換してゲーム
画面を形成し、これをディスプレイ10上に表示するよ
うに形成されている。
図が示されている。
間500及びこの3次元ゲーム空間500内に登場する
3次元オブジェクト510に関する情報があらかじめ記
憶されている。前記3次元オブジェクト510に関する
画像情報は、複数のポリゴン512−1,512−2,
512−3,……からなる形状モデルとして表現され、
あらかじめメモリー内に記憶されている。
オブジェクト510は3次元ゲーム空間500内に登場
するレーシングカーであり、3次元ゲーム空間500内
には、この他に、例えば、図4に示すようにレーシング
コース20、ビル30、トンネル32、山34、崖3
6、壁38などの背景を表す各種の3次元オブジェクト
が配置されている。
ナ部22を有し、場所によりアップダウン、あるいはバ
ンクが設けられており、立体交差も設けられている。
ーヤの視点610を中心とする視点座標系の透視投影面
520上に透視投影変換され、疑似3次元画像522と
してディスプレイ10上に表示される。例えば、プレー
ヤ600が操作部12を前にして、視点610からディ
スプレイ10を見ると、自分がレーシングカーの運転席
に座り、3次元空間500内に位置しているような映像
を見ることができる。プレーヤ600が、操作部12の
ハンドル等を操作して、自分が仮想的に乗っているレー
シングカーの回転、並進等の操作を行うと、3次元空間
500に対する視点610の位置が変化し、3次元空間
500が回転、並進されることになる。このためゲーム
演算部100は、この操作信号およびゲームプログラム
に基づいて3次元ゲーム空間500を構成する、レーシ
ングカーである3次元オブジェクト510やその他の3
次元オブジェクトの回転、並進等の演算をリアルタイム
で行う。そして、前記したようにこれら3次元オブジェ
クトは透視投影面520上に透視投影変換され、リアル
タイムで変化する疑似3次元画像522としてディスプ
レイ10上に表示される。
2を操作し、レーシングカーを操縦することにより、3
次元ゲーム空間500内に設定されたサーキットコース
20内をレーシングカーを運転しながらレースに参加し
ている状態を仮想シュミレートできることになる。
た場合、前記3次元オブジェクト510は、独立したボ
ディ座標系を用いてその形状モデルを作成している。す
なわち、3次元オブジェクト510を構成する各ポリゴ
ンを、このボディ座標系上に配置し、その形状モデルを
特定している。
ルド座標系(XW ,YW ,ZW )を用いて構成され、ボ
ディ座標系を用いて表された3次元オブジェクト510
は、その運動モデルに従ってワールド座標系の中に配置
される。
視線の方向をZ軸の正方向にとった視点座標系にデータ
を変換し、投影面520であるスクリーン座標系へ、そ
れぞれの座標を透視投影変換する。このようにして、視
点610から見える3次元ゲーム空間500の視野内の
画像をディスプレイ10上に表示することができる。特
に、実施例のゲーム演算部100は、ワールド座標系で
構成される3次元ゲーム空間500内において、視点6
10の位置を任意に変更できるように形成されている。
実施例では、ゲーム中はその視点位置610をプレーヤ
レーシングカー400の後方から前方に向けて設定する
ことにより、図5に示すようにプレーヤレーシングカー
400の後方から前方に向けて見た3次元ゲーム空間5
00の画像をディスプレイ10上に表示させることがで
きる。
始されると、プレーヤの運転するレーシングカー400
が図4に示すスタートポイント40からスタートする。
ゲームコース22上を先を走る他のレーシングカー42
0を追い抜けば、その順位が上る。もちろん、ゆっくり
走れば、後続のレーシングカー500に追い抜かれ、順
位は下がる。
0を操縦し、他のレーシングカー420と抜きつ抜かれ
つのデットヒートを演じながら、順位を上げるようにし
てゲームを楽しむことができる。
の運転を誤り、コース22上における障害物である他の
レーシングカー420と接触したり追突すると、これら
の衝突は後述するヒットチェック動作により検出され、
そのヒットチェックの結果がゲームに反映される。例え
ば、先に走るレーシングカー420に追突した場合に
は、プレーヤレーシングカー400のスピードは一時的
に大幅にダウンする。また、他のレーシングカー420
へ衝突する角度によっては、レーシングカー400はコ
ース22上でスピンしたり、コースアウトすることにな
る。
を、他のレーシングカー420に衝突することがないよ
う運転する必要がある。
400と他のレーシングカー420とのヒットチェック
を、簡単かつ正確に行うことを可能とすることにある。
は、図1に示すよう第1のヒットチェック部110と、
第2のヒットチェック部120とを含むように構成され
る。
0,120は、それぞれ第1及び第2の衝突判定手段と
して機能するものである。
次元ゲーム空間内において、プレーヤレーシングカー4
00と他のプレーヤレーシングカー420との距離に基
づき、比較的ラフなヒットチェックを行うように構成さ
れている。具体的には、ワールド座標系で表された、プ
レーヤレーシングカー400および他のレーシングカー
420のX,Z座標データの差を、予め定められた1次
ヒットチェック用のX座標及びZ座標基準値と比較する
ことにより、第1次ヒットチェック動作を行う。
の概略が示されている。同図において700は、比較的
余裕を持って設定されたプレーヤレーシングカー400
の第1次ヒットチェックゾーンであり、他のレーシング
カー420の重心P2がこのヒットチェックゾーン70
0の外側に位置する場合には、プレーヤレーシングカー
400と衝突しないと判断される。具体的には、ワール
ド座標系において、プレーヤレーシングカー400の重
心位置P1と、他のレーシングカー420の重心P2の座
標データから、両者のX軸方向の距離及びZ軸方向の距
離の絶対値を求める。そして、このX,Zの絶対値が、
第1次ヒットチェックゾーン700を特定するX方向、
Z方向基準値Xs1,Zs1の何れか一方より大きい場
合に、レーシングカー420はプレーヤレーシングカー
400と衝突しないと判定される。また、前記Z,Xの
絶対値が、何れも基準値Xs1,Zs1より小さい場合
には、レーシングカー420とプレーヤレーシングカー
400とは衝突の可能性があると判断される。
1のヒットチェックゾーン700内に位置したときに、
レーシングカー420はプレーヤレーシングカー400
と衝突すると直ちに判断しないのは、以下の理由によ
る。
両レーシングカー400と420とは、両者の相対位置
や、向きなどによって、衝突したり、しなかったりす
る。
シングカー400,420が衝突しても、レーシングカ
ー420の向きθ2が変われば、両者は衝突しなくな
る。
形状が複雑な場合には、第1のヒットチェック部110
だけでは、正確なヒットチェックを行うことはできな
い。
ヒットチェック部110が衝突の可能性があると判断し
た場合に、プレーヤレーシングカー100と他のレーシ
ングカー420とのヒットチェックをより正確に行うよ
うに形成されている。
ェック部110,120の動作フローチャートが示され
ている。
チェック部110によりプレーヤレーシングカー400
と他のレーシングカー420との1次ヒットチェック動
作が前述したように行われる(ステップS10)。そし
て、この1次ヒットチェック動作により、両レーシング
カー400,420に衝突の可能性がないと判断される
と(ステップS12)、通常のゲーム演出が行われる
(ステップS20)。
ングカー400,420の間に衝突の可能性があると判
断されると、次に第2のヒットチェック部120により
より詳細な第2次のヒットチェック動作を行い(ステッ
プS14)、両レーシングカー400,420が衝突し
ているか否かの判断が行われる(ステップS16)。こ
こでは、その具体的な動作の詳細は省略するが、例えば
両レーシングカー400,420が図8において実戦で
示すような位置関係ある場合には、両レーシングカー4
00,420は衝突したと判断され、衝突用のゲーム演
出が行われる(ステップS18)。
が図中420’のような状態にある場合には、両レーシ
ングカー400,420は衝突しないと判断され、通常
のゲーム演出が行われる(ステップS20)。
テップS10〜S22)を、各フレーム毎に繰り返し行
い、ゲームオーバーとなった時点で、この一連のヒット
チェック動作を終了する(ステップS22)。
1次ヒットチェック動作と、より正確な2次ヒットチェ
ック動作との2段階のヒットチェックを行うことによ
り、ヒットチェックの対象となる他のレーシングカー4
20が多数存在する場合でも、ヒットチェックに伴うデ
ータ処理量を大幅に低減し、CPUの負担を軽減するこ
とができる。
ーの台数が少ない場合には、前記第1のヒットチェック
部110は必ずしも設ける必要はなく、第2のヒットチ
ェック部120によりプレーヤレーシングカー400と
他のレーシングカー420とのヒットチェック動作を行
えばよい。
の構成をより詳細に説明する。
120の具体的な構成が示されている。
標変換部122,第1方向演算部124,第2の方向演
算部126,テーブルメモリ128,判定部130を含
んで構成される。
の対象となる他のレーシングカー420の重心位置P2
の座標データをプレーヤ移動体400のローカル座標系
の座標データに変換するとともに、距離データ演算手段
としても機能し、レーシングカー420とプレーヤレー
シングカー400との距離dを求めるように形成されて
いる。ここにおいて、前記ローカル座標系は、プレーヤ
レーシングカー400の前後方向をZ軸,左右方向をX
軸,上下方向をY軸として設定されている。
カー400,420の中心位置の座標はP1=(X1,Z
1)、P2=(X2,Z2)とする。
を、このようなローカル座標系のX,Z平面上において
行うよう構成されている。そして、両レーシングカー4
00,420の各重心P1,P2間のX軸,Z軸方向の距
離を、次式で求める。
を用いて両重心P1,P2間の距離dを演算する。
と、次に第1の方向演算部124は、プレーヤレーシン
グカー400の重心位置P1から見た、他のレーシング
カー420の重心位置P2の方向を第1の方向をθ1とし
て演算する。具体的には、前記(1)式,(2)式によ
って求めたX,Zのデータを次式に代入し、プレーヤレ
ーシングカー400の進行方向1000を基準にした、
他のレーシングカー420の重心P2の位置する方向θ1
を演算する θ1=arctan(x/z)…(4) また、前記第2の方向演算部126は、プレーヤレーシ
ングカー420の向き2000を表す第2の方向θ2を
演算する。実施例では、レーシングカー420に対しワ
ールド座標系において既に与えられている方向データを
用い、プレーヤレーシングカー400の向き1000
と、レーシングカー420の向き2000との角度θ2
を、第2の方向として演算するように形成されている。
レーヤレーシングカー400と、その他のレーシングカ
ー420との形状に基づき得られる衝突距離データが、
前記第1の方向θ1及び第2の方向をθ2の組合条件に対
応づけて記憶されている。
グカー400に対し第1の方向θ1に他のレーシングカ
ー420が位置する場合を想定する。このとき、両レー
シングカー400,420の距離がdの場合に、他のプ
レーヤレーシングカー420の第2の方向θ2が変わる
と、両レーシングカー400,420は衝突したりしな
かったりする。例えば、他のレーシングカー420が、
実戦で示す方向を向いている場合には、両レーシングカ
ー400,420は衝突し、図中一点鎖線で方向を向い
ている場合には、両レーシングカーは衝突しない。
0に対する他のレーシングカー420の第1の方向θ1
と、プレーヤレーシングカー420の第2の方向θ2が
変れば、これら両レーシングカー400,420が互に
衝突する距離dSが一義的に定まることに着目した。
方向θ1,縦軸に第2の方向θ2を設定し、このθ1,θ2
の組合せによって特定される条件の下で、前記衝突距離
データdSを求めた。ここでは、θ1について32個の測
定ポイント、θ2について32個のポイントが設定さ
れ、これら両者θ1、θ2の各測定ポイントを組み合わせ
た 32×32=1024ポイントにおいて、前記衝突
距離データdSが求められた。なお、実施例の各レーシ
ングカーは全て左右対称に形成されているため、前記第
1の方向θ1の測定ポイントは360度の範囲に渡って
設定する必要はなく、その半分の180度の範囲内に設
定すればよい。従って、前記第1の方向θ1の測定ポイ
ントは、図12に示すよう、32個の半分の16ポイン
トとなる。このようにして求められた図12のテーブル
データは、前記テーブルメモリ128内へあらかじめ書
き込み記憶される。
の演算部124、126の演算する第1および第2の方
向θ1、θ2に基づき、対応する衝突距離データdSを前
記テーブルメモリ128から読み出す。演算された第1
および第2の方向θ1、θ2が、図12に示す各測定ポイ
ントの間に存在する場合には、近くの測定ポイントのデ
ータからθ1、θ2に対応した衝突距離データdSを補間
演算して求める。
られた衝突基準データdsと、図8に示すよう実際に求
められた両レーシングカー400,420の距離にdと
を比較し、距離dが衝突距離データdSより小さい場合
に、両レーシングカー400,420が衝突したと判断
し、その判定データを出力する。
θ1,θ2が定まると、両レーシングカー400,420
が衝突した状況が特定される。すなわち、図7に示すよ
う、プレーヤレーシングカー400が他のレーシングカ
ー420の側面に衝突したのか、図8に示すよう他のレ
ーシングカー420の左斜め後方に衝突したのか、図9
に示すように追突したのかという衝突状況が特定され
る。
ば、これに続くプレーヤレーシングカー400の衝突動
作もある程度特定される。例えば、図7に示すような衝
突をした場合には、プレーヤレーシングカー400に図
中半時計回りの方向へ力を与え、図8に示すような衝突
をした場合には、プレーヤレーシングカー400に時計
回りの力を与え、レーシングカー400に対し、ハンド
ルが取られる状況や、スピンする状況を発生させること
ができる。
カー420にプレーヤレーシングカー400が追突した
場合には、プレーヤレーシングカー400のスピードを
一時的に減速するような条件が与えられる。
ではテーブルメモリ28へ、前記第1及び第2の方向θ
1,θ2に対応づけて予め記憶している。
2の方向演算部124,126により演算されるθ1,
θ2のデータに基づき、この演出データを同時に読み出
し、出力する。
演出データを利用し、プレーヤレーシングカーの衝突動
作の演出を行うことができるため、衝突動作の演出のた
めのデータ演算量を大幅に低減し、その分、他のゲーム
演算を充実させることが可能となる。
120のヒットチェック動作のフローチャートが示され
ている。
ットチェック動作が開始されると、座標変換部122に
より、他のレーシングカー420の座標データを、プレ
ーヤレーシングカー400のローカル座標系に座標変換
する(ステップS30)。
1及び第2の方向演算部124,126により、第1及
び第2の方向データθ1,θ2を演算する(ステップS3
2,S34)。
タθ1,θ2より特定される衝突距離データds及び衝突
演出データを、テーブルメモリ128から読み出す(ス
テップS36)。
と、実際の距離dとを比較し、実際の距離dが衝突距離
dSより大きい場合には両レーシングカー400,42
0は衝突しないと判断し、通常のゲーム演出を行う(ス
テップS38,S42)。
と判断された場合には、両レーシングカー400,42
0は衝突すると判断し、前記テーブルメモリから読み出
された衝突演出データを用い、レーシングカー400の
衝突演出用の演算を行う。
ーシングカー400と、その他のレーシングカー420
の2次元形状モデルを実際に用い、これらの形状モデル
を、前記第1及び第2の方向をθ1,θ2の組合せ条件に
基づき配置し、衝突距離データdSを予め求めておき、
このデータに基づきヒットチェックを行っている。
の形状が複雑な物であっても、そのヒットチェックを極
めて正確に行うことができ、より面白いドライブゲーム
を実現することができる。
中に、ヒットチェック用の複雑なデータ演算を行う必要
がないため、ヒットチェックのためのCPUの負担を軽
減し他のゲーム演算に与える影響を大幅に低減すること
ができる。
のではなく、本発明の要旨の範囲で各種の変形実施が可
能である。
う、プレーヤレーシングカー400と他のレーシングカ
ー420との実際の距離dを演算する場合を例にとり説
明したが、本発明はこれに限らず、実際の距離dと相関
関係のあるデータを距離データとして求めるように形成
してもよい。もちろんこの場合には、テーブルメモリ1
28にも、前記第1および第2の方向データθ1、θ2の
組み合わせ条件に対応づけて、前記距離dと相関のある
方向データを、前記衝突距離データとして記憶すればよ
い。
のローカル座標系に、他のレーシングカー420の座標
データを変換すると、図14に示すようになる。
グカー400、420間の実際の距離dと、前記(1)
式、(2)式で求められるX、Zの値は、次式で示すよ
うに比例関係にある。
値を次式で示すように単に足し算した値を、前記距離d
と相関を持った距離データとして用いることができる。
すなわち平方根を求める演算が不要となり、ヒットチェ
ックのためのデータ処理量をさらに低減することができ
る。
8の判断は、次式で示す条件を満足するか否かに基づき
行われ、条件を満足した場合には、両レーシングカー4
00はヒットしないと判断し、条件を満足しない場合に
は両レーシングカー400、420はヒットすると判断
すればよい。
場合を例にとり説明したが、本発明はこれに限らず、プ
レーヤ移動体が所定の移動経路に沿って移動するように
設定されたゲームに対して幅広く適用することができ、
例えば宇宙空間内に設定された移動経路をプレーヤの操
縦する宇宙船が移動するように形成されたゲーム等に対
しても適用できることはいうまでもない。
00、420のヒットチェックを2次元的なXZ平面の
データで行う場合を例にとり説明したが、必要に応じX
ZYの3次元空間内においても、多少その演算量は増え
るが、同様な手法を用い各移動体同士のヒットチェック
を行うことができる。
仮想ゲーム空間内のプレーヤ移動体と障害物との衝突判
定を、正確にかつ迅速に行うことができる。
明図である。
との1次ヒットチェック動作の概略説明図である。
との2次ヒットチェック動作の概略説明図である。
との2次ヒットチェック動作の説明図である。
との2次ヒットチェック動作の説明図である。
一例を示すフローチャート図である。
な構成を示す機能ブロック図である。
ーブルデータの説明図である。
一例を示すフローチャート図である。
る。
値を次式で示すように単に足し算した値を、前記距離d
と相関を持った距離データとして用いることができる。
Claims (8)
- 【請求項1】 プレーヤ移動体を操縦するプレーヤ操作
手段と、 プレーヤの操縦するプレーヤ移動体が移動する仮想ゲー
ム空間を演算するゲーム演算手段と、 を含み、前記仮想ゲーム空間のゲーム画面をディスプレ
イ上に表示するゲーム装置において、 前記ゲーム演算手段は、 前記プレーヤ移動体と障害物との衝突判定を行う衝突判
定手段を有し、その衝突判定結果を反映した仮想ゲーム
空間を演算するよう形成され、 前記衝突判定手段は、 前記プレーヤ移動体と前記障害物との距離データを求め
る距離データ演算手段と、 前記プレーヤ移動体から見た、前記障害物の位置する方
向を第1の方向として検出する第1の方向検出手段と、 前記障害物の向きを第2の方向として検出する第2の方
向検出手段と、 前記プレーヤ移動体と障害物の形状に基づき得られる衝
突距離データを、前記第1の方向および第2の方向の組
み合わせ条件に対応づけて記憶するテーブルメモリと、 前記障害物の前記第1の方向および第2の方向に基づ
き、対応する衝突距離データを前記テーブルメモリから
読み出し、前記障害物との距離データと比較することに
より衝突判定を行う判定手段と、 を含むことを特徴とするゲーム装置。 - 【請求項2】 請求項1において、 前記衝突判定手段は、 前記障害物として他の移動体との衝突判定を行うことを
特徴とするゲーム装置。 - 【請求項3】 請求項1〜2のいずれかにおいて、 前記ゲーム演算手段は、 前記プレーヤ移動体と障害物との予備衝突判定を行う予
備衝突判定手段を有し、 前記衝突判定手段は、 前記予備衝突判定で衝突と判定された障害物に対し衝突
判定を行うことを特徴とするゲーム装置。 - 【請求項4】 請求項1〜3のいずれかにおいて、 前記距離データ演算手段は、 前記障害物の座標データを前記プレーヤ移動体のローカ
ル座標系の座標データに変換し、プレーヤ移動体と前記
障害物との距離データを求めるよう形成され、 前記第1の方向検出手段は、 前記ローカル座標系において、前記障害物の位置する方
向を第1の方向として検出するよう形成され、 前記第2の方向検出手段は、 前記プレーヤ移動体の向きを基準とした障害物の向きを
第2の方向として検出するよう形成されたことを特徴と
するゲーム装置。 - 【請求項5】 請求項1〜4のいずれかにおいて、 前記距離データ演算手段は、 前記距離データとして、プレーヤ移動体と前記障害物と
の実際の距離と相関のあるデータを求めるよう形成され
たことを特徴とするゲーム装置。 - 【請求項6】 請求項1〜5のいずれかにおいて、 前記テーブルメモリは、 前記第1の方向および第2の方向の組み合わせ条件によ
り特定されるプレーヤ移動体と障害物との衝突状況に合
せた衝突演出用データを、前記第1の方向および第2の
方向の組み合わせ条件に対応づけて記憶するよう形成さ
れ、 前記判定手段は、 前記障害物の前記第1の方向および第2の方向に基づ
き、対応する衝突演出用データを前記テーブルメモリか
ら読み出し出力するよう形成されたことを特徴とするゲ
ーム装置。 - 【請求項7】 請求項1〜6のいずれかのゲーム装置が
相互にデータ伝送可能に接続され、各ゲーム装置のプレ
ーヤがディスプレイ上に表示されるゲーム画面を見なが
ら他のゲーム装置のプレーヤと共通のゲーム空間内で、
各プレーヤ移動体を競争させながらゲームを行うよう形
成されたことを特徴とするマルチプレーヤゲームシステ
ム。 - 【請求項8】 プレーヤの操縦するプレーヤ移動体が移
動する仮想ゲーム空間を演算し、前記仮想ゲーム空間の
ゲーム画面をディスプレイ上に表示するゲームシステム
において、 前記プレーヤ移動体と障害物の形状に基づき得られる衝
突距離データを、前記プレーヤ移動体から見た前記障害
物の位置する第1の方向と、前記障害物の向きを表す第
2の方向の組み合わせ条件に対応づけて予めテーブルテ
ータとして作成して記憶する工程と、 前記仮想ゲーム空間内における前記障害物の位置する第
1の方向を検出するとともに、障害物の向きを表す第2
の方向を検出する工程と、 検出された前記1の方向および第2の方向に対応する前
記衝突距離データと、前記プレーヤ移動体と前記障害物
との距離データとを比較することにより、前記プレーヤ
移動体と前記障害物との衝突判定を行う工程と、 を含むことを特徴とするゲームシステムにおける衝突判
定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6300243A JP2747427B2 (ja) | 1994-11-09 | 1994-11-09 | ゲーム装置及びその衝突判定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6300243A JP2747427B2 (ja) | 1994-11-09 | 1994-11-09 | ゲーム装置及びその衝突判定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH08131656A true JPH08131656A (ja) | 1996-05-28 |
JP2747427B2 JP2747427B2 (ja) | 1998-05-06 |
Family
ID=17882437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6300243A Expired - Fee Related JP2747427B2 (ja) | 1994-11-09 | 1994-11-09 | ゲーム装置及びその衝突判定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2747427B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1312400A3 (en) * | 2001-11-15 | 2006-01-18 | Kabushiki Kaisha Square Enix (also trading as Square Enix Co., Ltd.) | Character display method in three-dimensional video game |
EP1062993A4 (en) * | 1998-12-09 | 2006-08-23 | Namco Ltd | GAME MACHINE, COLLISION VERIFICATION METHOD, AND INFORMATION MEDIUM |
JP3861928B2 (ja) * | 1997-04-03 | 2006-12-27 | 株式会社セガ・エンタープライゼス | ゲームの画像表示方法及び制御方法 |
CN112121410A (zh) * | 2020-10-22 | 2020-12-25 | 深圳市瑞立视多媒体科技有限公司 | 一种基于vr游戏的装备入柜的方法 |
-
1994
- 1994-11-09 JP JP6300243A patent/JP2747427B2/ja not_active Expired - Fee Related
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3861928B2 (ja) * | 1997-04-03 | 2006-12-27 | 株式会社セガ・エンタープライゼス | ゲームの画像表示方法及び制御方法 |
EP1062993A4 (en) * | 1998-12-09 | 2006-08-23 | Namco Ltd | GAME MACHINE, COLLISION VERIFICATION METHOD, AND INFORMATION MEDIUM |
EP1312400A3 (en) * | 2001-11-15 | 2006-01-18 | Kabushiki Kaisha Square Enix (also trading as Square Enix Co., Ltd.) | Character display method in three-dimensional video game |
US7170508B2 (en) | 2001-11-15 | 2007-01-30 | Kabushiki Kaisha Square Enix | Character display method in three-dimensional video game |
CN112121410A (zh) * | 2020-10-22 | 2020-12-25 | 深圳市瑞立视多媒体科技有限公司 | 一种基于vr游戏的装备入柜的方法 |
CN112121410B (zh) * | 2020-10-22 | 2024-04-12 | 深圳市瑞立视多媒体科技有限公司 | 一种基于vr游戏的装备入柜的方法 |
Also Published As
Publication number | Publication date |
---|---|
JP2747427B2 (ja) | 1998-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2667656B2 (ja) | ドライビングゲーム機 | |
US6409597B1 (en) | Video game machine, screen display method for video game, and recording medium containing screen display program | |
US7922584B2 (en) | Image generation method and information storage medium with program for video game in which operation of the controller beyond a predetermined angle causes a character to attack | |
US20090069096A1 (en) | Program, information storage medium, game system, and input instruction device | |
EP0790583B1 (en) | Image processing method and image processor | |
JPH08305891A (ja) | 画像処理装置および画像処理方法 | |
JP2009082696A (ja) | プログラム、情報記憶媒体、ゲームシステム | |
CN1175471A (zh) | 驾驶型游戏机及其图像显示方法和游戏程序的记录介质 | |
US20040219978A1 (en) | Image generation method, program, and information storage medium | |
US6336864B1 (en) | Game machine, method for checking hit and information storage medium | |
JPH09225143A (ja) | シミュレーション装置 | |
US6425826B1 (en) | Game machine and information storage medium | |
JP2747427B2 (ja) | ゲーム装置及びその衝突判定方法 | |
US7131907B2 (en) | System and method for superimposing an image on another image in a video game | |
JP3887810B2 (ja) | ゲーム装置 | |
JP3765349B2 (ja) | ゲーム装置 | |
JP4318834B2 (ja) | ゲーム装置及び情報記憶媒体 | |
JP3606383B2 (ja) | 電子遊戯機器 | |
JP3403506B2 (ja) | ゲーム装置および移動体の移動時間測定方法 | |
JP3179739B2 (ja) | ドライビングゲーム機及びドライビングゲームプログラムが格納された記録媒体 | |
JP2009189527A (ja) | プログラム、情報記憶媒体、及びゲーム装置 | |
JP3403505B2 (ja) | ゲーム装置およびその移動体制御方法 | |
JP2990190B2 (ja) | 3次元シミュレータ装置及び画像合成方法 | |
JPH08131653A (ja) | 3次元ゲーム装置および3次元ゲーム画像生成方法 | |
JP3254091B2 (ja) | 3次元シミュレータ装置及び画像合成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 19980120 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080213 Year of fee payment: 10 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080213 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090213 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090213 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100213 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100213 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100213 Year of fee payment: 12 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110213 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110213 Year of fee payment: 13 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120213 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120213 Year of fee payment: 14 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130213 Year of fee payment: 15 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130213 Year of fee payment: 15 |
|
LAPS | Cancellation because of no payment of annual fees |