JPH1176615A - 連射検出方法及び記録媒体 - Google Patents

連射検出方法及び記録媒体

Info

Publication number
JPH1176615A
JPH1176615A JP9224443A JP22444397A JPH1176615A JP H1176615 A JPH1176615 A JP H1176615A JP 9224443 A JP9224443 A JP 9224443A JP 22444397 A JP22444397 A JP 22444397A JP H1176615 A JPH1176615 A JP H1176615A
Authority
JP
Japan
Prior art keywords
operation data
game
data
continuous
function
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
Application number
JP9224443A
Other languages
English (en)
Other versions
JP3145062B2 (ja
Inventor
Tetsuhiro Imamura
哲裕 今村
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.)
Konami Group Corp
Original Assignee
Konami Corp
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 Konami Corp filed Critical Konami Corp
Priority to JP22444397A priority Critical patent/JP3145062B2/ja
Publication of JPH1176615A publication Critical patent/JPH1176615A/ja
Application granted granted Critical
Publication of JP3145062B2 publication Critical patent/JP3145062B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 競争ゲーム等のようにゲームプレーヤが自分
でボタンを連打することを前提とするゲームにおいて、
連射機能が用いられていないときのみ操作ボタンの入力
を有効とすることにより、不正を防止し、ゲーム性が損
なわれないようにすることを課題とする。 【解決手段】 競争ゲーム等のようにゲームプレーヤが
自分でボタンを連打することを前提とするゲームにおい
て、人間の手によっては不可能な程に高速かつ規則正し
く操作ボタンを叩いた状態を電気的に作り出せる連射機
能の搭載されたコントローラが用いられた場合におい
て、連射機能が用いられているか否かを検出し、連射機
能が用いられていないときのみ操作ボタンの入力を有効
とする。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ゲームデータの記
録された、光ディスク、磁気ディスク、半導体メモリを
用いたカセット式記録媒体等を用いるゲームシステムに
適用して好適な連射検出方法及び記録媒体に関する。
【0002】
【従来の技術】ゲームシステムは数多く提案されてい
る。家庭用の専用機とテレビジョンモニタとからなるシ
ステム、業務用の専用機、パーソナルコンピュータ若し
くはワークステーションとディスプレイと音声出力機と
からなるシステム等である。これらのシステムは、何れ
も、プレーヤが操作するためのコントローラと、ゲーム
プログラムデータと画像や音声などのデータからなるゲ
ームデータの記録された記録媒体と、ゲームプログラム
データに基いて音声や画像の生成のための制御を行うC
PUと、画像を処理するためのプロセッサと、音声を処
理するためのプロセッサと、画像を表示するためのCR
Tと、音声を出力するためのスピーカとで構成される。
上記記録媒体としては、CD−ROM、半導体メモリ、
半導体メモリを内蔵したカセット等が多い。ゲームシス
テムの構成は以上の通りである。
【0003】一方、ゲームの種類は増加の一途をたど
り、また、ゲームの内容は、日増しに複雑、且つ、多様
化してきている。しかしながら、ボタンの連打速度が速
ければ速いほど高成績になるゲーム、例えば、シューテ
ィングゲームや、競争ゲームは、依然としてその人気は
衰えない。シューティングゲームは、ボタンを連打する
ことにより、画面上において、敵のキャラクタに弾を当
て、敵のキャラクタを消すといったものである。このよ
うなゲームでは、ボタンの連打速度が速ければ速いほ
ど、単位時間あたりに発射される弾の数が多くなるの
で、敵のキャラクタをより早く確実に消すことができ
る。一方、競争ゲームは、複数の移動体を、夫々、ボタ
ンの連打速度に応じた速度で、画面上で移動させるとい
ったものである。例えば図8に示される競争ゲームで
は、画面上の2つの移動体a1及びa2が、夫々、ボタ
ンの連打速度に応じた速度で、矢印で示される方向に移
動される。そして、先にゴールラインGLを越えた移動
体a1若しくはa2を操作していたゲームプレーヤが、
勝ちとされる。
【0004】
【発明が解決しようとする課題】ところで、シューティ
ングゲームは、ボタンの連打技能か、敵のキャラクタか
らの弾をよける技能かどちらか一方の技能のみに重点が
おかれることが多々ある。自分のキャラクタの位置を変
更することにより敵のキャラクタからの弾をよける技能
に重点がおかれるシューティングゲーム等を対象とし
て、ボタンを押さえているだけで、あたかもボタンが高
速かつ規則正しく連打されているかのごとき出力を得る
ことのできる連射装置の搭載されたコントローラが提案
されている。通常、このようなコントローラは、連射装
置の使用、不使用を選択することができ、連射装置の不
使用が選択されているときには、操作ボタンは通常通り
に機能する。以下、連射装置の使用が選択され、連射装
置が用いられることを、「連射機能が用いられる」と称
することとする。連射機能を用いた場合、ゲームプレー
ヤは、操作ボタンを押しっぱなしにした状態で敵のキャ
ラクタからの弾をよけることに専念することができる。
【0005】連射機能が用いられている状態で操作ボタ
ンの押圧により出力される操作データと、連射機能が用
いられない状態で操作ボタンの押圧により出力される操
作データは、ゲーム機器側においては、同じ操作データ
として扱われる。即ち、上記2つの操作データは、伝送
フォーマット上で同一のビット位置に配置されるか、若
しくは同一の線を通じて、ゲーム機器に伝送されるから
である。勿論、自分のキャラクタの位置を変更すること
により敵のキャラクタから発射される弾をよける技能に
重点がおかれるシューティングゲームにおいては、ゲー
ム機器側で、伝送されてくる操作データが、連射機能が
用いられているか否かを区別する必要はない。連射機能
が用いられていても、ゲーム性は失われないからであ
る。しかしながら、ゲームプレーヤが、上述のようなコ
ントローラを、競争ゲームを行うときに用いた場合に
は、問題が生じる。ゲームプレーヤは、連射機能を用い
ることができるからである。既に説明したように、競争
ゲームは、個々のゲームプレーヤの単位時間当たりのボ
タンの連打能力そのものにゲーム性がある。従って、ゲ
ームプレーヤが、競争ゲームを行うときに連射機能を用
いることは、競争ゲームの存在そのものの意味をなくす
と共に、他のゲームプレーヤと競う場合においては、不
正となる。本発明はこのような点を考慮してなされたも
ので、人間の手によって操作ボタンが連打されたか否か
を検出し、ゲームプレーヤの単位時間あたりのボタンの
連打能力そのものにゲーム性のあるゲームにおいて不正
使用ができないようにすることにより、ゲーム性を損な
わないようにすることを目的とする。
【0006】
【課題を解決するための手段】主要な発明の1つは、操
作ボタンの連打速度に応じてゲーム空間上における制御
対象の制御を行うようにされたゲームシステムで用いら
れる連射検出方法であって、上記操作ボタンの操作状態
を示す操作データを所定のタイミングで取り込むと共
に、人間の手によっては不可能な程に高速かつ規則正し
く操作ボタンを叩いた状態を電気的に作り出せる連射機
能が用いられて操作ボタンが押されているか否かを、少
なくとも現在から過去にわたる3回分の操作データの値
に基いて判別し、上記連射機能が用いられていないもの
と判断したときのみ操作データを有効とするものであ
る。
【0007】そして、上記発明において、上記連射機能
が用いられているものと判断したときに、操作データが
無効となるよう制御を行うものである。
【0008】そして、上記発明において、上記連射機能
が用いられているものと判断したときに、操作データを
無効にすることを示す表示、若しくは連射機能を用いて
いることに対する警告の表示を行うものである。
【0009】そして、上記発明において、上記ゲームシ
ステムは、上記操作ボタンの連打速度に応じた速度で上
記ゲーム空間上の複数の移動体を移動させる競争ゲー
ム、若しくは上記操作ボタンの連打速度に応じた速度で
上記ゲーム空間上の射撃対象物に対して射撃を行う射撃
ゲームである。
【0010】そして、上記発明において、上記現在から
過去にわたる3回分の操作データの値に基いて連射機能
が用いられているか否かを検出するタイミングは、1垂
直同期期間に1回であり、上記ゲーム空間の形成周期は
2垂直同期期間に1回である。
【0011】
【発明の実施の形態】以下に、図1〜図7を順次参照し
て本発明の実施の形態について詳細に説明する。
【0012】本発明の実施の形態の説明は、次に示す項
目説明を各項目の先頭に記載し、各項目について次に示
す順序で説明する。
【0013】A.ゲームシステムの構成(図1) B.図1に示したCPU51の有する機能(図2) C.連射検出の説明(図3) D.メインプログラムによる制御動作(図4〜図6) E.操作態様検出プログラムによる制御動作(図7)
【0014】A.ゲームシステムの構成(図1)
【0015】本構成例の画像処理システムは、例えば特
開平8−212377号公報に記載されているように、
CD−ROM等の光学ディスクからゲームプログラムデ
ータを読み出して実行することにより、使用者(以下、
プレーヤと称する)からの指示に応じたゲーム等の表示
が行えるようになっており、具体的には図1に示される
ような構成を有している。本構成例の画像処理システム
は、CD−ROMのディスクから読み出された3次元画
像データを記憶するメインメモリ53と、各ポリゴン毎
に指定される特性データとして色情報テーブル、テクス
チャパターン情報、半透明率指定データ等を記憶するフ
レームバッファ63と、CD−ROMのディスクから読
み出された3次元画像データに対して透視変換処理を施
して2次元画像情報に変換する座標変換手段としてのジ
オメトリエンジン(GTE)61と、当該2次元画像情
報とポリゴンの特性を指定する情報とを合成してポリゴ
ン毎にパケット化された描画命令を生成する描画命令生
成手段としてのCPU51と、当該生成された描画命令
により指定された特性データに基づき2次元画像情報を
フレームバッファ63に描画するグラフィックスプロセ
ッシングユニット(GPU62)と、上記フレームバッ
ファ63から2次元画像データをテレビジョン同期信号
に同期して読み出し、ディスプレイ装置等の表示手段に
供給するビデオ出力手段65とを有してなるものであ
る。
【0016】即ち、この画像処理システムは、中央演算
処理装置(CPU51)及びその周辺装置(周辺デバイ
スコントローラ52)からなる制御系50と、フレーム
バッファ63上に描画を行うグラフィックスプロセッシ
ングユニット(GPU62)等からなるグラフィックシ
ステム60と、楽音、効果音等を発生するサウンドプロ
セッシングユニット(SPU71)等からなるサウンド
システム70と、補助記憶装置である光学ディスク(C
D−ROMのディスク)ドライブ81の制御や再生情報
のでコード等の指示を行う光学ディスク制御部80と、
使用者からの指示を入力するコントローラ92からの指
示入力及びゲームの設定等を記憶する補助メモリ(メモ
リカード93)からの入出力を制御する通信制御部90
と、上記制御系50から通信制御部90までが接続され
ているメインバスB等を備えている。
【0017】上記制御系50は、CPU51と、割り込
み制御、タイムコントロール、メモリコントロールダイ
レクトメモリアクセス(DMA)転送の制御等を行う周
辺デバイスコントローラ52と、例えば2メガバイトの
RAMからなる主記憶装置(メインメモリ)53と、こ
のメインメモリ53や上記グラフィックシステム60、
サウンドシステム70等の管理を行ういわゆるオペレー
ティングシステム等のプログラムが格納された例えば5
12キロバイトのROM54とを備えている。
【0018】CPU51は、例えば32ビットのRIS
C(Reduced Instruction Set
Computer)CPUであり、ROM54に記憶
されているオペレーティングシステムを実行することに
より装置全体の制御を行う。当該CPU51は命令キャ
ッシュとスクラッチパッドメモリを搭載し、実メモリの
管理も行う。
【0019】上記グラフィックシステム60は、CD−
ROMから読み込まれたデータを一時的に記憶するメイ
ンメモリ53と、当該メインメモリ53に記憶されたデ
ータに対して座標変換等の処理を行う座標計算用コプロ
セッサからなるジオメトリトランスファエンジン(GT
E)61と、CPU51からの描画指示(描画命令)に
基づいて描画を行うグラフィックスプロセッシングユニ
ット(GPU)62と、該GPU62により描画された
画像を記憶する例えば1メガバイトのフレームバッファ
63と、いわゆる離散コサイン変換等の直行変換がなさ
れ圧縮されて符号化された画像データを複号化する画像
デコーダ(以下MDECと呼ぶ)64とを備えている。
【0020】GTE64は、例えば複数の演算を並列に
実行する並列演算機構を備え、CPU51のコプロセッ
サとして、CPU51からの演算要求に応じて透視変換
等の座標変換、法線ベクトルと光源ベクトルとの内積演
算による光源計算、例えば固定小数点形式の行列やベク
トルの演算を高速に行うことができるようになってい
る。
【0021】具体的には、このGTE61は、1つの三
角形状のポリゴンに同じ色で描画するフラットシェーデ
ィングを行う演算の場合では、1秒間に最大150万程
度のポリゴンの座標演算を行うことができるようになっ
ており、これによってこの画像処理システムでは、CP
U51の負荷を低減すると共に、高速な座標演算を行う
ことができるようになっている。尚、ポリゴンとは、デ
ィスプレイ上に表示される3次元の物体を構成するため
の図形の最小単位であり、三角形や四角形等の多角形か
らなるものである。
【0022】GPU62は、CPU51からのポリゴン
描画命令に従って動作し、フレームバッファ63に対し
てポリゴン等の描画を行う。このGPU62は、1秒間
に最大36万程度のポリゴンの描画を行うことができる
ようになっている。また、このGPU62は、CPU5
1とは独立した2次元のアドレス空間を持ち、そこにフ
レームバッファ63がマッピングされるようになってい
る。
【0023】フレームバッファ63は、いわゆるデュア
ルポートRAMからなり、GPU62からの描画或いは
メインメモリ53からの転送と、表示のための読み出し
とを同時に行うことができるようになっている このフ
レームバッファ63は、例えば1メガバイトの容量を有
し、それぞれ16ビットの横1024で縦512の画素
のマトリックスとして扱われる。このフレームバッファ
63のうちの任意の表示領域を例えばディスプレイ装置
等のビデオ出力手段65に出力することができるように
なっている。また、このフレームバッファ63には、ビ
デオ出力として出力される表示領域の他に、GPU62
がポリゴン等の描画を行う際に参照するカラールックア
ップテーブル(CLUT)が記憶される第2の領域であ
るCLUT領域と、描画時に座標変換されてGPU62
によって描画されるポリゴン等の中に挿入(マッピン
グ)される素材(テクスチャ)が記憶される第1の記憶
領域であるテクスチャ領域が設けられている。これらの
CLUT領域とテクスチャ領域は表示領域の変更等に従
って動的に変更されるようになっている。即ち、このフ
レームバッファ63は、表示中の領域に対して描画アク
セスを実行することができ、また、メインメモリ53と
の間で高速DMA転送を行うことも可能となっている。
【0024】尚、上記GPU62は、上述のフラットシ
ェーディングの他にポリゴンの頂点の色から保管してポ
リゴン内の色を決めるグーローシェーディングと、上記
テクスチャ領域に記憶されているテクスチャをポリゴン
に張り付けるテクスチャマッピングを行うことができる
ようになっている。これらのグーローシェーディング又
はテクスチャマッピングを行う場合には、上記GTE6
1は、1秒間に最大50万程度のポリゴンの座標計算を
行うことができる。
【0025】MDEC64は、上記CPU51からの制
御により、CD−ROMのディスクから読み出されてメ
インメモリ53に記憶されている静止画或いは動画の画
像データを複号化して再びメインメモリ53に記憶す
る。具体的には、MDEC64は逆離散コサイン変換
(IDCT)演算を高速に実行でき、CD−ROMディ
スクから読み出されたカラー静止画圧縮標準(いわゆる
JPEG)や蓄積メディア系動画符号化標準(いわゆる
MPEG、但し本例においてはフレーム内圧縮のみ)の
圧縮データの伸張を行うことができるようになってい
る。
【0026】また、この再生された画像データは、GP
U62を介してフレームバッファ63に記憶することに
より、上述のGPU62によって描画される画像の背景
として使用することができるようにもなっている。上記
サウンドシステム70は、CPU51からの指示に基づ
いて、楽音、効果音等を発生するサウンド再生処理プロ
セッサ(SPU)71と、CD−ROMディスクから読
み出された音声、楽音等のデータや音源データ等が記憶
される例えば512キロバイトのサウンドバッファ72
と、SPU71によって発生される楽音、効果音等を出
力するサウンド出力手段としてのスピーカ73とを備え
ている。
【0027】上記SPU71は、16ビットの音声デー
タを4ビットの差分信号として適応差分符号化(ADP
CM)された音声データを再生するADPCM復号機能
と、サウンドバッファ72に記憶されている音源データ
を再生することにより、効果音等を発生する再生機能
と、サウンドバッファ72に記憶されている音声データ
等を変調させて再生する変調機能等を備えている。即
ち、当該SPU71は、ルーピングや時間を係数とした
動作パラメータの自動変換等の機能を持ち、24ボイス
の能力を有するADPCE音源を内蔵し、CPU51か
らの操作により動作する。また、SPU71は、サウン
ドバッファ72がマッピングされた独自のアドレス空間
を管理し、CPU51からサウンドバッファ72にAD
PCMデータを転送し、キーオン/キーオフやモデュレ
ーション情報を直接渡すことによりデータを再生する。
このような機能を備えることによって、このサウンドシ
ステム70は、CPU51からの指示によってサウンド
バッファ72に記録された音声データなどに基づいて楽
音、効果音などを発生するいわゆるサンプリング音源と
して使用することができるようになっている。
【0028】上記光学ディスク制御部80は、CD−R
OMのディスクである光学ディスクに記録されたプログ
ラム、データ等を再生するディスクドライブ装置81
と、例えばエラー訂正(ECC)符号が付加されて記録
されているプログラム、データなどを復号するデコーダ
82と、ディスクドライブ装置81からの再生データを
一時的に記憶する例えば32キロバイトのバッファ83
とを備えている。即ち、当該光学ディスク制御部80
は、上記ドライブ装置81やデコーダ82等のディスク
の読み出しを行うために必要な部品類から構成されてい
る。ここでは、ディスクフォーマットとして例えばCD
−DA、CD−ROM、XA等のデータをサポートでき
るようになっている。尚、デコーダ82はサウンドシス
テム70の一部をも構成している。
【0029】また、ディスクドライブ装置81で再生さ
れるディスクに記録されている音声データとしては、上
述のADPCMデータ(CD−ROM XAのADPC
Mデータ等)の他に音声信号をアナログ/デジタル変換
したいわゆるPCMデータがある。ADPCMデータと
して、例えば16ビットのデジタルデータの差分を4ビ
ットで表して記録されている音声データは、デコーダ8
2で誤り訂正と復号化がなされた後、上述のSPU71
に供給され、SPU71でデジタル/アナログ変換等の
処理が施された後、スピーカ73を駆動するために使用
される。また、PCMデータとして、例えば16ビット
のデジタルデータとして記録されている音声データは、
デコーダ82で復号化された後、スピーカ73を駆動す
るために使用される。尚、当該デコーダ82のオーディ
オ出力は、一旦SPU71に入り、このSPU出力とミ
ックスされ、リバーブユニットを経由して最終のオーデ
ィオ出力となる。
【0030】また、通信制御部90は、メインバスBを
介してCPU51との通信の制御を行う通信制御デバイ
ス91と、プレーヤからの指示を入力するコントローラ
92と、ゲームの設定などを記憶するメモリカード93
とを備えている。
【0031】コントローラ92は、プレーヤの意図をア
プリケーションに伝達するインターフェースであり、プ
レーヤからの指示を入力するために、以下に説明するよ
うな各種キーを有し、通信制御デバイス91からの指示
に従って、この指示キーの状態を、同期式通信により、
通信制御デバイス91に毎秒60回程度送信する。そし
て、通信制御デバイス91は、コントローラ92の指示
キーの状態をCPU51に送信する。尚、コントローラ
92は、本体に2個のコネクタを有し、その他にマルチ
タップを使用して多数のコントローラを接続することも
可能となっている。これにより、プレーヤからの指示が
CPU51に入力され、CPU51は、実行しているゲ
ームプログラム等に基づいてプレーヤからの指示に従っ
た処理を行う。
【0032】ここで、コントローラ92の指示キーにつ
いて説明する。コントローラ92は、左キーL、右キー
R、上キーU及び下キーDからなる十字キーと、第1左
ボタン92L1、第2左ボタン92L2、第1右ボタン
92R1、第2右ボタン92R2、スタートボタン92
a、セレクトボタン92b、第1ボタン92c、第2ボ
タン92d、第3ボタン92e、第4ボタン92f、連
射機能を特定のボタンに与えるための連射スイッチ92
gとからなる。十字キーは、プレーヤが、CPU51に
対し、上下左右のコマンドを与えるためのものである。
スタートボタン92aは、プレーヤが、CD−ROMデ
ィスクから読み出されてロードされるゲームプログラム
データ等による動作の開始をCPU51に指示するため
のものである。セレクトボタン92bは、プレーヤが、
CD−ROMディスクからメインメモリ53にロードさ
れるゲームプログラムデータ等に関する各種選択を、C
PU51に指示するためのものである。
【0033】以下の説明では、連射を行うためのボタン
を、第1ボタン92cとし、この第1ボタン92cを
「操作ボタン」と称することとする。上記連射スイッチ
92gは、操作ボタン92cに対し「連射機能」を与え
るか否かを決定するためのスイッチである。連射スイッ
チ92gがオンのときに操作ボタン92cは連射機能を
有する。即ち、連射スイッチ92cがオンのときに操作
ボタン92cが押されると、その間、人間の手によって
は不可能な程に高速かつ規則正しく操作ボタン92cを
叩いた状態が電気的に作り出され、これが信号として出
力される。以下、連射スイッチ92gがオンにされた状
態で操作ボタン92cが押されている状態を、「連射機
能が用いられている」等のように記述する。また、連射
スイッチ92gがオフのときに操作ボタン92cが押さ
れると、その間、ハイレベル“1”の信号が出力され
る。尚、コントローラ92には、上記操作ボタン92c
が押されている間に、例えばクロック信号のような正確
な矩形波を連続的に出力する回路、例えば水晶発振器と
クロック生成回路等が搭載されている。
【0034】また、CPU51は、実行しているゲーム
の設定やゲームの終了時或いは途中の結果等を記憶する
必要があるときに、該記憶するデータを通信制御デバイ
ス91に送信し、通信制御デバイス91は当該CPU5
1からのデータをメモリカード93に記憶する。このメ
モリカード93は、メインバスBから分離されているた
め、電源を入れた状態で着脱することが可能となってい
る。これにより、ゲームの設定等を複数のメモリカード
93に記憶することができるようになっている。
【0035】また、本システムは、メインバスBに接続
された16ビットパラレル入出力(I/O)ポート10
1と、非同期式のシリアル入出力(I/O)ポート10
2とを備えている。そして、パラレルI/Oポート10
1を介して周辺機器との接続を行うことができるように
なっており、また、シリアルI/Oポート102を介し
て他のビデオゲーム装置等との通信を行うことができる
ようになっている。
【0036】ところで、上記メインメモリ53は、GP
U62、MDEC64及びデコーダ82等の間では、プ
ログラムの読み出し、画像の表示或いは描画等を行う際
に、大量の画像データを高速に転送する必要がある。こ
のため、この画像処理システムでは、上述のようにCP
U51を介さずに周辺デバイスコントローラ52からの
制御により上記メインメモリ53、GPU62、MDE
C64及びデコーダ82等の間で直接データの転送を行
ういわゆるDMA転送を行うことができるようになって
いる。これにより、データ転送によるCPU51の負荷
を低減させることができ、高速なデータの転送を行うこ
とができるようになっている。
【0037】このビデオゲーム装置では、電源が投入さ
れると、CPU51が、ROM54に記憶されているオ
ペレーティングシステムを実行する。このオペレーティ
ングシステムの実行により、CPU51は、動作確認等
の装置全体の初期化を行った後、光学ディスク制御部8
0を制御して、光学ディスクに記録されているゲーム等
のプログラムを実行する。このゲーム等のプログラムの
実行んみより、CPU51は、プレーヤからの入力に応
じて上記グラフィックシステム60、サウンドシステム
70等を制御して、画像の表示、効果音、楽音の発生を
制御するようになっている。
【0038】次に、本例画像処理システムにおけるディ
スプレイ上への表示について説明する。
【0039】上記GPU62は、フレームバッファ63
内の任意の矩形領域の内容を、そのまま上記ビデオ出力
手段65の例えばCRT等のディスプレイ上に表示す
る。この領域を以下表示エリアと称する。上記矩形領域
は、設定モードに応じたサイズを選択できるようになっ
ており、例えばモード0では256(H)×240
(V)(ノンインターレース)、モード9では384
(H)×480(V)(インターレース)である。つま
り、水平方向、垂直方向夫々独立に表示開始位置、表示
終了位置を指定することができる。また、各座標に指定
可能な値と画面モードの関係は、例えば水平方向座標の
指定範囲は、モード0及び4で、0から276(水平方
向表示開始位置座標)、4から280(水平方向表示終
了位置座標)、モード8及び9で0から396(水平方
向表示開始位置座標)、4から400(垂直方向表示終
了位置座標)となる。そして垂直方向座標の指定範囲
は、モード0から3及び8で、0から240(垂直方向
表示開始位置座標)、モード4から7及び9で、4から
484(垂直方向表示終了位置座標)となる。ここで、
上記水平開始及び終了位置座標は4の倍数になるように
設定する必要がある。よって、最小画面サイズは、横4
ピクセル、縦2ピクセル(ノンインターレース時)又は
4ピクセル(インターレース時)になる。
【0040】また、GPU62は、表示色数に関するモ
ードとして、16ビットダイレクトモード(32768
色)と、24ビットダイレクトモード(フルカラー)の
2つをサポートしている。上記16ビットダイレクトモ
ード(以下16ビットモードと呼ぶ)は32768色表
示モードである。この16ビットモードでは、24ビッ
トダイレクトモード(以下24ビットモードと称する)
に比べ表示色数に限りがあるが、描画時のGPU62内
部での色計算は24ビットで行われ、また、階調を擬似
的に高くできるいわゆるディザ機能も搭載しているの
で、疑似フルカラー(24ビットカラー)表示が可能と
なっている。また、上記24ビットモードは、2677
7216色(フルカラー)表示のモードである。但し、
フレームバッファ63内に転送されたイメージデータの
表示(ビットマップの表示)のみが可能で、GPU62
の描画機能を実行することはできない。ここで、1ピク
セルのビット長は24ビットとなるが、フレームバッフ
ァ63上での座標や表示位置の値は16ビットを基準と
して指定する必要がある。即ち、640×480の24
ビット画像データは、フレームバッファ63中では96
0×480として扱われる。また、前記水平方向表示終
了位置座標は、8の倍数になるように設定する必要があ
り、従って、この24ビットモードでの最小画面サイズ
は横8×縦2ピクセルになる。
【0041】また、GPU62には次のような描画機能
が搭載されている。先ず、1×1ドット〜256×25
6ドットのポリゴン又はスプライトに対して、4ビット
CLUT(4ビットモード、16色/ポリゴン、スプラ
イト)や8ビットCLUT(8ビットモード、256色
/ポリゴン、スプライト)、16ビットCLUT(16
ビットモード、32768色/ポリゴン、スプライト)
等の描画が可能なポリゴン又はスプライト描画機能と、
ポリゴンやスプライトの各頂点の画面上の座標を指定し
て描画を行うと共に、ポリゴンやスプライト内部を同一
色で塗りつぶすフラットシェーディング、各頂点に異な
る色を指定して内部をグラデーションするグーローシェ
ーディング、ポリゴンやスプライト表面に2次元のイメ
ージデータであるテクスチャパターン(特にスプライト
に対するものをスプライトパターンと呼ぶ)を容易して
張り付けるテクスチャマッピング等を行うポリゴン描画
機能と、グラデーションが可能な直線描画機能と、CP
U51からフレームバッファ63への転送等のイメージ
転送機能と、その他の機能として、各ピクセルの平均を
とって半透明化する機能、即ち、各ピクセルのピクセル
データを所定比率αで混合することからαブレンディン
グ機能と呼ばれる機能、色の境界にノイズを乗せてぼか
すディザ機能、描画エリアを越えた部分を表示しない描
画クリッピング機能、描画エリアに応じて描画原点を動
かすオフセット指定機能等がある。
【0042】また、描画を行う座標系は符号付きの11
ビットを単位としており、X、Y夫々に−1024〜+
1023の値をとる。また、本例でのフレームバッファ
63のサイズは1024×512となっているので、は
み出した部分は折り返すようになっている。描画座標の
原点は、座標値のオフセット値を任意に設定する機能に
より、フレームバッファ63内で自由に変更することが
できる。また、描画は、描画クリッピング機能により、
フレームバッファ63内の任意の矩形領域に対してのみ
行われる。更に、CPU62は、最大256×256ド
ットのテクスチャをサポートしており、縦、横夫々の値
を自由に設定することができる。
【0043】上記ポリゴン又はスプライトに張り付ける
イメージデータ(テクスチャパターン又はスプライトパ
ターン)は、フレームバッファ63の非表示エリアに配
置される。テクスチャパターン又はスプライトパターン
は、256×256ピクセルを1ページとして、フレー
ムバッファ63上にメモリの許す限り何枚でも置くこと
ができ、この256×256の領域をテクスチャページ
と呼んでいる。1枚のテクスチャページの場所は、描画
コマンドのテクスチャページの位置(アドレス)指定の
ためのパラメータに、ページ番号を指定することで決定
される。
【0044】テクスチャパターン又はスプライトパター
ンには、4ビットCLUT(4ビットモード)、8ビッ
トCLUT(8ビットモード)、16ビットCLUT
(16ビットモード)の3種類の色モードがある。4ビ
ットCLUT及び8ビットCLUTの色モードでは、C
LUTを使用する。
【0045】このCLUTとは、最終的に表示される色
を表す3原色のR、G、B値が16〜256個フレーム
バッファ63に並んだものである。各R、G、B値は、
フレームバッファ63上において左から順に番号が付さ
れており、テクスチャパターン又はスプライトパターン
はこの番号により各ピクセルの色を表す。また、CLU
Tはポリゴン又はスプライト単位で選択でき、全てのポ
リゴン又はスプライトに対して独立したCLUTを持つ
ことも可能である。フレームバッファ63内でのCLU
Tの格納位置は、描画コマンド内のCLUTの位置(ア
ドレス)指定のためのパラメータに、使用するCLUT
の左端の座標を指定することがで決定する。
【0046】また、GPU62は、動画表示の方式とし
て、フレームダブルバッファリングという手法を用いる
ようにしている。このフレームダブルバッファリングと
は、フレームバッファ63上に2つの矩形領域を用意
し、一方のエリアに描画をしている間はもう片側を表示
し、描画が終了したら2つのエリアをお互い交換するも
のである。これにより、書き換えの様子が表示されるの
を回避するこができる。尚、バッファの切り換え操作
は、垂直帰線期間内に行う。また、GPU62では、描
画の対象となる矩形領域と座標系の原点を自由に設定で
きるので、この2つを移動させることにより、複数のバ
ッファを実現することも可能である。
【0047】尚、描画命令はパケット形式となってお
り、本例においてはCPU51が直接指定する形式と、
専用のハードウエアが直接指定する形式がある。特に、
専用のハードウエアが直接指定する形式では、CPU5
1が用いる命令形式に、命令のワード数と次の命令への
ポインタを付加したタグを設けたパケット構成が用いら
れる。これによって、フレームバッファ63上で連続し
た領域におかれていない複数の命令列をつなげて一度に
実行できるようになる。この場合び描画命令の転送は専
用のハードウエアが行い、CPU51は一切関与しな
い。
【0048】描画命令に含まれ得るパラメータは次の通
りである。 CDDE:コマンドコード呼びオプション R、G、B:全ての頂点で共有する輝度値 Rn、Bn、Gn:頂点nの輝度値 Xn、Yn:頂点nの描画空間上の2次元座標 Un、Vn:頂点nに対応するテクスチャソース空間上
の点の2次元座標 CBA(CULT BASE ADDRESS):CL
UTの先頭アドレス TSB(TEXTURE SOURCE BASE):
テクスチャページ先頭アドレス及びテクスチャタイプ等
の付加情報
【0049】例えば、三角形描画コマンド(コマンドコ
ード1h)は、オプションを含むコマンドコードの後
に、頂点情報をコマンドを引数として与える。オプショ
ンによい、引数、フォーマットが異なる。パラメータと
しては、 IIP:輝度値の種類 SIZ:矩形領域のサイズ CNT:使用頂点 TME:テクスチャマッピングの有無 ABE:半透明処理の有無 TGE:テクスチャパターンと輝度値との掛け合わせの
有無
【0050】例えばIIPが0のときは、1種類の輝度
値(R、G、B)で三角形を描画(フラットシェーディ
ング)する。また、例えばCNTが0のときコマンド以
降に続く3頂点で三角形を1つ描画し、1のときコマン
ド以降に続く4頂点で連結三角形を描画、即ち、四角形
を描画する。TMEが0のろきテクスチャマッピングオ
フとなり、1のときテクスチャマッピングがオンとな
る。ABEが0のとき半透明処理がオフとなり、1のと
き半透明処理がオンとなる。TGEはTMEのときのみ
有効で、0のといテクスチャパターンと輝度値とを掛け
合わせて表示し、1のときテクスチャパターンのみを描
画する。
【0051】直線描画コマンド(コマンドコード=2
h)は、オプションをも含むコマンドコードの後に、単
点情報をコマンド引数として与える。オプションにより
引数の数やフォーマットが異なる。例えばIIPが0の
ときはピクセルを描画指定された輝度値で描画し、1の
ときは2頂点の輝度値を線分の長軸方向の変位で線形補
間して描画する。CNTが0のときはコマンド以降に続
く2端点で直線を1つ描画し、1のとき連結直線を描画
する。ABEが0のとき半透明処理がオフとなり、1の
とき半透明処理がオンとなる。連結直線を描画するとき
は、最後にコマンドの終了を示す終端コードが必要とな
る。
【0052】スプライト描画コマンド(コマンドコード
=3h)では、コマンドコード(オプションも含む)の
後に、輝度情報、矩形領域の左下端点、テクスチャソー
ス空間の左上端点、矩形領域の幅と高さをコマンド引数
として与える。オプションにより引数の数、フォーマッ
トが異なる。また、スプライト描画コマンドは2ピクセ
ル同時に処理をするため、頂点nに対応するテクスチャ
ソース空間上の点の2次元座標Unは偶数に指定しなけ
ればならいない。つまり、下位1ビットは意味を持たな
い。尚、TMEが0のときはテクスチャマッピングがオ
フし、1のときはテクスチャマッピングがオンする。A
BEが0のときは半透明処理がオフし、1のときは半透
明処理がオンする。TGE(TMEのときのみ有効)が
0のときはテクスチャパターン(この場合はスプライト
パターン)に一定の輝度値を掛け合わせて描画し、1の
ときはテクスチャパターンのみを描画する。SIZが0
0のときにはH、2フィールドで指定し、01のときは
1×1、10のときは8×8、11のときは16×16
のサイズ指定となる。
【0053】B.図1に示したCPU51の有する機能
(図2)
【0054】図2は、図1に示したCPU51の有する
機能を示す説明図である。CPU51は、図1に示した
CD−ROMディスク81から読み出され、メインメモ
リ53に記憶されたプログラムデータを読むことによ
り、図2に示す機能を持つ。この図2に示されているC
PU51の機能は、ボタン操作検出手段1a、演算手段
1b、判断手段1c、変数設定手段1d、描画命令発行
手段1e、操作情報・視点位置変換手段1f、操作態様
検出手段1g、有効・無効判断手段1h、垂直同期信号
検出手段1iとで構成される。これらの手段は、夫々項
目D及びEにおいて説明する制御の主体となる。尚、第
1記憶領域CU_KEY、第2記憶領域P1_KEY及
び第3記憶領域P2_KEYは、夫々、図1に示したメ
インメモリ53の特定領域であり、第1記憶領域CU_
KEYは、現在の操作データの記憶領域、第2記憶領域
P1_KEYは、現在よりも1フィールドだけ前の操作
データの記憶領域、第3記憶領域P2_KEYは、現在
よりも2フィールドだけ前の操作データの記憶領域であ
る。ここで、CUはCurrent、P1はPrevi
ous1、P2はPrevious2の意味を意図して
用いている。
【0055】C.連射検出の説明(図3)
【0056】図3は、連射検出を説明するための説明図
であり、図3Aは、垂直同期信号を、図3Bは、連射機
能が用いられている状態で操作ボタン92cが押された
場合におけるコントローラ92からの操作データを、図
3Cは操作ボタン92cが手動で連打された場合におけ
るコントローラ92からの操作データ、図3Dは、メイ
ンプログラムと操作態様検出プログラムとの関係を夫々
示す。
【0057】図3Aに示されるように、垂直同期信号の
1つの周期Vtの長さは、NTSCのテレビジョン方式
においては、1/60秒となる。垂直同期信号の1つの
周期Vtには、垂直帰線区間Vbが含まれる。連射機能
が用いられている状態で操作ボタン92cが押されてい
る間は、コントローラ92から、図3Bに示されるよう
な一定の周期でレベルが可変する矩形波の操作データが
出力される。この操作データは、図3Aと比較すると分
かるように、そのレベルが、1/60秒毎に、交互に、
ローレベル“0”若しくはハイレベル“1”に変わる。
そしてここでいう“0”は、操作ボタン92cを離した
状態、“1”は操作ボタン92cを押さえている状態に
相当する。一方、操作ボタン92cが、手動により連打
された場合には、コントローラ92からの操作データ
は、例えば図3Cに示されるように、数フィールド毎
に、しかも不定時間で、“0”と“1”が変化する。こ
こで数フィールドとは、具体的に“2”ないしそれ以上
の数である。というのは、手動では、連射機能が用いら
れている時のように1/60秒おきに“0”と“1”を
変化させること、つまり、秒間30回に相当する速さで
ボタンを押すことは、一般的に不可能と考えられるから
である。
【0058】そこで、本形態においては、図3Dに示さ
れるように、メインプログラムPmの1周期を1/30
秒以内で実行させると共に、操作態様検出プログラムP
s1、Ps2を、夫々1/60秒毎の割込により実行す
るようにする。メインプログラムPmの1周期を1/3
0秒以内で実行させるようにするのは、ポリゴンを用い
た描画処理に時間がかかった場合においても対応できる
ようにするためである。つまり、本形態においては、1
/30秒の間、同じ画像が出力される。また、メインプ
ログラムPmを1/30秒周期で実行させる一方、操作
態様検出プログラムPs1、Ps2を割り込みにより1
/60秒毎に実行させるのは、連打による競争ゲームと
いう性質上、可能な限り短い時間間隔で、操作ボタン9
2cの操作データの変化を検出するためである。そし
て、その結果、1/60秒毎に“0”、“1”が変化す
る、連射機能が用いられている状態で操作ボタン92c
が押されていることを検出できるのである。
【0059】尚、Ps1、Ps2という符号の付し方
は、操作態様検出プログラムそのものが2つあることを
意味するのではなく、メインプログラムPmが1回実行
される間に、操作態様検出プログラムが2回実行される
ことを意味する。1/60秒に1回行われる割込によっ
て操作態様検出プログラムPs1、Ps2が実行され、
これによって、コントローラ92からの操作データが、
連射機能が用いられている状態で操作ボタン92cが押
されることによって出力されたものか、手動によって操
作ボタン92cが押されることによって出力されたもの
かが検出される。そして、メインプログラムPmにおい
ては、1/30秒毎に実行される有効、無効判断ステッ
プStにおいて、連射機能が用いられているか否かを示
す検出結果に基いて、コントローラ92からの操作デー
タの有効、無効が判断される。そして、メインプログラ
ムPmでは、操作データがこの判断に基いた処理を行
う。
【0060】操作態様検出プログラムPs1、Ps2に
よる連射機能の使用、不使用の検出は、次のようにして
行われる。本形態においては、図2に示したように、第
1、第2及び第3記憶領域CU_KEY、P1_KE
Y、P2_KEYが用意される。そして、1/60秒毎
に実行される操作態様検出プログラムPs1、Ps2に
より、第1記憶領域CU_KEYには、現在の操作デー
タが、第2記憶領域P1_KEYには、1フィールド前
の操作データが、第3記憶領域P2_KEYには、2フ
ィールド前の操作データが、“0”か“1”で記憶され
る。そして、第3、第2及び第1記憶領域P2_KE
Y、P1_KEY及びCU_KEYの内容に基いて、連
射機能が用いられている状態で操作ボタン92cが押さ
れたか否かが検出される。
【0061】通常、操作データが“0”から“1”に変
化したときに、操作ボタン92c押された瞬間であると
見なし、これを「トリガ」という。つまり、第2記憶領
域P1_KEYに記憶されている1フィールド前の操作
データが“0”、第1記憶領域CU_KEYに記憶され
ている現在の操作データが“1”、即ち、これらのデー
タ列が“01”であれば、トリガが有効であるものと判
断することができる。しかしながら、これだけでは連射
機能が用いられている状態で操作ボタン92cが押され
たときにおける“0”から“1”への変化か、手動によ
り操作ボタン92cが押されたときにおける“0”から
“1”への変化かを判別することができない。そこで、
本形態においては、第3記憶領域P2_KEYに記憶さ
れている2フィールド前の操作データを、連射機能が用
いられている状態で操作ボタン92cが押されているの
か否かを判断するために用いる。例えば、第3、第2及
び第1記憶領域P2_KEY、P1_KEY及びCU_
KEYに記憶されている操作データのデータ列が、“1
01”であれば、その変化は、連射機能が用いられてい
る状態で操作ボタン92cが押されたことによる変化で
あるものと判断され、“001”であれば、その変化
は、手動により操作ボタン92Cが連打されたことによ
る変化であるものと判断される。従って、操作態様検出
プログラムPs1、Ps2は、過去3回分の操作データ
が、“001”のときのみ、トリガが有効であるという
検出結果を生成する。そして、直近のPs1、Ps2の
いずれかでトリガが有効であるという検出結果が得られ
れば、メインプログラムPmの有効・無効判断ステップ
Stにおいても、トリガが有効であるものと判断され
る。以上のように処理を行えば、メインプログラムPm
の処理周期が1/30秒でありながら、操作データの変
化を1/60秒毎に検出することができる。
【0062】D.メインプログラムによる制御動作(図
4〜図6)
【0063】図4〜図6は、ゲームのメインプログラム
による制御動作を説明するためのフローチャートであ
る。説明の便宜上、図8に示した競争ゲームを例にとり
説明する。また、移動体a1はゲームプレーヤが操作
し、移動体a2はCPU51が操作するものとする。
【0064】尚、ステップS1のみ、図1に示したRO
M54に記憶されているオペレーティングシステムによ
る制御動作である。他のステップは、CD−ROMディ
スク81から読み出されたゲームプログラムデータによ
る制御動作である。また、ゲームプログラムデータによ
る制御の主体は、既に説明したように、図2に示したC
PU51の機能としての各手段である。
【0065】ステップS1では、オペレーティングシス
テムの命令により、記録媒体ドライバ19が、CD−R
OMディスク81から画像、音声及びゲームプログラム
データを読み出す。読み出されたデータの内、プログラ
ムデータは、メインメモリ5に記憶される。これによ
り、CPU51は、図2に示した機能を有する。尚、こ
のとき、画像、即ち、テクスチャデータは、GPU62
のバッファ63の非表示エリアに記憶され、夫々テクス
チャ番号が割り当てられるものとする。また、音声デー
タは、音声処理プロセッサ13のバッファ14に記憶さ
れ、夫々音声番号データが割り当てられるものとする。
通常、すべての画像及び音声データが、ステップS1に
おいてバッファ63及び14に保持されることはない
が、説明の便宜上、すべての画像及び音声データが、ス
テップS1においてロードされるものとする。ステップ
S2では、ボタン操作検出手段1aが、コントローラ9
2のスタートボタン92aが押された否かを判断し、
「YES」であればステップS3に移行する。
【0066】ステップS3では、描画命令発行手段1e
が、セレクト画像の描画を示す描画命令を、図1に示し
たGPU62に対して発行する。GPU62は、上記描
画命令に基いて、セレクト画像の画像データを、バッフ
ァ63の表示面上に展開する。これにより、テレビジョ
ンモニタ12の表示面上には、セレクト画像が表示され
る。ステップS4では、ボタン操作検出手段1aが、コ
ントローラ92のスタートボタン92aが押されたか否
かを判断し「YES」であればステップS5に移行す
る。
【0067】ステップS5では、CPU51が、セレク
トされたゲームにセットする。ここで、「セレクトされ
る」とは、ゲームプレーヤが、ステップS3で表示され
たセレクト画像を参照して、十字キーを用いてゲームを
選択し、この後に、スタートボタン92aを押すことを
意味する。また、ここで「ゲーム」とは、ゲームそのも
のの他、例えば新たにゲームを行うか、または、メモリ
カードにセーブしている前回のゲームを行うか等も含
む。要するに、ゲームが実際に開始される前の選択事項
である。説明の便宜上、このステップS5において、新
たにゲームを行うことが選択されたものとする。ステッ
プS6では、CPU51が、選択されたゲームの初期画
面を出力する。
【0068】ステップS7では、変数設定手段1dが、
メインメモリ53に保持しているフラグや変数を夫々リ
セットする。ステップS8では、判断手段1cが、カウ
ンタのカウント値CTの値が“0”か否かを判断し、
「YES」であればステップS9に移行し、「NO」で
あればステップS11に移行する。ここで、移動体a
1、a2の位置は、計算上での位置であり、この位置デ
ータが、バッファ63上の位置(アドレス)に変換され
る。また、カウンタは、図2に示した演算手段1bに含
まれる。
【0069】ステップS9では、変数設定手段1dが、
カウント値CTの値を乱数によって発生した値で再設定
する。ステップS10では、変数設定手段1dが、移動
体a2の加速度AC2に、正の値を設定する。ステップ
S11では、演算手段1bが、カウント値CTから
“1”を減算する。ステップS12では、変数設定手段
1dが、移動体a2の加速度AC2に、負の値を設定す
る。
【0070】ステップS13では、演算手段1bが、移
動体a2の加速度AC2と時間Δt(1/30秒)を乗
算し、当該乗算結果を、移動体a2の速度V2に加算
し、速度V2の値を更新する。ステップS14では、演
算手段1bが、移動体a2の速度V2と時間Δt(1/
30秒)を乗算し、当該乗算結果を移動体a2の位置D
2に加算し、位置D2の値を更新する。上記ステップS
8からステップS14までの処理は、CPU51によ
る、移動体a2の自動操作である。
【0071】ステップS15では、判断手段1cが、ス
テップS14で求めた移動体a2の現在位置D2の値
が、ゴール位置GLの値以上か否かを判断し、「YE
S」であればステップS26に移行し、「NO」であれ
ばステップS16に移行する。ステップS16では、有
効・無効判断手段1hが、トリガ値データTrを読む。
【0072】ステップS17では、有効・無効判断手段
1hが、トリガ値データTrが“1”か否か、即ち、操
作ボタン92cのトリガが有効か否かを判断し、「YE
S」であればステップS18に移行し、「NO」であれ
ばステップS19に移行する。ステップS18では、変
数設定手段1dが、移動体a1の加速度AC1に、正の
値を設定する。
【0073】ステップS19では、変数設定手段1d
が、移動体a1の加速度AC1に、負の値を設定する。
ステップS20では、演算手段1bが、移動体a1の加
速度AC1と時間Δt(1/30秒)を乗算し、当該乗
算結果を移動体a1の速度V1に加算し、速度V1の値
を更新する。
【0074】ステップS21では、演算手段1bが、移
動体a1の速度V1と時間Δt(1/30秒)を乗算
し、当該乗算結果を移動体a1の位置D1に加算し、位
置D1を更新する。ステップS92では、判断手段1c
が、ステップS19で求めた移動体a1の現在位置D1
の値が、ゴール位置GLの値以上か否かを判断し、「Y
ES」であればステップS23に移行し、「NO」であ
ればステップS26に移行する。
【0075】ステップS23では、変数設定手段1d
が、アニメーションパターンを選択する。ここで、アニ
メーションパターンとは、多数の移動体a1、a2の形
状パターンである。ステップS24では、演算手段1
b、描画命令発行手段1eにより、表示処理が実行され
る。
【0076】ステップS25では、垂直同期信号検出手
段1iが、2つ目の垂直同期信号を検出したか否かを判
断し、「YES」であれば再びステップS8に移行す
る。ステップS26では、垂直同期信号検出手段1i
が、2つ目の垂直同期信号を検出したか否かを判断し、
「YES」であればステップS27に移行する。ステッ
プS27では、演算手段1b、描画命令発行手段1eに
より、ゴール処理が実行される。ここで、ゴール処理と
は、ゴールした時点から数秒間の表示処理である。例え
ば競争ゲームが徒競走の場合においては、ゴールをする
直前若しくはゴールをした時点に選手が手を広げ、この
後数秒間の間、選手が徐々に走るスピードをおとすまで
の動きが、視覚的に表現される。
【0077】E.操作態様検出プログラムによる制御動
作(図7)
【0078】図7は、検査態様検出プログラムによる制
御動作を説明するためのフローチャートである。
【0079】ステップS51では、変数設定手段1d
が、第2記憶領域P1_KEYに記憶されている操作デ
ータを、第3記憶領域P2_KEYにコピーする。ステ
ップS52では、変数設定手段1dが、第1記憶領域C
U_KEYに記憶されている操作データを、第2記憶領
域P1_KEYにコピーする。
【0080】ステップS53では、操作態様検出手段1
gが、操作ボタン92cの操作データを読む。ステップ
S54では、変数設定手段1dが、ステップS53で読
みとった操作ボタ92cの操作データを、第1記憶領域
CU_KEYに記憶する。
【0081】ステップS55では、判断手段1cが、第
3、第2及び第1記憶領域P2_KEY、P1_KEY
及びCU_KEYの記憶内容が、順に、“0”、
“0”、“1”であるか否かを判断し、「YES」であ
ればステップS56に移行し、「NO」であればステッ
プS57に移行する。ステップS56では、変数設定手
段1dが、トリガ値データTrの値を、“1”にする。
【0082】ステップS57では、変数設定手段1d
が、トリガ値データTrの値を、“0”にする。
【0083】〔実施の形態における効果〕以上説明した
ように、本形態においては、ボタンを手動で連射すべき
ゲーム、例えば徒競走等のような競争ゲームや、ゲーム
プレーヤのボタン連射能力に重点の置かれているシュー
ティングゲーム等において、加速若しくは射撃の入力用
として用いられる操作ボタン92cに対し、連射機能を
用いることが可能な場合において、連射機能が用いられ
ている状態で操作ボタン92cが押されていることの検
出方法として、1/60秒毎に信号のレベルを検出し、
少なくとも2つ前、1つ前、現在の3回分の検出結果を
保持し、当該3回の検出結果のデータ配列が、“00
1”の場合にのみ、入力を有効として処理するようにし
たので、ゲームプレーヤが自分でボタンを連射すること
を前提としたゲームにおいて、不正な使用が行われない
ようにすることができ、ゲーム性を失わないようにする
ことができる。また、メインプログラムの1周期の時間
を1/60秒とできない場合、例えば1周期の時間が1
/30秒程度となってしまう場合において、1/60秒
毎に割込を行って、操作態様検出プログラムを実行する
ことにより、1/60毎の信号変化を検出することがで
きるので、メインプログラムの1周期の時間が1/30
秒であっても、1/60秒毎に信号の“0”、“1”を
繰り返す連射機能が用いられて操作ボタン92cが押さ
れていることを検出することができる。
【0084】〔変形例〕上記実施の形態においては、競
争ゲームを例にとり説明したが、シューティングゲーム
でも良い。また、操作データが無効であると判断したと
きに、例えば、操作データを完全に無効なデータとし
て、一切処理を行わないようにすると共に、操作データ
が無効であることを示す表示(「不正なボタンが使用さ
れています」等)を行ったり、警告(「不正はやめまし
ょう!」)を行ったりするようにしても良い。また、上
記実施の形態においては、NTSC方式の場合を例にと
り説明したが、PAL方式でも良い。PAL方式の場合
においては、垂直同期信号の1周期の時間は、1/50
秒となる。
【0085】
【発明の効果】上述せる本発明によれば、操作ボタンの
連打速度に応じてゲーム空間上における制御対象の制御
を行うようにされたゲームシステムで用いられる連射検
出方法であって、上記操作ボタンの操作状態を示す操作
データを所定のタイミングで取り込むと共に、人間の手
によっては不可能な程に高速かつ規則正しく操作ボタン
を叩いた状態を電気的に作り出せる連射機能が用いられ
て操作ボタンが押されているか否かを、少なくとも現在
から過去にわたる3回分の操作データの値に基いて判別
し、上記連射機能が用いられていないものと判断したと
きのみ操作データを有効とするので、ボタンの連打速度
に依存するゲームにおいて、連射機能が用いられてもゲ
ーム性を損なわないようにすることができるという効果
がある。
【0086】そして、上記発明において、上記連射機能
が用いられているものと判断したときに、操作データが
無効となるよう制御を行うので、連射機能を使用させな
いようにすることができるという効果がある。
【0087】そして、上記発明において、上記連射機能
が用いられているものと判断したときに、操作データを
無効にすることを示す表示、若しくは連射機能を用いて
いることに対する警告の表示を行うので、連射機能を用
いていることを視覚的に報知することができ、連射ボタ
ンを使用しないようにしむけることができるという効果
がある。
【0088】そして、上記発明において、上記ゲームシ
ステムは、上記操作ボタンの連打速度に応じた速度で上
記ゲーム空間上の複数の移動体を移動させる競争ゲー
ム、若しくは上記操作ボタンの連打速度に応じた速度で
上記ゲーム空間上の射撃対象物に対して射撃を行う射撃
ゲームであることから、競争ゲームや射撃ゲームにおい
て、ゲーム性を損なうことなく、個々のゲームプレーヤ
のボタン連打能力に応じたゲームを提供することができ
るという効果がある。
【0089】そして、上記発明において、現在から過去
にわたる3回分の操作データの値に基いて連射機能が用
いられているか否かを検出するタイミングは、1垂直同
期期間に1回であり、上記ゲーム空間の形成周期は2垂
直同期期間に1回であることから、ゲームの進行そのも
のに関わる主な処理が2垂直同期期間に1回の場合であ
っても、確実に連射機能が押されたか否かを検出するこ
とができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施の形態を示すゲームシステムの
構成図である。
【図2】図1に示したCPU51が有する機能を示す機
能ブロック図である。
【図3】連射検出の説明図である。 〔図3A〕垂直同期信号を示す波形図である。 〔図3B〕操作ボタンが連射機能が用いられている状態
で押されたときにコントローラから出力される操作デー
タを示す波形図である。 〔図3C〕操作ボタンが手動で連打されたときににコン
トローラから出力される操作データを示す波形図であ
る。 〔図3D〕操作態様検出プログラムとメインプログラム
の関係を示す説明図である。
【図4】図1に示したゲームシステムのメインプログラ
ムによる制御動作を説明するためのフローチャートであ
る。
【図5】図1に示したゲームシステムのメインプログラ
ムによる制御動作を説明するためのフローチャートであ
る。
【図6】図1に示したゲームシステムのメインプログラ
ムによる制御動作を説明するためのフローチャートであ
る。
【図7】図1に示したゲームシステムの操作態様検出プ
ログラムによる制御動作を説明するためのフローチャー
トである。
【図8】競争ゲームの一例を示す説明図である。
【符号の説明】
1 CPU 1a ボタン操作検出手段 1b 演算手段 1c 判断手段 1d 変数設定手段 1e 描画命令発行手段 1f 操作情報・視点位置変換手段 1g 操作態様検出手段 1h 有効・無効判断手段 1i 垂直同期信号検出手段 CU_KEY 第1記憶領域 P1_KEY 第2記憶領域 P2_KEY 第3記憶領域 51 CPU 52 周辺デバイス 53 メインメモリ 54 OSROM 61 GTE(ジオメトリトランスファエンジン) 62 GPU(グラフィックスプロセッシングユニッ
ト) 63 フレームバッファ 64 MDEC(画像デコーダ) 71 SPU(サウンドプロセッシングユニット) 72 サウンドバッファ 73 スピーカ 81 CD−ROMディスク 82 CD−ROMデコーダ 83 CD−ROMバッファ 91 通信デバイス 92 コントローラ 93 メモリカード 101 パラレルI/O 102 シリアルI/O

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 操作ボタンの連打速度に応じてゲーム空
    間上における制御対象の制御を行うようにされたゲーム
    システムで用いられる連射検出方法であって、 上記操作ボタンの操作状態を示す操作データを所定のタ
    イミングで取り込むと共に、 人間の手によっては不可能な程に高速かつ規則正しく操
    作ボタンを叩いた状態を電気的に作り出せる連射機能が
    用いられて操作ボタンが押されているか否かを、少なく
    とも現在から過去にわたる3回分の操作データの値に基
    いて判別し、上記連射機能が用いられていないものと判
    断したときのみ操作データを有効とすることを特徴とす
    る連射検出方法。
  2. 【請求項2】 上記連射機能が用いられているものと判
    断されたときに、操作データが無効となるよう制御を行
    う請求項1記載の連射検出方法。
  3. 【請求項3】 上記連射機能が用いられているものと判
    断されたときに、操作データを無効にすることを示す表
    示、若しくは連射機能を用いていることに対する警告の
    表示を行う請求項1記載の連射検出方法。
  4. 【請求項4】 上記ゲームシステムは、上記操作ボタン
    の連打速度に応じた速度で上記ゲーム空間上の複数の移
    動体を移動させる競争ゲーム、若しくは上記操作ボタン
    の連打速度に応じた速度で上記ゲーム空間上の射撃対象
    物に対して射撃を行う射撃ゲームである請求項1記載の
    連射検出方法。
  5. 【請求項5】 上記現在から過去にわたる3回分の操作
    データの値に基いて、連射機能が用いられているか否か
    を検出するタイミングは、1垂直同期期間に1回であ
    り、上記ゲーム空間の形成周期は2垂直同期期間に1回
    である請求項1記載の連射検出方法。
  6. 【請求項6】 操作ボタンの連打速度に応じてゲーム空
    間上における制御を行うようにされたゲームシステムで
    用いられる連射検出方法であって、 人間の手によって不可能な程高速かつ規則正しく操作ボ
    タンを叩いた状態を電気的に作り出せる連射機能が用い
    られて操作ボタンが押されているか否かを判断する連射
    検出処理ステップと、ゲームを進行させるための主処理
    ステップ中に含まれる連射検出の結果に応じた制御を行
    う連射検出結果処理ステップとからなり、 上記連射検出処理ステップは、 第2の記憶領域に記憶されている2周期前の操作データ
    を第3の記憶領域に記憶する第1の記憶ステップと、 第1の記憶領域に記憶されている1周期前の操作データ
    を第2の記憶領域に記憶する第2の記憶ステップと、 現在の操作データを第1の記憶領域に記憶する第3の記
    憶ステップと、 上記第1、第2及び第3の記憶領域に記憶されている3
    つの操作データの値が、連射機能が用いられずに操作ボ
    タンが押されることによって出力された操作データか否
    かを判断する操作データ判断ステップと、 上記操作データ判断ステップにおける判断結果を示すデ
    ータを生成する判断結果データ生成ステップとを含み、 上記連射検出結果処理ステップは、 判断結果データの値に応じて操作データが有効か無効か
    を判断する操作データ有効・無効判断ステップと、 上記操作データ有効・無効判断ステップにおいて、操作
    データが有効であるものと判断したときには操作データ
    の値に応じた効果を得るための制御を行い、操作データ
    が無効であるものと判断したときには操作データを無効
    として扱う操作データ反映ステップとを含む連射検出方
    法。
  7. 【請求項7】 上記主処理ステップの1周期の処理期間
    は、2垂直同期期間であり、上記連射検出処理ステップ
    は、割り込みにより、1垂直同期期間に1回実行される
    ことを特徴とする請求項6記載の連射検出方法。
  8. 【請求項8】 上記ゲームシステムは、上記操作ボタン
    の連打速度に応じた速度で上記ゲーム空間上の複数の移
    動体を移動させる競争ゲームであり、 上記操作データ反映ステップにおいて、操作データが有
    効の場合には操作データの値に応じて上記移動体の加速
    度が正の加速度に設定され、操作データが無効の場合に
    は上記移動体の加速度が負の加速度に設定される請求項
    6記載の連射検出方法。
  9. 【請求項9】 上記連射機能が用いられているものと判
    断したときに、操作データを無効にすることを示す表
    示、若しくは連射機能を用いることに対する警告の表示
    を行う請求項6記載の連射検出方法。
  10. 【請求項10】 操作ボタンの連打速度に応じてゲーム
    空間上における制御を行うようにされたゲームプログラ
    ムが、コンピュータによって読み出され、実行が可能と
    なるように記録された記録媒体であって、 人間の手によって不可能な程高速かつ規則正しく操作ボ
    タンを叩いた状態を電気的に作り出せる連射機能が用い
    られている状態で操作ボタンが押されているか否かを判
    断する連射検出処理ステップと、ゲームを進行させるた
    めの主処理ステップ中に含まれる連射検出の結果に応じ
    た制御を行う連射検出結果処理ステップとからなり、 上記連射検出処理ステップは、 第2の記憶領域に記憶されている2周期前の操作データ
    を第3の記憶領域に記憶する第1の記憶ステップと、 第1の記憶領域に記憶されている1周期前の操作データ
    を第2の記憶領域に記憶する第2の記憶ステップと、 現在の操作データを第1の記憶領域に記憶する第3の記
    憶ステップと、 上記第1、第2及び第3の記憶領域に記憶されている3
    つの操作データの値が、連射機能が用いられずに操作ボ
    タンが押されることによって出力された操作データか否
    かを判断する操作データ判断ステップと、 上記操作データ判断ステップにおける判断結果を示すデ
    ータを生成する判断結果データ生成ステップとを含み、 上記連射検出結果処理ステップは、 判断結果データの値に応じて操作データが有効か無効か
    を判断する操作データ有効・無効判断ステップと、 上記操作データ有効・無効判断ステップにおいて、操作
    データが有効であるものと判断したときには操作データ
    の値に応じた効果を得るための制御を行い、操作データ
    が無効であるものと判断したときには操作データを無効
    として扱う操作データ反映ステップとを含む記録媒体。
  11. 【請求項11】 上記主処理の1サイクルの処理期間
    は、2垂直同期期間であり、上記連射検出処理は、割り
    込みにより、1垂直同期期間に1回実行されることを特
    徴とする請求項10記載の記録媒体。
  12. 【請求項12】 上記ゲームシステムで実行されるゲー
    ムは、上記操作ボタンの連打速度に応じた速度で上記ゲ
    ーム空間上の移動体を移動させる競争ゲームであり、 上記操作データ反映ステップにおいて、操作データが有
    効の場合には操作データの値に応じて上記移動体の加速
    度が正の加速度に設定され、操作データが無効の場合に
    は上記移動体の加速度が負の加速度に設定される請求項
    10記載の記録媒体。
  13. 【請求項13】 上記連射機能が用いられたものと判断
    されたときに、操作データを無効にすることを示す表
    示、若しくは連射ボタンを用いることに対する警告の表
    示が行われる請求項12記載の記録媒体。
  14. 【請求項14】 操作ボタンの押圧間隔の長短に応じて
    ゲーム空間上における制御対象の制御を行うようにされ
    たゲームシステムで用いられる連射検出方法であって、 上記操作ボタンの操作状態を示す操作データをゲームシ
    ステムにおける基準処理タイミングの1/2のタイミン
    グで取り込むと共に、 人間の手によっては不可能な程に高速かつ規則正しく操
    作ボタンを叩いた状態を電気的に作り出せる連射機能が
    用いられて操作ボタンが押されたか否かを、上記ゲーム
    システムにおける基準タイミングの1/2のタイミング
    で現在から過去にわたって取り込まれた3回分の操作デ
    ータの値の内、少なくとも2つ以上の操作データが連続
    して同一の値となったときのみ上記連射機能が用いられ
    ていないものと判断して操作データを有効とすることを
    特徴とする連射検出方法。
JP22444397A 1996-08-09 1997-08-07 連射検出方法及び記録媒体 Expired - Fee Related JP3145062B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22444397A JP3145062B2 (ja) 1996-08-09 1997-08-07 連射検出方法及び記録媒体

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP22613196 1996-08-09
JP19639897 1997-07-08
JP9-196398 1997-07-08
JP8-226131 1997-07-08
JP22444397A JP3145062B2 (ja) 1996-08-09 1997-08-07 連射検出方法及び記録媒体

Publications (2)

Publication Number Publication Date
JPH1176615A true JPH1176615A (ja) 1999-03-23
JP3145062B2 JP3145062B2 (ja) 2001-03-12

Family

ID=27327240

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22444397A Expired - Fee Related JP3145062B2 (ja) 1996-08-09 1997-08-07 連射検出方法及び記録媒体

Country Status (1)

Country Link
JP (1) JP3145062B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7329184B2 (en) 2002-09-09 2008-02-12 Konami Gaming, Inc. Game machine
JP2012083067A (ja) * 2010-10-14 2012-04-26 Panasonic Corp 加熱調理器
JP2014509421A (ja) * 2011-02-01 2014-04-17 エムシーシーアイ コーポレイション Usbホストシステムの拡張usbプロトコルスタックのためのセキュリティ手段

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7329184B2 (en) 2002-09-09 2008-02-12 Konami Gaming, Inc. Game machine
JP2012083067A (ja) * 2010-10-14 2012-04-26 Panasonic Corp 加熱調理器
JP2014509421A (ja) * 2011-02-01 2014-04-17 エムシーシーアイ コーポレイション Usbホストシステムの拡張usbプロトコルスタックのためのセキュリティ手段

