JP3981624B2 - Recording medium and information processing method - Google Patents
Recording medium and information processing method Download PDFInfo
- Publication number
- JP3981624B2 JP3981624B2 JP2002327123A JP2002327123A JP3981624B2 JP 3981624 B2 JP3981624 B2 JP 3981624B2 JP 2002327123 A JP2002327123 A JP 2002327123A JP 2002327123 A JP2002327123 A JP 2002327123A JP 3981624 B2 JP3981624 B2 JP 3981624B2
- Authority
- JP
- Japan
- Prior art keywords
- vibration
- user
- operating device
- data
- game
- 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.)
- Expired - Fee Related
Links
Images
Description
【0001】
【発明の属する技術分野】
本発明は、第1の使用者が第1の操作装置を操作しているときに、第2の使用者が第2の操作装置を操作して前記第1の操作装置内に設置された振動発生装置に指示を与えて、前記第1の使用者による前記第1の操作装置への操作を邪魔するビデオゲームをコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体及び情報処理方法に関する。
【0002】
【従来の技術】
ビデオゲーム機を含むエンタテインメント装置のような情報機器(エンタテインメントシステム)として、例えばCD−ROM等の記録媒体に格納されたゲーム内容をテレビジョン受像機の画面上に表示させながら、操作装置で操作してゲームを進行させるものがある。
【0003】
このエンタテインメントシステムにおけるエンタテインメント装置及び操作装置間は、通常、シリアルインターフェースで接続され、エンタテインメント装置からクロックが送られると、そのクロックに同期して操作装置から使用者の操作に対応したキースイッチ情報等を送るようになっている。
【0004】
また、最近では、操作装置内に外部(例えばエンタテインメント装置)からの要求によって使用者に物理的影響、例えば振動を与える影響付与手段を設けるようにして、例えばゲームの進行中において、使用者の操作に応答するように種々の振動を使用者に与えるようにしたシステムが開発され、実用化に至っている(例えば特許文献1及び2参照)。
【0005】
【特許文献1】
特開平9−313736号公報(図1、段落[0001]、[0022]〜[0024]、[0030]、[0032]〜[0033])
【特許文献2】
特開平9−741号公報(図1、図2、段落[0010]、[0036])
【0006】
【発明が解決しようとする課題】
本発明は、例えばゲームの進行中での使用者の操作に対する応答としての影響付与のほか、他の使用者からの要求に基づいて、当該使用者に対して影響を与えるようにして、ゲーム内容の意外なる展開を可能にし、対戦ゲームであれば臨場感溢れる対戦を可能にすることができる記録媒体及び情報処理方法を提供することを目的とする。
【0008】
【課題を解決するための手段】
本発明に係る記録媒体は、第1の使用者が第1の操作装置を操作しているときに、第2の使用者が第2の操作装置を操作して前記第1の操作装置内に設置された振動発生装置に指示を与えて、前記第1の使用者による前記第1の操作装置への操作を邪魔するビデオゲームをコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの要求を受信する要求受信ステップと、前記要求受信ステップにより受信された要求により、前記第1の操作装置を選択する選択ステップと、前記選択ステップにより選択された前記第1の操作装置内の前記振動発生装置に振動指示を与える振動指示ステップとを有することを特徴とする。
【0009】
また、本発明に係る情報処理方法は、第1の使用者が第1の操作装置を操作しているときに、第2の使用者が第2の操作装置を操作して前記第1の操作装置内に設置された振動発生装置に指示を与えて、前記第1の使用者による前記第1の操作装置への操作を邪魔するビデオゲームをコンピュータで実行させる情報処理方法であって、前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの要求を受信する要求受信ステップと、前記要求受信ステップにより受信された要求により、前記第1の操作装置を選択する選択ステップと、前記選択ステップにより選択された前記第1の操作装置内の前記振動発生装置に振動指示を与える振動指示ステップとを有することを特徴とする。
【0010】
前記構成において、前記第2の使用者からの前記要求に振動種別が含まれ、前記振動指示ステップは、前記振動種別に応じた振動を、前記選択ステップにより選択された前記第1の操作装置内の前記振動発生装置に指示するようにしてもよい。
【0011】
また、本発明に係る記録媒体は、第1の使用者が第1の操作装置を操作しているときに、第2の使用者が第2の操作装置を操作して前記第1の操作装置内に設置された振動発生装置に指示を与えて、前記第1の使用者による前記第1の操作装置への操作を邪魔するビデオゲームをコンピュータで実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体であって、前記プログラムは、前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの振動種別を含む要求を受信する要求受信ステップと、前記要求受信ステップにより受信された前記要求に含まれる前記振動種別に応じた振動を、前記第1の操作装置内の前記振動発生装置に指示する振動指示ステップとを有することを特徴とする。
【0012】
また、本発明に係る情報処理方法は、第1の使用者が第1の操作装置を操作しているときに、第2の使用者が第2の操作装置を操作して前記第1の操作装置内に設置された振動発生装置に指示を与えて、前記第1の使用者による前記第1の操作装置への操作を邪魔するビデオゲームをコンピュータで実行させる情報処理方法であって、前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの振動種別を含む要求を受信する要求受信ステップと、前記要求受信ステップにより受信された前記要求に含まれる前記振動種別に応じた振動を、前記第1の操作装置内の前記振動発生装置に指示する振動指示ステップとを有することを特徴とする。
【0013】
なお、これらの発明において、前記振動種別は、前記第2の使用者が前記第2の操作装置に対して一度に操作する1以上の操作子の種別に応じて決定するようにしてもよい。
【0014】
【発明の実施の形態】
以下、本発明に係る記録媒体及び情報処理方法の実施の形態例(以下、単に実施の形態に係るエンタテインメントシステムと記す)を図1〜図24を参照しながら説明する。
【0015】
本実施の形態に係るエンタテインメントシステム10は、図1に示すように、操作装置12が着脱自在に装着されるエンタテインメント装置14を有して構成されている。
【0016】
このエンタテインメント装置14は、例えば光ディスク等に記録されているプログラムを読み出して、使用者(例えばゲームプレイヤなど)からの指示に応じて例えばゲームを実行するためのものである。なお、ゲームの実行とは、主としてゲームの進行、及び表示や音声を制御することをいう。
【0017】
このエンタテインメント装置14の本体16は、ほぼ四角形状の筐体に収容されており、その中央部にビデオゲーム等のアプリケーションプログラムを供給するための記録媒体であるCD−ROM等の光ディスクが装着されるディスク装着部18と、現在実行中のプログラムを任意にリセットするためのリセットスイッチ20と、電源スイッチ22と、前記光ディスクの装着を操作するためのディスク操作スイッチ24と、例えば2つのスロット部26A、26Bを備えて構成されている。
【0018】
なお、アプリケーションプログラムを供給するための記録媒体は光ディスクに限定されるものではなく、また、通信回線を介してアプリケーションプログラムが供給されるようにしてもよい。
【0019】
スロット部26A、26Bには2つの操作装置12を接続することができ、2人の使用者が対戦ゲーム等を行うことができる。また、このスロット部26A、26Bには、従来から使用されているメモリカード30や携帯型情報端末32(図4参照)を挿着することもできる。なお、図1では2系統のスロット部26A、26Bを設けた構造を例示しているが、その数は2系統に限定されるものではない。
【0020】
操作装置12は、第1、第2の操作部40、42と、第3、第4の操作部44、46と、スタートボタン48、選択ボタン50とを有し、その内部には、振動付与機構が設けられている。この操作装置12については後で詳述する。
【0021】
図2は、前記エンタテインメント装置14の本体16の前面に設けられているスロット部26A、26Bの様子を示している。
【0022】
本実施の形態では、スロット部26A、26Bは、それぞれ2段に形成されており、その上段には前述したメモリカード30や携帯型情報端末32が挿着されるメモリカード挿入部60A、60Bが設けられ、その下段には操作装置12の接続端子部62(コネクタ;図1参照)が接続されるコントローラ接続部(ジャック)64A、64Bが設けられている。
【0023】
メモリカード挿入部60A、60Bの挿入孔(スロット)は、横方向に長い長方形状に形成され、その下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くして、メモリカード30や携帯型情報端末32が誤った向きに挿入されない構造になっている。また、メモリカード挿入部60A、60Bには、その内部に設けられている電気的接続を得るための接続端子を保護するシャッタが設けられている。
【0024】
一方、コントローラ接続部64A、64Bは、横方向に長い長方形状をした挿入孔の下側の両端のコーナーを上側の両端のコーナーに比べて丸みを多くした形状に形成され、操作装置12の接続端子部62が誤った向きに接続されない構造になっており、かつメモリカード30や携帯型情報端末32が誤挿入されないようにメモリカード挿入部60A、60Bとは挿入孔の形状を異にした構造にされている。
【0025】
図3に、エンタテインメント装置14の前面のスロット部26Aのメモリカード挿入部60Aに、携帯型情報端末32が挿入された状態を示す。
【0026】
次に、エンタテインメント装置14の構成を図4を参照しながら説明する。このエンタテインメント装置14は、中央演算処理装置(CPU:Central Processing Unit )70及びその周辺装置等からなる制御系72と、フレームバッファ74に描画を行う画像処理装置(GPU:Graphic Processing Unit )76等からなるグラフィックシステム78と、楽音、効果音等を発生する音声処理装置(SPU:Sound Processing Unit )等からなるサウンドシステム80と、アプリケーションプログラムが記録されている光ディスクの制御を行う光ディスク制御部82と、使用者からの指示が入力される操作装置12からの信号及びゲームの設定等を記憶するメモリカード30や携帯型情報端末32からのデータの入出力を制御する通信制御部84と、前記各部が接続されているバスBUS等を備えて構成されている。
【0027】
前記制御系72は、CPU70と、割込み制御やダイレクトメモリアクセス(DMA:Direct Memory Access)転送の制御等を行う周辺機器制御部86と、ランダムアクセスメモリ(RAM:Random Access Memory)からなるメインメモリ(主記憶装置)88と、該メインメモリ88、グラフィックシステム78、サウンドシステム80等の管理を行ういわゆるオペレーティングシステム等のプログラムが格納されたリードオンリーメモリ(ROM:Read Only Memory)90とを備えている。なお、ここでいうメインメモリ88は、そのメモリ上でプログラムを実行できるものをいう。
【0028】
前記CPU70は、ROM90に記憶されているオペレーティングシステムを実行することにより、このエンタテインメント装置14全体を制御するものであり、例えば32ビットのRISC−CPUからなる。
【0029】
そして、このエンタテインメント装置14は、電源が投入されると、前記制御系72のCPU70がROM90に記憶されているオペレーティングシステムを実行することにより、CPU70が、前記グラフィックシステム78、サウンドシステム80等の制御を行うようになっている。また、オペレーティングシステムが実行されると、CPU70は、動作確認等のエンタテインメント装置14全体の初期化を行った後、前記光ディスク制御部82を制御して、光ディスクに記録されているゲーム等のアプリケーションプログラムを実行する。
【0030】
このゲーム等のプログラムの実行により、CPU70は、使用者からの入力に応じて前記グラフィックシステム78、サウンドシステム80等を制御して、画像の表示、効果音、楽音の発生を制御する。
【0031】
また、前記グラフィックシステム78は、座標変換等の処理を行うジオメトリトランスファエンジン(GTE:Geometry Transfer Engine)94と、CPU70からの描画指示に従って描画を行うGPU76と、このGPU76により描画された画像を記憶するフレームバッファ74と、離散コサイン変換等の直交変換により圧縮されて符号化された画像データを復号する画像デコーダ96とを備えている。
【0032】
前記GTE94は、例えば複数の演算を並列に実行する並列演算機構を備え、前記CPU70からの演算要求に応じて座標変換、光源計算、行列あるいはベクトル等の演算を高速に行うことができるようになっている。具体的には、このGTE94は、例えば1つの三角形状のポリゴンに同じ色で描画するフラットシェーディングを行う演算の場合では、1秒間に最大150万程度のポリゴンの座標演算を行うことができるようになっており、これによって、このエンタテインメント装置14では、CPU70の負荷を低減するとともに、高速な座標演算を行うことができるようになっている。
【0033】
また、前記GPU76は、CPU70からの描画命令に従って、フレームバッファ74に対して多角形(ポリゴン)等の描画を行う。このGPU76は、1秒間に最大36万程度のポリゴンの描画を行うことができるようになっている。
【0034】
さらに、前記フレームバッファ74は、いわゆるデュアルポートRAMからなり、GPU76からの描画あるいはメインメモリからの転送と、表示のための読み出しとを同時に行うことができるようになっている。
【0035】
このフレームバッファ74は、例えば1Mバイトの容量を有し、それぞれ16ビットの、横が1024画素、縦が512画素からなるマトリックスとして扱われる。また、このフレームバッファ74には、ビデオ出力として出力される表示領域の他に、GPU76がポリゴン等の描画を行う際に参照するカラールックアップテーブル(CLUT:Color Look Up Table )が記憶されるCLUT領域と、描画時に座標変換されてGPU76によって描画されるポリゴン等の中に挿入(マッピング)される素材(テクスチャ)が記憶されるテクスチャ領域が設けられている。これらのCLUT領域とテクスチャ領域は、表示領域の変更等に従って動的に変更されるようになっている。
【0036】
なお、前記GPU76は、上述のフラットシェーディングの他にポリゴンの頂点の色から補完してポリゴン内の色を決めるグーローシェーディングと、前記テクスチャ領域に記憶されているテクスチャをポリゴンに張り付けるテクスチャマッピングを行うことができるようになっている。これらのグーローシェーディングまたはテクスチャマッピングを行う場合には、前記GTE94は、1秒間に最大50万程度のポリゴンの座標演算を行うことができる。
【0037】
さらに、画像デコーダ96は、前記CPU70からの制御により、メインメモリ88に記憶されている静止画あるいは動画の画像データを復号してメインメモリ88に記憶する。
【0038】
また、この再生された画像データは、GPU76を介してフレームバッファ74に記憶することにより、上述のGPU76によって描画される画像の背景として使用することができるようになっている。
【0039】
前記サウンドシステム80は、CPU70からの指示に基づいて、楽音、効果音等を発生するSPU98と、このSPU98により、波形データ等が記録されるサウンドバッファ100と、SPU98によって発生される楽音、効果音等を出力するスピーカ102とを備えている。
【0040】
前記SPU98は、例えば16ビットの音声データを4ビットの差分信号として適応予測符号化(ADPCM:Adaptive Diffrential PCM)された音声データを再生するADPCM復号機能と、サウンドバッファ100に記憶されている波形データを再生することにより、楽音、効果音等を発生する再生機能と、サウンドバッファ100に記憶されている波形データを変調させて再生する変調機能等を備えている。
【0041】
このような機能を備えることによって、このサウンドシステム80は、CPU70からの指示によってサウンドバッファ100に記録された波形データに基づいて楽音、効果音等を発生するいわゆるサンプリング音源として使用することができるようになっている。
【0042】
前記光ディスク制御部82は、光ディスクに記録されたプログラムやデータ等を再生する光ディスク装置92と、例えばエラー訂正符号(ECC:Error Correction Code )が付加されて記録されているプログラム、データ等を復号するデコーダ104と、光ディスク装置92からのデータを一時的に記憶することにより、光ディスクからのデータの読み出しを高速化するバッファ106とを備えている。前記デコーダ104には、サブCPU108が接続されている。
【0043】
また、光ディスク装置92で読み出される光ディスクに記録されている音声データとしては、上述のADPCMデータの他に音声信号をアナログ/デジタル変換したいわゆるPCMデータがある。
【0044】
ADPCMデータとして、例えば16ビットのデジタルデータの差分を4ビットで表わして記録されている音声データは、デコーダ104で復号された後、上述のSPU98に供給され、該SPU98でデジタル/アナログ変換等の処理が施された後、スピーカ102を駆動するために使用される。
【0045】
また、PCMデータとして、例えば16ビットのデジタルデータとして記録されている音声データは、デコーダ104で復号された後、スピーカ102を駆動するために使用される。
【0046】
さらに、通信制御部84は、バスBUSを介してCPU70との通信の制御を行う通信デバイス110を備え、使用者からの指示を入力する操作装置12が接続される接続端子部62と、ゲームの設定データ等を記憶する補助記憶装置としてのメモリカード30や携帯型情報端末32が接続されるメモリカード挿入部60A、60Bが前記通信デバイス110に設けられている。
【0047】
前記接続端子部に接続された操作装置12は、使用者からの指示を入力するために、例えば16個の指示キーを有し、通信デバイス110からの指示に従って、この指示キーの状態を、同期式通信により、通信デバイス110に毎秒60回程度送信する。そして、通信デバイス110は、操作装置12の指示キーの状態をCPU70に送信する。
【0048】
これにより、使用者からの指示がCPU70に入力され、CPU70は、実行しているゲームプログラム等に基づいて、使用者からの指示に従った処理を行う。
【0049】
ここで、前記メインメモリ88、GPU76、画像デコーダ96及びデコーダ104等の間では、プログラムの読み出し、画像の表示あるいは描画等を行う際に、大量の画像データを高速に転送する必要がある。
【0050】
そこで、このエンタテインメント装置14では、上述のようにCPU70を介さずに周辺機器制御部86からの制御により前記メインメモリ88、GPU76、画像デコーダ96及びデコーダ104等の間で直接データの転送を行ういわゆるDMA転送を行うことができるようになっている。これにより、データ転送によるCPU70の負荷を低減させることができ、高速なデータの転送を行うことができる。
【0051】
また、前記CPU70は、実行しているゲームの設定データ等を記憶する必要があるときに、その記憶するデータを通信デバイス110に送信する。通信デバイス110はCPU70からのデータを前記メモリカード挿入部60Aまたはメモリカード挿入部60Bのスロットに挿着されたメモリカード30や携帯型情報端末32に書き込む。
【0052】
ここで、前記通信デバイス110には、電気的な破壊を防止するための保護回路が内蔵されている。前記メモリカード30や携帯型情報端末32は、バスBUSから分離されており、エンタテインメント装置本体16の電源を入れた状態で、着脱することができる。従って、前記メモリカード30や携帯型情報端末32の記憶容量が足りなくなった場合等に、エンタテインメント装置本体16の電源を遮断することなく、新たなメモリカード30や携帯型情報端末32を挿着することができる。このため、バックアップする必要があるゲームデータが失われてしまうことなく、新たなメモリカード30や携帯型情報端末32を挿着して、必要なデータを新たなメモリカード30や携帯型情報端末32に書き込むことができる。
【0053】
また、パラレルI/Oインターフェース(PIO)112は拡張用に用意され、シリアルI/Oインターフェース(SIO)114は、例えば後述する外部インターフェースが接続されるようになっている。
【0054】
次に、操作装置12について図5〜図11を参照しながら説明する。この操作装置12は、図5に示すように、メガネ形状に形成され、上下に分割できる上ケース120と下ケース122とからハウジング本体が構成されている。このハウジング本体の長手方向の両端側には、両手の掌でグリップして支持する角状に突出した第1及び第2の操作支持部124、126が形成されている。
【0055】
また、ハウジング本体における中央位置のくびれた部分に、ゲームの開始及び選択等に使用されるスイッチからなるスタートセレクト部128と、ハウジング本体の両側の左右対称な位置に円形状に形成され、その略中央部分に配設されている複数のスイッチ群からなる上述した第1及び第2の操作部40、42と、ハウジング本体の前部の側壁面側の側面の左右対称位置に、主として人差し指と中指とで操作できる複数のスイッチからなる上述した第3及び第4の操作部44、46とから構成されている。
【0056】
スタートセレクト部128は、第1の操作部40と第2の操作部42との中間位置に配置された上述したスタートボタン48と選択ボタン50とを備えている。選択ボタン50は、例えばゲームを開始するときに、難易度等を選択するものであり、スタートボタン48はゲームを実際に開始させるスイッチである。
【0057】
第1の操作部40は、ハウジング本体の端部であって、円形状をした中央部分に略十字形状をした凹部に相当する窪み部130と、この窪み部130内には4個のキートップ132a、132b、132c、132dが内部から外方向に突出するための窓部134を設けた構造となっている。この窓部134は、略十字形状の窪み部130に合わせて十字方向に4個のキートップ132a、132b、132c、132dの頭部が向かい合うようにして配置される構造となっている。
【0058】
第2の操作部42は、図5に示すように、円形状の中央部分に略十字形状をした凹部に相当する窪み部136が設けられ、その十字形をした窪み部136の上下左右のそれぞれの位置に円筒形状のキートップ138a、138b、138c、138dをそれぞれ内部から外方向に突出できる大きさの開口部を有する4個の筒部140を有する構造となっている。
【0059】
4個のそれぞれのキートップ138a、138b、138c、138dの頂面には、容易にスイッチの機能を識別できるように、視認しやすい認識符号、例えば、○、△、□、×等の機能を表す符号(マーク)を付けている。また、これらキートップ138a、138b、138c、138dの下端部と筒部140の下部側には、組み立て時において、他の筒部140に入らないように特有の突起及び切欠きを設けた構造となっている。
【0060】
第3及び第4の操作部44、46は、図5に示すように、第1及び第2の操作部40、42の前部側の壁面に突出させて形成され、この突出した壁面に上下に平行して2列の細長い孔からなる開口部142と、この開口部142に略嵌まる細長い形状をしたキートップ144a、144b、144c、144dを内側から外側方向に突出して形成した動作指示操作スイッチとから構成されている。
【0061】
このような構成を有する操作装置12を使用する場合は、エンタテインメント装置14に操作装置12の接続端子部62(図1参照)を介して接続し、エンタテインメント装置14をテレビジョン受像機等のモニタに接続する。そして、通常は両手の掌で操作装置12を持ち、両手の指で第1〜第4の操作部40、42、44、46の操作ボタン群を操作して、モニタ画面上のキャラクタ等の動作ターゲットの動きを指示してゲームを行う。
【0062】
また、この操作装置12は、ハウジング本体内部の所定空間に応答手段150が配置されている。
【0063】
即ち、上ケース120と下ケース122とから構成されたハウジング本体は、下ケース122において角状に突出した部位である第1の操作支持部124に、応答手段150を装備するための応答手段配置部152を設けた構造となっている。
【0064】
下ケース122の第1及び第2の操作部40、42は、図5に示すように、基板及びスイッチ群を設置するための円筒形状の載置部154が設けられ、第1及び第2の操作部40、42の前面側には、長方形状の第3及び第4の操作部44、46が突出するように設けられた構造となっている。
【0065】
このような構造からなる下ケース122において、応答手段150を設置できる空間としては、図5及び図8に示すように、両手の掌でグリップして支持する第1及び第2の操作支持部124、126の部位、又はくびれたスタートセレクト部128の前側位置に存在する空間を利用することができる。本実施の形態においては左手の掌でグリップする第1の操作支持部124に収納配置した構造となっている。
【0066】
ここで、応答手段150は、図6に示すように、モータ156と、このモータ156の回転軸158に対して偏心させた位置に円柱形状の回転部160を取り付けた構造となっている。このような構造において、モータ156が回転駆動すると、回転部160は偏心回転して振動が発生する仕組みになっており、この振動が一種の物理的影響として使用者に伝わることになる。
【0067】
この振動は、図5及び図7において、第1の操作支持部124のみに限らず下ケース122及び上ケース120の筐体にも伝達されて操作装置12全体が振動することになる。この偏心して発生する振動の強さや周期等の振動の度合いは、応答手段150のモータ156の回転速度およびトルクにより任意に変化させることができ、それによって応答手段150の強弱を変化させることができる。
【0068】
下ケース122に設けた応答手段配置部152は、図5に示すように、第1の操作支持部124の掌が当接する部位の底部に設けられた構造となっており、応答手段150のモータ156を固定できる構造となっている。
【0069】
このようにして応答手段150を下ケース122の第1の操作支持部124、即ち、左手の掌でグリップして支持する部位に取り付けたことにより、図5に示すように、操作装置12をエンタテインメント装置14に接続し、該エンタテインメント装置14をテレビジョン受像機等のモニタ162に接続してゲームを行う際に、ゲームの種類によって決められたタイミングあるいは所定の操作で振動を受けるようになっている。
【0070】
例えば格闘技のゲームにおいて相手を倒したときや相手から攻撃を受けたとき、シューティングゲームでターゲットに命中したとき、あるいは動作するターゲットが飛行機である場合に例えば画面上で攻撃を受けたときなどにおいて、エンタテインメント装置14からの特定の応答信号により応答手段150のモータ156を回転駆動させて操作装置12全体を一定時間振動させるようになっている。
【0071】
このようにして使用者の操作ボタンに対する操作に応答して操作装置12自体が振動を起こし、この振動が使用者に体感としてフィードバックされることになり、臨場感をより一層向上させることができる。
【0072】
上述したように、応答手段150を駆動させて操作装置12全体を振動させるためには、操作装置12とエンタテインメント装置14との間は双方向通信機能を備えた構成であることが必要である。
【0073】
この双方向通信機能は、図10に示すように、操作装置12と双方向のシリアル通信を行う接続端子部62をエンタテインメント装置14と接続して行うことができる。
【0074】
操作装置12側の双方向通信機能を行う構成は、エンタテインメント装置14とシリアル通信を行うシリアルI/OインターフェースSIOと、複数の操作ボタンからの操作データを入力するパラレルI/OインターフェースPIO、CPU、RAM及びROMであるワンチップマイクロコンピュータ(以下、マイコンと呼ぶ)と、応答手段150のモータ156を回転駆動させるモータドライバ164とから構成され、モータ156はモータドライバ164からの供給電圧及び電流により回転駆動する。
【0075】
エンタテインメント装置14側には、操作装置12間でシリアル通信を行うシリアルI/OインターフェースSIOを設けた構造となつており、操作装置12の接続端子部62を接続すると、この接続端子部62を介して操作装置12側のシリアルI/OインターフェースSIOと接続され、双方向の通信手段、即ち、双方向のシリアル通信を行うことができる構成となっている。なお、エンタテインメント装置14のその他の詳細な構成は省略してある。
【0076】
双方向のシリアル通信を行う信号線及び制御線は、エンタテインメント装置14から操作装置12に対してデータを送るデータ伝送用の信号線TXD(Transmit X' for Data)と、操作装置12側からエンタテインメント装置14側にデータを送るデータ伝送用の信号線RXD(Received X' for Data)と、各データ伝送用の信号線TXD、RXDからデータを抜き出すシリアル同期クロック用の信号線SCK(Serial Clock)と、ターミナル側である操作装置12の通信の確立及び中断等を行うための制御線DTR(Data Terminal Ready )と、大量のデータ転送を行うためのフロー制御用の制御線DSR(Data Set Ready)とから構成されている。
【0077】
また、この双方向のシリアル通信を行う信号線及び制御線からなるケーブルには、図10に示すように、信号線及び制御線の他にエンタテインメント装置14側の電源から直接取り出した電源用ケーブル166が含まれており、この電源用ケーブル166は操作装置12側のモータドライバ164に接続され、モータ156を回転させる電源を供給する。
【0078】
このような構成からなる双方向のシリアル通信手順は、例えばエンタテインメント装置14が操作装置12と通信をして、第1〜第4の操作部40、42、44、46の操作ボタンの操作データ(ボタン情報)を取り込むために、まず、エンタテインメント装置14は制御線DTRに選択データを出力する。この結果、操作装置12は制御線DTRによって選択されたことを確認して、それに続く信号線TXDの受信待状態になる。続いてエンタテインメント装置14は、データ伝送用の信号線TXDに操作装置12を示す識別コードを送出する。これにより操作装置12が信号線TXDよりこの識別コードを受け取る。
【0079】
操作装置12が識別コードを認識することにより、これ以降、エンタテインメント装置14との通信を開始する。即ち、エンタテインメント装置14からは制御データ等がデータ伝送用の信号線TXDを介して操作装置12側に送信され、逆に操作装置12からは操作ボタンで操作された操作データ等がデータ伝送用の信号線RXDを介してエンタテインメント装置14に送信される。このようにしてエンタテインメント装置14と操作装置12との間で双方向のシリアル通信が行われ、この通信はエンタテインメント装置14が制御線DTRを通じて選択中止データを出力することにより終了する。
【0080】
このようにして双方向のシリアル通信機能を備えていれば、操作装置12側からの主として操作ボタンの操作データをエンタテインメント装置14側に送信することができると共に、エンタテインメント装置14側からは、データ伝送用信号線TXDを介して応答手段150のモータ156を回転させるための振動指示データを操作装置12側に送出することができる。このモータ156を回転させるための振動指示データは、エンタテインメント装置14にセットされたCD−ROMによって予め設定されており、ゲームを行う利用者の動作ターゲットに応じて、エンタテインメント装置14から操作装置12自体に一定時間の振動伝達によるフィードバックが行われる。この点に関して、図5及び図10を参照しながら図11のフローチャートに沿って以下詳細に説明する。
【0081】
特定のCD−ROMをエンタテインメント装置14に装着して、図5に示した操作装置12のスタートボタン48によりゲームの開始を指示し、かつ、選択ボタン50の操作により種々の機能を設定し、第1〜第4の操作部40、42、44、46の操作によりゲームが行われる状態になっている。
【0082】
そして、ゲーム開始に伴つて、図10に示した操作装置12のCPU、RAM、ROMからなるマイコンは振動指示データがエンタテインメント装置14側からシリアルI/OインターフェースSIOを介して送られてきているかを常時監視している。この振動指示データには、図10に示すモータ156を駆動する電圧及び電流の制御信号及びモータ156を駆動する時間が含まれている。
【0083】
そして、ゲームの進行中に、もし、エンタテインメント装置14側から送られてくるデータの中に振動指示データがある場合には、モータドライバ164を駆動させ、エンタテインメント装置14から供給されている電圧をモータ156に所定時間供給する。
【0084】
即ち、操作装置12側で受けたデータ信号の中の振動指示データをステップS1で判定し、ステップS2のマイコンで処理して、ステップS3で図10に示すモータドライバ164を駆動し、ステップS4で振動を発生させる。
【0085】
また、ステップS1で振動指示データでない場合に、ステップS5において操作ボタンが操作されると、ステップS6において操作された操作データが図10に示すパラレルI/OインターフェースPIOを介してマイコンに入力される。マイコンに入力された操作データは、ステップS2においてマイコンで処理され、ステップS7においてシリアルデータに変換され、図10に示すシリアルI/OインターフェースSIOを介してエンタテインメント装置14に送信される。
【0086】
エンタテインメント装置14がシリアルデータに変換された操作データを受信すると、ステップS8において、動作ターゲットのデータと、受信したシリアルデータとの比較を行つて、ヒット状態を判別する。ここで、ヒット状態とは、使用者が放った例えば仮想のレーザ光が動作中にある仮想のターゲットに当たった状態を意味する。
【0087】
もし、ステップS9において、動作ターゲットのデータとシリアルデータとが一致したとき、即ち、ヒットしたときは、ステップS10においてヒットした動作ターゲットをモニタ162の画面上に表示すると共に、ステップS11において振動指示データを出力し、ステップS12においてシリアルデータに変換して図10に示すシリアルI/OインターフェースSIOを介して操作装置12に特定の応答信号として返信する。
【0088】
この振動指示データは、ステップS1〜S3で説明したように、操作装置12のマイコンにより検出されると、図10に示すモータドライバ164から電源をモータ156に供給して回転させ、その回転によって操作装置12全体が振動する。
【0089】
もし、ヒットしていないときには、ステップS13において操作ボタンに基づいた動作ターゲットをモニタ162の画面上に表示して、ステップS5により操作装置12からの操作ボタンの操作によつて、次の動作を行うようになる。
【0090】
また、上述したヒットしたときに発生する振動指示データは、エンタテインメント装置14から特定の応答信号として操作装置12が受け取る構成になっているが、エンタテインメント装置14から一方向の通信によつて操作装置12に送出する構成でもよい。
【0091】
次に、この実施の形態に係るエンタテインメントシステム10が有する特徴的な機能、即ち、物理的影響付与手段(操作装置12内のモータ156やゲームプログラムが参照するパラメータ等)に対して指示を行う機能(影響付与指示機能)について説明する。
【0092】
この影響付与指示機能を実現するプログラム(影響付与指示手段200)は、予めエンタテインメント装置14にて再生される特定のCD−ROMから所定の処理を経てエンタテインメント装置14のメインメモリ88にダウンロードされることによって当該エンタテインメント装置14上で動作されるようになっている。
【0093】
また、このエンタテインメント装置14には、例えば図12に示すように、外部端子(例えばシリアルI/O)114を通じて外部インターフェース(例えばマルチタップ)202が接続されるようになっている。この外部インターフェース202は、一度に複数(例えば4つ)の操作装置12を接続することが可能であり、複数の使用者による例えば対戦ゲーム等を楽しむことができるようになっている。
【0094】
もちろん、前記外部インターフェース202を、通信デバイス110に接続するようにしてもよい。
【0095】
まず、前記影響付与指示手段200の構成について図13を参照しながら説明する。この影響付与指示手段200は、図13に示すように、当該エンタテインメント装置14の使用者に関する情報を設定して使用者情報テーブル204を作成する使用者設定処理手段206と、1つ以上の操作装置12からの入力情報を取り込んで、その入力情報に応じた処理を落ちこぼれがないように行って、イベント処理テーブル208を作成するイベント処理手段210と、イベント処理テーブル208から振動に関する情報のみを抽出して振動を与えるべき使用者に対する振動種別を振動出力テーブル212に順次登録する振動設定処理手段214と、前記振動出力テーブル212と使用者情報テーブル204とに基づいて、振動を与えるべき実使用者に振動種別を含んだ振動指示データDvを作成して出力する一方、仮想使用者に与えるべき物理的影響をパラメータの変更として実行する振動出力処理手段216と、ゲームが終了したか否かの判別を行う終了判別手段218とを有して構成されている。
【0096】
使用者設定処理手段206は、前記外部インターフェース202及び通信デバイス110(図12参照)をスキャンすることによって、外部インターフェース202のうち、操作装置12が接続されているポートの番号(ポート番号)や、通信デバイス110のうち、操作装置12が接続されているポートの番号(ポート番号)を取り込むように構成されている。
【0097】
ポート番号の定義付けとしては、例えば通信デバイス110の2つのポートについてポート番号1、2とし、外部インターフェース202の複数のポートについてポート番号3、4、5、6・・・とすることができる。
【0098】
また、このエンタテインメント装置14を使用する複数の使用者についても番号付けをすることによって、ソフトウェアを構築する上で有利となる。そこで、例えば通信デバイス110に接続された操作装置12を使用する使用者から順に番号を付与してゆき、次いで、外部インターフェース202に接続された複数の操作装置12を使用する使用者について、そのポート番号の若い順から使用者番号を順次決めていく方法などがある。
【0099】
具体的には、図12に示すように、通信デバイス110に2つの操作装置12が接続され、外部インターフェース202に4つの操作装置12が接続された場合においては、通信デバイス110に接続された2つの操作装置12を使用する2人の使用者に使用者番号1、2を付与し、次いで、外部インターフェース202に接続された4つの操作装置12を使用するそれぞれ4人の使用者に対してポート番号の若い順から使用者番号3、4、5及び6というように付与する。
【0100】
また、通信デバイス110に1つの操作装置12が接続され、外部インターフェース202に3つの操作装置12が接続された場合においては、通信デバイス110に接続された操作装置12を使用する使用者に使用者番号1を付与し、次いで、外部インターフェース202に接続された3つの操作装置12を使用するそれぞれ3人の使用者に対してポート番号の若い順から使用者番号3、4及び5というように付与する。
【0101】
もちろん、外部インターフェース202のみに例えば3つの操作装置12が接続されている場合においては、3人の使用者に対してポート番号の若い順から使用者番号1、2及び3というように付与する。
【0102】
ところで、操作装置12を使用する使用者は人間であり、実使用者として定義できる。一方、例えば対戦ゲームを行う場合に、コンピュータを相手にする場合もありうる。この場合、コンピュータは仮想使用者として定義することができる。この仮想使用者については、ポート番号の概念を取り入れることができないため、例えばコンピュータであることを示す特有のコードとして扱うのが便利である。更に、仮想使用者の使用者番号は、前記実使用者の使用者番号の後の番号を割り当てるようにすればよい。
【0103】
これらの定義付けに基づいて、各種テーブルの内訳について説明すると、まず、使用者情報テーブル204は、図14に示すように、ポート番号あるいはコード(仮想使用者を示すコード)がレコード単位に登録されている。この使用者情報テーブル204のレコード番号は、使用者番号に対応しており、例えば使用者番号1として割り当てられた実使用者が使用する操作装置12が接続されているポートの番号(ポート番号)がレコード1に登録されるようになっている。
【0104】
イベント処理テーブル208は、図15に示すように、各レコードに、操作装置12からの入力データやコンピュータの判断に基づく処理種別(振動など)と、例えば振動を与えるべき実使用者の使用者番号と、その操作属性、例えば操作キーの種別(○、△、□、×、これらの組合せなど)を示すコードが格納されるようになっている。振動に関する処理でない場合は、操作属性として入力内容に基づく演算やコンピュータの判断に基づく演算の結果が格納される。
【0105】
振動出力テーブル212は、図16に示すように、各レコードに、操作キーの種別に基づく振動の種別が1つ以上格納されるようになっている。初期値(無効値)としては例えばFFHを用いることができる。
【0106】
振動種別の内訳を示す駆動信号テーブル268の一例を図17に示す。この例でみると、操作キー○に対応する種別1は、操作装置12内に設置されたモータ156を「所定の回転数で一定駆動すること」を示し、操作キー×に対応する種別2は、前記モータ156に対し「一定の周期で回転数を可変すること」を示し、操作キー□に対応する種別3は、前記モータ156に対し「ランダムに回転数を可変すること」を示し、操作キー△に対応する種別4は、前記モータ156に対し「間欠的な回転をさせること」を示している。
【0107】
また、操作キー○+×(操作キー○と×を同時に操作)に対応する種別5は、前記モータ156を「一定の周期で所定の回転数で駆動すること」を示している。
【0108】
次に、前記影響付与指示手段200を構成する各種処理手段の構成について図13に基づいて説明する。
【0109】
まず、使用者設定処理手段206は、外部インターフェース202等の接続の有無を検知して操作装置12が接続できる許容数を設定する許容接続数設定手段230と、操作装置12の接続の有無や仮想使用者の存在の有無を検出して使用者情報テーブル204を作成するテーブル作成手段232と、使用者設定処理の完了を判別する処理完了判別手段234とを有して構成されている。
【0110】
イベント処理手段210は、使用者情報テーブル204からレコードを順次読み出すレコード読出し手段236と、実使用者が操作している操作装置12の入力内容を検出して、該入力内容に基づいて演算を行ったり、コンピュータの判断結果に基づいて演算を行う演算手段238と、演算結果が振動関係であるか否かを判別する振動関係判別手段240と、振動関係の場合にイベント処理テーブル208の該当レコードに振動に関するコードと、演算によって割り出された使用者番号と、操作属性を登録し、それ以外の場合に、イベント処理テーブル208の該当レコードに要求に応じた種別コードと、演算結果を登録してイベント処理テーブル208を作成するテーブル作成手段242と、イベント処理の完了を判別する処理完了判別手段244とを有して構成されている。
【0111】
振動設定処理手段214は、イベント処理テーブル208からレコードを順次読み出すレコード読出し手段246と、処理種別が振動関係であるか否かを判別する振動関係判別手段248と、前記読み出されたレコードに登録されている各種情報に基づいて振動出力テーブル212を作成するテーブル作成手段250と、振動設定処理の完了を判別する処理完了判別手段252とを有して構成されている。
【0112】
振動出力処理手段216は、使用者情報テーブル204からレコードを順次読み出す第1のレコード読出し手段254と、振動出力テーブル212からレコードを順次読み出す第2のレコード読出し手段256と、影響を与えるべき相手が実使用者か仮想使用者かを判別する使用者判別手段258と、該使用者判別手段258での判別結果が実使用者である場合に、その操作装置12に向けて転送すべき振動指示データDvを作成する振動指示データ作成手段260と、作成された振動指示データDvを対象とする操作装置12に出力する振動指示データ出力手段262と、前記使用者判別手段258での判別結果が仮想使用者である場合に、ゲームプログラムが参照する物理的パラメータの数値を変化させるパラメータ変更手段264と、振動出力処理の完了を判別する処理完了判別手段266とを有して構成されている。
【0113】
次に、前記影響付与指示手段(プログラム)200の処理動作、例えば対戦ゲームのゲームプログラムと共に動作する影響付与指示手段200の処理動作について図18〜図24のフローチャートを参照しながら説明する。
【0114】
まず、図18のステップS101において、特定のCD−ROMから対戦ゲームのゲームプログラムと本実施の形態に係る影響付与指示手段200を読み出して、エンタテインメント装置14のメインメモリ88に転送し、ステップS102において、影響付与指示手段200を起動すると共に、ステップS103において、ゲームプログラムを起動する。影響付与指示手段200は、前記ゲームプログラムと時分割(タイムシュアリング方式)で動作するように設定されている。
【0115】
ゲームプログラムは、例えば図19に示すように、まず、ステップS201において、ゲーム画面表示が行われる。次いで、ステップS202において、対戦ゲームの処理が行われ、操作装置12を通じて送られてくる入力データを順次処理して、その入力に応じた画像表示や各種パラメータの変更を行う。
【0116】
そして、ステップS203において、勝敗が決定したか否かの判別が行われ、決定していない場合は、ステップS201に戻って、再び対戦ゲームの処理が行われ、勝敗が決定した場合には次のステップS204に進んで、今度はゲーム終了であるか否かが判別される。ゲーム終了でないと判別された場合は、ステップS201に戻って再び対戦ゲームの処理が行われ、ゲーム終了と判断された場合は、次のステップS205においてゲーム終了フラグをセットしてこのゲームプログラムが終了することになる。
【0118】
そして、次のステップS302において、例えば対戦ゲームに参加する使用者(実使用者や仮想使用者)の人数の入力が行われる。この人数の入力は、このエンタテインメント装置14に接続された複数の操作装置12の中のいずれかを通じて行われる。
【0119】
次に、ステップS303において、使用者設定処理に入る。この使用者設定処理は、図13の使用者設定処理手段206で行われ、当該エンタテインメント装置14の使用者に関する情報を設定して使用者情報テーブル204を作成する。前記使用者設定処理が終了した後、ステップS304において、イベント処理に入る。このイベント処理は、図13のイベント処理手段210で行われ、1つ以上の操作装置12からの入力情報を取り込んで、その入力情報に応じた処理を落ちこぼれがないように行って、イベント処理テーブル208を作成する。
【0120】
前記イベント処理が終了した後、ステップS305において、振動設定処理に入る。この振動設定処理は、図13の振動設定処理手段214で行われ、イベント処理テーブル208から振動に関する情報のみを抽出して振動を与えるべき使用者に対する振動種別を振動出力テーブル212に順次登録する。
【0121】
前記振動設定処理が終了した後、ステップS306において、振動出力処理に入る。この振動出力処理は、図13の振動出力処理手段216で行われ、使用者情報テーブル204と振動出力テーブル212に基づいて、振動を与えるべき実使用者に振動種別を含んだ振動指示データDvを作成して出力する一方、仮想使用者に与えるべき物理的影響をパラメータの変更として実行する。
【0122】
前記振動出力処理が終了した後、ステップS307においてその他の演算処理を行い、次いで、ステップS308において、終了判別手段218を通じて、ゲームが終了したか否かの判別が行われる。この判別は、ゲーム終了フラグがセットされているか否かで行われる。ゲームが終了していないと判別された場合は、前記ステップS304に戻り、再度、イベント処理、振動設定処理及び振動出力処理並びにその他の演算処理が行われる。
【0123】
そして、前記ステップS308において、ゲームが終了したと判別された場合は、この影響付与指示処理が終了する。
【0124】
次に、前記ステップS303での使用者設定処理、ステップS304でのイベント処理、ステップS305での振動設定処理及びステップS306での振動出力処理について図21〜図24を参照しながら順番に説明する。
【0125】
最初に使用者設定処理は、まず、図21のステップS401において、許容接続数設定手段230を通じて、外部インターフェース202が接続されているか否かが判別される。この判別は、例えばハードウェアの接続状態を示す状態フラグを参照することにより行われる。
【0126】
外部インターフェース202が接続されている場合は、次のステップS402に進み、同じく許容接続数設定手段230を通じて、外部インターフェース202の種類(ID等)から許容接続数Mを割り出す。このとき、通信デバイス110に接続される操作装置12も使用可能である場合は、前記許容接続数Mとして更に通信デバイス110への操作装置12の許容接続数である例えば「2」が加算される。
【0127】
外部インターフェース202が接続されていない場合は、ステップS403に進み、同じく許容接続数設定手段230を通じて、許容接続数Mとして通信デバイス110への操作装置12の許容接続数である例えば「2」が定義される。
【0128】
ステップS402又はステップS403での処理が終了した段階で次のステップS404に進み、外部インターフェース202や通信デバイス110のポート検索用に使用されるインデックスレジスタiに初期値「1」を格納し、使用者情報テーブル204のレコード検索用に使用されるインデックスレジスタjに初期値「1」を格納する。
【0129】
次に、ステップS405において、テーブル作成手段232を通じて、i番目のポートに操作装置12が接続されているか否かが判別される。操作装置12が接続されている場合は、次のステップS406に進み、同じくテーブル作成手段232を通じて、使用者情報テーブル204のjレコード目にポート番号iを格納する。次いで、ステップS407において、インデックスレジスタjの値を+1更新する。
【0130】
前記ステップS407での処理が終了した段階又は前記ステップS405においてi番目のポートに操作装置12が接続されていないと判別された場合は、次のステップS408に進み、インデックスレジスタiの値を+1更新する。
【0131】
次いで、ステップS409において、処理完了判別手段234を通じて、操作装置12が接続されているすべてのポート番号の使用者情報テーブル204への登録が完了したか否かが判別される。この判別は、インデックスレジスタiの値が許容接続数Mよりも大きいか否かで行われる。
【0132】
インデックスレジスタiの値が許容接続数M以下で、処理が完了していないと判別された場合は、前記ステップS405に戻り、該ステップS405以降の処理を繰り返す。操作装置12が接続されているポート番号がすべて登録された場合は、次のステップS410に進み、テーブル作成手段232を通じて、今度は仮想使用者が存在するか否かが判別される。この判別は、インデックスレジスタjの値が人数Nと同じか否かで行われる。
【0133】
インデックスレジスタjの値と人数Nが同じで仮想使用者が存在すると判別された場合は、次のステップS411に進み、テーブル作成手段232を通じて、使用者情報テーブル204のjレコード目に仮想使用者を示すコードを格納する。
【0134】
前記ステップS411での処理が終了した段階又は前記ステップS410において仮想使用者が存在しないと判別された場合は、この使用者設定処理が終了する。
【0135】
次に、イベント処理は、まず、図22のステップS501において、使用者情報テーブル204やイベント処理テーブル208のレコード検索用として使用されるインデックスレジスタiに初期値「1」を格納する。
【0136】
次に、ステップS502において、レコード読出し手段236を通じて、使用者情報テーブル204からiレコード目の内容を読み出す。
【0137】
次いで、ステップS503において、演算手段238を通じて、当該レコードの内容が実使用者のものであるか否かが判別される。この判別は、当該レコードの内容が仮想使用者を示すコードであるか否かで行われる。
【0138】
当該レコードの内容が仮想使用者を示すコードではなく、実使用者に関するものである場合は、次のステップS504に進み、演算手段238を通じて、当該レコードに格納されているポート番号に対応するポート(外部インターフェース202や通信デバイス110の該当ポート)に接続されている操作装置12からの入力情報を受け取る。
【0139】
その後、ステップS505において、演算手段238を通じて、前記受け取られた入力情報を演算して、どのような操作が行われたかを割り出す。
【0140】
一方、ステップS503において、仮想使用者であると判別された場合は、ステップS506に進み、コンピュータの判断(演算結果等)を受け取る。次いで、ステップS507において、演算手段238を通じて、前記コンピュータの判断結果を演算して、どのような判断が行われたかを割り出す。
【0141】
前記ステップS505とステップS507での演算で得られる情報としては、例えば振動に関するものであれば、振動に関するコードと、振動を与えるべき使用者の番号(使用者番号)と、操作ボタンの種別(操作属性)である。
【0142】
前記ステップS505での処理又はステップS507での処理が終了した段階で、次のステップS508に進み、振動関係判別手段240を通じて、今回の操作内容あるいは判断結果が振動関係であるか否かが判別される。
【0143】
振動関係である場合は、次のステップS509に進み、テーブル作成手段242を通じて、イベント処理テーブル208のiレコード目に、振動に関するコード、使用者番号並びに演算結果に基づく操作属性を格納する。
【0144】
ステップS508において振動関係でないと判別された場合は、ステップS510に進み、テーブル作成手段242を通じて、イベント処理テーブル208のiレコード目に、要求に応じた種別コードと、演算結果を格納する。
【0145】
前記ステップS509での処理又はステップS510での処理が終了した段階で、次のステップS511に進み、インデックスレジスタiの値を+1更新した後、次のステップS512において、処理完了判別手段244を通じて、使用者情報テーブル204に登録されたすべての使用者に対し、今回の操作内容又は判断内容をイベント処理テーブル208に登録したか否かが判別される。この判別は、インデックスレジスタiの値が人数Nよりも大きいか否かで行われる。
【0146】
インデックスレジスタiの値が人数N以下で、処理が完了していないと判別された場合は、前記ステップS502に戻り、該ステップS502以降の処理を繰り返す。今回の操作内容又は判断内容がすべてイベント処理テーブル208に登録された場合は、このイベント処理が終了する。
【0147】
次に、振動設定処理は、まず、図23のステップS601において、イベント処理テーブル208のレコード検索用として使用されるインデックスレジスタiに初期値「1」を格納する。
【0148】
次に、ステップS602において、レコード読出し手段246を通じて、イベント処理テーブル208からiレコード目の内容、即ち、使用者番号iに対応する使用者の操作内容あるいは判断内容を読み出す。
【0149】
次に、ステップS603において、振動関係判別手段248を通じて、振動関係であるか否かが判別される。この判別は、当該レコードの内容に振動に関するコードが登録されているか否かで行われる。
【0150】
振動関係である場合は、次のステップS604に進み、テーブル作成手段250を通じて、当該レコードに登録されている使用者番号を読み出して、振動出力テーブル212のレコード検索用として使用されるインデックスレジスタjに格納する。
【0151】
次に、ステップS605において、同じくテーブル作成手段250を通じて、当該レコードに登録されている操作属性を読み出し、駆動信号テーブル268からその操作属性に対応する振動種別を割り出す。
【0152】
次に、ステップS607において、同じくテーブル作成手段250を通じて、前記割り出された振動種別を振動出力テーブル212のjレコード目に順次登録する。この時点で、振動を与えるべき使用者に対する振動種別が登録されることになる。
【0153】
前記ステップS607での処理が終了した段階あるいは前記ステップS603において振動関係でないと判別された場合は、次のステップS608に進み、インデックスレジスタiの値を+1更新した後、ステップS609において、処理完了判別手段252を通じて、イベント処理テーブル208に登録された情報のうち、振動関係に関する情報をすべて振動出力テーブル212に登録したか否かが判別される。この判別は、インデックスレジスタiの値が人数Nよりも大きいか否かで行われる。
【0154】
インデックスレジスタiの値が人数N以下で、処理が完了していないと判別された場合は、前記ステップS602に戻り、該ステップS602以降の処理を繰り返す。そして、今回の振動に関する情報がすべて振動出力テーブル212に登録された場合は、この振動設定処理が終了する。
【0155】
次に、振動出力処理は、まず、図24のステップS701において、振動出力テーブル212のレコード検索用として使用されるインデックスレジスタiに初期値「1」を格納する。
【0156】
次に、ステップS702において、第1のレコード読出し手段254を通じて、使用者情報テーブル204からiレコード目の内容、即ち、使用者番号iに対応するポート番号あるいは仮想使用者を示すコードを読み出す。
【0157】
次に、ステップS703において、第2のレコード読出し手段256を通じて、振動出力テーブル212からiレコード目の内容、即ち、使用者番号iに対応する使用者に与えるべきポート番号あるいは仮想使用者を示すコードを読み出す。
【0158】
次に、ステップS704において、振動種別の検索用として使用されるインデックスレジスタjに初期値「1」を格納した後、次のステップS705において、振動出力テーブル212の当該レコードからj番目の振動種別を読み出す。
【0159】
次に、ステップS706において、前記読み出した振動種別が有効であるか否かが判別される。この判別は、読み出した振動種別が無効を示すFFHであるか否かで行われる。
【0160】
振動種別が無効を示すFFHでなく有効である場合は、次のステップS707に進み、使用者判別手段258を通じて、振動を与えるべき使用者が実使用者であるか否かが判別される。この判別は、前記読み出された使用者情報テーブル204のレコードに登録されている内容が仮想使用者を示すコードであるか否かで行われる。
【0161】
前記内容が仮想使用者を示すコードでなく実使用者である場合は、ステップS708において、振動指示データ作成手段260を通じて、使用者情報テーブル204の当該レコードに登録されているポート番号と今回の振動種別の情報を含んだ振動指示データDvを作成する。振動種別の情報としては、振動種別に応じてモータ156を駆動する電圧及び電流の制御信号並びにモータ156を駆動する時間等である。
【0162】
次に、ステップS709において、振動指示データ出力手段262を通じて、前記作成された振動指示データDvを出力する。外部インターフェース202及び通信デバイス110は、出力された振動指示データDvを常時監視し、振動指示データDvに登録されているポート番号に対応するポートに接続された操作装置12に振動指示データDvを送出する。
【0163】
エンタテインメント装置14からの振動指示データDvを受け取った操作装置12は、当該振動指示データDvに格納されている振動種別の情報に基づいてモータ156を回転駆動し、当該操作装置12を操作している実使用者に対して前記振動種別に応じた振動を与える。
【0164】
一方、前記ステップS707において、仮想使用者であると判別された場合は、ステップS710に進み、パラメータ変更手段264を通じて、ゲームプログラムが参照する物理的パラメータのうち、振動種別に応じたパラメータの数値を変更する。例えば画面上での動作スピードや状況判断能力に関するパラメータの値が変更される。
【0165】
前記ステップS709での処理あるいはステップS710での処理が終了した段階で、次のステップS711に進み、インデックスレジスタjの値を+1更新した後、前記ステップS705に戻って、振動出力テーブル212の当該レコードから次の振動種別を読み出して、その振動種別に応じた処理を行う。
【0166】
そして、前記ステップS706において、振動種別が無効であると判別された場合は、次のステップS712に進み、インデックスレジスタiの値を+1更新した後、ステップS713において、処理完了判別手段266を通じて、振動出力テーブル212に登録された振動種別についてすべての処理が完了したか否かが判別される。この判別は、インデックスレジスタiの値が人数Nよりも大きいか否かで行われる。
【0167】
インデックスレジスタiの値が人数N以下で、すべての処理が完了していないと判別された場合は、前記ステップS703に戻り、次の使用者に関する情報と該使用者に与えるべき振動種別を読み出して、その振動種別に応じた振動を実使用者に与える、あるいは仮想使用者の物理的パラメータの値を変更する。そして、振動出力テーブル212に登録された振動種別について処理がすべて完了した場合は、この振動出力処理が終了する。
【0168】
このように、本実施の形態に係るエンタテインメントシステム10においては、エンタテインメント装置14に、複数の使用者のうち、選択された使用者が操作する操作装置12に対し、他の使用者からの要求に基づいて、物理的影響(振動等)を発生させるための指示を出力する影響付与指示手段200を組み込むようにしたので、ある使用者が例えばテレビジョン受像機の画面を見ながら操作装置12を使用してある所定の操作を行っている際に、別の使用者からの要求に従って、当該選択された使用者に対して物理的影響を与えることができる。
【0169】
この場合、当該選択された使用者は突然の物理的影響の付与によって操作をミスしたり、操作を一時中断されるなど、予期しない状況に遭遇することになる。つまり、例えば対戦ゲームの進行中での当該使用者の操作に対する応答としての物理的影響付与のほか、他の使用者からの要求に基づいて、当該使用者に対して影響を与えることができるため、ゲーム内容の意外なる展開を可能にし、対戦ゲームであれば臨場感溢れる対戦を可能にすることができる。
【0170】
特に、本実施の形態では、前記選択された使用者が実使用者、即ち人間である場合に、実使用者が操作する操作装置12内の応答手段150に指示を与えて実使用者に振動を付与するようにしたので、例えば複数の使用者間で対戦ゲームを楽しんでいる場合に、使用者の意思で操作装置12を振動させ、対戦相手の操作を物理的に邪魔することで、操作自体を困難にさせるあるいは操作ミスを誘発させることができるようになる。
【0171】
その結果、従来よりも臨場感溢れる対戦を可能にすることができる。また、いつ邪魔されるか分からないため、緊迫感が増すと共に、意外なゲーム展開を可能にすることができる。
【0172】
更に、本実施の形態では、選択された使用者が仮想使用者、即ち、コンピュータ上の使用者である場合に、仮想使用者の物理的パラメータに影響を与えるようにしている。仮想使用者の場合、架空の存在(キャラクタ)であるため、実際に操作装置12を使用するということがない。そこで、仮想使用者の例えば画面上での動作スピードや状況判断能力に関するパラメータに影響を与えるようにしている。これにより、無味乾燥になりがちなコンピュータを対戦相手とするゲームにおいて、臨場感溢れるゲーム展開を可能にすることができる。
【0173】
また、本実施の形態では、エンタテインメント装置14に接続されている操作装置12の個数と各操作装置12の識別因子(ポート番号等)を検出し、検出された操作装置12の個数に応じた設定処理を行う使用者設定処理手段206を組み込む有するようにしているため、ある選択された使用者に対して物理的影響を与える旨の要求を発した使用者(実使用者及び仮想使用者)を正確に認識することができ、選択された使用者に対する物理的影響の付与を確実に行わせることができる。
【0174】
また、本実施の形態では、使用者からの要求が、選択された使用者に対して影響を与える指示(振動を与える指示等)である場合に、選択された使用者に与えるべき影響の度合い(振動種別等)を要求の内容(操作属性等)に応じて設定するようにしたので、前記選択された使用者に与えるべき物理的影響として、振動とした場合は、振動種別に応じた影響を付与することができ、小刻みな振動や緩やかな振動、大揺れする振動などを任意に与えることができ、更に臨場感溢れるゲーム展開を可能にすることができる。
【0175】
なお、この発明に係る記録媒体及び情報処理方法は、上述の実施の形態に限らず、この発明の要旨を逸脱することなく、種々の構成を採り得ることはもちろんである。
【0176】
【発明の効果】
以上説明したように、本発明に係る記録媒体及び情報処理方法によれば、例えばゲームの進行中での使用者の操作に対する応答としての影響付与のほか、他の使用者からの要求に基づいて、当該使用者に対して影響を与えるようにして、ゲーム内容の意外なる展開を可能にし、対戦ゲームであれば臨場感溢れる対戦を可能にすることができる。
【0177】
また、本発明に係る記録媒体によれば、例えばゲームの進行中での使用者の操作に対する応答としての影響付与のほか、他の使用者からの要求に基づいて、当該使用者に対して影響を与えることができるプログラムを提供することができる。
【図面の簡単な説明】
【図1】本実施の形態に係るエンタテインメントシステムを示す構成図である。
【図2】エンタテインメント装置におけるスロット部の様子を示す背面図である。
【図3】エンタテインメント装置の構成を示す外観斜視図である。
【図4】エンタテインメントシステム装置の主要部の具体的な構成例を示すブロック図である。
【図5】操作装置の下ケースを外した状態の全体斜視図である。
【図6】操作装置内に組み込まれている応答手段であるモータ及び偏心して取り付けた回転部を示した斜視図である。
【図7】操作装置が振動している様子を示した右側面図である。
【図8】操作装置に組み込まれる応答手段の組み込み位置を示した略示的な平面図である。
【図9】操作装置をエンタテインメント装置に接続し、エンタテインメント装置をモニタに接続してゲームを行う様子を示した説明図である。
【図10】操作装置とエンタテインメント装置との双方向のシリアル通信を行う要部を示すブロツク図である。
【図11】操作装置とエンタテインメント装置との操作データ及び振動指示データのマイコンでの処理を示したフローチャートである。
【図12】エンタテインメント装置への操作装置の接続例を示す説明図である。
【図13】本実施の形態に係る影響付与指示手段の構成を示す機能ブロック図である。
【図14】使用者情報テーブルの内訳を示す説明図である。
【図15】イベント処理テーブルの内訳を示す説明図である。
【図16】振動出力テーブルの内訳を示す説明図である。
【図17】駆動信号テーブルの内訳を示す説明図である。
【図18】例えば対戦ゲームのゲームプログラムと共に動作する影響付与指示手段(プログラム)の処理動作を示すフローチャートである。
【図19】ゲームプログラムの処理動作の一例を示すフローチャートである。
【図20】影響付与指示手段の処理動作を示すフローチャートである。
【図21】使用者設定処理手段の処理動作を示すフローチャートである。
【図22】イベント処理手段の処理動作を示すフローチャートである。
【図23】振動設定処理手段の処理動作を示すフローチャートである。
【図24】振動出力処理手段の処理動作を示すフローチャートである。
【符号の説明】
10…エンタテインメントシステム 12…操作装置
14…エンタテインメント装置 62…接続端子部
110…通信デバイス
114…シリアルI/Oインターフェース(SIO)
150…応答手段 156…モータ
200…影響付与指示手段 202…外部インターフェース
204…使用者情報テーブル 206…使用者設定処理手段
208…イベント処理テーブル 210…イベント処理手段
212…振動出力テーブル 214…振動設定処理手段
216…振動出力処理手段 260…振動指示データ作成手段
262…振動指示データ出力手段 264…パラメータ変更手段[0001]
BACKGROUND OF THE INVENTION
The present inventionWhen the first user is operating the first operating device, the second user operates the second operating device to instruct the vibration generating device installed in the first operating device. A computer-readable recording medium and an information processing method for recording a program for causing a computer to execute a video game that obstructs the operation of the first operating device by the first userRelated.
[0002]
[Prior art]
As an information device (entertainment system) such as an entertainment device including a video game machine, for example, a game content stored in a recording medium such as a CD-ROM is displayed on the screen of a television receiver, and is operated with an operation device. There is something that makes the game progress.
[0003]
The entertainment device and the operation device in this entertainment system are usually connected by a serial interface, and when a clock is sent from the entertainment device, key switch information corresponding to the user's operation is sent from the operation device in synchronization with the clock. To send.
[0004]
In addition, recently, an influence imparting means for giving a physical influence, for example, vibration to the user according to a request from the outside (for example, an entertainment apparatus) is provided in the operation apparatus. A system in which various vibrations are given to the user so as to respond to the above has been developed and put to practical use (see, for example,
[0005]
[Patent Document 1]
JP-A-9-313736 (FIG. 1, paragraphs [0001], [0022] to [0024], [0030], [0032] to [0033])
[Patent Document 2]
JP-A-9-741 (FIGS. 1 and 2, paragraphs [0010] and [0036])
[0006]
[Problems to be solved by the invention]
The present invention, for example, in addition to giving an influence as a response to a user's operation while the game is in progress, is based on a request from another user so as to influence the user, Can be developed unexpectedly, and if it is a battle game, it can make a battle full of realismRecording medium and information processing methodThe purpose is to provide.
[0008]
[Means for Solving the Problems]
According to the present inventionrecoding mediaIsWhen the first user is operating the first operating device, the second user operates the second operating device to instruct the vibration generating device installed in the first operating device. And a computer-readable recording medium recording a program that causes a computer to execute a video game that obstructs the operation of the first operating device by the first user.,The program is the second program.UserBased on the operation of the second operating device by the secondFrom usersofReceive requests to receive requestsStepAnd receiving the requestStepDue to the request received byThe firstSelect to select operating deviceStepAnd the selectionStepSelected byThe firstOperating deviceInsideofSaidVibration instructions that give vibration instructions to the vibration generatorStepIt is characterized by having.
[0009]
Further, according to the present inventionInformation processing methodIsWhen the first user is operating the first operating device, the second user operates the second operating device to instruct the vibration generating device installed in the first operating device. An information processing method for causing a computer to execute a video game that obstructs the operation of the first operating device by the first user.,The secondUserBased on the operation of the second operating device by the secondFrom usersofReceive requests to receive requestsStepAnd receiving the requestStepDue to the request received byThe firstSelect to select operating deviceStepAnd the selectionStepSelected byThe firstOperating deviceInsideofSaidVibration instructions that give vibration instructions to the vibration generatorAnd a step.
[0010]
In the configuration, theSecondFrom usersSaidThe vibration type is included in the request, and the vibration instructionStepSelects the vibration according to the vibration type.StepSelected byThe firstOperating deviceInsideofSaidYou may make it instruct | indicate to a vibration generator.
[0011]
Further, according to the present inventionrecoding mediaIsWhen the first user is operating the first operating device, the second user operates the second operating device to instruct the vibration generating device installed in the first operating device. And a computer-readable recording medium recording a program that causes a computer to execute a video game that obstructs the operation of the first operating device by the first user.,The program is the second program.UserBased on the operation of the second operating device by the secondFrom usersofReceive a request to receive a request that includes a vibration typeStepAnd receiving the requestStepVibration according to the vibration type included in the request received by, In the first operating deviceVibration instruction to instruct the vibration generatorStepIt is characterized by having.
[0012]
Also,In the information processing method according to the present invention, when the first user is operating the first operating device, the second user operates the second operating device and the inside of the first operating device. An information processing method for causing a computer to execute a video game that gives instructions to a vibration generating device installed in a computer and obstructs an operation on the first operating device by the first user.,The secondUserBased on the operation of the second operating device by the secondFrom usersofReceive a request to receive a request that includes a vibration typeStepAnd receiving the requestStepVibration according to the vibration type included in the request received by, In the first operating deviceVibration instruction to instruct the vibration generatorAnd a step.
[0013]
In these inventions, the vibration type is theSecondUser ofFor the second operating deviceOperate at onceOne or moreOperator'sTypeIt may be determined according to.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, according to the present inventionRecording medium and information processing methodAn embodiment of the present invention (hereinafter simply referred to as an entertainment system according to the embodiment) will be described with reference to FIGS.
[0015]
As shown in FIG. 1, an
[0016]
The
[0017]
A
[0018]
The recording medium for supplying the application program is not limited to the optical disc, and the application program may be supplied via a communication line.
[0019]
Two
[0020]
The
[0021]
FIG. 2 shows a state of the slot portions 26 </ b> A and 26 </ b> B provided on the front surface of the
[0022]
In the present embodiment, each of the
[0023]
The insertion holes (slots) of the memory
[0024]
On the other hand, the
[0025]
FIG. 3 shows a state where the
[0026]
Next, the configuration of the
[0027]
The control system 72 includes a main memory (CPU), a peripheral
[0028]
The
[0029]
In the
[0030]
By executing a program such as this game, the
[0031]
The
[0032]
The
[0033]
The
[0034]
Further, the
[0035]
The
[0036]
In addition to the flat shading described above, the
[0037]
Further, the
[0038]
Further, the reproduced image data is stored in the
[0039]
The
[0040]
The
[0041]
By providing such a function, the
[0042]
The optical
[0043]
The audio data recorded on the optical disk read by the
[0044]
As ADPCM data, for example, audio data recorded by representing the difference of 16-bit digital data in 4 bits is decoded by the
[0045]
Also, as PCM data, for example, audio data recorded as 16-bit digital data is decoded by the
[0046]
Furthermore, the
[0047]
The
[0048]
As a result, an instruction from the user is input to the
[0049]
Here, a large amount of image data needs to be transferred between the
[0050]
Therefore, the
[0051]
Further, when it is necessary to store the setting data of the game being executed, the
[0052]
Here, the
[0053]
The parallel I / O interface (PIO) 112 is prepared for expansion, and the serial I / O interface (SIO) 114 is connected to, for example, an external interface described later.
[0054]
Next, the
[0055]
In addition, the constricted portion at the center position of the housing body is formed in a circular shape at the left and right symmetrical positions on both sides of the housing body, and a start
[0056]
The
[0057]
The
[0058]
As shown in FIG. 5, the
[0059]
The top surface of each of the four
[0060]
As shown in FIG. 5, the third and
[0061]
When the operating
[0062]
Further, the operating
[0063]
That is, the housing main body constituted by the
[0064]
As shown in FIG. 5, the first and
[0065]
In the
[0066]
Here, as shown in FIG. 6, the response means 150 has a structure in which a
[0067]
In FIG. 5 and FIG. 7, this vibration is transmitted not only to the first
[0068]
As shown in FIG. 5, the response means
[0069]
By attaching the response means 150 to the first
[0070]
For example, when you defeat an opponent in a martial arts game or when you are attacked by an opponent, when you hit a target in a shooting game, or when the target that operates is an airplane, for example, when you are attacked on the screen, The
[0071]
In this way, the operating
[0072]
As described above, in order to drive the response means 150 to vibrate the
[0073]
As shown in FIG. 10, this bidirectional communication function can be performed by connecting a
[0074]
The configuration for performing the bidirectional communication function on the
[0075]
The
[0076]
The signal line and the control line for performing bidirectional serial communication are a data transmission signal line TXD (Transmit X 'for Data) for sending data from the
[0077]
Further, as shown in FIG. 10, the cable composed of the signal line and the control line for performing bidirectional serial communication includes a
[0078]
The bidirectional serial communication procedure having such a configuration is, for example, that the
[0079]
When the
[0080]
If the bidirectional serial communication function is provided in this way, the operation data of the operation buttons from the
[0081]
A specific CD-ROM is mounted on the
[0082]
As the game starts, the microcomputer comprising the CPU, RAM, and ROM of the
[0083]
During the game, if there is vibration instruction data in the data sent from the
[0084]
That is, the vibration instruction data in the data signal received on the
[0085]
If the operation button is operated in step S5 when it is not vibration instruction data in step S1, the operation data operated in step S6 is input to the microcomputer via the parallel I / O interface PIO shown in FIG. . The operation data input to the microcomputer is processed by the microcomputer in step S2, converted into serial data in step S7, and transmitted to the
[0086]
When the
[0087]
If the data of the operation target coincides with the serial data in step S9, that is, if there is a hit, the operation target hit in step S10 is displayed on the screen of the
[0088]
As described in steps S1 to S3, when the vibration instruction data is detected by the microcomputer of the operating
[0089]
If there is no hit, the operation target based on the operation button is displayed on the screen of the
[0090]
Further, the vibration instruction data generated when the hit occurs is received by the operating
[0091]
Next, a characteristic function of the
[0092]
A program for realizing the influence giving instruction function (the influence giving instruction means 200) is downloaded from a specific CD-ROM reproduced by the
[0093]
Further, for example, as shown in FIG. 12, an external interface (for example, multi-tap) 202 is connected to the
[0094]
Of course, the
[0095]
First, the configuration of the influence imparting
[0096]
The user
[0097]
For example, port numbers can be defined as
[0098]
Also, by numbering a plurality of users who use this
[0099]
Specifically, as shown in FIG. 12, when two operating
[0100]
Further, when one
[0101]
Of course, when three operating
[0102]
By the way, the user who uses the
[0103]
Based on these definitions, the breakdown of various tables will be described. First, as shown in FIG. 14, in the user information table 204, port numbers or codes (codes indicating virtual users) are registered in record units. ing. The record number in the user information table 204 corresponds to the user number. For example, the port number (port number) to which the
[0104]
As shown in FIG. 15, the event processing table 208 includes, in each record, a processing type (vibration, etc.) based on input data from the
[0105]
As shown in FIG. 16, the vibration output table 212 stores one or more types of vibration based on the type of operation key in each record. For example, FFH can be used as the initial value (invalid value).
[0106]
An example of the drive signal table 268 showing the breakdown of vibration types is shown in FIG. In this example, the
[0107]
The
[0108]
Next, the configuration of various processing means constituting the influence imparting instruction means 200 will be described with reference to FIG.
[0109]
First, the user
[0110]
The
[0111]
The vibration
[0112]
The vibration
[0113]
Next, the processing operation of the influence giving instruction means (program) 200, for example, the processing action of the influence giving instruction means 200 that operates together with the game program of the battle game will be described with reference to the flowcharts of FIGS.
[0114]
First, in step S101 of FIG. 18, the game program of the battle game and the influence giving instruction means 200 according to the present embodiment are read from the specific CD-ROM, transferred to the
[0115]
For example, as shown in FIG. 19, the game program first displays a game screen in step S201. Next, in step S202, a battle game process is performed, input data sent through the
[0116]
Then, in step S203, it is determined whether or not winning or losing has been determined. If not determined, the process returns to step S201, and the battle game process is performed again. Proceeding to step S204, it is determined whether or not the game is now over. If it is determined that the game has not ended, the process returns to step S201 to perform the battle game process again. If it is determined that the game has ended, the game end flag is set in the next step S205 and the game program ends. Will do.
[0118]
Then, in the next step S302, for example, the number of users (real users or virtual users) participating in the battle game is input. The input of the number of persons is performed through any one of the plurality of
[0119]
Next, in step S303, the user setting process is entered. This user setting process is performed by the user
[0120]
After the event process is completed, the vibration setting process is entered in step S305. This vibration setting processing is performed by the vibration setting processing means 214 in FIG. 13, and only the information related to vibration is extracted from the event processing table 208 and the vibration type for the user who should give vibration is sequentially registered in the vibration output table 212.
[0121]
After the vibration setting process is completed, a vibration output process is entered in step S306. This vibration output processing is performed by the vibration output processing means 216 of FIG. 13, and based on the user information table 204 and the vibration output table 212, vibration instruction data Dv including the vibration type is given to the actual user who is to give vibration. While creating and outputting, the physical influence to be given to the virtual user is executed as a parameter change.
[0122]
After the vibration output process is completed, other calculation processes are performed in step S307, and then in step S308, it is determined whether or not the game is ended through the end determination means 218. This determination is made based on whether or not the game end flag is set. If it is determined that the game has not ended, the process returns to step S304, and event processing, vibration setting processing, vibration output processing, and other arithmetic processing are performed again.
[0123]
If it is determined in step S308 that the game has ended, the influence giving instruction process ends.
[0124]
Next, the user setting process in step S303, the event process in step S304, the vibration setting process in step S305, and the vibration output process in step S306 will be described in order with reference to FIGS.
[0125]
First, in the user setting process, in step S401 of FIG. 21, it is determined whether or not the
[0126]
If the
[0127]
If the
[0128]
When the processing in step S402 or step S403 is completed, the process proceeds to the next step S404, where the initial value “1” is stored in the index register i used for port search of the
[0129]
Next, in step S <b> 405, it is determined whether or not the
[0130]
When the processing in step S407 is completed or when it is determined in step S405 that the
[0131]
Next, in step S409, it is determined whether or not registration of all the port numbers to which the
[0132]
If it is determined that the value of the index register i is equal to or less than the allowable number of connections M and the process is not completed, the process returns to step S405, and the processes after step S405 are repeated. When all the port numbers to which the
[0133]
If it is determined that the value of the index register j is equal to the number N and the virtual user exists, the process proceeds to the next step S411, and the virtual user is assigned to the j record of the user information table 204 through the
[0134]
When the process in step S411 is completed or when it is determined in step S410 that there is no virtual user, the user setting process ends.
[0135]
Next, in the event processing, first, in step S501 in FIG. 22, the initial value “1” is stored in the index register i used for record search in the user information table 204 and the event processing table 208.
[0136]
In step S502, the contents of the i-th record are read from the user information table 204 through the
[0137]
Next, in step S503, it is determined whether or not the content of the record is that of the actual user through the calculation means 238. This determination is made based on whether or not the content of the record is a code indicating a virtual user.
[0138]
When the content of the record is not a code indicating the virtual user but is related to the actual user, the process proceeds to the next step S504, and the port (corresponding to the port number stored in the record through the calculation means 238). Input information from the
[0139]
Thereafter, in step S505, the received input information is calculated through the calculation means 238 to determine what operation has been performed.
[0140]
On the other hand, if it is determined in step S503 that the user is a virtual user, the process advances to step S506 to receive a computer determination (calculation result or the like). Next, in step S507, the judgment result of the computer is computed through the computing means 238 to determine what judgment has been made.
[0141]
As information obtained by the calculations in steps S505 and S507, for example, if it is related to vibration, a code related to vibration, the number of the user who should give vibration (user number), and the type of operation button (operation Attribute).
[0142]
When the process in step S505 or the process in step S507 is completed, the process proceeds to the next step S508, and whether or not the current operation content or determination result is vibration related is determined through the vibration
[0143]
In the case of the vibration relationship, the process proceeds to the next step S509, and the operation attribute based on the vibration-related code, the user number, and the calculation result is stored in the i record of the event processing table 208 through the
[0144]
If it is determined in step S508 that the relationship is not vibration-related, the process proceeds to step S510, and the type code and the calculation result according to the request are stored in the i record of the event processing table 208 through the
[0145]
When the process in step S509 or the process in step S510 is completed, the process proceeds to the next step S511, and after updating the value of the index register i by +1, in the next step S512, it is used through the process
[0146]
When it is determined that the value of the index register i is equal to or less than the number of people N and the process is not completed, the process returns to step S502, and the processes after step S502 are repeated. If all of the current operation content or determination content is registered in the event processing table 208, the event processing ends.
[0147]
Next, in the vibration setting process, first, in step S601 of FIG. 23, the initial value “1” is stored in the index register i used for record search of the event processing table 208.
[0148]
Next, in step S602, the content of the i-th record, that is, the operation content or determination content of the user corresponding to the user number i is read from the event processing table 208 through the
[0149]
Next, in step S603, it is determined through the vibration relationship determination means 248 whether the vibration relationship is present. This determination is made based on whether or not a code related to vibration is registered in the content of the record.
[0150]
In the case of vibration relation, the process proceeds to the next step S604, the user number registered in the record is read through the table creation means 250, and the index register j used for record search in the vibration output table 212 is read. Store.
[0151]
Next, in step S605, the operation attribute registered in the record is read out through the
[0152]
Next, in step S607, the calculated vibration type is sequentially registered in the j record of the vibration output table 212 through the
[0153]
When the processing in step S607 is completed or when it is determined in step S603 that there is no vibration relation, the process proceeds to the next step S608, the value of the index register i is updated by +1, and in step S609, the processing completion determination Through the means 252, it is determined whether or not all the information related to vibration among the information registered in the event processing table 208 has been registered in the vibration output table 212. This determination is made based on whether the value of the index register i is larger than the number N of people.
[0154]
When it is determined that the value of the index register i is equal to or less than the number of people N and the process is not completed, the process returns to step S602, and the processes after step S602 are repeated. If all the information related to the current vibration is registered in the vibration output table 212, the vibration setting process ends.
[0155]
Next, in the vibration output process, first, in step S701 in FIG. 24, the initial value “1” is stored in the index register i used for record search in the vibration output table 212.
[0156]
In step S702, the contents of the i-th record, that is, the port number corresponding to the user number i or the code indicating the virtual user are read from the user information table 204 through the first record reading unit 254.
[0157]
Next, in step S703, the code indicating the contents of the i-th record from the vibration output table 212 through the second record reading means 256, that is, the port number to be given to the user corresponding to the user number i or the virtual user. Is read.
[0158]
Next, in step S704, the initial value “1” is stored in the index register j used for the vibration type search, and in the next step S705, the jth vibration type from the record in the vibration output table 212 is set. read out.
[0159]
Next, in step S706, it is determined whether or not the read vibration type is valid. This determination is made based on whether or not the read vibration type is FFH indicating invalidity.
[0160]
If the vibration type is valid instead of FFH indicating invalidity, the process proceeds to the next step S707, and whether or not the user who should give vibration is an actual user is determined through the
[0161]
If the content is not a code indicating a virtual user but a real user, the port number registered in the record of the user information table 204 and the current vibration are transmitted through the vibration instruction
[0162]
Next, in step S709, the generated vibration instruction data Dv is output through the vibration instruction data output means 262. The
[0163]
The operating
[0164]
On the other hand, if it is determined in step S707 that the user is a virtual user, the process proceeds to step S710, and the parameter value corresponding to the vibration type is selected from the physical parameters referred to by the game program through the
[0165]
When the process in step S709 or the process in step S710 is completed, the process proceeds to the next step S711, the value of the index register j is updated by +1, the process returns to step S705, and the record in the vibration output table 212 Next, the next vibration type is read out, and processing corresponding to the vibration type is performed.
[0166]
If it is determined in step S706 that the vibration type is invalid, the process proceeds to the next step S712, the value of the index register i is updated by +1, and in step S713, the vibration is passed through the processing
[0167]
If it is determined that the value of the index register i is equal to or less than the number of people N and all the processes are not completed, the process returns to step S703 to read out information about the next user and the vibration type to be given to the user. The vibration corresponding to the vibration type is given to the actual user, or the value of the physical parameter of the virtual user is changed. Then, when all the processes for the vibration types registered in the vibration output table 212 are completed, the vibration output process ends.
[0168]
As described above, in the
[0169]
In this case, the selected user encounters an unexpected situation such as a mistake in the operation due to the sudden application of physical influence, or the operation is temporarily suspended. That is, for example, in addition to giving a physical influence as a response to the user's operation during the battle game, it is possible to influence the user based on a request from another user. The game content can be expanded unexpectedly, and if it is a battle game, it is possible to make a battle full of realism.
[0170]
In particular, in the present embodiment, when the selected user is an actual user, that is, a human being, an instruction is given to the response means 150 in the
[0171]
As a result, it is possible to make the battle more realistic than ever. In addition, since it is not known when it will be disturbed, a sense of urgency can be increased and an unexpected game development can be made possible.
[0172]
Further, in the present embodiment, when the selected user is a virtual user, that is, a user on a computer, the physical parameters of the virtual user are affected. In the case of a virtual user, since it is a fictitious existence (character), the
[0173]
In the present embodiment, the number of
[0174]
In this embodiment, when the request from the user is an instruction that affects the selected user (such as an instruction that gives vibration), the degree of influence that should be exerted on the selected user Since (vibration type, etc.) is set according to the content of the request (operation attribute, etc.), if vibration is used as the physical influence to be given to the selected user, the influence according to the vibration type Can be given, and vibrations such as small vibrations, gentle vibrations, large vibrations, etc. can be arbitrarily given, and a game development full of realism can be made possible.
[0175]
It should be noted that according to the present inventionRecording medium and information processing methodOf course, the present invention is not limited to the above-described embodiment, and various configurations can be adopted without departing from the gist of the present invention.
[0176]
【The invention's effect】
As described above, according to the present inventionRecording medium and information processing methodAccording to the game content, for example, in addition to giving an influence as a response to the user's operation while the game is in progress, based on a request from another user, the game content is affected. If it is a battle game, it is possible to make a battle full of realism.
[0177]
Further, according to the recording medium of the present invention, for example, in addition to giving an influence as a response to the user's operation while the game is in progress, the influence is given to the user based on a request from another user. Can be provided.
[Brief description of the drawings]
FIG. 1 is a configuration diagram showing an entertainment system according to the present embodiment.
FIG. 2 is a rear view showing a state of a slot portion in the entertainment device.
FIG. 3 is an external perspective view showing the configuration of the entertainment device.
FIG. 4 is a block diagram showing a specific configuration example of a main part of the entertainment system apparatus.
FIG. 5 is an overall perspective view of the operating device with a lower case removed.
FIG. 6 is a perspective view showing a motor as response means incorporated in the operating device and a rotating part attached eccentrically.
FIG. 7 is a right side view showing a state where the operating device is vibrating.
FIG. 8 is a schematic plan view showing an installation position of response means incorporated in the operating device.
FIG. 9 is an explanatory diagram showing a state in which a game is played by connecting an operating device to an entertainment device and connecting the entertainment device to a monitor.
FIG. 10 is a block diagram showing a main part that performs bidirectional serial communication between the operating device and the entertainment device.
FIG. 11 is a flowchart showing the processing of the operation data and vibration instruction data of the operation device and entertainment device in the microcomputer.
FIG. 12 is an explanatory diagram showing a connection example of the operation device to the entertainment device.
FIG. 13 is a functional block diagram showing a configuration of an influence giving instruction unit according to the present embodiment.
FIG. 14 is an explanatory diagram showing a breakdown of a user information table.
FIG. 15 is an explanatory diagram showing a breakdown of an event processing table.
FIG. 16 is an explanatory diagram showing a breakdown of a vibration output table.
FIG. 17 is an explanatory diagram showing a breakdown of a drive signal table.
FIG. 18 is a flowchart showing the processing operation of an influence giving instruction means (program) that operates together with a game program of a competitive game, for example.
FIG. 19 is a flowchart illustrating an example of processing operation of a game program.
FIG. 20 is a flowchart showing the processing operation of the influence giving instruction means.
FIG. 21 is a flowchart showing the processing operation of the user setting processing means.
FIG. 22 is a flowchart showing the processing operation of the event processing means.
FIG. 23 is a flowchart showing the processing operation of the vibration setting processing means.
FIG. 24 is a flowchart showing the processing operation of the vibration output processing means.
[Explanation of symbols]
10 ...
14 ...
110: Communication device
114 ... Serial I / O interface (SIO)
150 ... Response means 156 ... Motor
200: Influence giving instruction means 202 ... External interface
204 ... User information table 206 ... User setting processing means
208: Event processing table 210: Event processing means
212 ... Vibration output table 214 ... Vibration setting processing means
216 ... Vibration output processing means 260 ... Vibration instruction data creating means
262 ... Vibration instruction data output means 264 ... Parameter change means
Claims (4)
前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの振動種別を含む要求を受信する要求受信ステップ、
前記要求受信ステップにより受信された前記要求に含まれる前記振動種別に応じた振動を前記第1の操作装置に生じさせるための前記振動指示を、前記第1の操作装置内の前記振動発生装置に与える振動指示ステップ、
を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。 When the first user operates the first operating device based on the video game, the second user operates the second operating device and is installed in the first operating device. giving vibration instruction to the vibration generator to vibrate the first operation device, the operation to the first operation device according to the first user on the computer to execute a process of disturbed by the vibration,
Wherein the second user based on the operation of the second operating system, the request receiving steps of receiving a request including a vibration type from the second user,
The vibration instruction for causing the first operating device to generate a vibration corresponding to the vibration type included in the request received in the request receiving step is sent to the vibration generating device in the first operating device. vibration instruction step that Ru given,
The computer-readable recording medium which recorded the program for performing this .
前記振動種別は、前記第2の使用者が前記第2の操作装置に対して一度に操作する複数の操作子の種別に応じて決定されることを特徴とする記録媒体。The recording medium according to claim 1 ,
The vibration type is a recording medium, wherein the second user is determined according to the type of a plurality of operators to operate at a time to the second operation device.
前記第2の使用者による前記第2の操作装置の操作に基づいて、該第2の使用者からの振動種別を含む要求を受信する要求受信ステップと、
前記要求受信ステップにより受信された前記要求に含まれる前記振動種別に応じた振動を前記第1の操作装置に生じさせるための前記振動指示を、前記第1の操作装置内の前記振動発生装置に与える振動指示ステップとを有することを特徴とする情報処理方法。 When the first user operates the first operating device based on the video game, the second user operates the second operating device and is installed in the first operating device. giving vibration instruction to the vibration generator to vibrate the first operating device, Ru is used the operation to the first operation device according to the first user in a computer to execute a process of disturbed by the vibration An information processing method,
A request receiving step of receiving a request including a vibration type from the second user based on an operation of the second operating device by the second user;
The vibration instruction for causing the first operating device to generate a vibration corresponding to the vibration type included in the request received in the request receiving step is sent to the vibration generating device in the first operating device. an information processing method characterized in that it comprises a vibration instruction step of Ru applied.
前記振動種別は、前記第2の使用者が前記第2の操作装置に対して一度に操作する複数の操作子の種別に応じて決定されることを特徴とする情報処理方法。The information processing method according to claim 3 ,
The information processing method according to claim 1, wherein the vibration type is determined according to types of a plurality of operators that the second user operates on the second operating device at a time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002327123A JP3981624B2 (en) | 2002-11-11 | 2002-11-11 | Recording medium and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002327123A JP3981624B2 (en) | 2002-11-11 | 2002-11-11 | Recording medium and information processing method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP35303798A Division JP3420953B2 (en) | 1998-12-11 | 1998-12-11 | Entertainment system and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003175276A JP2003175276A (en) | 2003-06-24 |
JP3981624B2 true JP3981624B2 (en) | 2007-09-26 |
Family
ID=19197667
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002327123A Expired - Fee Related JP3981624B2 (en) | 2002-11-11 | 2002-11-11 | Recording medium and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3981624B2 (en) |
-
2002
- 2002-11-11 JP JP2002327123A patent/JP3981624B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003175276A (en) | 2003-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3420953B2 (en) | Entertainment system and recording medium | |
US6645076B1 (en) | Game apparatus with game player physical strength recognition | |
EP0992269B1 (en) | Method of and system for adding information and recording medium | |
JP3699660B2 (en) | Game device and network game system | |
WO1999054010A1 (en) | Recording medium and entertainment system | |
JP2000116940A (en) | Bidirectional communication-type game system | |
US6628264B1 (en) | Entertainment system, entertainment apparatus, recording medium, and program | |
US20010003708A1 (en) | Entertainment system, entertainment apparatus, recording medium, and program | |
JP3424822B2 (en) | Network game system | |
US7136080B1 (en) | Entertainment system, entertainment apparatus, recording medium, and program providing color coded display messages | |
JP2002253848A (en) | Video game device and control method thereof, program for video game, and computer-readable recording medium with the program recorded therein | |
JP3981624B2 (en) | Recording medium and information processing method | |
US6702677B1 (en) | Entertainment system, entertainment apparatus, recording medium, and program | |
JP2001224849A (en) | Entertainment system, entertainment device, recording medium and program | |
US6741742B1 (en) | Entertainment system, entertainment apparatus, recording medium, and program | |
JP2000225272A (en) | Device and method for controlling game, computer readable recording medium recording game program and game system | |
EP1144060B1 (en) | Entertainment system, recording medium, and program | |
JP3581642B2 (en) | Entertainment system, entertainment device, recording medium, and message display method | |
JP2000157738A (en) | Game device, image creation, and storage medium storing image creating program | |
JP2001087553A (en) | Portable game machine | |
MXPA00007699A (en) | Game machine, method for checking hit and information storage medium | |
JPH0947578A (en) | Controller for television game machine | |
JPH0947579A (en) | Controller for television game machine | |
EP1095680A2 (en) | Image processing apparatus, image processing method, recording medium and program | |
EP1095681A2 (en) | Audio processing and image generating apparatus, audio processing and image generating method, recording medium and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20031216 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040213 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20041221 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050221 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20050407 |
|
A912 | Removal of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20050729 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070702 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100706 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110706 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110706 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120706 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120706 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130706 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |