JPH0850661A - 画像制御装置 - Google Patents

画像制御装置

Info

Publication number
JPH0850661A
JPH0850661A JP6204650A JP20465094A JPH0850661A JP H0850661 A JPH0850661 A JP H0850661A JP 6204650 A JP6204650 A JP 6204650A JP 20465094 A JP20465094 A JP 20465094A JP H0850661 A JPH0850661 A JP H0850661A
Authority
JP
Japan
Prior art keywords
image
chroma key
register
area
punch
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.)
Pending
Application number
JP6204650A
Other languages
English (en)
Inventor
Norio Iizuka
宣男 飯塚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP6204650A priority Critical patent/JPH0850661A/ja
Publication of JPH0850661A publication Critical patent/JPH0850661A/ja
Pending legal-status Critical Current

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1012Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals involving biosensors worn by the player, e.g. for measuring heart beat, limb activity
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/80Features 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/8011Ball
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features 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/80Features 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/8029Fighting without shooting

Abstract

(57)【要約】 【目的】 クロマキー検出処理された操作子のクロマキ
ー像から操作子の挙動を抽出し、リアリティに富んだ画
像制御を行う画像制御装置を実現する。 【構成】 ビデオ信号処理部20および位置検出処理部
40が特定色に着色されたグローブGを撮像してなる撮
像画像から当該操作子に対応するクロマキー像を抽出
し、CPU51がこのクロマキー像の経時変化に応じて
前記グローブGの挙動を表わす複数の操作パラメータ
(パンチ速度、パンチ加速度)を発生する。そして、V
DP31およびCPU51は、この複数の操作パラメー
タ(パンチ速度、パンチ加速度)に従ってデイスプレイ
に画像表示されるオブジェクト画像の表示態様を制御す
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えば、バーチャルリ
アリティ(仮想現実感)を創出するビデオゲームなどに
用いて好適な画像制御装置に関する。
【0002】
【従来の技術】従来より、操作パッド等の操作に応じて
オブジェクト画像を動画制御したり、効果音を発生させ
たりする画像制御装置が各種実用化されている。なお、
ここで言うオブジェクト画像とは、ゲーム画面に表示さ
れる「キャラクタ」を指し、背景となるバックグラウン
ド画面上に移動表示されるものである。この種の装置
は、ビデオゲームあるいはTVゲームと呼ばれ、遊戯者
の反射神経を問うシューティングゲームや、仮想的な現
実感をシミュレートするゲーム等が知られている。
【0003】ところで、この種のビデオゲームは、通
常、ゲーム操作に対応したビデオ信号を発生する画像処
理部と、この画像処理部から供給されるビデオ信号を映
像表示するディスプレイとから構成される。画像処理部
は、CPU、ROMおよびRAM等から構成され、例え
ば、ROMパックに記憶された画像情報および制御情報
を順次読み出し、画面背景となるバックグラウンド画像
をディスプレイに表示すると共に、ゲーム操作に応じて
対応するキャラクタ(オブジェクト画像)を画面背景に
対して動画表示し、その動きに応じた効果音を発音する
ようにしている。
【0004】
【発明が解決しようとする課題】さて、上述した従来の
画像制御装置にあっては、操作パッドの遊技操作に応じ
てオブジェクト画像を表示制御し、これによって遊技操
作に対応した画面を生成する態様が一般的であり、仮想
的な現実感をシミュレートするゲームには不向きになる
ことが多い。つまり、仮想的な現実感を追求するには、
実際の行動(行為)に即した形態で画像制御にする必要
がある。例えば、画面に対戦者像を表示し、この画面表
示される対戦者像の動きに対応して遊戯者がパンチ操作
してボクシングのスパーリング動作をシミュレーション
するゲームでは、従来の操作パッドに替えて「グロー
ブ」が操作子となり、この「グローブ」の位置や動きに
応じて画像制御することになる。
【0005】このような画像制御を行う場合には、周知
のクロマキー検出処理により操作子となる「グローブ」
の位置を検出する手法が採られる。クロマキー検出処理
とは、この場合、特定色に着色された「グローブ(操作
子)」を撮像画像中からクロマキー像として抽出する一
方、その撮像画像上におけるクロマキー像の位置を検出
するものである。ところで、上述したボクシングゲーム
において、遊戯者のパンチ操作が対戦者像にヒットする
か否かは、まず、クロマキー検出された「グローブ」の
位置で判断され、次いで、ヒットする位置にあると見做
された時には、クロマキー検出された「グローブ」像の
大きさに基づいて対戦者像と「グローブ」との距離を換
算し、これが所定距離以下である時に、パンチ操作が対
戦者像にヒットしたと見做すようにしている。
【0006】したがって、クロマキー検出処理を用いた
ボクシングゲームでは、クロマキー検出された「グロー
ブ」の位置と、その「グローブ」像の大きさとでヒット
の有無を判定するだけであるため、パンチ速度やパンチ
の強弱等を加味した画像制御を行うことができず、今一
つリアリティに欠けたものになるという問題がある。つ
まり、従来の画像制御装置では、クロマキー像の位置や
大きさに基づき、操作子の動きを抽出するだけであるか
ら、操作子の挙動を充分に抽出しておらず、結局、リア
リティに富んだ画像制御を行うことができないという問
題がある。そこで本発明は、クロマキー検出処理された
操作子のクロマキー像から操作子の挙動を抽出し、リア
リティに富んだ画像制御を行うことができる画像制御装
置を提供することを目的としている。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、請求項1に記載の発明では、特定色に着色された操
作子を撮像してなる撮像画像から当該操作子に対応する
クロマキー像を抽出するクロマキー抽出手段と、前記ク
ロマキー抽出手段が抽出したクロマキー像の経時変化に
応じて前記操作子の挙動を表わす複数の操作パラメータ
を発生するパラメータ発生手段と、このパラメータ発生
手段によって生成される前記複数の操作パラメータに従
って表示手段に画像表示されるオブジェクト画像の表示
態様を制御する表示制御手段とを具備することを特徴と
している。
【0008】また、請求項2に記載の発明では、特定色
に着色された操作子を撮像してなる撮像画像から当該操
作子に対応するクロマキー像を抽出するクロマキー抽出
手段と、前記クロマキー抽出手段が抽出したクロマキー
像の面積を検出し、検出した面積の経時変化に応じて前
記操作子の操作速度を発生する操作速度発生手段と、前
記操作速度に応じて表示手段に画像表示されるオブジェ
クト画像の表示態様を制御する表示制御手段とを具備す
ることを特徴としている。
【0009】上記請求項2に従属する請求項3に記載の
発明によれば、前記操作速度発生手段は、現撮像フレー
ムにおいて検出されるクロマキー像の面積と前撮像フレ
ームにおいて検出されたクロマキー像の面積との差分か
ら前記操作速度を生成することを特徴としている。
【0010】さらに、請求項4に記載の発明では、特定
色に着色された操作子を撮像してなる撮像画像から当該
操作子に対応するクロマキー像を抽出するクロマキー抽
出手段と、前記クロマキー抽出手段が抽出したクロマキ
ー像の面積を検出し、検出した面積の経時変化に応じて
前記操作子の操作速度を発生する操作速度発生手段と、
この操作速度発生手段が生成した操作速度の経時変化に
応じて前記操作子の操作加速度を発生する操作加速度発
生手段と、前記操作速度および前記操作加速度に応じて
表示手段に画像表示されるオブジェクト画像の表示態様
を制御する表示制御手段とを具備することを特徴として
いる。
【0011】上記請求項4に従属する請求項5に記載の
発明によれば、前記操作加速度発生手段は、現撮像フレ
ームに対応して生成される操作速度と前撮像フレームに
対応して生成された操作速度との差分から前記操作加速
度を生成することを特徴としている。
【0012】
【作用】本発明では、クロマキー抽出手段が特定色に着
色された操作子を撮像してなる撮像画像から当該操作子
に対応するクロマキー像を抽出し、パラメータ発生手段
がクロマキー像の経時変化に応じて前記操作子の挙動を
表わす複数の操作パラメータを発生する。そして、表示
制御手段がこのパラメータ発生手段によって生成される
前記複数の操作パラメータに従って表示手段に画像表示
されるオブジェクト画像の表示態様を制御する。この結
果、クロマキー検出処理された操作子のクロマキー像か
ら操作子の挙動を表わす複数の操作パラメータが得られ
るから、実際の操作に即したリアリティに富んだ画像制
御を行うことが可能になる。
【0013】
【実施例】以下、図面を参照して本発明の実施例につい
て説明する。 A.第1実施例の概要 図1は、本発明による第1実施例の概要を示す外観図で
あり、スパーリング動作をシミュレートするボクシング
ゲームに適用した一例を図示している。この図におい
て、1はCCD等の固体撮像素子を備える撮像部であ
り、遊戯者Bを撮像する。ここで、遊戯者Bは、両手に
それぞれクロマキー検出用として青色に着色されたグロ
ーブGを装着する。
【0014】2は装置本体であり、図2に示す態様で撮
像部1が撮像した実画像からグローブG像をクロマキー
検出し、このグローブG像の挙動に応じて対戦者E像を
画像制御する。つまり、遊戯者Bのパンチ操作に対応す
るグローブG像の挙動からパンチ位置や速度、あるいは
左パンチ/右パンチを識別してなる操作子パラメータを
抽出し、これに従って対戦者E像を画像制御するもので
あり、例えば、ヒットしたパンチ速度やパンチ加速度に
応じて変化する対戦者E像のダウン状況を動画表示す
る。3は装置本体2の画像制御処理に基づき生成され、
コンピュータグラフィック画像(以下、CG画像と称
す)を動画表示するディスプレイである。なお、CG画
像は、背景シーンを形成するバックグラウンド画像と、
当該バックグラウンド画像上を移動表示されるオブジェ
クト画像(対戦者E像)とを合成したものを指す。
【0015】B.第1実施例の構成 次に、図3を参照して撮像部1および装置本体2の電気
的構成について説明する。 (1)撮像部1の構成 撮像部1は、構成要素10〜13から構成されている。
10は発振回路であり、8倍オーバーサンプリング信号
8fSCを発生して出力する。11はこの8倍オーバーサ
ンプリング信号8fSCを次段のクロックドライバ12に
供給すると共に、CCD13から出力される撮像信号を
サンプリング画像データDSに変換する撮像信号処理部
であり、その構成については後述する。クロックドライ
バ12は、発振回路12から供給される8倍オーバーサ
ンプリング信号8fSCに基づき、水平駆動信号、垂直駆
動信号、水平/垂直同期信号および帰線消去信号等の各
種タイミング信号を発生する一方、上記水平駆動信号お
よび垂直駆動信号に対応する撮像駆動信号を発生してC
CD13に供給する。CCD13は、この撮像駆動信号
に従って対象物(遊戯者B)を撮像して撮像信号SSを
発生する。
【0016】撮像信号処理部11は、CCD13から供
給される撮像信号SSをコンディショニングした後、A
/D変換してサンプリング画像データDSを発生するも
のであり、その概略構成について図4を参照して説明す
る。図4において、11aはサンプリング回路であり、
上述したクロックドライバ12から供給される4倍オー
バーサンプリング信号4fSCに応じて撮像信号SSをサ
ンプリングして次段へ出力する。11bはサンプリング
された撮像信号SSを所定レベルに変換して出力するA
GC(自動利得制御)回路である。
【0017】11cは、撮像信号SSのガンマ特性をγ
=1/2.2に補正して出力するγ補正回路である。1
1dは、このガンマ補正された撮像信号SSを8ビット
長のサンプリング画像データDSに変換して出力するA
/D変換回路である。サンプリング画像データDSは、
後述するビデオ信号処理部20に供給される。11eは
ビデオ信号処理部20から供給されるコンポジット映像
信号DCVをアナログビデオ信号SVに変換して前述した
ディスプレイ3に出力するD/A変換回路である。な
お、上記ビデオ信号処理部20から出力される画像処理
データDSPの内容については追って説明する。
【0018】(2)装置本体2の構成 次に、図3〜図11を参照して装置本体2の構成につい
て説明する。装置本体2は、ビデオ信号処理部20、画
像処理部30、位置検出処理部40および制御部50か
ら構成されており、以下、これら各部について詳述す
る。 ビデオ信号処理部20の構成 ビデオ信号処理部20は、撮像部1から供給されるサン
プリング画像データD Sに対して色差変換処理とクロマ
キー検出処理とを施し、その結果を後述する位置検出処
理部40に供給する。また、この処理部20は、後述す
る画像処理部30から供給される画像処理データDSP
コンポジット映像信号DCVに変換し、前述したD/A変
換回路11e(図4参照)に供給する。なお、この画像
処理データDSPとは、バックグラウンド画像と、当該バ
ックグラウンド画像上を移動表示されるオブジェクト画
像とを合成したCG画像を形成するものである。
【0019】ここで、図5を参照して上記各処理を具現
するビデオ信号処理部20の構成について説明する。図
5において、20aは色分離フィルタであり、サンプリ
ング画像データDSを信号Ye(イエロー)、信号Cy
(シアン)および信号G(グリーン)に色分離して次段
へ出力する。20bは映像信号中における変化点の前後
に対して輝度変調を施して画質調整する輪郭補正回路で
ある。20cはホワイトバランス回路であり、各信号Y
e,Cy,Gを規定レベルに設定して出力する。20d
はバンドパスフィルタで構成される分別フィルタであ
り、各信号Ye,Cyを信号R(赤)および信号B
(青)に分別して出力する。20eは三原色を表わす信
号R,G,Bを各8ビット長の輝度信号Y、色差信号B
−Y,R−Yに変換するマトリクス回路である。
【0020】20fはクロマキー信号発生回路であり、
色差信号B−Y,R−Yが所定レベルに達した場合に
「H」レベルのクロマキー検出信号CROを発生する。
すなわち、この回路20fでは、図6に示すように、色
差B−Yの最大/最小レベルB−YMAX,B−YMINと、
色差R−Yの最大/最小レベルR−YMAX,R−YMIN
が予め定められており、これらレベルによって規定され
た色差領域Eに色差信号B−Y,R−Yが収る場合に、
特定色を検出した旨を表わす「H」レベルのクロマキー
検出信号CROを出力する。なお、この実施例において
は、上記領域Eを「青色」としており、具体的には上述
した撮像部1が青色に着色されたグローブGを撮像する
ことによって、「H」レベルのクロマキー検出信号CR
Oが生成され、当該信号CROは位置検出処理部40に
供給される。
【0021】20gは、マトリクス回路20eから出力
される各8ビット長の輝度信号Y、色差信号B−Y,R
−Yを、4ビット長の輝度信号Y’、2ビット長の色差
信号B−Y’,R−Y’に変換する色差変換回路であ
る。20hは、画像処理部30(後述する)から供給さ
れる画像処理データDSP(RGB信号)を輝度信号Y、
色差信号B−Y,R−Yに変換するマトリクス回路であ
る。20iはセレクタであり、後述する位置検出処理部
40から供給されるセレクト信号SLに応じてマトリク
ス回路20eの出力、あるいはマトリクス回路20hの
出力のいずれかを選択して次段へ供給する。20jはモ
ジュレータである。モジュレータ20jは、セレクタ2
0iを介して供給される輝度信号Y、色差信号B−Y,
R−Yに各種同期信号(水平/垂直同期信号および帰線
消去信号)を重畳したディジタルコンポジット映像信号
CVを生成する。
【0022】上記構成によれば、ビデオ信号処理部20
は、撮像部1から供給されるサンプリング画像データD
Sを輝度信号Y’、2ビット長の色差信号B−Y’,R
−Y’に変換すると共に、クロマキー検出信号CROを
発生して画像処理部30(後述する)側へ供給する。ま
た、この処理部20は、画像処理部30側から入力され
る画像処理データDSP(RGB信号)、あるいは撮像部
1から供給されるサンプリング画像データDSのいずれ
かをセレクト信号SLに応じて選択し、選択されたデー
タをコンポジット映像信号DCVに変換して出力する。な
お、セレクト信号SLは、後述する位置検出処理部40
から供給される信号である。
【0023】画像処理部30の構成 次に、画像処理部30の構成について説明する。画像処
理部30は、ビデオディスプレイプロセッサ(以下、V
DPと略す)31とVRAM32とから構成される。こ
のVDP31の基本的機能は、VRAM32に格納され
るバックグラウンド画像データDBGおよびオブジェクト
画像データDOBを制御部50(後述する)側から供給さ
れる制御信号SCに応じて読み出し、これを1走査ライ
ン毎のドット表示色を表わす画像処理データDSPを発生
することにある。以下、図7を参照して各部の構成につ
いて詳述する。
【0024】図7において、31aはCPUインタフェ
ース回路であり、制御部50を構成するCPU51のバ
スを介して供給される制御信号SCに応じて構成要素3
1b〜31dに各種制御指示を与える。制御信号SC
は、バックグラウンド画像およびオブジェクト画像を表
示制御する各種コマンドや、VRAM32にDMA転送
されるバックグラウンド画像データDBGおよびオブジェ
クト画像データDOBから形成される。31bはVRAM
コントロール回路であり、構成要素31a,31cおよ
び31dから供給される制御信号に対応してVRAM3
2とデータ授受を行う。
【0025】すなわち、VRAMコントロール回路31
bは、上記CPUインタフェース回路31aからDMA
転送する旨の制御信号SCを受けた場合、当該回路31
aを介してDMA転送されるバックグラウンド画像デー
タDBG、あるいはオブジェクト画像データDOBを所定の
記憶エリアに格納する。また、バックグラウンドコント
ロール回路31cからバックグラウンド画像データDBG
を読み出す旨の指示を受けた場合には、対応するデータ
BGを読み出して回路31c側に返送する。これと同様
に、オブジェクトコントロール回路31dからオブジェ
クト画像データDOBを読み出す旨の指示を受けた場合、
対応するデータDOBを読み出して回路31d側に返送す
る。
【0026】バックグラウンドコントロール回路31c
は、回路31aを介して制御部50側から与えられるバ
ックグラウンド表示制御コマンドに基づき、VRAMコ
ントロール回路31bを経由して読み出されたバックグ
ラウンド画像データDBGに対して表示位置を指定した
後、色差データ処理回路31eへ供給する。また、この
回路31cは、上述したビデオ信号処理部20から供給
される輝度信号Y’,色差信号B−Y’,R−Y’、す
なわち、撮像部1によって撮像された1フレーム分のサ
ンプリング画像を、VRAMコントロール回路31bを
介してVRAM32に格納する。換言すれば、撮像した
画像をバックグラウンド画像データDBGにすることも可
能とするよう構成されている。
【0027】オブジェクトコントロール回路31dは、
回路31aを介して制御部50側から与えられるオブジ
ェクトテーブルデータTOBを、オブジェクトテーブルR
AM31fに書き込む。オブジェクトテーブルデータT
OBとは、表示画面におけるオブジェクト画像データDOB
の表示位置を指定する座標データである。また、当該回
路31dは、オブジェクト表示制御コマンドに応じてV
RAM32から読み出されたオブジェクト画像データD
OBに対し、上記オブジェクトテーブルデータT OBを参照
して表示位置を求めると共に、1走査ライン分のオブジ
ェクト画像データDOBをラインバッファRAM31gに
一時記憶する。ラインバッファRAM31gに一時記憶
されるオブジェクト画像データDOBは、1水平走査毎に
更新される。このRAM31gから読み出されたオブジ
ェクト画像データDOBは、色差データ処理回路31eに
供給される。
【0028】色差データ処理回路31eは、バックグラ
ウンドコントロール回路31cおよびオブジェクトコン
トロール回路31dから供給される8ビット長の画像デ
ータDBG,DOBを、周知のカラールックアップテーブル
RAM31hを参照して各4ビット長のR信号,G信号
およびB信号から形成される画像処理データDSPに変換
して出力する。さらに、色差データ処理回路31eは、
画像処理データDSP(RGB信号)の他、信号YSBG
および信号YSOBJを発生する。
【0029】この信号YSBGおよび信号YSOBJ
は、現在出力している画像処理データDSPがバックグラ
ウンド画像データDBGに対応するものであるか、あるい
はオブジェクト画像データDOBに対応するものであるか
を表わす信号である。例えば、現在出力している画像処
理データDSPがバックグラウンド画像データDBGに対応
するものである時には、信号YSBGが「H(ハイ)」
となり、信号YSOBJが「L(ロウ)」になる。一
方、これとは逆に画像処理データDSPがオブジェクト画
像データDOBに対応するものであれば、信号YSBGが
「L」となり、信号YSOBJが「H」になる。
【0030】このように、画像処理部30では、制御部
50側からDMA転送されるバックグラウンド画像デー
タDBGおよびオブジェクト画像データDOBをVRAM3
2に格納しておき、CPU51から供給される制御信号
SC(各種表示制御コマンド)に応じてこのVRAM3
2から画像データDBGあるいは画像データDOBを読み出
し、これを1走査ライン毎のドット表示色を表わす画像
処理データDSPを発生すると共に、当該画像処理データ
SPの属性を表わす信号YSBGおよびYSOBJを出
力するようになっている。
【0031】位置検出処理部40の構成 位置検出処理部40は、複数のロジック素子を配列して
なるゲートアレイ、ラインバッファおよびワークRAM
とから構成されており、後述する制御部50の指示の下
にサンプリング画像データDS中に含まれるクロマキー
像と、オブジェクト画像データDOBによって形成される
オブジェクト画像との衝突座標位置や、これら画像の重
心位置等を予め定められたロジックに基づいて論理演算
する。上記ラインバッファ(図示略)は、ビデオ信号処
理部20から供給されるクロマキー検出信号CROを一
時記憶する。ワークRAMには、ゲートアレイによって
論理演算された各種演算結果が一時記憶される。
【0032】この位置検出処理部40は、上述した画像
処理部30から供給される信号YSBGおよびYSOB
Jに基づき、前述したセレクト信号SLを発生してビデ
オ信号処理部20に与え、サンプリング画像データDS
(実画像)と画像処理データDSP(CG画像)との重な
り具合、つまり、画面表示される画像の優先順位(前後
関係)を制御する。さらに、処理部40は、制御部50
の指示の下に前述した撮像信号処理部11、ビデオ信号
処理部20およびVDP31へそれぞれレジスタコント
ロール信号SREGを供給し、各部レジスタのデータセッ
ト/リセットを制御する。
【0033】次に、図8を参照して位置検出処理部40
における各種演算結果を格納するワークRAMのレジス
タ構成について説明する。図8において、E1は初期画
面エリアであり、水平方向(走査ライン)当り96ドッ
ト、垂直方向に96ラインから形成される初期画面のデ
ータを一時記憶する。初期画面のデータとは、ゲーム開
始に先立って撮像された実画像内に存在するクロマキー
検出結果を指す。シーン内にクロマキー検出色(例え
ば、青色)の物体が存在した場合、前述したグローブG
(図1参照)の一部と誤認する虞がある。そこで、初期
画面エリアE1に一時記憶されるデータは、クロマキー
検出されたドット位置をグローブGと誤認しないように
するため、当該ドット位置を不感帯とする際に用いられ
る。
【0034】E2は水平方向96ドット、垂直方向96
ラインで形成される処理画面エリアであり、ゲーム開始
後に撮像される実画像中でクロマキー検出されるグロー
ブG像と、CG画像中のオブジェクト画像(本実施例で
は、対戦者E像)とが1フレーム毎に更新記憶される。
E3〜E4は、それぞれ1フレーム毎に更新される処理
画面でのグローブG像の上端/下端位置を一時記憶する
上端座標エリア、下端座標エリアである。E5〜E6
は、それぞれ1フレーム毎に更新される処理画面でのグ
ローブG像の左端/右端位置を一時記憶する左端座標エ
リア、右端座標エリアである。E7は第1の衝突座標エ
リアである。第1の衝突座標エリアE1とは、グローブ
G像とオブジェクト画像(対戦者E像)との重なり(衝
突)が最初に検出される走査ライン中の交点を、処理画
面上の座標として表現したものである。また、第2の衝
突座標エリアE8は、グローブG像とオブジェクト画像
(対戦者E像)との重なりが最後に検出される走査ライ
ン中の交点を、処理画面上の座標として表現したもので
ある。
【0035】E9は重心座標エリアであり、実画像にて
クロマキー検出されるグローブG像の面積に基づき算出
される重心位置を処理画面上の座標位置が記憶される。
E10は、実画像にてクロマキー検出されるグローブG
像の面積が記憶される面積エリアである。この面積エリ
アE10にセットされる面積は、ブロック個数で表わさ
れる。ここで言うブロックとは、処理画面において水平
方向6ドット、垂直方向2ラインからなる12ドット領
域を指す。この12ドット領域から形成されるブロック
中に、「6ドット」以上のクロマキー検出があった場
合、そのブロックがグローブG像の面積として見做され
る。
【0036】制御部50の構成 次に、再び図3を参照して制御部50の構成について説
明する。制御部50は、構成要素51〜57から構成さ
れる。CPU51は装置本体2の操作パネルに配設され
る各種操作子をキースキャンし、これに応じて生成され
る操作子信号KSに応じて装置各部を制御するものであ
り、その動作の詳細については後述する。このCPU5
1は、内部タイマを備え、当該タイマによってカウント
されるゲームカウンタ値に基づきゲーム進行を管理す
る。
【0037】また、CPU51は、周知のDMAコント
ローラを備えており、ゲーム動作に必要な各種データ
(バックグラウンド画像データDBGやオブジェクト画像
データDOB)を前述した画像処理部30へDMA転送す
るよう構成されている。52はRAMであり、CPU5
1のワークエリアとして各種演算結果やフラグ値が一時
記憶される。53はCPU51の動作を管理するOS
(オペレーションシステム)プログラムが記憶されるR
OMである。54はCPU51の制御の下に装置全体の
動作を規定するシステムクロックを発生するシステムク
ロック回路である。
【0038】55は装置本体2に対して挿脱自在に装着
されるゲームカートリッジであり、ROM55aと第1
音源回路55bとから構成されている。ROM55a
は、CPU51にロードされるアプリケーションプログ
ラムである。なお、この実施例においては、前述したよ
うに、スパーリング動作をシミュレートするボクシング
ゲームプログラムが記憶されている。55bは第1音源
回路であり、CPU51側から位置検出処理部40を介
して供給されるイベントデータに基づき、ゲーム動作に
対応したゲーム効果音(例えば、パンチ音)を合成し、
これを楽音信号としてCPU51へ出力する。56は第
2音源回路であり、ゲーム進行に対応した楽曲、例え
ば、オープニングやエンディング等の楽曲を楽音合成し
て出力する。57はサウンドシステムであり、上記第1
音源回路55bおよび第2音源回路56から供給される
楽音信号に対してノイズ除去等のフィルタリングを施し
た後、これを増幅して出力する。
【0039】C.第1実施例の動作 次に、上記構成による第1実施例の動作について説明す
る。ここでは、まず、前述した位置検出処理部40の動
作について説明した後、本願発明の要旨に係わる制御部
50(CPU51)の動作について説明する。 (1)位置検出処理部40の動作 ここでは、ゲートアレイによって構成される位置検出処
理部40の動作について図9〜図15を参照して説明す
る。位置検出処理部40では、制御部50の指示の下
に、サンプリング画像データDS中に含まれるグローブ
G像をクロマキー検出信号CROに基づいて検出し、当
該グローブG像とオブジェクト画像データDOBによって
形成されるオブジェクト画像(対戦者E像)との衝突座
標位置や、グローブG像の重心位置をする。以下、こう
した動作の詳細について説明する。
【0040】メインルーチンの動作 まず、装置本体2に電源が投入され、CPU51側から
システムリセットを表わす制御信号SCが位置検出処理
部40に供給されたとする。そうすると、位置検出処理
部40は、上記制御信号SCに基づき、内部にセットさ
れるマイクロプログラムをロードして図9に示すメイン
ルーチンを起動し、ステップSA1を実行する。ステッ
プSA1では、自身の内部レジスタをリセット、あるい
は初期値をセットするイニシャライズを行う一方、撮像
信号処理部11、ビデオ信号処理部20およびVDP3
1へそれぞれレジスタセットを指示するレジスタコント
ロール信号SREGを供給し、次のステップSA2に進
む。
【0041】ステップSA2では、「初期画面マップ」
が作成されているか否かを判断する。ここで、例えば、
「初期画面マップ」が作成されていない場合、判断結果
は「NO」となり、次のステップSA3に処理を進め
る。なお、この「初期画面マップ」とは、ゲーム開始に
先立って、撮像部1が撮像する画面内に、グローブGと
同色の物体が存在するか否かを確認するためのものであ
る。そして、ステップSA3に進むと、複数フレーム分
のクロマキー検出結果を重ね合わせ、これをワークRA
Mの初期画面エリアE1(図8参照)に格納し、これに
より初期画面内に存在するクロマキー検出ブロックを
「不感帯」と見做す「初期画面マップ」を作成する。こ
うした初期画面マップ作成処理の詳細については追って
説明する。
【0042】「初期画面マップ」の作成がなされると、
位置検出処理部40は、次のステップSA4に処理を進
める。なお、「初期画面マップ」が予め用意されている
場合には、上記ステップSA2の判断結果は「YES」
となり、ステップSA4に進む。ステップSA4では、
レジスタX,Yの値をゼロリセットする。なお、レジス
タX,Yには、水平方向96ドット、垂直方向96ライ
ンで形成される画面座標に相当する値が処理内容に応じ
て順次セットされる。
【0043】次に、ステップSA5に進むと、位置検出
処理部40は、ラインバッファに一時記憶されたクロマ
キー検出信号CROに対してブロック単位毎のクロマキ
ー検出を施す。ブロック単位のクロマキー検出とは、ラ
インバッファから読み出したクロマキー検出信号CRO
を水平方向6ドット、垂直方向2ラインからなるブロッ
クに区分けし、「H」レベルのクロマキー検出信号CR
Oがブロック当り「6ドット」以上存在した時に、当該
ブロックの属性を「クロマキー有り」と見做すものであ
る。こうしたクロマキー検出の結果は、前述した処理画
面エリアE2(図8参照)にブロック属性としてストア
され、これが「処理画面マップ」となる。
【0044】次いで、ブロック単位毎のクロマキー検出
がなされると、位置検出処理部40は、次のステップS
A6に進み、クロマキー検出された実画像のグローブG
像とCG画像中におけるオブジェクト画像(対戦者E
像)との衝突の有無を検出し、衝突する場合にはその衝
突座標を求める。そして、ステップSA7に進むと、処
理部40は、レジスタXの値を1インクリメントし、続
いて、ステップSA8ではレジスタXの値が「96」、
つまり、1走査ライン分の処理が完了したか否かを判断
する。ここで、レジスタXの値が「96」に達していな
い場合には、判断結果が「NO」となり、1走査ライン
分の処理が完了する迄、上記ステップSA5〜SA7を
繰り返す。
【0045】一方、1走査ライン分の処理が完了する
と、ここでの判断結果が「YES」となり、ステップS
A9に処理を進め、レジスタXの値を再びゼロリセット
すると共に、レジスタYの値を1インクリメントして走
査ラインを垂直方向に更新する。そして、ステップSA
10に進むと、処理部40はレジスタYの値が「96」
であるか否かを判断する。ここで、レジスタYの値が
「96」に達していない場合には、判断結果が「NO」
となり、上述したステップSA5〜SA9を繰り返す。
そして、1フレーム分の走査が完了すると、ここでの判
断結果が「YES」となり、ステップSA11に処理を
進める。
【0046】ステップSA11では、上記ステップSA
5においてクロマキー検出されたブロックに基づき、グ
ローブG像の左端/右端座標および上端/下端座標を算
出し、これらをワークRAMの記憶エリアE3〜E6
(図8参照)に記憶する一方、クロマキー検出されたブ
ロック個数からグローブG像の面積を求める。なお、記
憶エリアE3〜E4は、それぞれ1フレーム毎に更新さ
れる処理画面でのグローブG像の上端/下端位置を一時
記憶し、記憶エリアE5〜E6は、それぞれ1フレーム
毎に更新される処理画面でのグローブG像の左端/右端
位置を一時記憶する。また、ブロック個数から算出され
るグローブG像の面積は、記憶エリアE10に格納され
る。
【0047】こうして実画像中からグローブG像がクロ
マキー検出されると、位置検出処理部40は、ステップ
SA12に処理を進め、当該グローブG像の重心位置を
求め、続いて、ステップSA13において割込みフラグ
CFが「1」かどうかを判定し、「1」であればCPU
51に対して割込み信号を出力する(ステップSA1
4)。この後、ステップSA15に進み、衝突フラグC
Fを「0」にセットする。この衝突フラグCFとは、実
画像のグローブG像とCG画像のオブジェクト画像(対
戦者E像)とが衝突状態、すなわち、重なり合う場合に
「1」となる。そして、このステップSA13以後、位
置検出処理部40はその処理をステップSA4に戻し、
上述した動作を繰り返し、「ブローブG」と「対戦者
E」との対応関係をフレーム毎に求める。
【0048】初期画面マップ作成ルーチンの動作 次に、図10を参照して初期画面マップ作成ルーチンの
動作について説明する。上述したように、初期画面マッ
プが作成されていない場合、位置検出処理部40はステ
ップSA3に処理を進め、図10に示す初期画面マップ
作成ルーチンをコールしてステップSB1に処理を進め
る。ステップSB1では、内部レジスタにセットされる
サンプリング回数nを読み出す。サンプリング回数nと
は、撮像部1から供給されるクロマキー検出信号CRO
を何フレーム分取り込むかを表わすものである。次い
で、ステップSB2に進むと、レジスタX,Yの値をゼ
ロリセットし、次のステップSB3に進む。ステップS
B3では、ラインバッファに書き込まれたクロマキー検
出信号CROの内、X方向(水平方向)の6ドット分、
Y方向(垂直方向)の2ライン分、すなわち、1ブロッ
ク分を読み出す。
【0049】次いで、ステップSB4に進むと、この読
み出した1ブロック中に「6ドット」以上の「H」レベ
ルのクロマキー検出信号CROが存在するか否かを判断
する。ここで、「6ドット」以上存在しなければ、「ク
ロマキー無し」として判断結果が「NO」となり、ステ
ップSB5に進む。ステップSB5では、そのブロック
属性を「0」として次のステップSB7へ処理を進め
る。一方、これに対し、読み出した1ブロック中に「6
ドット」以上の「H」レベルのクロマキー検出信号CR
Oが存在すると、「クロマキー有り」とされて、上記ス
テップSB4の判断結果が「YES」となり、ステップ
SB6に進む。ステップSB6では、そのブロック属性
を「1」にセットし、次のステップSB7へ処理を進め
る。ステップSB7では、最初のフレームであるか否か
を判断する。ここで、最初にサンプリングしたフレーム
であると、判断結果は「YES」となり、ステップSB
8に進む。
【0050】ステップSB8に進むと、位置検出処理部
40は、現レジスタX,Yの値に応じて初期画面エリア
E1へ判定したブロック属性をストアする。そして、こ
の後、ステップSB9に進み、レジスタXの値を1イン
クリメントし、指定ブロックの番号を歩進させる。次
に、ステップSB10に進むと、この歩進された指定ブ
ロックの番号が「96」、つまり、1走査(水平)ライ
ン分完了したか否かを判断する。ここで、完了していな
い場合には、判断結果が「NO」となり、ステップSB
11に進む。ステップSB11では、レジスタYの値が
「96」、つまり、1フレーム分終了したか否かを判断
する。ここで、1フレーム分の処理が終了していない場
合には、判断結果が「NO」となり、前述したステップ
SB3に戻る。これにより、ステップSB3〜SB6が
繰り返され、次のブロック属性が判定される。
【0051】そして、例えば、いま、1走査(水平)ラ
イン分のブロック属性の判定が完了したとする。そうす
ると、ステップSB10の判断結果が「YES」とな
り、処理部40はステップSB13へ処理を進める。ス
テップSB13では、レジスタXをゼロリセットする一
方、レジスタYの値を1インクリメントして走査ライン
を垂直方向へ1ライン分更新する。そして、この後、再
び、ステップSB11を介してステップSB3以降のブ
ロック判定がなされる。次いで、1フレーム分のブロッ
ク属性について判定が完了すると、上述したステップS
B11の判断結果が「YES」となり、ステップSB1
2に進む。ステップSB12では、サンプリング回数n
が設定回数に達したか否かを判断する。
【0052】ここで、サンプリング回数nが設定回数に
達していない場合には、判断結果が「NO」となり、ス
テップSB14へ処理を進める。ステップSB14で
は、サンプリング回数nを歩進させ、再び前述したステ
ップSB2以降を実行する。このようにして1回目の初
期画面マップが作成され、2回目の初期画面マップの作
成を行う過程で、ステップSB7に処理を進めた場合、
ここでの判断結果が「NO」となり、ステップSB15
に進む。
【0053】ステップSB15では、先にストアされた
対応ブロック属性をレジスタX,Yの値に応じて初期画
面エリアE1から読み出す。そして、ステップSB16
に進むと、先のブロック属性と、現在判定されたブロッ
ク属性との論理和を求める。続いて、ステップSB8で
は、この論理和を新たなブロック属性としてレジスタ
X,Yの値に基づき初期画面エリアE1にストアする。
そして、所定フレーム分の論理和が生成されると、上述
したステップSB12の判断結果が「YES」となり、
このルーチンを終了し、位置検出処理部40の処理は前
述したメインルーチンへ復帰する。
【0054】処理画面マップ作成ルーチンの動作 以上のようにして初期画面マップが作成されると、位置
検出処理部40はステップSA5を介して図11に示す
処理画面マップ作成ルーチンをコールしてステップSC
1を実行する。まず、ステップSC1では、位置検出処
理部40内のラインバッファに書き込まれたクロマキー
検出信号CROの内、X方向(水平方向)6ドット、Y
方向(垂直方向)2ラインからなる1ブロックを読み出
す。次いで、ステップSC2に進むと、その読み出した
1ブロック内に「6ドット」以上の「H」レベルのクロ
マキー検出信号CROが存在するか否かを判断する。こ
こで、「6ドット」以上存在しなければ、「クロマキー
無し」として判断結果が「NO」となり、ステップSC
3に進む。ステップSC3では、そのブロック属性を
「0」として次のステップSC4へ処理を進める。ステ
ップSC4では、この判定されたブロック属性をレジス
タX,Yの値に基づき処理画面エリアE2(図8参照)
にストアする。
【0055】一方、上記ステップSC2の判断結果が
「YES」となった場合、すなわち、1ブロック内に
「6ドット」以上の「H」レベルのクロマキー検出信号
CROが存在する時には、処理部40はステップSC5
に処理を進める。ステップSC5では、リジェクトスイ
ッチSRがオン操作されているか否かを判断する。この
リジェクトスイッチSRとは、装置本体2の操作パネル
に配設されるスイッチであり、そのスイッチ操作に応じ
て「不感帯」を設けるか否かを設定するものである。こ
こで、当該スイッチSRがオン設定されている場合に
は、初期画面マップに記憶されたクロマキー検出ブロッ
クを「不感帯」と見做すようにする。
【0056】すなわち、上記ステップSC5において、
リジェクトスイッチSRがオン設定されている場合に
は、判断結果が「YES」となり、次のステップSC6
に進む。ステップSC6では、初期画面エリアE1から
レジスタX,Yの値に応じて対応するブロック属性を読
み出す。次いで、ステップSC7に進むと、初期画面エ
リアE1から読み出したブロック属性が「1」であるか
否かを判断する。ここで、当該ブロック属性が「1」で
ある時、その判断結果は「YES」となり、上述したス
テップSC3に進み、ブロック属性を「0」に変更し、
その後、ステップSC4を介して、この変更されたブロ
ック属性をレジスタX,Yの値に応じて処理画面エリア
E2に書き込む。この結果、初期画面マップに記憶され
たクロマキー検出ブロックが「不感帯」に設定される訳
である。
【0057】なお、上記リジェクトスイッチSRがオン
設定されない場合、つまり、「不感帯」を設定しない時
には、ステップSC5の判断結果が「NO」となり、ス
テップSC8に進む。ステップSC8では、上述したス
テップSC2において判定された結果に基づき、対応す
るブロックの属性を「1」に設定し、続いて、ステップ
SC4を介してそのブロック属性をレジスタX,Yの値
に応じて処理画面エリアE2に書き込む。
【0058】衝突座標検出ルーチンの動作 次に、図12を参照して衝突座標検出ルーチンの動作に
ついて説明する。上述したように処理画面マップが作成
されると、位置検出処理部40はステップSA6(図9
参照)を介して衝突座標検出ルーチンを実行する。この
ルーチンでは、クロマキー検出された実画像のグローブ
G像とCG画像中におけるオブジェクト画像(対戦者E
像)との衝突の有無を検出するものである。まず、当該
ルーチンが実行されると、処理部40はステップSD1
に処理を進め、処理画面エリアE2からレジスタX,Y
の値に対応するブロック属性を読み出す。そして、ステ
ップSD2に進むと、その読み出したブロック属性が
「1」、すなわち、クロマキー検出されたグローブG像
であるか否かを判断する。ここで、ブロック属性が
「1」でない場合には、判断結果が「NO」となり、衝
突が起こり得ないとして一旦このルーチンを終了する。
【0059】これに対し、読み出したブロック属性が
「1」である時には、判断結果が「YES」となり、次
のステップSD3に処理を進める。ステップSD3で
は、ラインバッファに書き込まれたCGデータをレジス
タX,Yの値に応じて読み出す。ここで言うCGデータ
とは、CG画像中のオブジェクト画像データDOBに対応
する信号YSOBJを指す。なお、信号YSOBJは、
VDP31(図3参照)から処理部40に供給されるも
のである。そして、次のステップSD4に進むと、処理
部40は読み出したCGデータが「1」であるか否かを
判断する。この時、当該CGデータが「1」でなけれ
ば、レジスタX,Yの値に応じて読み出されたブロック
はオブジェクト画像データD OBと重ならないことになる
から、衝突しないとして判断結果が「NO」となり、こ
のルーチンを終了する。
【0060】一方、読み出したCGデータが「1」であ
ると、ステップSD4の判断結果が「YES」となり、
ステップSD5に進む。ステップSD5では、衝突フラ
グCFが「0」であるか否かを判断する。衝突フラグC
Fは、実画像のグローブG像とCG画像のオブジェクト
画像(対戦者E像)とが重なり合う場合に「1」となる
ものである。ここで、当該フラグCFが「0」である場
合、つまり、初めて両画像の衝突が認知された状態で
は、判断結果が「YES」となり、次のステップSD6
に処理を進める。ステップSD6では、最初に検出され
た第1のX座標をを衝突座標エリアE7にストアし、続
いてステップSD7ではこれに対応する第1のY座標を
同エリアE7にストアする。
【0061】そして、ステップSD8に進み、衝突フラ
グCFを「1」にセットする。なお、このようにして衝
突フラグCFが「1」になると、処理部40はCPU5
1側へ割込み要求を出し、これに応じてCPU51が衝
突割込み処理(後述する)を実行するようにしている。
これに対して上記ステップSD5の判断結果が「NO」
の場合、すなわち、既に両画像の衝突が認知された状態
では、ステップSD9に進み、最後に検出された第2の
X座標を衝突座標エリアE8にストアし、続いてステッ
プSD10ではこれに対応する第2のY座標を同エリア
E7にストアする。
【0062】座標検出ルーチンの動作 次に、図13を参照して座標検出ルーチンの動作につい
て説明する。上述した衝突座標検出ルーチンによって、
クロマキー検出された実画像のグローブG像とCG画像
中におけるオブジェクト画像(対戦者E像)との衝突座
標が検出されると、位置検出処理部40はステップSA
11(図9参照)を介して座標検出ルーチンを実行し、
ステップSE1に処理を進める。ステップSE1では、
レジスタX,Yと、レジスタX’,Y’と、レジスタS
とをそれぞれゼロリセットして初期化する。なお、レジ
スタSには、クロマキー検出されたブロックの個数を累
算してなるグローブG像の面積が格納される。また、レ
ジスタX’,Y’に格納される値が意味するところにつ
いては追って説明するものとする。
【0063】次いで、ステップSE2に進むと、処理部
40は、処理画面エリアE2からレジスタX,Yの値に
応じて対応するブロック属性を読み出してステップSE
3に処理を進める。ステップSE3では、その読み出し
たブロック属性が「1」、すなわち、クロマキー検出さ
れたグローブG像であるか否かを判断する。ここで、ブ
ロック属性が「1」でない場合には、判断結果が「N
O」となり、ステップSE4に進む。ステップSE4で
は、レジスタXの値を1インクリメントして歩進させ
る。次いで、ステップSE5に進むと、レジスタXの値
が「96」、つまり、1水平(走査)ライン分のブロッ
ク属性を読み出したか否かを判断する。ここで、1水平
ライン分の読み出しが完了していない場合には、判断結
果が「NO」となり、再び上記ステップSE2へ処理を
戻す。
【0064】そして、例えば、読み出したブロック属性
が「1」であると、ステップSE3の判断結果が「YE
S」となり、ステップSE6に処理を進める。ステップ
SE6では、レジスタXの値がレジスタX’の値より大
であるか否かを判断する。レジスタX’には、前回検出
したX座標がセットされており、この座標値と今回の座
標値との比較結果に応じて右端/左端座標を更新するよ
うにしている。つまり、ここでの判断結果が「NO」に
なると、ステップSE7に進み、レジスタXの値を左端
座標エリアE5(図8参照)にストアしてグローブG像
の左端座標を更新する。一方、ステップSE6の判断結
果が「YES」になると、ステップSE8に進み、レジ
スタXの値を右端座標エリアE6(図8参照)にストア
してグローブG像の右端座標を更新する。
【0065】次いで、ステップSE9に進むと、処理部
40は、レジスタYの値がレジスタY’の値より大であ
るか否かを判断する。ここで、レジスタY’は、上記レ
ジスタX’と同様、前回検出したY座標がセットされて
おり、この座標値と今回の座標値との比較結果に応じて
上端/下端座標を更新するようにしている。つまり、判
断結果が「NO」になると、ステップSE10に進み、
レジスタYの値を上端座標エリアE3(図8参照)にス
トアしてグローブG像の上端座標を更新する。一方、ス
テップSE9の判断結果が「YES」になると、ステッ
プSE11に進み、レジスタYの値を下端座標エリアE
4(図8参照)にストアしてグローブG像の下端座標を
更新する。
【0066】そして、ステップSE12では、レジスタ
Sの値を1インクリメントし、面積を1ブロック増加さ
せる。続いて、ステップSE13に進むと、レジスタ
X,Yの値をそれぞれレジスタX’,Y’に置き換え
る。こうして上記ステップSE2〜SE13の処理が1
水平ライン分なされると、上述したステップSE5の判
断結果が「YES」となり、ステップSE14に進み、
レジスタXの値をゼロリセットすると共に、レジスタY
の値を1歩進させる。次いで、ステップSE15に進む
と、レジスタYの値が「96」、つまり、1フレーム分
の座標検出がなされたか否かを判断する。そして、1フ
レーム分の座標検出が完了していない場合には、前述し
たステップSE2以降が繰り返される。一方、完了した
時には、このルーチンから前述したメインルーチン(図
9参照)に処理を戻す。
【0067】重心計算ルーチンの動作 上記座標検出ルーチンによって、クロマキー検出された
グローブG像の左端/右端座標および上端/下端座標が
検出されると、位置検出処理部40はステップSA12
を介して図14に示す重心計算ルーチンを実行し、ステ
ップSF1に処理を進める。まず、ステップSF1で
は、レジスタXG,YGをゼロリセットする。レジスタ
XG,YGは、それぞれクロマキー検出されたブロック
に基づいて算出されるグローブG像の重心座標が格納さ
れるものである。次に、ステップSF2に進むと、レジ
スタX,Yを初期化し、続いて、ステップSF3では、
処理画面エリアE2からレジスタX,Yの値に対応する
ブロック属性を読み出す。
【0068】次に、ステップSF4に進むと、処理部4
0は、この読み出したブロック属性が「1」、すなわ
ち、クロマキー検出されたグローブG像であるか否かを
判断する。ここで、ブロック属性が「1」でない場合に
は、判断結果が「NO」となり、ステップSF5に進
む。ステップSF5では、レジスタXの値を1インクリ
メントして歩進させる。そして、ステップSF6に進む
と、レジスタXの値が「96」、つまり、1水平(走
査)ライン分のブロック属性を読み出したか否かを判断
する。ここで、1水平ライン分の読み出しが完了してい
ない場合には、判断結果が「NO」となり、再び上記ス
テップSF3に処理を戻す。
【0069】そして、例えば、次に読み出したブロック
属性が「1」であるとする。そうすると、ステップSF
4の判断結果は「YES」となり、処理部40はステッ
プSF7に処理を進める。ステップSF7では、クロマ
キー検出されたブロックを質点と見做し、このブロック
の座標(X,Y)と面積Sとの比を順次累算する重心計
算を行う。なお、面積Sは上述した座標検出ルーチンに
おいてレジスタSに格納されるものである。次いで、ス
テップSF8に進むと、上記ステップSF7の重心計算
結果に応じて重心座標を更新し、続いて、ステップSF
5においてレジスタXの値を歩進させる。
【0070】ここで、1水平ライン分の読み出しが完了
したとすると、ステップSF6の判断結果が「YES」
となり、ステップSF9に進み、レジスタXの値をゼロ
リセットすると共に、レジスタYの値を1歩進させる。
次いで、ステップSF10に進むと、レジスタYの値が
「96」、つまり、1フレーム分の重心計算がなされた
か否かを判断する。そして、1フレーム分の重心計算が
完了していない場合には、判断結果が「NO」となり、
前述したステップSF3以降の処理を繰り返す。一方、
1フレーム分の重心計算が完了した時には、判断結果が
「YES」となり、このルーチンを終了してメインルー
チンに復帰する。
【0071】このように、位置検出処理部40は、撮像
部1側から供給されるサンプリング画像データDS中に
含まれるグローブG像をクロマキー検出信号CROに基
づいて1フレーム毎に処理画面マップを作成し、この処
理画面マップから読み出したブロック属性に従ってグロ
ーブG像とオブジェクト画像(対戦者E像)との衝突座
標位置や、処理画面におけるグローブG像の左端/右端
座標および上端/下端座標を求めると共に、その面積と
重心位置とを算出するようにしている。
【0072】具体的に説明すると、例えば、いま、遊戯
者Bが右手グローブで「ストレートパンチ」を繰り出し
た時に撮像部1がこれを撮像したとする。そうすると、
撮像によって得られたサンプリング画像データDSが位
置検出処理部40側に供給され、位置検出処理部40が
当該サンプリング画像データDS中に含まれるグローブ
G像をクロマキー検出信号CROに基づいて検出し、そ
の検出結果から図15に図示する処理画面マップを作成
する。この処理画面マップには、クロマキー検出された
右手側のグローブG像および左手側のグローブG像が存
在し、これらグローブG像の上端/下端座標および左端
/右端座標が求められ、さらに、両グローブG像の面積
とその重心座標が算出される。
【0073】(2)制御部50(CPU51)の動作 次に、上述した位置検出処理部40から供給される各種
データに基づいて画像制御するCPU51の動作につい
て図16〜図21を参照して説明する。ここでは、ま
ず、CPUメインルーチンについて説明した後、同ルー
チンにおいてコールされる各種割込み処理ルーチンにつ
いて順次説明する。
【0074】メインルーチンの動作 まず、装置本体2に電源が投入されると、CPU51は
ROM53に記憶されたオペレーションシステムプログ
ラムを読み出してロードした後、ゲームカートリッジ5
5に内蔵されるROM55aからアプリケーションプロ
グラムを読み出し、RAM52に展開する。これによ
り、図16に示すCPUメインルーチンが起動され、C
PU51の処理はステップSG1に進む。ステップSG
1では、RAM52に確保される各種レジスタを初期化
すると共に、VDP31および位置検出処理部40へイ
ニシャライズを指定する制御信号SCを供給する。次い
で、ステップSG2に進むと、各部へ割込み許可を与え
る制御信号SCを供給する一方、自身の割込みマスクを
解除する。
【0075】次に、CPU51は、ステップSG3〜ス
テップSG5を介してゲーム開始時の初期画面を形成す
る。すなわち、ステップSG3に進むと、CPU51は
初期画面の背景シーンを形成するバックグラウンド画像
データDBGをVDP31へDMA転送するため、図示さ
れていないDMAコントローラに転送先アドレスおよび
転送元アドレスをセットする。なお、DMA転送は、デ
ィスプレイ3(図1参照)側の垂直帰線期間に同期した
割込み処理により行われる。転送命令がセットされたD
MAコントローラは、CPU51の指示の下、ROM5
5a(図3参照)から転送元アドレスに対応するバック
グラウンド画像データDBGを読み出してVDP31(V
RAM32)へDMA転送する。こうした割込み処理に
ついては追って説明する。
【0076】次いで、ステップSG4に進むと、CPU
51は、画面背景上に表示され、対戦者E像を形成する
オブジェクト画像データDOBをVDP31へDMA転送
するため、DMAコントローラに転送先アドレスおよび
転送元アドレスをセットする。続いて、ステップSG5
では、当該データDOBに対応するオブジェクトテーブル
データTOBの転送先アドレスおよび転送元アドレスをD
MAコントローラにセットする。このオブジェクトテー
ブルデータTOBは、初期画面におけるオブジェクト画像
データDOBの表示位置を指定するものであって、前述し
たオブジェクトテーブルRAM31f(図7参照)に格
納される。以上、ステップSG3〜SG4の処理によっ
て初期画面を形成する際の準備が整い、垂直帰線期間毎
にバックグラウンド画像データDBG、オブジェクト画像
データDOBおよびオブジェクトテーブルデータTOBがD
MA転送され、VDP31がこれらに基づき画像処理デ
ータDSPを生成する。
【0077】こうして初期画面が形成されると、CPU
51はステップSG6に進み、スタートイベントが発生
したか否かを判断する。ここで言うスタートイベントと
は、装置本体2の操作パネルに配設されるスタートスイ
ッチがオン操作された時に発生するイベントである。そ
して、遊戯者Bがゲームを開始させるため、当該スター
トスイッチをオン操作すると、上記スタートイベントが
生成されるから、ここでの判断結果が「YES」とな
り、ステップSG7へ処理を進める。ステップSG7で
は、レジスタtをゼロリセットし、続いて、ステップS
G8に進み、レジスタSTFに「1」をセットして次の
ステップSG9へ処理を進める。一方、スタートイベン
トが生成されない場合には、上記ステップSG6の判断
結果が「NO」となり、ステップSG9へ進む。なお、
上述したレジスタtにはゲーム進行を管理するタイムカ
ウント値が後述する割込み動作によってセットされるよ
うになっている。
【0078】ステップSG9に処理が進むと、CPU5
1は、レジスタSTFの値が「1」、すなわち、ゲーム
開始か否かを表わすスタートフラグがゲーム開始状態に
セットされたか否かを判断する。ここで、「1」がセッ
トされていなければ、判断結果が「NO」となり、スタ
ートイベントが生成されるまで上述したステップSG6
〜SG8を繰り返す。そして、スタートイベントが発生
すると、ステップSG9の判断結果が「YES」とな
り、次のステップSG10に処理を進める。ステップS
G10では、レジスタACKF1にセットされる転送フ
ラグF1が「0」であるか否かを判断する。転送フラグ
F1とは、上述したステップSG5において転送セット
されたオブジェクトテーブルデータTOBがDMA転送さ
れたか否かを表わすものであり、当該フラグF1が
「0」の時にDMA転送完了の旨を表わし、「1」の時
に未転送状態にあることを表わす。
【0079】そして、このフラグF1が「0」である
と、ステップSG10の判断結果が「YES」となり、
次のステップSG11に進む。ステップSG11では、
レジスタtの値、すなわち、ゲーム進行に応じたタイム
カウント値に基づき、対応するオブジェクトテーブルデ
ータTOBを演算する。これにより、対戦者E像を形成す
るオブジェクト画像データDOBの表示位置が定まる。次
に、ステップSG12に進むと、CPU51は予めVD
P31側へDMA転送した複数のオブジェクト画像デー
タDOBの内からレジスタtに格納されるタイムカウント
値に対応する画像データDOBを指定する制御信号SCを
発生する。この結果、ゲーム画面においてテーブルデー
タTOBで指定された位置に該当するオブジェクト画像デ
ータDOBが表示される。
【0080】以上のようにしてゲーム画面が形成される
と、CPU51はステップSG13に進み、レジスタA
CKF1に格納される転送フラグF1を「1」にセット
し、ステップSG14に進む。なお、上述したステップ
SG10において判断結果が「NO」の場合、つまり、
既にオブジェクトテーブルデータTOBがDMA転送され
ている時にもステップSG14へ処理を進める。ステッ
プSG14では、ストップイベントが発生したか否かを
判断する。ストップイベントとは、装置本体2の操作パ
ネルに配設されるストップスイッチがオン操作された時
に発生するイベントである。そして、遊戯者Bがゲーム
を停止させるため、当該ストップスイッチをオン操作す
ると、上記ストップイベントが生成され、ここでの判断
結果が「YES」となり、ステップSG15へ進む。
【0081】ステップSG15では、レジスタSTFに
格納されるスタートフラグを「0」にセットしてゲーム
動作を停止させ、この後、前述したステップSG6に処
理を戻し、再度スタートイベントが発生する迄、ステッ
プSG6〜SG8を繰り返す。一方、上記ステップSG
14において、ストップスイッチがオン操作されない場
合には、ここでの判断結果が「NO」となり、ステップ
SG16へ処理を進める。ステップSG16では、レジ
スタtに格納されるタイムカウント値が所定値Tに達し
たか否かを判断する。ここで、タイムカウント値がゲー
ム終了時間に相当する所定値Tに達していない場合に
は、判断結果が「NO」となり、ステップSG6へ処理
を戻す。これに対し、タイムカウント値が所定値Tに達
した場合には、ステップSGに進み、レジスタtに格納
されるタイムカウント値をゼロリセットした後、ステッ
プSG6へ処理を戻す。
【0082】割込み処理ルーチンの動作 次に、図17〜図21を参照し、CPU51において実
行される各種割込み処理ルーチンの動作について説明す
る。 a.転送割込み処理ルーチンの動作 CPU51は、クロックドライバ12(図3参照)から
垂直帰線信号が供給される毎にDMAコントローラ(図
示略)へ転送指示を与えると共に、図17に示す転送割
込み処理ルーチンを実行する。まず、ステップSJ1で
は、レジスタACKF2に格納される転送フラグF2の
値が「1」、つまり、前述したステップSG5(図16
参照)において転送セットされたオブジェクトテーブル
データTOBが未転送状態にあるか否かを判断する。ここ
で、当該データTOBが既にDMA転送済みであると、転
送フラグF2は「0」になっているから、判断結果は
「NO」となり、後述するステップSJ5に処理を進め
る。
【0083】一方、オブジェクトテーブルデータTOB
未転送状態にあると、判断結果は「YES」となり、次
のステップSJ2へ処理を進める。ステップSJ2で
は、DMAコントローラに転送セットされているオブジ
ェクト画像データDOBをVDP31側へDMA転送し、
続く、ステップSJ3では当該データDOBに対応するオ
ブジェクトテーブルデータTOBをDMA転送する。次い
で、ステップSJ4に進むと、CPU51はレジスタA
CKF2に格納される転送フラグF2を「0」として次
のステップSJ5へ処理を進める。
【0084】次に、ステップSJ5〜SJ9では、前述
した座標検出処理ルーチン(図13参照)によって検出
されたグローブG像のクロマキー面積値の変化に基づ
き、遊戯者Bのパンチ操作の挙動としてパンチ速度およ
びその加速度を抽出する。すなわち、CPU51は、位
置検出処理部40におけるワークRAMの記憶エリアE
10(図8参照)から面積値Sを読み出し、これをAレ
ジスタにセットする。Aレジスタは、現サンプリングフ
レーム中においてクロマキー検出されるグローブG像の
面積値を一時記憶するものである。
【0085】そして、ステップSJ6に進むと、このA
レジスタに格納される現サンプリングフレーム中の面積
値からBレジスタに格納される面積値を減算し、これを
Cレジスタにセットする。ここで、Bレジスタに格納さ
れる面積値は、前サンプリングフレームにおいてクロマ
キー検出されたグローブG像のものである。したがっ
て、Cレジスタには、現サンプリングフレームの面積値
と前サンプリングフレームの面積値との差分によって得
られる1フレーム毎の面積値変化分が書込まれることに
なり、これは、遊戯者Bのパンチ速度を表わす情報(以
下、パンチ速度と称す)に相当する。次いで、ステップ
SJ7に進むと、Aレジスタの内容をBレジスタにセッ
トし、当該Bレジスタの内容をフレーム更新する。
【0086】続いて、ステップSJ8に進むと、CPU
51は、Cレジスタに格納されるパンチ速度からDレジ
スタの内容を減算し、これをEレジスタにセットする。
ここで、Dレジスタには、前サンプリングフレームに対
応するパンチ速度が一時記憶されており、したがって、
Eレジスタには、現サンプリングフレームに対応するパ
ンチ速度と前サンプリングフレームに対応するパンチ速
度との差分に基づき、1フレーム毎のパンチ速度変化
分、すなわち、遊戯者Bのパンチ加速度を表わす情報が
書込まれることになる。そして、ステップSJ9では、
Cレジスタの内容をDレジスタにセットし、当該Dレジ
スタの内容をフレーム更新する。
【0087】以上のように、転送割込み処理ルーチンに
あっては、レジスタACKF2にセットされる転送フラ
グF2に応じて「対戦者E像」を形成するオブジェクト
画像データDOBと、その表示位置を表わすオブジェクト
テーブルデータTOBをVDP31にDMA転送すると共
に、位置検出処理部40においてクロマキー検出される
グローブG像の面積値に基づき、遊戯者Bの「パンチ速
度」および「パンチ加速度」を抽出するようにしてい
る。
【0088】ここで、図18を参照してグローブG像の
面積値に基づき抽出される「パンチ速度」および「パン
チ加速度」の意味合いについて説明しておく。従来、ク
ロマキー像の面積値に基づき、対戦者E像と「グローブ
G」との距離を換算し、面積値が検出閾DL以上である
時に、パンチ操作が対戦者像にヒットしたと見做すよう
にしたが、この場合、例えば、図18(イ)に図示する
ように、遊戯者Bがパンチ操作を意図せず、単にグロー
ブGを前方に差し出す操作を行った時(図中点P参
照)、その面積値が検出閾DLを超えてしまいパンチ操
作が対戦者E像にヒットしたと見做され、誤動作の要因
となっていた。
【0089】そこで、こうした不都合を解消すると共
に、グローブG像の挙動をより詳細に抽出してリアリテ
ィに富んだ画像制御を行うべく、この転送割込み処理ル
ーチンでは、「パンチ速度」および「パンチ加速度」を
検出している訳である。すなわち、図18(ロ)に図示
する一例から判るように、実際のパンチ操作に対応して
増加する面積変化分、つまり、パンチ速度が一定値以上
になった時点(T1)でパンチ操作が対戦者像にヒット
したと見做し、かつ、そのパンチ速度が所定値以下とな
った時点(T2)で、そのパンチ操作がテイクバックさ
れたと見做している。さらに、図18(ハ)に示すよう
に、パンチ速度が一定値以上になった時点(T1)にお
けるパンチ加速度に基づき、そのパンチ操作が一定値を
超える「ハードパンチ」であるか、あるいは「ノーマル
パンチ」であるかを識別し得るようになっている。
【0090】b.衝突割込み処理ルーチンの動作 CPU51では、ゲーム進行に応じたタイムカウント値
に基づいて対戦者E像を形成するオブジェクト画像デー
タDOBおよびオブジェクトテーブルデータTOBを順次D
MA転送するよう制御しており、一方、VDP31側で
はこれらデータDOB,TOBに対応して時々刻々変化する
CG画像を生成する。この時、位置検出処理部40で
は、前述した衝突座標検出処理ルーチン(図12参照)
の動作に基づき、「対戦者E像」と「グローブG像」と
の衝突の有無を随時検出する。そして、位置検出処理部
40が衝突を検出した場合、衝突フラグCFを「1」に
設定することにより、CPU51は図19に示す衝突割
込み処理ルーチンを実行し、ステップSK1へ処理を進
める。
【0091】まず、ステップSK1では、Cレジスタに
セットされる面積値が所定値を超えているか否か、すな
わち、パンチ操作であるか否かを判断する。ここで、C
レジスタにセットされる面積値が所定値を超えない時に
は、パンチ操作でないと判断して一旦、このルーチンを
終了し、メインルーチンへ処理を戻す。一方、Cレジス
タにセットされる面積値が所定値を超えて、パンチ操作
がなされたと見做すと、ここでの判断結果は「YES」
となり、次のステップSK2に処理を進める。
【0092】ステップSK2に進むと、CPU51は、
Eレジスタに格納されるパンチ加速度が所定値を超えて
いるか否か、すなわち、「ハードパンチ」であるか「ノ
ーマルパンチ」であるかを判断する。以下、パンチ種類
に応じた処理動作について説明する。 [1]ハードパンチの場合 この場合、ステップSK2の判断結果が「YES」とな
り、ステップSK3に処理を進める。ステップSK3で
は、位置検出処理部40が検出した右端座標(図15参
照)から重心座標を減算し、その値をFレジスタに書込
む。次いで、ステップSK4に進むと、上記ステップS
K3と同様にして、位置検出処理部40が検出した左端
座標から重心座標を減算し、その値をGレジスタに書込
む。そして、次のステップSK5に進み、このFレジス
タにセットされた値がGレジスタにセットされた値より
小さいか否か、すなわち、左パンチであるか右パンチで
あるかを識別する。
【0093】例えば、図15に図示した一例では、遊戯
者Bの右手グローブG側に重心座標が位置するから「F
<G」の関係となり、この場合、「右パンチ」と見做し
て判断結果が「YES」となり、次のステップSK6に
処理を進める。これに対し、遊戯者Bの左手グローブG
側に重心座標が位置した時には、「F>G」の関係にな
るから、この場合、「左パンチ」と見做されて判断結果
が「NO」となり、ステップSK7に処理を進める。
【0094】そして、「右パンチ」に対応してステップ
SK6に処理を進めた時には、後述する第1画像処理ル
ーチンの動作に基づき、例えば、「右のハードパンチ」
に応じて対戦者E像が左後方へ倒れ込むよう表示するオ
ブジェクト画像データDOBを選択する。また、「左パン
チ」に対応してステップSK6に処理を進めた時には、
後述する第2画像処理ルーチンの動作により、例えば、
「左のハードパンチ」に応じて対戦者E像が右後方へ倒
れ込むよう表示するオブジェクト画像データD OBを選択
する。
【0095】[2]ノーマルパンチの場合 この場合、ステップSK2の判断結果が「NO」とな
り、ステップSK8に処理を進める。ステップSK8で
は、位置検出処理部40が検出した右端座標から重心座
標を減算し、その値をFレジスタに書込む。次いで、ス
テップSK9に進むと、上記ステップSK4と同様に、
左端座標から重心座標を減算してその値をGレジスタに
書込む。次いで、ステップSK10に進むと、CPU5
1はこのFレジスタおよびGレジスタにセットされた値
に基づき左パンチであるか右パンチであるかを識別す
る。
【0096】そして、「右パンチ」と見做し、ステップ
SK10の判断結果が「YES」となると、ステップS
K11に処理を進め、「左パンチ」と見做した時にはス
テップSK12に処理を進める。「右パンチ」に対応し
てステップSK11に処理を進めた時には、後述する第
3画像処理ルーチンの動作に基づき、例えば、対戦者E
像が左後方へのけぞるよう表示するオブジェクト画像デ
ータDOBを選択する。一方、「左パンチ」に対応してス
テップSK12に処理を進めた時には、後述する第4画
像処理ルーチンの動作により、例えば、対戦者E像が右
後方へのけぞるよう表示するオブジェクト画像データD
OBを選択する。
【0097】c.画像処理ルーチンの動作 次に、上記第1〜第3画像処理ルーチンの動作について
図20を参照して説明する。図20は、これら第1〜第
3画像処理ルーチンの処理内容を共通化したフロチャー
トである。まず、ステップSL1では、左右パンチの種
別およびパンチ強弱に対応したオブジェクト画像データ
OBを選択し、続く、ステップSL2では、レジスタA
CKF2に格納される転送フラグF2を「1」にセット
し、オブジェクトテーブルデータTOBが未転送状態にあ
ることをDMAコントローラに知らせる。これにより、
選択されたオブジェクト画像DOBの表示位置を定めるオ
ブジェクトテーブルデータTOBがDMA転送され、対戦
者E像がディスプレイ3に画面表示される。なお、左右
パンチの種別およびパンチ強弱に対応して選択されるオ
ブジェクト画像データDOBは、レジスタtに格納される
タイムカウント値に応じて時々刻々変化して動画表示さ
れる。
【0098】したがって、例えば、第1画像処理ルーチ
ンでは「右のハードパンチ」に応じて対戦者E像が左後
方へ倒れ込むよう動画表示し、第2画像処理ルーチンで
は「左のハードパンチ」に応じて対戦者E像が右後方へ
倒れ込むよう動画表示する。また、第3画像処理ルーチ
ンでは「右のノーマルパンチ」に応じて対戦者E像が左
後方へのけぞるよう動画表示し、第4画像処理ルーチン
では「左のノーマルパンチ」に応じて対戦者E像が右後
方へのけぞるよう動画表示する。
【0099】d.タイマインタラプト処理ルーチン 次に、ゲーム進行を管理するタイムカウント値を発生す
るタイマインタラプト処理ルーチンの動作について図2
1を参照して説明する。CPU51は、システムクロッ
ク回路24から供給されるシステムクロックに基づき、
所定周期毎に本ルーチンを起動し、ステップSM1を実
行し、レジスタtに格納されるタイムカウント値を1イ
ンクリメントして歩進させている。
【0100】以上のように、第1実施例においては、ク
ロマキー検出されるグローブG像の位置および面積を検
出する一方、その面積変化から遊戯者Bのパンチ速度
と、そのパンチ速度変化からパンチ加速度とを抽出し、
これらグローブGの挙動を表わす各種パラメータに応じ
てリアリティに富んだ画像制御を行うことが可能になっ
ている。
【0101】D.第2実施例 次に、図22を参照して本発明の第2実施例について説
明する。図22は、第2実施例による画像制御装置の全
体構成を示す外観図であり、バッティング動作をシミュ
レートするゲームに適用した一例を図示するものであ
る。この図において、図1に示す第1実施例と共通する
部分には同一の番号を付し、その説明を省略する。第2
実施例においては、遊戯者Bがクロマキー検出用として
青色に着色されたバットBATを操作子としてバッティ
ング動作し、装置本体2が撮像部1から供給される撮像
信号にクロマキー検出を施し、実画像座標におけるバッ
トBATの位置や速度を判別する。また、装置本体2
は、ゲームの背景シーンとなるバックグラウンド画像
と、このバックグラウンド画像上を移動表示されるオブ
ジェクト画像とを合成し、これをコンピュータグラフィ
ック画像(以下、CG画像と称す)としてディスプレイ
3に表示する。
【0102】装置本体2は、図23(イ)に示すよう
に、CG画像中に表示されるボール位置からその重心位
置を求める一方、同図(ロ)に示すように、実画像から
クロマキー検出されたバットBAT像の重心位置を算出
する。そして、CG画像中の「ボール」と実画像中の
「バットBAT」とが衝突するか否かを所定タイミング
毎に判定し、衝突する際には、ミートするタイミング時
点で両重心位置の差に応じて打撃具合を求める。例え
ば、図23(ロ)のように、衝突時点に両重心位置が一
致すれば、ジャストミートとして「ホームラン」とする
ように現実に近いシミュレーションを行う。
【0103】第2実施例は、上述した第1実施例と同一
の構成を備える上、各部動作もほぼ同一である。この第
2実施例が第1実施例と異なる点は、第1実施例のもの
がクロマキー検出されるグローブG像の位置および面積
を検出する一方、その面積変化から遊戯者Bのパンチ速
度と、そのパンチ速度変化からパンチ加速度とを抽出
し、これらグローブGの挙動を表わす各種パラメータに
応じて画像制御を行うのに対し、第2実施例ではクロマ
キー検出されるバットBAT像の面積変化に基づき当該
バットBATのスイング速度を検出し、検出したスイン
グ速度に応じてバッティング動作をより具体的にシミュ
レートすることにある。したがって、以下では、こうし
た第2実施例に特有な動作を実現する衝突割込み処理ル
ーチンと第n画像処理ルーチンとについて説明する。
【0104】衝突割込み処理ルーチンの動作 CPU51では、ゲーム進行に応じたタイムカウント値
に基づいてゲーム画面を形成するオブジェクト画像デー
タDOB2およびオブジェクトテーブルデータT OB2を順
次DMA転送するよう制御しており、一方、VDP31
側ではこれらデータDOB2,TOB2に対応するオブジェ
クト画像とクロマキー検出されるバットBAT像とを合
成し、時々刻々変化するCG画像を生成する。この時、
位置検出処理部40では、衝突座標検出処理ルーチン
(図12参照)の動作に基づき、「バット像」と「ボー
ル像」との衝突の有無を随時検出する。そして、位置検
出処理部40が衝突を検出した場合、衝突フラグCFを
「1」に設定することにより、CPU51は図24に示
す衝突割込み処理ルーチンを実行し、ステップSN1へ
処理を進める。
【0105】ステップSN1では、レジスタtにセット
されるタイムカウント値が所定値T 1〜T2の範囲に収っ
ているか否かを判断する。タイムカウント値は、ゲーム
開始直後からカウントされ、ゲーム進行を管理する値で
ある。また、ここで言う所定値T1〜T2とは、「バット
像」と「ボール像」とがミートする際の有効期間を指
す。つまり、このステップSN1では、「バット像」と
「ボール像」とが衝突したタイミングがミートの有効期
間内にあるか否かを判断している。ここで、例えば、遊
戯者BがバットBATを早目に振ったり、振り遅れたり
すると、衝突したタイミングがミートの有効期間を外す
ことになるから、判断結果は「NO」となり、このルー
チンを完了する。
【0106】これに対し、衝突したタイミングがミート
の有効期間内にあると、判断結果は「YES」となり、
次のステップSN2へ処理を進める。ステップSN2で
は、クロマキー検出された「バットBAT像」の重心位
置、すなわち、位置検出処理部40のワークRAMにお
ける重心座標エリアE9から重心座標を取り込む。次い
で、ステップSN3に進むと、オブジェクト画像データ
OB2から形成される「ボール像」の重心位置と、クロ
マキー検出された「バットBAT像」の重心位置との対
応関係を判定する。
【0107】ここで、両者の重心位置が一致した場合に
は、ステップSN4に進み、後述する第1画像処理ルー
チンが実行される。また、「ボール像」の重心が「バッ
トBAT像」の重心より下方に位置する場合には、ステ
ップSN5に進み、後述する第2画像処理ルーチンが実
行される。さらに、「ボール像」の重心が「バットBA
T像」の重心より上方に位置する場合には、ステップS
N6に進み、後述する第3画像処理ルーチンが実行され
る。
【0108】画像処理ルーチンの動作 次に、上記第1〜第3画像処理ルーチンの動作について
図25〜図27を参照して説明する。図25は、これら
第1〜第3画像処理ルーチンの処理内容を共通化したフ
ロチャートである。まず、ステップSP1では、Cレジ
スタに格納されるバットBATのスイング速度が所定値
を超えているか否かを判断する。なお、ここで言うバッ
トBATのスイング速度とは、クロマキー検出されたバ
ットBAT像の面積変化分から得られる情報であり、前
述した第1実施例における転送割込み処理ルーチン(図
17参照)と同様の処理にて求められる。そして、この
ステップSP1において、Cレジスタに格納されるバッ
トBATのスイング速度が所定値を超えた時には「ヒッ
ト」と見做し、スイング速度が所定値を超えない時には
「凡打」と見做して画像制御する。以下、これら各場合
毎の動作について説明する。
【0109】a.スイング速度が所定値を超えた場合の
動作 この場合、ステップSP1の判断結果が「YES」とな
り、ステップSP2に処理を進める。ステップSP2に
進むと、CPU51は、ボール像の重心位置とバット像
の重心位置との対応関係、すなわち、図26に図示する
ようにバット下部にボールが衝突するケース、図27に
図示するようにバット上部にボールが衝突するケース、
あるいはジャストミートするケースのいずれかに対応す
るオブジェクト画像データDOB2群を指定する。次い
で、ステップSP3に進むと、このステップSP2にお
いて指定されたオブジェクト画像データDOB2群の内か
らレジスタtのタイムカウント値に対応する1つのオブ
ジェクト画像データDOB2を選択する。そして、ステッ
プSP4に進むと、レジスタtに格納されるタイムカウ
ント値に基づいて指定されたオブジェクト画像データD
OB2(「ボール像」)の表示位置を演算する。
【0110】したがって、第1画像処理ルーチンにあっ
ては、「ボール像」の重心と「バットBAT像」の重心
とが一致するから、実際のバッティングと同様に、”ホ
ームラン”となるように「ボール像」をCG画像中で動
画表示する。また、第2画像処理ルーチンでは、図26
に図示するように、「ボール像」の重心が「バットBA
T像」の重心より下方に位置するバッティングとなるの
で、例えば、ヒット性の”ゴロ”となるよう「ボール
像」をCG画像中で動画表示する。さらに、第3画像処
理ルーチンでは、図27に図示するように、「ボール
像」の重心が「バットBAT像」の重心より上方に位置
するバッティングとなるので、例えば、ヒット性の”ラ
イナー”となるように「ボール像」をCG画像中で表示
する。
【0111】このようにして、「ボール像」の重心位置
と「バットBAT像」の重心位置との対応関係に応じた
CG画像を生成すると、CPU51はステップSP5に
処理を進め、レジスタACKF2に格納される転送フラ
グF2を「1」にセットする。次いで、ステップSP6
に進むと、レジスタtに格納されるタイムカウント値が
ゲーム終了値ENDに達したか否かを判断する。ここ
で、タイムカウント値が当該ゲーム終了値ENDに達し
た場合には、判断結果が「YES」となり、ステップS
P7に進み、タイムカウント値をゼロリセットしてこの
ルーチンを完了する。
【0112】一方、タイムカウント値がゲーム終了値E
NDに満たない場合には、上記ステップSP6の判断結
果が「NO」となり、ステップSP8に進む。ステップ
SP8では、ストップイベントが発生したか否かを判断
する。ここで、ストップイベントが発生していない場合
には、判断結果が「NO」となり、上述したステップS
P3以降を繰り返す。これに対して、ストップイベント
が発生すると、判断結果が「YES」となって、ステッ
プSP9に進み、レジスタSTFに格納されるスタート
フラグを「0」にセットし、ゲーム終了の旨を表わして
このルーチンを完了する。
【0113】b.スイング速度が所定値を超えない場合
の動作 この場合、ステップSP1の判断結果が「NO」とな
り、ステップSP10に進む。ステップSP10では、
上述したステップSP2と同様、ボール像の重心位置と
バット像の重心位置との対応関係に従ってオブジェクト
画像データDOB2群を指定する。次いで、ステップSP
11では、このステップSP10において指定されたオ
ブジェクト画像データDOB2群の内からレジスタtのタ
イムカウント値に対応する1つのオブジェクト画像デー
タDOB2を選択する。続いて、ステップSP12では、
レジスタtに格納されるタイムカウント値に基づいて指
定されたオブジェクト画像データDOB2(「ボール
像」)の表示位置を演算する。
【0114】これにより、第1画像処理ルーチンにあっ
ては、「ボール像」の重心と「バットBAT像」の重心
とが一致するが、スイング速度が遅いため、実際のバッ
ティングと同様に、例えば、凡打性の”ライナー”とな
るように「ボール像」をCG画像中で動画表示する。ま
た、第2画像処理ルーチンでは、図26に図示するよう
に、「ボール像」の重心が「バットBAT像」の重心よ
り下方に位置するバッティングとなるので、例えば、凡
打性の”ゴロ”となるよう「ボール像」をCG画像中で
動画表示する。さらに、第3画像処理ルーチンでは、図
27に図示するように、「ボール像」の重心が「バット
BAT像」の重心より上方に位置するバッティングとな
るので、例えば、”キャッチャーフライ”となるように
「ボール像」をCG画像中で表示する。
【0115】こうして「ボール像」の重心位置と「バッ
トBAT像」の重心位置との対応関係に応じたCG画像
を生成すると、CPU51はステップSP13に進み、
レジスタACKF2に格納される転送フラグF2を
「1」にセットした後、ステップSP14に処理を進
め、レジスタtに格納されるタイムカウント値がゲーム
終了値ENDに達したか否かを判断する。ここで、タイ
ムカウント値が当該ゲーム終了値ENDに達した場合に
は、判断結果が「YES」となり、ステップSP15に
進み、タイムカウント値をゼロリセットしてこのルーチ
ンを完了する。
【0116】一方、タイムカウント値がゲーム終了値E
NDに満たない場合には、上記ステップSP14の判断
結果が「NO」となり、ステップSP16に進む。ステ
ップSP16では、ストップイベントが発生したか否か
を判断する。ここで、ストップイベントが発生していな
い場合には、判断結果が「NO」となり、上述したステ
ップSP11以降を繰り返す。これに対して、ストップ
イベントが発生すると、判断結果が「YES」となっ
て、ステップSP17に進み、レジスタSTFに格納さ
れるスタートフラグを「0」にセットし、ゲーム終了の
旨を表わしてこのルーチンを完了する。
【0117】このように、第2実施例にあっては、クロ
マキー検出されるバットBAT像の面積変化に基づきバ
ットBATのスイング速度を検出し、検出したスイング
速度に応じてバッティング動作をシミュレートするの
で、例えば、ボール像に衝突するバットBATのスイン
グ速度が所定値を超えた時には、衝突状況に応じて「ホ
ームラン」あるいは「ヒット性の当たり」を動画表示
し、一方、スイング速度が所定値を超えない時には、
「凡打」を動画表示することが可能となり、実際に即し
たリアリティのある画像制御が実現する。
【0118】なお、上述した実施例にあっては、ボクシ
ングのスパーリング動作やバッテイング動作をシミュレ
ートする画像制御装置について開示したが、本発明によ
る要旨はこれら態様にのみ限定されるものではなく、例
えば、「テニス」や「ゴルフ」等、遊戯者の運動行動を
取り入れた各種ゲームはもとより、クロマキー検出を用
いて画像制御する装置であれば、本発明の要旨を適用で
き、これによってリアリティに富んだ画像制御が可能と
なる。
【0119】
【発明の効果】本発明によれば、クロマキー抽出手段が
特定色に着色された操作子を撮像してなる撮像画像から
当該操作子に対応するクロマキー像を抽出し、パラメー
タ発生手段がクロマキー像の経時変化に応じて前記操作
子の挙動を表わす複数の操作パラメータを発生する。そ
して、表示制御手段がこのパラメータ発生手段によって
生成される前記複数の操作パラメータに従って表示手段
に画像表示されるオブジェクト画像の表示態様を制御す
るので、操作子のクロマキー像から操作子の挙動を表わ
す複数の操作パラメータを得ることができ、これによ
り、実際の操作に即したリアリティに富んだ画像制御を
行うことができる。
【図面の簡単な説明】
【図1】本発明の第1実施例による画像制御装置の全体
構成を示す外観図である。
【図2】第1実施例の概要を説明するための図である。
【図3】第1実施例の電気的構成を示すブロック図であ
る。
【図4】第1実施例における撮像信号処理部11の構成
を示すブロック図である。
【図5】第1実施例におけるビデオ信号処理部20の構
成を示すブロック図である。
【図6】ビデオ信号処理部20におけるクロマキー信号
発生回路20fを説明するための図である。
【図7】第1実施例におけるVDP31の構成を示すブ
ロック図である。
【図8】第1実施例における位置検出処理部40のワー
クRAMの内容を説明するためのメモリマップである。
【図9】位置検出処理部40におけるメインルーチンの
動作を示すフローチャートである。
【図10】位置検出処理部40における初期画面マップ
作成ルーチンの動作を示すフローチャートである。
【図11】位置検出処理部40における処理画面マップ
作成ルーチンの動作を示すフローチャートである。
【図12】位置検出処理部40における衝突座標検出処
理ルーチンの動作を示すフローチャートである。
【図13】位置検出処理部40における座標検出処理ル
ーチンの動作を示すフローチャートである。
【図14】位置検出処理部40における重心計算処理ル
ーチンの動作を示すフローチャートである。
【図15】位置検出処理部40における処理画面マップ
の一例を説明するための図である。
【図16】第1実施例におけるCPUメインルーチンの
動作を示すフローチャートである。
【図17】CPU51における転送割込み処理ルーチン
の動作を示すフローチャートである。
【図18】同転送割込み処理ルーチンにおいて定義され
るパンチ速度およびパンチ加速度を説明するための図で
ある。
【図19】CPU51における衝突割込み処理ルーチン
の動作を示すフローチャートである。
【図20】CPU51における第n画像処理ルーチンの
動作を示すフローチャートである。
【図21】CPU51におけるタイマインタラプトルー
チンの動作を示すフローチャートである。
【図22】本発明の第2実施例による画像制御装置の概
要を説明するための図である。
【図23】第2実施例の概要を説明するための図であ
る。
【図24】第2実施例による衝突割込み処理ルーチンの
動作を示すフローチャートである。
【図25】第2実施例による第n画像処理ルーチンの動
作を示すフローチャートである。
【図26】第2実施例による第n画像処理ルーチンの動
作を説明するための図である。
【図27】第2実施例による第n画像処理ルーチンの動
作を説明するための図である。
【符号の説明】
1 撮像部(クロマキー抽出手段) 2 装置本体 3 ディスプレイ 20 ビデオ信号処理部(クロマキー抽出手段) 30 画像処理部(表示制御手段) 40 位置検出処理部(クロマキー抽出手段) 50 制御部 51 CPU(パラメータ発生手段、表示制御手段)

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 特定色に着色された操作子を撮像してな
    る撮像画像から当該操作子に対応するクロマキー像を抽
    出するクロマキー抽出手段と、 前記クロマキー抽出手段が抽出したクロマキー像の経時
    変化に応じて前記操作子の挙動を表わす複数の操作パラ
    メータを発生するパラメータ発生手段と、 このパラメータ発生手段によって生成される前記複数の
    操作パラメータに従って表示手段に画像表示されるオブ
    ジェクト画像の表示態様を制御する表示制御手段とを具
    備することを特徴とする画像制御装置。
  2. 【請求項2】 特定色に着色された操作子を撮像してな
    る撮像画像から当該操作子に対応するクロマキー像を抽
    出するクロマキー抽出手段と、 前記クロマキー抽出手段が抽出したクロマキー像の面積
    を検出し、検出した面積の経時変化に応じて前記操作子
    の操作速度を発生する操作速度発生手段と、 前記操作速度に応じて表示手段に画像表示されるオブジ
    ェクト画像の表示態様を制御する表示制御手段とを具備
    することを特徴とする画像制御装置。
  3. 【請求項3】 前記操作速度発生手段は、現撮像フレー
    ムにおいて検出されるクロマキー像の面積と前撮像フレ
    ームにおいて検出されたクロマキー像の面積との差分か
    ら前記操作速度を生成することを特徴とする請求項2記
    載の画像制御装置。
  4. 【請求項4】 特定色に着色された操作子を撮像してな
    る撮像画像から当該操作子に対応するクロマキー像を抽
    出するクロマキー抽出手段と、 前記クロマキー抽出手段が抽出したクロマキー像の面積
    を検出し、検出した面積の経時変化に応じて前記操作子
    の操作速度を発生する操作速度発生手段と、 この操作速度発生手段が生成した操作速度の経時変化に
    応じて前記操作子の操作加速度を発生する操作加速度発
    生手段と、 前記操作速度および前記操作加速度に応じて表示手段に
    画像表示されるオブジェクト画像の表示態様を制御する
    表示制御手段とを具備することを特徴とする画像制御装
    置。
  5. 【請求項5】 前記操作加速度発生手段は、現撮像フレ
    ームに対応して生成される操作速度と前撮像フレームに
    対応して生成された操作速度との差分から前記操作加速
    度を生成することを特徴とする請求項4記載の画像制御
    装置。