Also Published As

Publication number Publication date
JP3145062B2 (ja) 2001-03-12

Similar Documents

Publication Publication Date Title
EP0836871B1 (en) Video game machine for playing video ball game and storage medium storing video ball game program
JP3145064B2 (ja) ビデオゲーム機及びビデオゲームプログラムを記録した媒体
US6256047B1 (en) Method of judging hits and computer-readable storage medium storing game data
JP3187439B2 (ja) コマンド入力方法及び記録媒体
US6645076B1 (en) Game apparatus with game player physical strength recognition
US6914612B2 (en) Image drawing method, image drawing apparatus, recording medium, and program
JP2006102275A (ja) ゲームシステム、プログラム及び情報記憶媒体
JP3145062B2 (ja) 連射検出方法及び記録媒体
JP4508719B2 (ja) プログラム、情報記憶媒体、及びゲームシステム
JP2005319188A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3348152B2 (ja) ゲームシステム
JP2000070549A (ja) ゲームシステム、画像の保存方法及びゲームプログラムが記録された記録媒体
US6208358B1 (en) Image processing device, image processing method and storage medium
JP2000189669A (ja) ゲ―ム装置、ゲ―ム装置におけるキャラクタ動作制御方法、及び機械読み取り可能な記録媒体
JP4544555B2 (ja) ゲームシステム及び情報記憶媒体
JP2000102675A (ja) オブジェクト表示方法、ゲ―ムシステム及びゲ―ムプログラムが記録されたコンピュ―タ読取可能な記録媒体
JP3145065B2 (ja) 球技のビデオゲーム機及び球技のビデオゲームプログラムを格納したコンピュータ可読媒体
JP3048346B2 (ja) 物体の動き表現方法、及びゲームプログラムが記録されたコンピュータ読取可能な記録媒体
JP3223170B2 (ja) ゲーム装置及び画像生成方法並びに画像生成プログラムを記録した記録媒体
JP2002092637A (ja) ゲームシステム及び情報記憶媒体
JPH1147448A (ja) 当たり判定方法、ゲームシステム及びゲームプログラムが記録されたコンピュータ読取可能な記録媒体
JP4545544B2 (ja) ゲームプログラムおよびゲーム装置
JP2000245969A (ja) ビデオゲーム装置およびプログラムを格納した記録媒体
JP2965549B2 (ja) 屈折状態表示方法、ゲームシステム及びゲームプログラムが記録されたコンピュータ読取可能な記録媒体
JP2007252796A (ja) プログラム、情報記憶媒体、及びゲームシステム

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090105

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090105

Year of fee payment: 8

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: 20090105

Year of fee payment: 8

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: 20090105

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100105

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110105

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110105

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120105

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130105

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140105

Year of fee payment: 13

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees