(57)【特許請求の範囲】
【請求項１】
実空間内のプレーヤが操作する実操作物を仮想空間内における仮想操作物に置き換えてディスプレイに表示させるゲーム装置であって、
前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段と、
前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段と、
ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段と、
前記実操作物の実空間座標を前記補正係数により補正する補正手段と、
前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段と、
を備えるゲーム装置。
【請求項２】
前記位置検出手段は前記実操作物の少なくとも２点の実空間座標を検出し、
前記２点を結ぶ前記実空間内の直線と前記ディスプレイとの交点の位置を算出し、前記交点を前記ディスプレイ上に表示させる交点表示制御手段と、
前記交点と前記ディスプレイ上に表示されている表示対象とが重なるか否かを判断し、重なっている場合は表示対象の選択を受け付ける選択受付手段と、
をさらに備える請求項１に記載のゲーム装置。
【請求項３】
所定時間間隔ΔT2（ΔT2≧２×ΔT1）の間に算出された複数の仮想空間座標を記憶する第１軌跡記憶手段と、
前記第１軌跡記憶手段に記憶されている複数の仮想空間座標に基づいて前記仮想操作物の軌跡を算出し、前記軌跡に基づいて前記仮想空間内に存在するオブジェクトと前記仮想操作物とが当たったか否かを判定し、かつ両者が当たった場合には前記オブジェクトを特定する当たり判定手段と、
をさらに備える請求項１に記載のゲーム装置。
【請求項４】
所定時間間隔ΔT3（ΔT3≧２×ΔT1）の間に算出された複数の仮想空間座標を記憶する第２軌跡記憶手段と、
前記仮想操作物の所定の軌跡パターンにより実行されるコマンドと前記軌跡パターンとを対応付けて記憶するコマンド記憶手段と、
前記第２軌跡記憶手段に記憶されている複数の仮想空間座標に基づいて前記仮想操作物の軌跡を算出し、前記算出した軌跡が前記軌跡パターンのいずれかに一致するか否かを判定し、いずれかの軌跡パターンに一致した場合、一致した軌跡パターンに対応するコマンドを実行するコマンド実行手段と、
をさらに備える、請求項１に記載のゲーム装置。
【請求項５】
所定時間間隔ΔT4（ΔT4≧２×ΔT1）の間に検出された複数の実空間座標を記憶する第３軌跡記憶手段と、
前記実操作物の所定の軌跡パターンにより実行されるコマンドと前記軌跡パターンとを対応付けて記憶するコマンド記憶手段と、
前記第３軌跡記憶手段に記憶されている複数の実空間座標に基づいて前記実操作物の軌跡を算出し、前記算出した軌跡が前記軌跡パターンのいずれかに一致するか否かを判定し、いずれかの軌跡パターンに一致した場合、一致した軌跡パターンに対応するコマンドを実行するコマンド実行手段と、
をさらに備える、請求項１に記載のゲーム装置。
【請求項６】
前記位置検出手段は、
前記実操作物に取り付けられる発光手段と、
前記発光手段からの光を検出する少なくとも一対の光検出手段と、
検出した光に基づいて前記発光手段の位置を測定し、測定結果から前記実空間座標を演算して前記変換手段に出力する測定手段と、
を含んでいる、請求項１に記載のゲーム装置。
【請求項７】
実空間内のプレーヤが操作する実操作物を仮想空間内における仮想操作物に置き換えてディスプレイに表示させるコンピュータが実行するためのゲームプログラムであって、
前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段、
前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段、
ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段、
前記実操作物の実空間座標を前記補正係数により補正する補正手段、及び
前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段、
として前記コンピュータを機能させるゲームプログラム。
【請求項８】
実空間内のプレーヤが仮想空間でゲームを行うゲームシステムであって、
前記プレーヤが前記実空間内で操作する実操作物と、
前記実操作物の前記仮想空間内における置換物である仮想操作物を表示する表示手段と、
前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段と、
前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段と、
ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段と、
前記実操作物の実空間座標を前記補正係数により補正する補正手段と、
前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段と、
を備えるゲームシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、プレーヤの操作に応じてゲーム空間内のオブジェクトの動きが表示されるゲームに関する。
【０００２】
【従来の技術】
従来、プレーヤの操作に応じてゲーム空間内のオブジェクトの動きが表示されるゲームとしては、車や飛行機などを操縦する操縦ゲーム、戦闘機やプレーヤ自身を表すキャラクタなどを操作して敵と戦う戦闘ゲーム、プレーヤ自身を表すキャラクタを操作してスポーツを行うスポーツゲームなど、様々なゲームが提供されている。
【０００３】
例えば、飛行機の操縦ゲームであれば、プレーヤは、飛行機の操縦桿を模したコントローラや上下及び左右方向への矢印ボタンにより飛行機をコントロールする。また、戦闘ゲームであれば、プレーヤは、戦闘機を前記コントローラや矢印ボタンで動かし、また武器の使用を指示する指示ボタンにより敵への攻撃を行う。
【０００４】
さらに、スポーツゲームの一例として、プレーヤが選手キャラクタの動きを矢印ボタンや各種指示ボタンでコントロールしてサッカーゲームを行うゲーム装置が提供されている。
別のスポーツゲームの１つとして、次のようなボクシングゲームが提供されている。まず、プレーヤは、実空間の所定位置に立ち、ゲーム装置に接続されたグローブを装着する。ディスプレイ上にプレーヤの視点から表示された対戦相手への攻撃は、プレーヤが画面に向かってグローブを突き出すことにより行う。対戦相手からの攻撃の防御は、プレーヤが実空間の所定位置で左右に身をかわすことにより行う。
【０００５】
【発明が解決しようとする課題】
前述した操縦ゲームや戦闘ゲーム、サッカーゲームでは、プレーヤが予め設けられたボタンを押したりバーを操作することにより、ゲーム空間内のオブジェクトを操作している。しかし、ボタンやバーの操作によるオブジェクトの操作は、今ひとつリアリティに欠ける嫌いがある。そもそも、ボタンやバーには、予めゲーム空間内のオブジェクトをどの方向にどれだけ動かすかというコマンドが対応付けられている。従って、ボタンやバーによって操作されるオブジェクトの動きは、予めゲーム側で決められた動作パターンの組み合わせに過ぎない。
【０００６】
前述したボクシングゲームは、プレーヤ自身のパンチ動作や避ける動作がゲーム展開に反映される点でゲームの面白みを増している。しかし、このボクシングゲームでは、プレーヤが装着したグローブがゲーム空間内のオブジェクトとして表示されたり、敵からの攻撃を避けたプレーヤの動きがゲーム空間内のオブジェクトとして表示されたりするわけではない。従って、プレーヤのパンチが対戦相手に当たったことや、対戦相手のパンチを避けることができたことを、プレーヤが視覚的にもまた肉体的にも感じられず、ボクシングゲームのリアリティを十分に実感できない問題がある。
【０００７】
すなわち、実空間に存在するプレーヤがゲーム空間内のオブジェクトを自由に操作することにより、あたかもプレーヤ自身がゲーム空間にいるかのようなリアリティと面白みとを味わわせるゲーム装置は未だ提供されていない。本発明は、実空間に存在するプレーヤがゲーム空間内のオブジェクトを自由に操作してゲームを行うための技術を提供することを目的とする。
【０００８】
【課題を解決するための手段】
前記課題を解決するために、本願第１発明は、実空間内のプレーヤが操作する実操作物を仮想空間内における仮想操作物に置き換えてディスプレイに表示させるゲーム装置であって、下記Ａ〜Ｅの手段を備えるゲーム装置を提供する。
Ａ：前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段、
Ｂ：前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段、
Ｃ：ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段、
Ｄ：前記実操作物の実空間座標を前記補正係数により補正する補正手段、
Ｅ：前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段。
【０００９】
仮想操作物とは、例えば剣、バット、ラケット、ゴルフクラブ、盾、プレーヤ自身を表すキャラクタが挙げられる。実操作物は、仮想操作物が剣であれば剣状に、盾であれば盾状に形成されていることが好ましい。仮想操作物と実操作物とを類似の形状とすることにより、より臨場感のあるゲームを提供することができる。同様の理由から、仮想操作物がバットやラケット、ゴルフクラブなどであるスポーツゲームにおいても、仮想操作物と実操作物とを類似形状とすることが好ましい。仮想操作物がキャラクタであれば、実操作物はプレーヤが身につける物、例えば帽子、グローブ、ベルト、眼鏡、履き物とすることが考えられる。
【００１０】
位置検出手段とは、例えば実操作物に設けられた発光素子と、所定の位置に固定された少なくとも１対のＣＣＤカメラとを含んでいる。検出された実操作物の実空間位置は、ゲームが行われる仮想空間での位置に変換される。この仮想空間位置からディスプレイ上での表示位置が算出され、仮想操作物が表示される。
さらに、例えば身長１８０ｃｍを標準にした場合、プレーヤが身長９０ｃｍの子供であれば、プレーヤが操作する実操作物がディスプレイ上で低く表示されてしまい、ゲームの面白みを損なうおそれがある。そこで、様々なプレーヤの体格差を吸収し、仮想操作物が同様に表示されるように、プレーヤの体格差から生じる実操作物の位置や動きの差を補正する。実操作物の位置検出及び仮想操作物の表示位置の計算は、所定時間間隔、例えば１６ｍｓｅｃ毎に行う。これにより、プレーヤにより操作される実操作物の動きが仮想操作物の動作としてディスプレイ上に表示される。例えば、プレーヤが剣を振ったとすると、表示されている剣が同様に振られる。
【００１１】
なお、実操作物は複数あっても良い。例えば、プレーヤが剣と盾とを用いて敵と戦う対戦ゲームや、プレーヤ同士が仮想空間内の敵と共同で戦う場合が考えられる。
このゲーム装置において、前記仮想プレーヤは、前記実空間内の前記プレーヤの前記仮想空間内における置換物である。
【００１２】
位置検出手段により実操作物の複数の位置を三次元座標で特定してもよい。例えば所定の２点の実空間座標を検出すれば、実操作物の位置及び方向が特定できる。実操作物の所定の３点の実空間座標を検出すれば、実操作物の面の位置が特定できる。例えば、仮想操作物が剣やバットなど棒状の物である場合、実操作物の２点の位置を検出すればよい。また、仮想操作物がラケットや盾など面状の形状を有する場合、実操作物の３点の位置を検出する。
【００１３】
なお、位置の検出方法として次のような方法もある。実空間及び仮想空間をそれぞれ所定の大きさの実小空間及び仮想小空間に分割し、各小空間を特定する空間識別情報を設定する。実操作物の位置を実空間識別情報で特定し、実空間識別情報を仮想空間識別情報に変換する。
本願第２発明は、前記第１発明において、
Ａ２；前記位置検出手段は前記実操作物の少なくとも２点の実空間座標を検出し、
Ｄ；前記２点を結ぶ前記実空間内の直線と前記ディスプレイとの交点の位置を算出し、前記交点を前記ディスプレイ上に表示させる交点表示制御手段と、
Ｅ；前記交点と前記ディスプレイ上に表示されている表示対象とが重なるか否かを判断し、重なっている場合は表示対象の選択を受け付ける選択受付手段と、
をさらに備えるゲーム装置を提供する。
【００１４】
例えば、ディスプレイ上に難易度選択のメニューが表示されている場合、いずれかの難易度を実操作物で指し示した状態で所定のボタンが押されると、指し示されていた難易度を選択する。また例えば、表示されている敵を指し示した状態で所定のボタンが押されると、その敵に対する所定の攻撃、例えば砲撃や手裏剣の発射を実行する。
【００１５】
本願第３発明は、前記第１発明において、下記Ｆ及びＧの手段をさらに備えるゲーム装置を提供する。
Ｆ；所定時間間隔ΔT2（ΔT2≧２×ΔT1）の間に算出された前記仮想空間位置を記憶する第１軌跡記憶手段、
Ｇ；前記第１軌跡記憶手段に記憶されている前記仮想空間位置に基づいて前記仮想操作物の軌跡及び速度を算出し、前記軌跡及び速度に基づいて前記仮想空間内に存在するオブジェクトと前記仮想操作物とが当たったか否かを判定し、かつ両者が当たった場合には前記オブジェクトを特定する当たり判定手段。
【００１６】
軌跡記憶手段は、例えば過去１６０ｍｓｅｃ以内に測定された仮想空間座標を記憶する。実操作物への操作により決定される仮想操作物の動作は、コントローラのボタンや操作桿により指示される動作と異なり、方向や速度が不特定である。そのため、過去の一定時間内での仮想操作物の位置の変化を記憶し、この変化から仮想操作物の軌跡及び速度を算出する。算出された軌跡及び速度に基づいて、仮想空間内のオブジェクトと仮想操作物とが当たったか否かを判定する。また、オブジェクトには敵、木や竹などの自然物、家や塀などの建築物など様々な種類があるので、当たり判定手段は仮想操作物が何に当たったのかも特定する。
【００１７】
本願第４発明は、前記第１発明において、下記Ｈ，Ｉ及びＪの手段をさらに備えるゲーム装置を提供する。
Ｈ；所定時間間隔ΔT3（ΔT3≧２×ΔT1）の間に算出された前記仮想空間位置を記憶する第２軌跡記憶手段、
Ｉ；前記仮想操作物の所定の軌跡パターンにより実行されるコマンドと前記軌跡パターンとを対応付けて記憶するコマンド記憶手段、
Ｊ；前記第２軌跡記憶手段に記憶されている仮想空間位置に基づいて前記仮想操作物の軌跡を算出し、前記算出した軌跡が前記軌跡パターンのいずれかに一致するか否かを判定し、いずれかの軌跡パターンに一致した場合、一致した軌跡パターンに対応するコマンドを実行するコマンド実行手段。
【００１８】
仮想空間における仮想操作物の動きが所定のパターン、例えば“十字型”に該当する場合、そのパターンに対応するコマンド、例えば“仮想空間内の１０ｍ以内の敵を全て倒す”を実行する。
本願第５発明は、前記第１発明において、下記Ｋ、Ｌ及びＭの手段をさらに備えるゲーム装置を提供する。
Ｋ；所定時間間隔ΔT4（ΔT4≧２×ΔT1）の間に検出された前記実空間位置を記憶する第３軌跡記憶手段、
Ｌ；前記実操作物の所定の軌跡パターンにより実行されるコマンドと前記軌跡パターンとを対応付けて記憶するコマンド記憶手段、
Ｍ；前記第３軌跡記憶手段に記憶されている実空間位置に基づいて前記実操作物の軌跡を算出し、前記算出した軌跡が前記軌跡パターンのいずれかに一致するか否かを判定し、いずれかの軌跡パターンに一致した場合、一致した軌跡パターンに対応するコマンドを実行するコマンド実行手段。
【００１９】
実空間における実操作物の動きが所定のパターン、例えば“十字型”に該当する場合、そのパターンに対応するコマンド、例えば“仮想空間内の１０ｍ以内の敵を全て倒す”を実行する。
本願第６発明は、前記第１発明において、位置検出手段が下記の手段をさらに備えるゲーム装置を提供する。
Ａ３；前記実操作物に取り付けられる発光手段、
Ａ４；前記発光手段からの光を検出する少なくとも一対の光検出手段、
Ａ５；検出した光に基づいて、前記発光手段の位置を測定し、測定結果を前記変換手段に出力する測定手段。
【００２０】
少なくとも一対の光検出手段により、所定の実空間座標系におけるｘ、ｙ、ｚ軸の各座標を検出することが可能となる。光検出手段は、具体的には、ＣＣＤカメラ、光センサなどを用いて構成される。発光手段としては例えば赤外線発光素子が挙げられる。赤外線は指向性を有するので、異なる方向に発光する複数の発光素子を用いて発光手段を形成すると良い。
【００２１】
本願第７発明は、実空間内のプレーヤが操作する実操作物を仮想空間内における仮想操作物に置き換えてディスプレイに表示させるコンピュータが実行するためのゲームプログラムを提供する。このプログラムは以下の手段として前記コンピュータを機能させる。
・前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段、
・前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段、
・ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段、
・前記実操作物の実空間座標を前記補正係数により補正する補正手段、
・前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段。
【００２２】
また、このプログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、コンピュータが読み書き可能なフロッピーディスク、ハードディスク、半導体メモリ、CD-ROM、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【００２３】
本願第８発明は、実空間内のプレーヤが仮想空間でゲームを行うゲームシステムであって、下記Ａ〜Ｆの手段を備えるゲームシステムを提供する。
Ａ：前記プレーヤが前記実空間内で操作する実操作物、
Ｂ：前記実操作物の前記仮想空間内における置換物である仮想操作物を表示する表示手段、
Ｃ：前記実空間内における前記実操作物の位置（以下、実空間位置という）を、前記実空間内に原点を有するプレーヤ座標系における三次元座標（以下、実空間座標という）として検出する位置検出手段、
Ｄ：前記仮想空間内に原点を有する仮想空間座標系であって、その原点が、ゲームの開始当初は前記プレーヤ座標系の原点と一致し、ゲーム開始後は前記プレーヤの前進及び／または回転により前記プレーヤ座標系の原点と徐々にずれていく、前記仮想空間座標系における三次元座標（以下、仮想空間座標という）に、前記プレーヤ座標系における前記実操作物の実空間座標を変換し、変換により算出した前記仮想空間座標に基づいて前記ディスプレイ上での前記仮想操作物の表示位置を決定する変換手段、
Ｅ：ゲームの開始に先立ち、所定の基準の構えをプレーヤに指示する画面を表示し、所定時間待機中に検出された前記実操作物の実空間座標と前記実操作物の基準高さとに基づいて、高さを補正する補正係数を決定する補正係数決定手段、
Ｆ：前記実操作物の実空間座標を前記補正係数により補正する補正手段、
Ｇ：前記位置検出手段による前記実空間座標の検出と、前記補正手段による前記実空間座標の補正と、前記変換手段による前記仮想操作物の表示位置の決定とを、ゲーム開始後、所定時間間隔ΔT1毎に行わせることにより、前記実操作物の実空間座標の変化を前記仮想操作物の仮想空間座標の変化に置き換えて前記ディスプレイ上に表示させる動作手段。
【００２４】
このゲームシステムは、第１発明に係るゲーム装置と実操作物とディスプレイから構成される。第１発明と同様の作用効果を奏する。
本発明の別の実施形態は、前記第１発明に係るゲーム装置のプレーヤが実空間内で操作する実操作物を提供する。この実操作物は発光手段を有している。この発光手段は、前記実空間内における前記実操作物の位置を測定し、測定結果を前記ゲーム装置に出力する位置測定手段が感知可能な光を発光する。
【００２５】
この操作物は、前記第１発明に係るゲーム装置に用いられる実操作物に相当する。例えば実操作物が剣やバットなど棒状の物であれば、実操作物の中心線に沿って異なる２点に赤外線発光素子などが取り付けられている。実操作物がテニスラケットや盾など面状部分を有する場合、面状部分の異なる３点に発光素子を取り付ける。実操作物は、帽子、グローブ、ベルト、履き物、眼鏡など、プレーヤが身につけて動くことにより操作される物であっても良い。これらの物に取り付けられる発光素子は、１つでも良い場合がある。発光素子からの光は、ＣＣＤカメラや赤外線センサなどからなる少なくとも一対の光検出手段により検出され、発光手段の実空間における三次元座標が算出される。
【００２６】
本発明の別の実施形態は、前記第１発明に係るゲーム装置のプレーヤが実空間内で操作する実操作物に取り付けられる発光手段を提供する。この発光手段は、前記実空間内における前記実操作物の位置を測定し、測定結果を前記ゲーム装置に出力する位置測定手段が感知可能な光を発光する。
この発光手段は、前記第１発明に係るゲーム装置のプレーヤが操作する実操作物に取り付けられて用いられる。実操作物がプレーヤにより身につけられる物、例えばグローブや帽子、ベルト、履き物などであれば、発光手段はこれらに取り付けられて用いられる。
【００２７】
本発明の別の実施形態は、ゲーム装置のプレーヤが実空間内で操作する実操作物の位置を検出する、下記Ａ〜Ｃの手段を備える位置検出手段を提供する。
Ａ；前記実空間内における前記実操作物に取り付けられる発光手段、
Ｂ；前記発光手段からの光を検知する少なくとも一対の光検出手段、
Ｃ；前記検知した光に基づいて前記実空間内における前記発光手段の位置を測定し、測定結果を前記ゲーム装置に出力する測定手段。
【００２８】
この位置検出手段は、例えば、ゲーム装置の筐体の左右上部に取り付けられる一対のＣＣＤカメラと、実操作物に設けられる赤外線発光素子とを含んでいる。
【００２９】
【発明の実施の形態】
＜発明の概要＞
本発明では、実空間Ｒ内でプレーヤが操作する実操作物の動きを、そのままゲーム空間Ｇ内の仮想操作物の動きとして表示する。例えば、プレーヤが剣を持って敵と戦う対戦ゲームであれば、プレーヤが振ったり突いたりする剣の動きを、ゲーム空間Ｇ内で敵を倒すための剣オブジェクトの動きに変換して表示する。また例えば、プレーヤがゲーム空間Ｇ内でテニスゲームを行う場合、プレーヤが振るラケットの面の動きを、ゲーム空間Ｇ内でプレーヤを表すキャラクタのラケットの動きに変換して表示する。
【００３０】
また、本発明は、対戦ゲーム以外のゲームにも適用可能である。例えば、ゲーム空間Ｇ内でキャラクタをジャンプさせて障害物を避けることにより得点を得るゲームを考える。仮想操作物をキャラクタとし、プレーヤ自身の動きをキャラクタの動きに変換するために、プレーヤに帽子、履き物、眼鏡、ベルト、グローブなどを装着させ、これらの装着物を実操作物とするとよい。
【００３１】
＜第１実施形態例＞
（１）本実施形態例に係るゲームシステムの構成
図１は、本発明に係るゲームシステムの一実施形態例であるゲームシステム１０００を示すブロック図である。このゲームシステム１０００は、制御部１、画像処理部２、音声処理部３、半導体メモリ４、操作部５及び位置検出部６を有している。
【００３２】
制御部１は、ＣＰＵ１０、ＲＯＭ１８及びＲＡＭ１９を有している。ＣＰＵ１０は、ＲＯＭ１８に記録されているＯＳとＲＡＭ１９に記憶されるゲーム用データなどとに基づいて、後述する複数の機能を実現する。ＲＯＭ１８は、ゲームシステム１０００の各部に基本動作を行わせるためのＯＳを格納している。ＲＡＭ１９は、ディスク制御部４から必要に応じて読み出されたゲーム用各種データを一時的に保存するなどのワークエリアとして使用される。
【００３３】
画像処理部２は、ＧＰＵ（Graphics Processing Unit）２１、フレームバッファ２２及びモニタ２３を有している。ＧＰＵ２１は、ＣＰＵ１０の計算結果に基づいて、ポリゴンの組合せからなるＣＧ画像をフレームバッファ２２に書き込む。ＧＰＵ２１により描画処理されたＣＧ画像は、フレームバッファ２２に一時的に記録される。フレームバッファ２２に記録されたＣＧ画像は、モニタ２３により読み出されて表示される。ＧＰＵ２１による描画処理及びフレームバッファ２２への記録が連続的に行われることにより、動画要素を含むＣＧ画像、たとえばキャラクタの動きがモニタ２３に表示される。
【００３４】
音声処理部３は、ＳＰＵ(Sound Processing Unit)３１とスピーカ３２とを備えている。ＳＰＵ３１は、半導体メモリ４に記録されている音楽データや各種効果音データなどの音声データに基づいて、音楽や効果音を再生する。
半導体メモリ４は、ゲームプログラムを記録している。
操作部５は、実操作物５１とコントローラ５２とを有している。実操作物５１は、位置検出部６が計測可能な実空間Ｒ内でこの実操作物５１をプレーヤが操作することにより、この実操作物５１の置換物である仮想操作物をゲーム空間Ｇ内で動かすための入力手段である。また、実操作物５１は、入力手段としてだけでなく、出力手段として用いても良い。例えば、実操作物５１に振動手段を設け、ゲーム空間Ｇ内で仮想操作物とオブジェクトとが衝突すると、実操作物５１の振動手段を振動させることが挙げられる。コントローラ５２は、所定のスイッチやボタン、操作桿、フットペダルなどである。コントローラ５２は、プレーヤがこれらを操作することにより、ゲーム空間Ｇ内のオブジェクトや前記仮想操作物を操作するための入力手段である。
【００３５】
位置検出部６は、前記実空間Ｒにおける実操作物５１の位置を検出するための手段である。例えば、位置検出部６は、実測定物５１に取り付けられた発光手段と、前記発光手段からの光を検知する１対のセンサとを用いて構成される。さらに、位置検出部６は、検出した光に基づいて前記実空間Ｒにおける位置を特定する位置情報を決定し、制御部１０に送出する測定部を含んでいる。制御部１０に送出される位置情報は、例えば実空間Ｒの３次元座標や、実空間を小空間に分割した小空間の番号などで表される。
【００３６】
前記発光手段及びセンサに変えて、実操作物５１に取り付けられた超音波発信手段と、前記超音波発信手段からの音を受信する１対のセンサとを用いることも可能である。
（２）ゲームシステムの一例
（２−１）ゲームシステム全体
図２は、前記ゲームシステム１０００の一具体例である対戦ゲームシステム２０００の外観斜視図である。この対戦ゲームシステム２０００は、対戦ゲームに本発明を適用した場合の一例を示している。対戦ゲームシステム２０００は、ゲーム装置１００と、実操作物５１の一例である剣型操作物２００とを有している。剣型操作物２００はＲＳ２３２Ｃなどによりゲーム装置１００と接続されている。また、剣型操作物２００は、ゲーム装置１００からの電力供給ケーブルが接続されている。
【００３７】
ゲーム装置１００の筐体正面上部には、画像出力用のモニタ１０１が設けられている。筐体の最上部左右には、位置検出部６に含まれるセンサの一例であるＣＣＤカメラ１０２ａ，ｂが取り付けられている。ＣＣＤカメラ１０２ａ、ｂは、剣型操作物２００の所定位置に取り付けられた発光手段からの光を検出する。図示されていないが、ＣＣＤカメラ１０２ａ、ｂにより検出された光に基づいて、実空間Ｒでの発光位置を特定する位置測定手段が、ＣＣＤカメラ１０２ａ、ｂには接続されている。筐体の上部後方左右からは１対のバー１０３が前方に向かって突出しており、このバーには保護幕１０４が取り付けられている。保護幕１０４は、ゲーム装置１００の前のプレー空間で剣型操作物２００をプレーヤが振り回したときに、周囲に危害を加えないための幕である。モニタ１０１の上部左右両側にはゲームのＢＧＭや効果音を出力するためのスピーカ１０５が取り付けられている。筐体下部の中央には、モニタ１０１に表示されるメニューを選択するためのスイッチ１０６が設けられている。スイッチ１０６は、前記コントローラ５２の一部に相当する。また、筐体正面の床面にはフットペダル１０７が設けられている。このフットペダルをプレーヤが足で踏むことにより、剣型操作物２００をゲーム空間Ｇで表す剣オブジェクトへの操作を行う。このフットペダル１０７も、前記コントローラ５２の一具体例である。筐体下部の中央には、コインを入れるためのコイン投入口１０８が設けられている。
【００３８】
（２−２）ゲーム装置
図３は、図２に示したゲーム装置１００の側面図である。この図に示すように、バー１０３は、筐体上部後方の支点１１０を中心に回転可能に、支点１１０から前方水平方向に突出して設けられている。バー１０３にはガススプリング１０９が取り付けられている。バー１０３は、ガススプリング１０９の伸縮により、支点１１０を中心に水平位置から図中矢印方向へ所定角度だけ回転可能である。バー１０３を回転可能に筐体に取り付けておくことで、万一保護幕１０４に人がぶら下がった時などにも、保護幕１０４がバー１０３から外れたりバー１０３に負担がかかり過ぎることを防止できる。
【００３９】
（２−３）剣型操作物
図４は剣型操作物２００の詳細な構造を示す構成図である。剣型操作物２００は、握り部２０１と刃部２０２とからなる。刃部２０２は透明な樹脂などで構成されている。刃部２０２の内部には、軸方向に沿って異なる位置にある所定の２点Ｑ１，Ｑ２に２つの発光手段２０３ａ，２０３ｂが取り付けられている。発光手段２０３ａ及び２０３ｂからの光は、前記ＣＣＤカメラ１０２ａ，ｂによりそれぞれ検出される。発光手段２０３ａ及び２０３ｂは、特に限定されないが、例えば赤外線発光ＬＥＤを用いて構成することができる。発光ＬＥＤの発光方向には指向性があるため、複数の発光ＬＥＤを用いて発光手段を構成することが好ましい。
【００４０】
握り部２０１の内部には、剣を振動させるための振動手段２０４が設けられている。振動手段は、偏心カムと偏心カムを回転させるためのモータとで構成することができる。後述するように剣オブジェクトがゲーム空間Ｇ内で敵やその他のオブジェクトに当たったと判断されると、モータが駆動されて偏心カムが回転し、剣型操作物２００を振動させる。モータの駆動パルスの間隔を調整することにより、偏心カムの回転速度を制御し、振動の強弱をつけることができる。また、握り部２０１には、スイッチ２０５ａ及び２０５ｂが設けられている。スイッチ２０５ａ，ｂは、モニタ１０１上に出てくるメニューの選択や決定を指示するために用いられる。さらに、握り部２０１には、前記モータを駆動するための電流を送信するケーブル２０６や、剣型操作物２００を本体に掛けておくための紐が取り付けられている。
【００４１】
（３）対戦ゲームの概要
次に、図１及び図５〜１８を用い、対戦ゲームシステム２０００で行われる対戦ゲームの概要について説明する。図５は対戦ゲームの一場面を示す図である。図６はプレイ中のプレーヤの状態を示す説明図である。このゲームでは、刀などの武器を持った敵が次々に現れ、プレーヤに襲いかかる。プレーヤは、図６に示すようにゲーム装置１００と接続された剣型操作物２００を用いて、“剣を振る”、“剣で突く”などの動作を行い、ゲーム空間Ｇ内の剣オブジェクトを操作する。剣オブジェクトは、前記剣型操作物２００のゲーム空間Ｇにおける置換物である。また、画面の左上にはプレーヤの得点や命の残量を模したろうそくなどが表示される。右下には敵の命の残量などが表示される。
【００４２】
プレーヤは、ゲームの開始に先立ち、難易度に応じたステージの選択や難易度に応じた武器、例えば手裏剣、槍、弓などの選択を行うことができる。プレーヤはゲームシステムの制御によりゲーム空間Ｇ内を前進及び方向転換する。また、プレーヤは、フットペダル１０７を踏むことで、ゲーム空間内を所定方向に所定の距離だけ進むことができる。プレーヤがゲーム空間Ｇ内を移動しながら遭遇する敵を倒して敵に所定量の負傷を追わせると、選択したステージが終了し、プレーヤは次のレベルのステージに挑戦することができる。プレーヤの命の残量がなくなった時点でゲームは終了する。
【００４３】
（３−１）座標の変換
図７及び図８は、本対戦ゲームの基本となる座標変換の考え方を示す説明図である。本ゲームシステムでは、３つの空間座標系を想定する。１つ目は、ＣＣＤカメラ１０２ａ，ｂを基準として実空間Ｒ内の位置を三次元座標で定めるためのセンサ座標系である。２つ目は、プレーヤを基準として実空間Ｒ内の位置を三次元座標で定めるためのプレーヤ座標系である。３つ目は、ゲーム空間Ｇ内での位置を三次元座標で定めるためのゲーム空間座標系である。
【００４４】
（３−１−１）実空間Ｒでのセンサ座標系からプレーヤ座標系への変換
図７は、センサ座標系とプレーヤ座標系との関係を示す説明図である。実空間Ｒとして、ＣＣＤカメラ１０２ａ，ｂで検出可能な範囲の直方体を想定している。本例では、実空間Ｒとして、ゲーム装置１００を置いた床面から５０ｃｍ浮いており、かつゲーム装置１００の正面にありＣＣＤカメラ１０２ａ、ｂに接する直方体を想定する。直方体の高さは２００ｃｍ、奥行きは２００ｃｍ、幅は１５０ｃｍである。直方体の大きさは、ＣＣＤカメラ１０２ａ，ｂが検知可能であって、プレーヤが動作しやすい大きさに設定される。
【００４５】
まず、センサ座標系について説明する。センサ座標系は、ＣＣＤカメラ１０２ａに相当する頂点Ｓ０を原点とし、ＣＣＤカメラ１０２ｂ方向にｘ軸を、下方にｙ軸を、ゲーム装置正面側にｚ軸をとった座標系である。さらに、センサ座標系は、実空間Ｒを表す直方体の各辺を２５６分割し、０から２５５までの値で各座標を表す。例えば、ＣＣＤカメラ１０２ｂに相当する頂点Ｓ１の座標は、（２５５，０，０）となる。
【００４６】
次いで、プレーヤ座標系について説明する。この例では、プレーヤ座標系の原点を、ＣＣＤカメラ１０２ａ，ｂよりも手前側のフットペダルの位置にとる。たとえば、フットペダルが、ゲーム装置１００正面であって、ＣＣＤカメラ１０２ａ、ｂよりも６０ｃｍ手前の床面にあると仮定する。また、座標軸として、ｘ’軸及びｚ’軸を前記センサ座標系のｘ軸及びｚ軸とそれぞれ同じ方向にとり、ｙ’軸を上向きに取る。さらに、各座標軸の目盛りを１ｃｍ刻みでとる。このようなプレーヤ座標系を想定する場合、ｙ’軸が実空間Ｒの底面と交わる交点Ｐ３のプレーヤ座標は、（０，５０，０）となる。また、ｙ’軸が実空間Ｒの上面と交わる交点Ｐ２のプレーヤ座標は（０，２５０，０）となる。
【００４７】
センサ座標がプレーヤ座標に変換される例として、センサ座標系の原点Ｓ０について考える。センサ座標系の原点Ｓ０（０，０，０）は、プレーヤ座標系では（−７５，２５０，−６０）と表される。
（３−１−２）プレーヤ座標系からゲーム空間座標系への変換
図８は、プレーヤ座標系とゲーム空間座標系との関係を示す説明図である。ゲーム空間Ｇはゲームの提供者により予め所定の大きさに設定されている。たとえば幅２０００ｍ、奥行き２０００ｍ、高さ２００ｍの直方体のゲーム空間Ｇを仮定する。この直方体の１つの底辺の中央に原点Ｇ０（０，０，０）を取り、その底辺に沿った方向にｘ’’軸を、底面に沿う方向にｘ’’と垂直なｚ’’軸を、ｘ’’軸及びｚ’’軸に垂直な上向き方向にｙ’’軸を取る。さらに、各軸の目盛りを１ｍ間隔に取る。プレーヤ座標系とゲーム空間座標系との関係は、ｙ’軸とｙ’’軸とが同方向、ｘ’軸及びｚ’軸とｘ’’軸及びｚ’’軸とがそれぞれ反対方向とする。
【００４８】
ゲーム空間座標系の原点Ｇ０とプレーヤ座標系の原点Ｐ０とはゲームの開始当初は一致することとする。その後、プレーヤがフットペダル１０７を踏むことにより前進したり、ゲーム側でプレーヤを前進あるいは回転させることにより、ゲーム空間座標系とプレーヤ座標系との原点は徐々にずれていく。両者の原点が一致する場合、センサ座標系の原点Ｓ０を示すプレーヤ座標系の座標（−７５，２５０，−６０）は、ゲーム空間座標系においては（７５，２５０，６０）となる。なお、前述した座標系の各変換は一例に過ぎず、これらの座標変換は一般的にアフィン変換として知られる方法を用いて行われる。
【００４９】
本対戦ゲームシステム２０００では、前記剣型操作物２００の２点Ｑ１，Ｑ２の実空間Ｒにおける位置をセンサ座標系で特定し、次いでその座標をプレーヤ座標系へ、さらにゲーム空間座標系へ変換する。ゲーム空間座標系での座標を透視投影変換することにより、モニタ１０１上での剣オブジェクトの表示位置が決定し、剣オブジェクトが表示される。この座標変換により、プレーヤはゲーム空間内のオブジェクトを操作すると言うよりは自身が動作することにより、実空間とゲーム空間との違和感を感じることなくゲームを行うことができる。
【００５０】
（３−２）ＣＰＵが行う処理
再び図１を参照してＣＰＵ１０が行う処理を説明する。ＣＰＵ１０は、補正手段１１、難易度選択手段１２、３次元入力変換手段１３、当たり判定手段１４、音出力制御手段１５、操作判定手段１６及び状況判定手段１７を有している。
補正手段１１は、プレーヤの身長差を補正する処理を行う。例えば、補正手段１１は、基準プレーヤの身長を１７０ｃｍとし、身長がそれに満たない小さい子供がプレーヤの場合は剣オブジェクトが画面の下方にしか表示されないと行った不都合を防止する補正処理を行う。
【００５１】
具体的には、補正手段１１は、ゲームの開始に先立ちプレーヤに基準の構えを促す。図９は、プレーヤに基準の構えを促すために補正手段１１が表示する画面例である。補正手段１１は、この構えにおける剣型操作物２００の位置からプレーヤの体格を推測し、補正係数を決定する。例えば、補正手段１１は、基準の構えをしたときの剣型操作物２００の基準高さを予め１２０ｃｍに決めておく。補正手段１１は、プレーヤの基準の構えから検出される剣型操作物２００の高さが基準高さの半分の６０ｃｍであれば補正係数として“２”を決定する。以後、補正手段１１は、検出される剣型操作物２００の高さに補正係数２を乗じ、身体の小さい子供であっても基準プレーヤと同様の表示効果が得られるようにする。実際には、プレーヤの体格によって剣型操作物２００の動きの特性が異なることを利用し、補正係数を求めることも可能である。剣型操作物２００の動きとは、具体的にはその位置と向きとの組み合わせの過去における変化で表される。例えば、剣型操作物２００の移動範囲の分布から補正係数を算出する方法が挙げられる。
【００５２】
難易度選択手段１２は、補正手段１１による補正係数決定後、または決定前に、ゲームの難易度の選択を受け付ける。難易度に応じた武器の選択を、難易度とともに、または難易度選択後に受け付けてもよい。難易度選択手段１２は、ゲーム装置１００に取り付けられたスイッチ１０６や、剣型操作物２００のスイッチ２０５を用いた選択を受け付ける。これに加え、難易度選択手段１２は、プレーヤが選択したメニューを剣型操作物２００により指し示すと、発光手段２０３ａ、ｂを結んだ直線の延長線とモニタ１０１との交点にマーカを表示する。さらに、難易度選択手段１２は、マーカとメニューとが一致した状態でスイッチ２０５が押されることにより、そのメニューの選択を受け付ける。図１０は、難易度選択手段１２が表示する難易度選択画面の一例である。剣型操作物２００の向きを示すマーカが、「初級モード」上に表示されている。
【００５３】
３次元入力変換手段１３は、剣型操作物２００の発光手段２０３ａ、ｂのセンサ座標を、プレーヤ座標に、そしてゲーム空間座標に変換する座標変換処理を行う。求められたゲーム空間座標に基づいて、剣オブジェクトのモニタ上の表示位置が算出され、表示が行われる。３次元入力変換手段１３は、座標変換処理を所定時間間隔、例えば１６ｍｓｅｃ毎に行う。これにより、プレーヤが操作する剣型操作物２００の動きが、モニタ１０１に表示されている剣オブジェクトの動きとして表示される。そのため、プレーヤにとっては、剣オブジェクトを操作しているという感覚よりも、自分自身が動作しているという感覚でゲームを行うことができる。
【００５４】
たとえば、プレーヤが剣型操作物２００を図１１（ａ）に示すように振った場合、同図（ｂ）に示すように画面上の剣オブジェクトの動きも同様に表示される。また同図（ｂ）では、剣オブジェクトの軌跡も表示されている。また、図１２（ａ）、（ｂ）に示すように、現れた敵がプレーヤに攻撃をした場合、プレーヤは剣型操作物２００を用いて敵の刀を止めるような動作をすれば、剣オブジェクトの動きは同様に表示される。
【００５５】
当たり判定手段１４は、ゲーム空間Ｇ内で、剣オブジェクトが敵やゲーム空間内の他のアイテム、たとえば竹や石に当たったか否かを判定する。本ゲームシステムでは、プレーヤにより操作される剣オブジェクトの動きがシステム側が予測できない任意な動きであるので、当たり判定手段１４は、前記判定を行うために、過去の所定時間Δｔ内における剣オブジェクトの軌跡を記憶しておく。
【００５６】
図１３は、剣オブジェクトの２点ｑ１，ｑ２のゲーム空間座標を、時系列に記憶している軌跡テーブルの概念説明図である。この２点ｑ１，ｑ２は、剣型操作物２００の２点Ｑ１，Ｑ２に対応する点である。この軌跡テーブルは、三次元入力変換手段１２が１６ｍｓｅｃ毎に剣型操作物２００の２点Ｑ１，Ｑ２の位置を検出する場合に、過去２５６ｍｓｅｃ以内における剣オブジェクトの２点ｑ１，ｑ２のゲーム空間座標を時系列に記憶する。このテーブルはＲＡＭ１９に保持される。
【００５７】
当たり判定手段１４は、剣オブジェクトの２点ｑ１，ｑ２のゲーム空間座標に基づいて、剣オブジェクトの刃部分を表す直線を求める。例えば点ｑ１を刃部分の根元と見なし、刃部分の切っ先を表す点ｑ３を求め、点ｑ１とｑ３とを結ぶ直線により刃部分を表すことができる。切っ先ｑ３は、前記点ｑ１とｑ２とを結ぶ直線上の点であって、点ｑ１から点ｑ２方向に一定の距離ｄだけ離れた点として求めることができる。当たり判定手段１４は、軌跡テーブルを用いて前記刃部分の直線の軌跡を表す面を算出する。当たり判定手段１４は、算出された面内に敵の刀や敵の身体、竹などのオブジェクトがあるか否かを判断し、剣オブジェクトが何に当たったかの当たり判定を行う。
【００５８】
また、当たり判定手段１４は、１６ｍｓｅｃ毎のｑ１，ｑ２の移動量から剣オブジェクトの速度を判定する。当たり判定手段１４は、剣オブジェクトの速度に応じて深く当たったか浅く当たったかの当たり度の判定を行う。さらに、当たり判定手段１４は、剣オブジェクトのどの位置が他のオブジェクトと当たったかによっても当たり度の判定を行う。言い換えれば、前記刃部分の軌跡を表す面のどの位置が他のオブジェクトと当たったかによっても、当たり度の判定が行われる。例えば、当たり判定手段１４は、「服だけが切れた」、「身を切った」、「骨まで切れた」、「空振り」などの当たり度を判定する。
【００５９】
なお、剣型操作物の動きが早い場合、記憶されている剣オブジェクトの座標と他のオブジェクトとが重複しない場合も考えられる。例えば、時刻T1では剣オブジェクトは敵の左側にあり、次の時刻T2では敵の右側にある場合である。このような場合であっても、当たり判定手段１４は、剣オブジェクトの刃部分の軌跡から「当たり」と判定する。
【００６０】
音出力制御手段１５は、当たり判定の結果に応じ、半導体メモリ４からＲＡＭ１９に読み出されている効果音データを、スピーカ３２に出力させる。効果音としては、例えば、剣と竹とが当たる音、剣により敵の服が破ける音、剣が空振りする音が挙げられる。効果音が前記当たり判定の結果で変わるため、ゲームの臨場感が増大する。
【００６１】
操作判定手段１６は、剣オブジェクトの軌跡に基づいて、規定コマンドが入力されたか否かを判断する。規定コマンドは、剣オブジェクトの軌跡の所定パターンにより入力され、敵への攻撃を実行する。規定コマンドと軌跡の所定パターンとは、ＲＡＭ１９に記憶されている（図示せず）。例えば、操作判定手段１６は、前記軌跡テーブルに基づいてプレーヤが必殺技である“十文字”パターンを入力したか否かを判断し、このパターンが入力されていれば、“十文字”パターンに対応して記憶されている攻撃を実行する。これにより、プレーヤはますます自分自身の動作によりゲームを行っているという実感を持つことができる。
【００６２】
また、操作判定手段１６は、フットペダル１０７が踏まれたかどうかを判断する。踏まれた場合には、踏まれた回数だけゲーム空間Ｇにおけるプレーヤ座標系の原点Ｐ０の位置を前進させる。１回に突き進む距離は、例えば１ｍと予め決めておく。操作判定手段１６は、プレーヤの前進に応じ、剣オブジェクトのゲーム空間座標も移動させる。図１４は、フットペダル１０７が踏まれた場合の表示の変化を示す画面例である。図１４（ａ）は、敵は遠くで構えているため、剣オブジェクトを振ったとしても届かない場合を示している。図１４（ｂ）は、図１４（ｃ）に示すようにプレーヤがフットペダルを踏み、敵に近づいて攻撃したことを示す画面例である。図示するように、遠くにいた敵がズームアップして表示されている。プレーヤは、踏み込み動作とともに攻撃するという身体全体を使っての自分自身の動作によりゲームを行い、一段と臨場感を感じることができる。
【００６３】
これらの処理に加えさらに、操作判定手段１６は、プレーヤが所定の武器、例えば手裏剣を使用したか否かの判断を行う。例えば、剣型操作物２００が画面上の敵を指した状態で武器の使用を指示するスイッチ２０５ａ、ｂが押された場合、刺された敵に対する攻撃が実行される。操作判定手段１６は、剣型操作物２００の２点Ｑ１，Ｑ２の延長線が画面上の敵と交差する場合、プレーヤがその敵をターゲットにしていることを示すポインタを表示することが好ましい。
【００６４】
状況判定手段１７は、前記当たり判定の結果や操作判定の結果に従い、敵の負傷度やプレーヤの命の残りを算出する。例えば、当たり判定の結果、敵の服しか破けなかった場合には敵の負傷度は“０”である。敵にかすり傷に負わせた場合や敵を１人倒した場合、敵の負傷度がそれぞれの場合に応じて定められた所定の度合いだけ増加する。当たり度合いと敵の負傷度の増加度数とは、ＲＡＭ１９に記憶されている（図示せず）。
【００６５】
また、状況判定手段１７は、前記操作判定の結果、規定コマンドの入力や武器の使用があったと判断された場合、規定コマンドや使用した武器に応じた度数だけ敵の負傷度を増加させる。規定コマンド及び武器と敵の負傷度の増加度数とは、ＲＡＭ１９に記憶されている（図示せず）。
一方で、状況判定手段１７は、ゲーム空間Ｇにおける敵の位置とプレーヤの位置及びプレーヤの動作に応じ、プレーヤの命を更新する。プレーヤの位置は、プレーヤ座標系の原点と見なす。プレーヤが敵の攻撃を防げなかった場合には、敵の攻撃一回につき所定の割合だけプレーヤの命を減少させる。図１５は、状況判定手段１７により敵の攻撃を受けたプレーヤの命の残り量が更新されることを示す画面例である。
【００６６】
さらに、状況判定手段１７は、当たり度合いに応じて剣型操作物２００に内蔵されているモータを駆動パルスにより駆動し、剣型操作物２００を振動させる処理を行う。プレーヤはこの振動により、画面上の視覚だけでなく肉体的にも当たったことを実感する上、当たり度によって振動の強弱が異なるため、現実味のあるゲームとなる。
【００６７】
（３−３）処理の流れ
図１６〜１９は、本対戦ゲームシステム２０００における全体的な処理手順の流れを示すフローチャートである。以下、これらの図に沿って本ゲームシステムの処理の流れを具体的に説明する。
（３−３−１）メイン処理
図１６は、本ゲームシステムのメイン処理の流れを示すフローチャートである。プレーヤがゲーム装置１００のコイン投入口１０８にコインを投入することにより、本処理が開始される。
【００６８】
ステップＳ１；補正手段１１は、前述の補正処理を行い、プレーヤの体格を補正するための補正係数を算出する。この処理については後述する（後述する図１７参照）。
ステップＳ２；難易度選択手段１２は、難易度選択処理を行い、初級者、中級者、上級者などのレベルごとに準備されたステージの選択を受け付ける。この処理については後述する（後述する図１８参照）。なお、難易度選択処理は、前記補正処理に先立って行っても良い。
【００６９】
ステップＳ３；補正処理及び難易度選択処理の後、データロードが行われる。すなわち、半導体メモリ４からＲＡＭ１９に、ゲームプログラムやゲームの進行に必要なデータが読み込まれる。ゲームの開始準備が整うと、前記図１１に示したようなゲーム画面が表示され、ゲームが開始される。
ステップＳ４；ゲーム開始後、所定時間間隔でステップＳ５〜Ｓ１８の処理が行われる。本例では、この時間間隔を１６ｍｓｅｃとする。
【００７０】
ステップＳ５；三次元入力変換手段１３は、１６ｍｓｅｃごとに、剣型操作物２００の実空間Ｒにおけるセンサ座標を位置検出部６から取得する。
ステップＳ６；次いで、三次元入力変換手段１３は、座標変換処理を行い、取得したセンサ座標をプレーヤ座標へ、さらにゲーム空間座標へ変換する。この処理については後述する。算出されたゲーム空間座標は、当たり判定手段１４によりＲＡＭ１９の軌跡テーブルに書き込まれる。
【００７１】
ステップＳ７；三次元入力変換手段１３により算出されたゲーム空間座標は透視投影変換され、剣オブジェクトのモニタ１０１上の表示位置が算出される。これにより、剣オブジェクトがモニタ１０１上に表示される。すなわち、ゲームの進行中は１６ｍｓｅｃ毎に剣オブジェクトが表示されることになる。
ステップＳ８、Ｓ９、Ｓ１０；当たり判定手段１４は、過去２５６ｍｓｅｃ以内における剣の軌跡を軌跡テーブルから求め、剣オブジェクトが敵や敵以外のオブジェクトと当たっているか否かを判断する（Ｓ８）。当たっていれば、当たったことによる敵の負傷度の算出が状況判定手段１７により行われる（Ｓ９）。ただし、当たったオブジェクトが敵でなければ敵の負傷度は変化しない。また、当たったオブジェクトや当たり度に応じ、剣型操作物２００が振動される（Ｓ１０）。状況判定手段１７は、当たり度の強弱に応じ、剣型操作物２００に内蔵されているモータの駆動パルスの出力間隔を変化させ、剣型操作物２００の振動の強弱を調整する。例えば、敵を倒した時には強い振動を、かすった時は弱い振動を剣型操作物２００に与えることにより、ゲームのリアリティを高めることができる。
【００７２】
ステップＳ１１；音出力制御手段１５は、当たり判定の結果に応じて効果音を出力する。
ステップＳ１２、Ｓ１３；操作判定手段１６は、規定コマンドの入力があったか否かを判断する。この判断は軌跡テーブルに基づいてゲーム空間Ｇ内での剣オブジェクトの軌跡を求め、軌跡が所定のパターンに該当するか否かにより判断する。この判断に際しては、所定のパターンからのある程度の誤差を許容する。規定コマンドの入力に該当する場合は、状況判定手段１７は敵負傷度を規定コマンドに応じた分だけ上昇させ、表示を更新する（Ｓ１３）。規定コマンドの入力がない場合には何も行わない。
【００７３】
ステップＳ１４、Ｓ１５、Ｓ１６；操作判定手段１６は、剣型操作物２００がモニタ１０１上の敵をターゲットにしているか否かを判断し、ターゲットにしている場合はポインタを表示する（Ｓ１４）。ポインタとしては、たとえば、ねらわれている敵を囲む円が挙げられる。このポインタが表示された状態で武器が使用された場合（Ｓ１５）、状況判定手段１７は敵の負傷度を武器に応じた度数だけ増加させ、表示を更新する（Ｓ１６）。
【００７４】
ステップＳ１７；状況判定手段１７は、プレーヤの剣が敵の攻撃を防御したかどうかによりプレーヤの命の残量を演算し、表示を更新する。例えば、前記当たり判定手段において敵の刀とプレーヤの刀とが当たったと判断された場合には、敵の攻撃を防御したと判断できる。逆に、攻撃してきた敵と剣オブジェクトとが当たっていない場合、プレーヤはダメージを受けたと判断できる。
【００７５】
ステップＳ１８；選択された難易度に対応するステージが全て終了したか否かが判断され、終了したと判断されるとステップＳ１９に移行する。終了していないと判断されると、再びステップＳ４に戻り、１６ｍｓｅｃ毎に処理Ｓ４〜Ｓ１８を繰り返す。
ステップＳ１９、Ｓ２０、Ｓ２１、Ｓ２２；選択したステージをクリアできたかどうかが判断され、クリアできていない場合にはゲームの終了が表示されてゲームが終了する（Ｓ２０）。クリアできている場合にはプレーヤのプレー結果が表示される（Ｓ２１）。さらに、プレーヤに対し続行するか否かの確認画面が表示される（Ｓ２２）。“続行”が選択されると、再び前記ステップＳ２に戻り、前述の処理Ｓ２が行われる。“終了”が選択されると、ゲームが終了する。
【００７６】
（３−３−２）補正処理
図１７は、前記メイン処理のステップＳ１で行う補正処理の流れを示すフローチャートである。補正手段１１は、プレーヤに対し、基準の構えを指示する画面を表示する（前記図９参照）（Ｓ１０１）。その後、補正手段１１は一定時間待機し、剣型操作物２００の２点Ｑ１，Ｑ２のセンサ座標を検出する（Ｓ１０２）。その後、読み取ったセンサ座標からプレーヤの身長を推測し、補正係数を決定する。
【００７７】
（３−３−３）難易度選択処理
図１８は、前記ステップＳ２で行う難易度選択処理の流れを示すフローチャートである。このフローでは、剣型操作物２００によりメニューを選択する場合の流れについて説明する。
ステップＳ２０１、Ｓ２０２、Ｓ２０３；難易度選択手段１２は、剣型操作物２００の所定の２点Ｑ１，Ｑ２のセンサ座標を読み込む（Ｓ２０１）。次いで、難易度選択手段１２は、実空間における剣型操作物２００の延長線とモニタ１０１との交点を算出する（Ｓ２０２）。さらに、難易度選択手段１２は、算出した交点を表示する画面座標を算出する（Ｓ２０３）。
【００７８】
ステップＳ２０４、Ｓ２０５、Ｓ２０６；難易度選択手段１２は、求めた画面座標の位置にマーカを表示する（Ｓ２０４）。このマーカとメニューの選択肢とが重なった状態で剣型操作物２００のいずれかのスイッチ２０５が押されると（Ｓ２０５）、難易度選択手段１２は難易度を決定する（Ｓ２０６）。
なお、前述したように、難易度や武器の選択は、ゲーム装置本体のスイッチや剣型操作物２００のスイッチから受け付けても良い。
【００７９】
（３−３−４）座標変換処理
図１９は、前記メイン処理のステップＳ６で行う座標変換処理の流れを示すフローチャートである。
ステップＳ６０１；三次元入力変換手段１３は、剣型操作物の２点Ｑ１，Ｑ２の実空間Ｒにおけるセンサ座標を、前記ステップＳ１で求めた補正係数により補正する。これにより、プレーヤに体格差があっても、全てのプレーヤの動作は標準プレーヤの動作と同様になる。
【００８０】
ステップＳ６０２；次いで、三次元入力変換手段１３は、補正したセンサ座標の値をプレーヤ座標系の座標値であるプレーヤ座標に変換し（Ｓ６０２）、さらにプレーヤ座標をゲーム空間座標系の座標値に変換する（Ｓ６０３）。その後、剣型操作物２００のゲーム空間座標値を透視投影変換し、モニタ１０１上への表示位置を算出する（Ｓ６０４）。
【００８１】
＜その他の実施形態例＞
（Ａ）実空間での位置からゲーム空間での位置への変換の他の例
ゲームの種類や仮想操作物の種類によっては、実空間Ｒでの位置及びゲーム空間Ｇでの位置を、三次元座標ではなく他の方法で特定してもよい。例えば、実空間Ｒ及びゲーム空間Ｇを、それぞれ所定の大きさの複数の実セルｒ１，ｒ２・・・及び仮想セルｇ１，ｇ２・・・に分割し、各セルを識別するセル番号と各セルの位置とを記憶するセル記憶部をさらに設ける。
【００８２】
この場合、三次元入力変換手段１３は、位置検出部６からの三次元座標を実セル番号に変換し、さらに実セル番号を仮想セル番号に変換し、仮想セル番号に基づいて表示位置を決定する。
（Ｂ）プレーヤ座標系の原点の取り方の他の例
プレーヤ座標系の原点及び座標軸の目盛りをプレーヤ毎に設定することも可能である。プレーヤ毎にプレーヤ座標系の設定を行えば、プレーヤの体格差をプレーヤ座標系の設定により吸収することができる。例えば、補正手段１１は、基準となる体格のプレーヤについてのプレーヤ座標系を記憶しておく。そして、基準ポーズに基づいて算出したプレーヤの体格から基準よりも体格の大きいプレーヤであると判断すると、プレーヤ座標系の原点の位置を基準位置よりも下げると共に座標軸の目盛りの間隔を広げる。プレーヤの体格が基準よりも小さいプレーヤであれば、逆の処理を行う。
【００８３】
（Ｃ）当たり判定の他の例
前記当たり判定手段による当たったか否かの判断を高速化するために、以下の方法を用いることもできる。図２０（ａ）は、ゲーム空間Ｇにおける剣オブジェクトの刃部分の、時刻T1における位置及びT1から１６ｍｓｅｃ後の時刻T2における位置を、直線で示している。同図（ｂ）は、剣オブジェクトの刃部分をＮ個の点の集合に置き換えた場合を示している。同図（ｃ）は、図（ｂ）における時刻T1及びT2の間の剣オブジェクトの刃部分の軌跡を、１組Ｎ個の点の集合で補完した場合を示している。
【００８４】
当たり判定手段１４は、時刻T1とT2との間における当たり判定を行うために同図（ａ）に示す刃部分の位置の変化から同図（ｃ）に示すように刃部分の軌跡を複数の点で補完する。次いで、当たり判定手段１４は、全ての点について、当たり判定を行う対象のオブジェクトと点との距離を算出する。この距離が所定値以内であれば、前記オブジェクトと当たったと判断する。
【００８５】
（Ｄ）規定コマンドの入力判定の他の例
前記操作判定手段１６は、規定コマンドが入力されたか否かの判断を、次のようにして行うこともできる。図２１は、適当な数の小空間（以下、セルという）に分割された実空間Ｒの概念説明図である。前述（Ａ）と同様に、実空間Ｒを複数の実セルｒ１，ｒ２・・・に分割し、各セルを識別するためのセル番号を各実セルに付与しておく。操作判定手段１６は、所定時間ΔT3内に剣型操作物２００の前記２点Ｑ１，Ｑ２がセルを通過した順番に、セル番号を記憶しておく。さらに、操作判定手段１６は、記憶しているセル番号から実セルの通過パターンと規定パターンとを比較し、規定コマンドが入力されたか否かを判断する。
【００８６】
（Ｅ）実操作物
実操作物には、振動手段を２カ所以上設けても良い。例えば剣型操作物の場合、剣の両端に振動手段を設け、剣オブジェクトが他のオブジェクトに当たった場所に応じていずれかの振動手段または両方の振動手段を異なる強度で振動させ、よりリアルな感触を実現することが可能である。
【００８７】
また、振動手段以外の出力手段を実操作物に取り付けても良い。例えば、音出力手段、光出力手段などを、ゲームの性質に応じて実操作物に取り付けることもあると考えられる。
（Ｆ）プログラム及び記録媒体
前記ゲーム方法をコンピュータに実行させるゲームプログラム及びこのプログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、コンピュータが読み書き可能なフロッピーディスク、ハードディスク、半導体メモリ、CD-ROM、ＤＶＤ、光磁気ディスク（ＭＯ）、その他のものが挙げられる。
【００８８】
【発明の効果】
本発明を用いれば、実空間でプレーヤが操作する実操作物の動きを、ゲーム空間内の仮想操作物の動きとしてディスプレイ上に表現することができる。仮想操作物を操作するプレーヤにとっては、操作するという感覚よりも動作するという感覚でゲームを行うことができるので、よりリアルなゲームを楽しむことができる。
【図面の簡単な説明】
【図１】第１実施形態例に係るゲームシステム１０００の構成を示すブロック図。
【図２】前記図１のゲームシステムの一例である対戦ゲームシステムの外観斜視図。
【図３】図２の対戦ゲームシステムにおけるゲーム装置の側面図。
【図４】図２の対戦ゲームシステムにおける剣型操作物。
【図５】図２の対戦ゲームシステムにおける一場面を示す画面例。
【図６】図２の対戦ゲームシステムにおけるプレイ状況を示す説明図。
【図７】センサ座標系とプレーヤ座標系との関係を示す説明図。
【図８】プレーヤ座標系とゲーム空間座標系との関係を示す説明図。
【図９】プレーヤに基準の構えを促す画面例。
【図１０】難易度を剣型操作物で選択する場合の難易度選択画面例。
【図１１】剣型操作物の動きと剣オブジェクトの動きとの関連を示す説明図（１）。
【図１２】剣型操作物の動きと剣オブジェクトの動きとの関連を示す説明図（２）。
【図１３】剣オブジェクトの軌跡を示す軌跡テーブル。
【図１４】フットペダルを踏んだ場合の表示の変化を示す説明図。
【図１５】敵の攻撃によりプレーヤの命の残量が減った場合の表示の変化を示す説明図。
【図１６】図２の対戦ゲームシステムにおける全体的な処理の流れを示すフローチャート。
【図１７】図２の対戦ゲームシステムにおける補正処理の流れを示すフローチャート。
【図１８】図２の対戦ゲームシステムにおける難易度選択処理の流れを示すフローチャート。
【図１９】図２の対戦ゲームシステムにおける座標変換処理の流れを示すフローチャート。
【図２０】当たり判定の他の例を説明する説明図。
【図２１】規定コマンドの入力判定の他の例を説明する説明図。
【符号の説明】
１０００；ゲームシステム
２０００；対戦ゲームシステム
１００；ゲーム装置
２００；剣型操作物
１０２；ＣＣＤカメラ
２０３；発光手段
１；制御部
２；画像処理部
３；音声処理部
４；ディスク制御部
５；操作部
６；位置検出部
５１；実操作物
【図１】
0004009433.tif 000002
【図２】
0004009433.tif 000003
【図３】
0004009433.tif 000004
【図４】
0004009433.tif 000005
【図５】
0004009433.tif 000006
【図６】
0004009433.tif 000007
【図７】
0004009433.tif 000008
【図８】
0004009433.tif 000009
【図９】
0004009433.tif 000010
【図１０】
0004009433.tif 000011
【図１１】
0004009433.tif 000012
【図１２】
0004009433.tif 000013
【図１３】
0004009433.tif 000014
【図１４】
0004009433.tif 000015
【図１５】
0004009433.tif 000016
【図１６】
0004009433.tif 000017
【図１７】
0004009433.tif 000018
【図１８】
0004009433.tif 000019
【図１９】
0004009433.tif 000020
【図２０】
0004009433.tif 000021
【図２１】
0004009433.tif 000022