JP6204650A 1994-08-05 1994-08-05 画像制御装置 Pending JPH0850661A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6204650A JPH0850661A (ja) 1994-08-05 1994-08-05 画像制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6204650A JPH0850661A (ja) 1994-08-05 1994-08-05 画像制御装置

Publications (1)

Publication Number Publication Date
JPH0850661A true JPH0850661A (ja) 1996-02-20

Family

ID=16494007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6204650A Pending JPH0850661A (ja) 1994-08-05 1994-08-05 画像制御装置

Country Status (1)

Country Link
JP (1) JPH0850661A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2003095048A1 (ja) * 2002-05-08 2005-09-08 コナミ株式会社 ゲーム装置
JP2008023359A (ja) * 2002-05-08 2008-02-07 Konami Digital Entertainment:Kk ゲーム装置
US7452275B2 (en) 2001-06-29 2008-11-18 Konami Digital Entertainment Co., Ltd. Game device, game controlling method and program
WO2011010414A1 (ja) * 2009-07-21 2011-01-27 株式会社ソニー・コンピュータエンタテインメント ゲーム装置
JP2011036483A (ja) * 2009-08-12 2011-02-24 Hiroshima Industrial Promotion Organization 画像生成システム、制御プログラム、及び記録媒体
US7932908B1 (en) 1999-10-04 2011-04-26 Ssd Company Limited Apparatus systems, and the methods for stimulating movement of a ball in response to a signal generated in an input device moved by a game player
US8722347B2 (en) 1997-12-09 2014-05-13 Massachusetts Institute Of Technology Optoelectronic sensor

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8722347B2 (en) 1997-12-09 2014-05-13 Massachusetts Institute Of Technology Optoelectronic sensor
US7932908B1 (en) 1999-10-04 2011-04-26 Ssd Company Limited Apparatus systems, and the methods for stimulating movement of a ball in response to a signal generated in an input device moved by a game player
US7452275B2 (en) 2001-06-29 2008-11-18 Konami Digital Entertainment Co., Ltd. Game device, game controlling method and program
JPWO2003095048A1 (ja) * 2002-05-08 2005-09-08 コナミ株式会社 ゲーム装置
JP2008023359A (ja) * 2002-05-08 2008-02-07 Konami Digital Entertainment:Kk ゲーム装置
WO2011010414A1 (ja) * 2009-07-21 2011-01-27 株式会社ソニー・コンピュータエンタテインメント ゲーム装置
US8721444B2 (en) 2009-07-21 2014-05-13 Sony Corporation Game device for performing operation object control and non-operation object control
JP2011036483A (ja) * 2009-08-12 2011-02-24 Hiroshima Industrial Promotion Organization 画像生成システム、制御プログラム、及び記録媒体

Similar Documents

Publication Publication Date Title
JP3766981B2 (ja) 画像制御装置および画像制御方法
JP3529138B2 (ja) 画像処理装置、画像処理方法及びこれを用いたゲーム装置並びに記憶媒体
US6835136B2 (en) Game system, computer readable storage medium storing game program and image displaying method
US6149520A (en) Video game method and apparatus for effecting character movement and ball control determination
JP3145064B2 (ja) ビデオゲーム機及びビデオゲームプログラムを記録した媒体
WO1996036017A1 (fr) Appareil de traitement d'images et procede associe
US8506371B2 (en) Game device, game device control method, program, information storage medium
JP3463379B2 (ja) 画像制御装置及び画像制御方法
JPH0850661A (ja) 画像制御装置
US6719628B2 (en) Video game device, play result display method of video game, and readable recording medium where play result display method program is recorded
JP3451343B2 (ja) 信号生成装置及び信号生成方法
JPH07271982A (ja) 画像制御装置
JP3371535B2 (ja) 画像制御装置および画像制御方法
JP3407394B2 (ja) 画像表示制御装置および画像表示制御方法
US6354942B1 (en) Method for executing game and game device for implementing same
JP3622234B2 (ja) 画像制御装置、および、画像制御方法
JPH07302324A (ja) 画像制御装置
JPH07282265A (ja) 画像制御装置
JPH07282236A (ja) 画像制御装置
JPH0879621A (ja) 画像制御装置
JPH0887592A (ja) 画像制御装置
JPH0855212A (ja) 画像制御装置
JP3371521B2 (ja) 信号生成装置及び信号生成方法
JP3586880B2 (ja) 画像抽出装置及び画像抽出方法
JP3912658B2 (ja) 画像処理装置、画像処理方法及びこれを用いたゲーム装置並びに記憶媒体

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041027

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050228

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050405

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20050527