説明

プログラムおよびコンピュータ

【課題】
遊技者による揺動操作を検出できるコントローラが接続されるコンピュータ(たとえばWii(商標))を用い、実際の銃に近い操作をすることで、弾の再装填をできるようにしたプログラムおよびコンピュータを提供することを目的とする。
【解決手段】
遊技者による揺動操作を検出する機能(たとえば加速度センサ)を備えたコントローラを用いる。そして、遊技者がコントローラを揺動させることにより、ゲームプログラムは、銃に弾を再装填する。この揺動操作は、右手に持った短銃のグリップを左手に叩きつけてマガジンを取り出す操作に似ているため、遊技者は銃を操作している気分で銃の再装填操作をすることができる。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、主として銃(弾)を発射して目標に命中させるガンシューティングゲームを実行させるためのプログラムおよびコンピュータに関する。
【背景技術】
【0002】
従来、テレビゲーム機、パーソナルコンピュータ、携帯型ビデオゲーム機またはゲーム専用装置 (アーケードゲーム機)等のCPUの情報処理機能を用いたビデオゲーム機が普及している。このビデオゲーム機で実行されるゲームにガンシューテンィグゲームがある(たとえば特許文献1、2)。ガンシューティングゲームは、銃で的や敵を撃ち命中することでポイントが上がったりゲームが進行したりするものである。
【0003】
上記特許文献2のガンシューティングゲーム機では、ゲームにおける銃の操作にリアリティを出すため、銃に装填できる弾の数を制限し、その弾数の回数だけ銃を発射すると銃に弾がなくなり、再装填(リロード)しなければ再度銃を発射することができない設定になっている。
【0004】
なお、近年、遊技者による揺動操作を検出する機能を持つコントローラを備えたゲーム機が提案されている(たとえば特許文献3)。
【0005】
【特許文献1】特許2686675号公報
【特許文献2】特許3845284号公報
【特許文献3】特開2007−061271号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
上記特許文献2のガンゲーム機は、専用のゲーム機であるため、実際の銃に似せたコントローラを備え、弾の再装填操作も実際の銃のマガジンを取り出して再装着するような操作とする。しかしながら、コントローラを実際の銃に似せた構造とすることは、コントローラの構造が複雑なものとなる。また、一般的な家庭用のゲーム機にこのような構造を持たせることは不可能であるため、弾の再装填操作には、コントローラの通常のボタンが割り当てられており、ゲームの進行に弾を再装填するというリアルな演出をしているにもかかわらず、操作にはリアリティが無いという問題点があった。
【0007】
この発明は、遊技者による揺動操作を検出できるコントローラが接続されるコンピュータ(たとえばWii(登録商標))を用い、実際の銃に近い操作をすることで、弾の再装填をできるようにしたプログラムおよびコンピュータを提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1の発明は、銃の発射操作を受け付ける操作子と、速度または加速度の一方または両方を検出することにより揺動操作を検出する揺動検出部とを備えたコントローラを、無線または有線で接続したコンピュータを、前記銃の発射可能弾数を記憶する発射可能弾数記憶手段、前記コントローラが前記銃の発射操作を受け付けたとき前記発射可能弾数を減算する銃発射手段、前記コントローラが揺動操作されたことを検出したとき前記発射可能弾数を加算する再装填手段、として機能させるためのプログラムである。
【0009】
請求項2の発明は、請求項1の発明において、前記コンピュータを、前記コントローラが所定の構え操作を受け付けている間のみ、前記再装填機能を有効にする銃構え手段としてさらに機能させることを特徴とする。
【0010】
請求項3の発明は、1または複数の操作子と、速度または加速度の一方または両方を検出することにより揺動操作を検出する揺動検出部とを備えたコントローラを無線または有線で接続し、銃を所持したキャラクタの画像を作成してモニタに出力するコンピュータを、前記銃の発射可能弾数を記憶する発射可能弾数記憶手段、前記コントローラが所定の発射操作を受け付けたとき、前記キャラクタが銃を発射する画像を生成するとともに、前記発射可能弾数を減算する銃発射手段、前記コントローラが揺動操作されたことを検出したとき、前記発射可能弾数を加算する再装填手段、として機能させるためのプログラムである。
【0011】
請求項3の発明では、モニタに出力される画像中に銃を所持するキャラクタが登場し、画像(ゲーム)内で、キャラクタが銃を発射する設定になっているが、請求項1、2の発明では、画像内にキャラクタは登場せず遊技者自身が(仮想の)銃を発射する設定になっている。いずれの場合においても、遊技者がコントローラを揺動させることにより、仮想の銃に弾を再装填することができる。この揺動操作は、右手に持った短銃のグリップを左手に叩きつけてマガジンを取り出す操作に似ているため、遊技者は銃を操作している気分で銃の再装填操作をすることができる。
【0012】
請求項4の発明は、請求項3の発明において、前記再装填手段が、前記キャラクタが銃に弾を装填する画像を生成する手段を含むことを特徴とする。
【0013】
請求項5の発明は、請求項4の発明において、前記再装填手段が、前記キャラクタが銃に弾を装填する画像として、前記キャラクタが短銃のグリップからマガジンを取り出したのち、再度該マガジンを再装着する動画を生成することを特徴とする。
【0014】
請求項6の発明は、請求項3〜5の発明において、前記コンピュータを、前記コントローラが所定の構え操作を受け付けている間のみ、前記再装填機能を有効にする銃構え手段としてさらに機能させることを特徴とする。
【0015】
請求項7の発明は、請求項6の発明において、前記コンピュータを、前記コントローラが前記所定の構え操作を受け付けていない間に、前記コントローラが揺動操作されたことを検出したとき、前記キャラクタが銃とは異なる武器アイテムを振る画像を生成する武器アイテム旋回手段としてさらに機能させることを特徴とする。
【0016】
請求項8の発明は、請求項1〜7の発明において、前記コンピュータを、予備の弾数である予備弾数を記憶する予備弾数記憶手段としてさらに機能させ、前記前記再装填手段が、前記発射可能弾数を加算した分だけ前記予備弾数を減算することを特徴とする。
【0017】
請求項9の発明は、請求項1〜8の発明において、前記コンピュータが、前記コントローラに設定した仮想軸が指し示す方向を検出する方向検出部を更に備え、前記銃発射手段は、前記銃の発射操作を受け付けたとき、前記コントローラの仮想軸が指し示す前記コンピュータに接続されているモニタ上の位置に向けて前記銃の弾を発射させることを特徴とする。
【0018】
請求項10の発明は、請求項1〜9の発明において、前記再装填手段が、前記銃に弾が装填される動作を表す効果音声を生成する手段を含むことを特徴とする。
【0019】
請求項11の発明は、請求項1〜10の発明において、前記再装填手段が、前記銃に弾が装填される動作を表す振動を生成する手段を含むことを特徴とする。
【0020】
請求項12の発明は、請求項1乃至請求項11のいずれかに記載のプログラムを実行するコンピュータである。
【発明の効果】
【0021】
以上のようにこの発明によれば、コントローラを揺動するという単純且つ実際の銃に似せた操作で、弾の再装填を行うことができるため、ボタン操作に不慣れな遊技者でも容易にガンシューティングゲーム等のゲームをリアルに楽しむことができるようになる。
【発明を実施するための最良の形態】
【0022】
図面を参照して、本発明が適用されるゲームシステム1について説明する。
図1は、当該ゲームシステム1を説明するための外観図である。以下、据置型ゲーム装置を一例にして、本発明のゲームシステム1について説明する。
【0023】
図1において、当該ゲームシステム1は、家庭用テレビジョン受像機等のスピーカ2aを備えたディスプレイ(以下、モニタと記載する)2に、接続コードを介して接続される据置型ゲーム装置(以下、単にゲーム装置と記載する)3および当該ゲーム装置3に操作情報を与えるコントローラ7によって構成される。ゲーム装置3には、当該ゲーム装置3に対して交換可能に用いられる情報記憶媒体の一例の光ディスク4が着脱される。ゲーム装置3には、ゲームの主電源である電源ON/OFFスイッチ、ゲーム処理のリセットスイッチ及び光ディスク4の着脱を行うインジェクトスイッチが設けられている。
【0024】
また、ゲーム装置3には、セーブデータ等を固定的に記憶するバックアップメモリ等を搭載する外部メモリカード5が必要に応じて着脱自在に装着される。ゲーム装置3は、光ディスク4に記憶されたゲームプログラムなどを実行することによって、その結果をゲーム画像としてモニタ2に表示する。さらに、ゲーム装置3は、外部メモリカード5に記憶されたセーブデータを用いて、過去に実行されたゲーム状態を再現して、ゲーム画像をモニタ2に表示することもできる。そして、ゲーム装置3の遊技者は、モニタ2に表示されたゲーム画像を見ながら、コントローラ7を操作することによって、ゲーム進行を楽しむことができる。
【0025】
コントローラ7は、その内部に備える通信部75(後述)から受信ユニット36a(図2参照)が接続されたゲーム装置3へ、例えばBluetooth(ブルートゥース)(登録商標)の技術を用いて送信データを無線送信する。コントローラ7は、2つのコントロールユニット(コアユニット70およびサブユニット76)が屈曲自在な接続ケーブル79を介して互いに接続されて構成されており、主にモニタ2に表示されるゲーム空間に登場する遊技者オブジェクトを操作するための操作手段である。コアユニット70およびサブユニット76は、それぞれ複数の操作ボタン、キー、およびスティック等の操作部が設けられている。また、後述により明らかとなるが、コアユニット70は、当該コアユニット70から見た画像を撮像する撮像情報演算部74を備えている。また、撮像情報演算部74の撮像対象の一例として、モニタ2の表示画面近傍に2つのLEDモジュール8Lおよび8Rが設置される。これらLEDモジュール8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力する。なお、本実施例では、コアユニット70とサブユニット76を屈曲自在なケーブルで接続したが、サブユニット76に無線ユニットを搭載することで、接続ケーブル79をなくすこともできる。例えば、無線ユニットとしてBluetooth(登録商標)ユニットをサブユニット76に搭載することで、サブユニット76からコアユニット70へ操作データを送信することが可能になる。
【0026】
次に、図2を参照して、ゲーム装置3の機能的構成について説明する。なお、図2は、ゲーム装置3の機能ブロック図である。
図2において、ゲーム装置3は、各種プログラムを実行する例えばリスク(RISC)CPU(セントラルプロセッシングユニット)30を備える。CPU30は、図示しないブートROMに記憶された起動プログラムを実行し、メインメモリ33等のメモリの初期化等を行った後、光ディスク4に記憶されているゲームプログラムの実行し、そのゲームプログラムに応じたゲーム処理等を行うものである。CPU30には、メモリコントローラ31を介して、GPU(Graphics Proc essing Unit)32、メインメモリ33、DSP(Digital Signal Pro cessor)34、およびARAM(Audio RAM)35が接続される。また、メモリコン トローラ31には、所定のバスを介して、コントローラI/F(インターフェース)36、ビデオI/F37、外部メモリI/F38、オーディオI/F39、およびディスクI/F41が接続され、それぞれ受信ユニット36a、モニタ2、外部メモリカード5、スピーカ2a、およびディスクドライブ40が接続されている。
【0027】
GPU32は、CPU30の命令に基づいて画像処理を行うものあり、例えば、3Dグラフィックスの表示に必要な計算処理を行う半導体チップで構成される。GPU32は、図示しない画像処理専用のメモリやメインメモリ33の一部の記憶領域を用いて画像処理を行う。GPU32は、これらを用いてモニタ2に表示すべきゲーム画像データやムービ映像を生成し、適宜メモリコントローラ31およびビデオI/F37を介してモニタ2に出力する。
【0028】
メインメモリ33は、CPU30で使用される記憶領域であって、CPU30の処理に必要なゲームプログラム等を適宜記憶する。例えば、メインメモリ33は、CPU30によって光ディスク4から読み出されたゲームプログラムや各種データ等を記憶する。このメインメモリ33に記憶されたゲームプログラムや各種データ等がCPU30によって実行される。
【0029】
DSP34は、ゲームプログラム実行時にCPU30において生成されるサウンドデータ等を処理するものであり、そのサウンドデータ等を記憶するためのARAM35が接続される。ARAM35は、DSP34が所定の処理(例えば、先読みしておいたゲームプログラムやサウンドデータの記憶)を行う際に用いられる。DSP34は、ARAM35に記憶されたサウンドデータを読み出し、メモリコントローラ31およびオーディオI/F39を介してモニタ2に備えるスピーカ2aに出力させる。
【0030】
メモリコントローラ31は、データ転送を統括的に制御するものであり、上述した各種I/Fが接続される。コントローラI/F36は、ゲーム装置3と通信を可能に接続する。例えば、受信ユニット36aは、コントローラI/F36を介してゲーム装置3と接続される。上述したように受信ユニット36aは、コントローラ7からの送信データを受信し、コントローラI/F36を介して当該送信データをCPU30へ出力する。ビデオI/F37には、モニタ2が接続される。外部メモリI/F38には、外部メモリカード5が接続され、その外部メモリカード5に設けられたバックアップメモリ等とアクセス可能となる。
【0031】
オーディオI/F39にはモニタ2に内蔵されるスピーカ2aが接続され、DSP34がARAM35から読み出したサウンドデータやディスクドライブ40から直接出力されるサウンドデータをスピーカ2aから出力可能に接続される。ディスクI/F41には、ディスクドライブ40が接続される。ディスクドライブ40は、所定の読み出し位置に配置された光ディスク4に記憶されたデータを読み出し、ゲーム装置3のバスやオーディオI/F39に出力する。
【0032】
次に、図3を参照して、コントローラ7について説明する。なお、図3(A)は、コントローラ7の外観構成を示す斜視図である。図3(B)は、コントローラ7の接続ケーブル79をコアユニット70から取り外した状態を示す斜視図である。
【0033】
図3(A)において、コントローラ7は、コアユニット70とサブユニット76とが接続ケーブル79で接続されて構成されている。コアユニット70は、ハウジング71を有しており、当該ハウジング71に複数の操作部72が設けられている。一方、サブユニット76は、ハウジング77を有しており、当該ハウジング77に複数の操作部78が設けられている。そして、コアユニット70とサブユニット76とは、接続ケーブル79によって接続されている。
【0034】
図3(B)において、接続ケーブル79の一方端にはコアユニット70のコネクタ73に着脱自在なコネクタ791が設けられており、接続ケーブル79の他方端は固定的にサブユニット76と接続されている。そして、接続ケーブル79のコネクタ791は、コアユニット70の後面に設けられたコネクタ73と嵌合し、コアユニット70とサブユニット76とが当該接続ケーブル79を介して接続される。
【0035】
図4を参照して、コアユニット70について説明する。なお、図4(A)は、コアユニット70の上面後方から見た斜視図である。図4(B)は、コアユニット70を下面後方から見た斜視図である。
【0036】
コアユニット70は、例えばプラスチック成型によって形成されたハウジング71を有している。ハウジング71は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。
【0037】
ハウジング71上面の中央前面側に、十字キー72aが設けられる。この十字キー72aは、十字型の4方向プッシュスイッチであり、矢印で示す4つの方向(前後左右)に対応する操作部分が十字の突出片にそれぞれ90°間隔で配置される。遊技者が十字キー72aのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えば遊技者が十字キー72aを操作することによって、仮想ゲーム世界に登場する遊技者キャラクタ等の移動方向を指示したり、カーソルの移動方向を指示したりすることができる。
【0038】
なお、十字キー72aは、上述した遊技者の方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、リング状に4方向の操作部分を備えたプッシュスイッチとその中央に設けられたセンタスイッチとを複合した複合スイッチを上記十字キー72aの代わりに設けてもかまわない。また、ハウジング71上面から突出した傾倒可能なスティックを倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー72aの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー72aの代わりに設けてもかまわない。また、少なくとも4つの方向(前後左右)をそれぞれ示すスイッチに対して、遊技者によって押下されたスイッチに応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。
【0039】
ハウジング71上面の十字キー72aより後面側に、複数のボタンスイッチ72b〜72gが設けられる。ボタンスイッチ72b〜72gは、遊技者がボタン頭部を押下することによって、それぞれのボタンスイッチ72b〜72gに割り当てられた操作信号を出力する操作部である。例えば、ボタンスイッチ72b〜72dには、1ボタン、2ボタン、Aボタンとしての機能が割り当てられる。また、ボタンスイッチ72e〜72gには、セレクトスイッチ、メニュースイッチ、およびスタートスイッチとしての機能が割り当てられる。
【0040】
なお、ボタンスイッチ72b〜72dは、ハウジング71上面の中央前後方向に沿って並設されている。また、ボタンスイッチ72e〜72gは、ハウジング71上面の左右方向に沿って操作ボタン72bおよび72dの間に並設されている。そして、ボタンスイッチ72fは、その上面がハウジング71の上面に埋没しており、遊技者が不意に誤って押下することのないタイプのボタンである。
【0041】
また、ハウジング71上面の十字キー72aより前面側に、ボタンスイッチ72hが設けられる。このボタンスイッチ72hは、遠隔からゲーム装置3本体の電源をオン/オフする電源スイッチである。この操作ボタン72hも、その上面がハウジング71の上面に埋没しており、遊技者が不意に誤って押下することのないタイプのボタンである。
【0042】
また、ハウジング71上面のボタンスイッチ72cより後面側に、複数のLED702が設けられる。ここで、コントローラ7は、他のコントローラ7と区別するためにコントローラ種別(番号)が設けられている。例えば、LED702は、コントローラ7に現在設定されている上記コントローラ種別を遊技者に通知するために用いられる。具体的には、コアユニット70から受信ユニット36aへ送信データを送信する際、上記コントローラ種別に応じて複数のLED702のうち、種別に対応するLEDが点灯する。
【0043】
一方、ハウジング71下面には、凹部が形成されている。ハウジング71下面の凹部は、遊技者がコアユニット70を把持したとき、この遊技者の人差し指や中指が位置するような位置に形成される。そして、上記凹部の後面側傾斜面には、ボタンスイッチ72iが設けられる。ボタンスイッチ72iは、Bボタンとして機能する操作部である。
【0044】
これらボタンスイッチ72b〜72g,72iには、ゲーム装置3が実行するゲームプログラムに応じてそれぞれの機能が割り当てられる。後述のガンシューティングゲームにおいて、Bボタンであるボタンスイッチ72iは、メインキャラクタに銃を構える動作をさせるための操作子として機能し、Aボタンであるボタンスイッチ72dは、構えた銃から弾を発射させるための操作子として機能する。
【0045】
また、ハウジング71前面には、撮像情報演算部74(図6を参照)の一部を構成する撮像素子743が設けられる。ここで、撮像情報演算部74は、コアユニット70が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大200フレーム/秒程度のサンプリング周期であるため比較的高速なコアユニット70の動きでも追跡して解析することができる。この撮像情報演算部74の詳細な構成については、後述する。また、ハウジング70の後面には、コネクタ73が設けられている。コネクタ73は、例えば32ピンのエッジコネクタであり、接続ケーブル79のコネクタ791と嵌合して接続するために利用される。
【0046】
図5を参照して、サブユニット76について説明する。なお、図5(a)はサブユニット76の上面図であり、図5(b)はサブユニット76の下面図であり、図5(c)はサブユニット76の左側面図である。
【0047】
図5において、サブユニット76は、例えばプラスチック成型によって形成されたハウジング77を有している。ハウジング77は、その前後方向を長手方向とし、サブユニット76において最太部となる頭部を前方に形成した流線型の立体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。
【0048】
ハウジング77上面の上記最太部近傍に、スティック78aが設けられる。スティック78aは、ハウジング77上面から突出した傾倒可能なスティックを倒すことによって、傾倒方向に応じて操作信号を出力する操作部である。例えば、遊技者がスティック先端を360°任意の方向に傾倒することによって任意の方向や位置を指定することができ、仮想ゲーム世界に登場する遊技者キャラクタ等の移動方向を指示したり、カーソルの移動方向を指示したりすることができる。
【0049】
次に、図6を参照して、コントローラ7の内部構成について説明する。図6は、コントローラ7の構成を示すブロック図である。
図6において、コアユニット70は、上述した操作部72および撮像情報演算部74の他に、その内部に通信部75、加速度センサ701およびバイブレータ704を備えている。
【0050】
撮像情報演算部74は、赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744を含んでいる。赤外線フィルタ741は、コアユニット70の前方から入射する光から赤外線のみを通過させる。レンズ742は、赤外線フィルタ741を透過した赤外線を集光して撮像素子743へ出射する。撮像素子743は、例えばCMOSセンサやあるいはCCDのような固体撮像素子であり、レンズ742が集光した赤外線を撮像する。したがって、撮像素子743は、赤外線フィルタ741を通過した赤外線だけを撮像して画像データを生成する。撮像素子743で生成された画像データは、画像処理回路744で処理される。具体的には、画像処理回路744は、撮像素子743から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部75へ出力する。なお、これらの撮像情報演算部74は、コアユニット70のハウジング71に固設されており、ハウジング71自体の方向を変えることによってその撮像方向を変更することができる。しかしながら、ハウジング71は、サブユニット76とは屈曲自在な接続ケーブル79によって接続されているため、サブユニット76の方向や位置を変更しても撮像情報演算部74の撮像方向が変化することはない。詳細は後述するが、この撮像情報演算部74から出力される処理結果データに基づいて、コアユニット70の位置や動きに応じた信号を得ることができる。
【0051】
加速度センサ701は、コアユニット70の上下方向、左右方向および前後方向の3軸でそれぞれ加速度を検知する加速度センサである。なお、加速度センサ701は、必要な操作信号の種類によっては、上下方向、左右方向の2軸でそれぞれ加速度を検出する加速度センサが用いられてもかまわない。加速度センサ701が検知した加速度を示すデータは、通信部75へ出力される。なお、加速度センサ701は、典型的には静電容量式の加速度センサが用いられるが、他の方式の加速度センサやジャイロセンサを用いてもかまわない。この加速度センサ701から出力される加速度データに基づいて、コアユニット70の動きを検出することができる。
【0052】
通信部75は、マイクロコンピュータ(Micro Computer:マイコン)751、メモ リ752、無線モジュール753、およびアンテナ754を含んでいる。マイコン751は、処理の際にメモリ752を記憶領域として用いながら、送信データを無線送信する無線モジュール753を制御する。
【0053】
コアユニット70に設けられた操作部72からの操作信号(コアキーデータ)、加速度センサ701からの加速度信号(加速度データ)、および撮像情報演算部74からの処理結果データは、マイコン751に出力される。また、接続ケーブル79を介して、サブユニット76に設けられた操作部78からの操作信号(サブキーデータ)は、マイコン751に出力される。マイコン751は、入力した各データ(コアキーデータ、サブキーデータ、加速度データ、処理結果データ)を受信ユニット36aへ送信する送信データとして一時的にメモリ752に格納する。
【0054】
ここで、通信部75から受信ユニット36aへの無線送信は、所定の周期毎に行われるが、ゲームの処理は1/60を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は16.7ms(1/60秒)であり、ブルートゥースで構成される通信部75の送信間隔は5msである。マイコン751は、受信ユニット36aへの送信タイミングが到来すると、メモリ752に格納されている送信データを一連の操作情報として出力し、無線モジュール753へ出力する。そして、無線モジュール753は、例えばBluetooth(ブルートゥース;登録商標)の技術を用いて、所定周波数の搬送波を用いて操作情報をその電波信号としてアンテナ754から放射する。
【0055】
つまり、コアユニット70に設けられた操作部72からのコアキーデータ、サブユニット76に設けられた操作部78からのサブキーデータ、加速度センサ701からの加速度データ、および撮像情報演算部74からの処理結果データがコアユニット70から送信される。そして、ゲーム装置3の受信ユニット36aでその電波信号を受信し、ゲーム装置3で当該電波信号を復調や復号することによって、一連の操作情報(コアキーデータ、サブキーデータ、加速度データおよび処理結果データ)を取得する。そして、ゲーム装置3のCPU30は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、Bluetooth(登録商標)の技術を用いて通信部75を構成する場合、通信部75は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
【0056】
バイブレータ704は、例えば振動モータ又はソレノイド等が考えられる。バイブレータ704が作動することによってコアユニット70に振動が発生するので、それを把持している遊技者の手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。
【0057】
図7に示すように、ゲームシステム1でコントローラ7を用いてゲームをプレイするためには、遊技者は、一方の手(例えば右手)でコアユニット70を把持し(図8参照)、他方の手(例えば左手)でサブユニット76を把持する。そして、遊技者は、コアユニット70の前面(撮像情報演算部74が撮像する光の入射口側)がモニタ2に向くようにコアユニット70を把持する。一方、モニタ2の表示画面近傍には、2つのLEDモジュール8Lおよび8Rが設置される。これらLEDモジュール8Lおよび8Rは、それぞれモニタ2の前方に向かって赤外光を出力する。
【0058】
遊技者がその前面がモニタ2に向くようにコアユニット70を把持することによって、撮像情報演算部74には2つのLEDモジュール8Lおよび8Rが出力した赤外光が入射する。そして、赤外線フィルタ741およびレンズ742を介して、入射した赤外光を撮像素子743が撮像し、当該撮像画像を画像処理回路744が処理する。ここで、撮像情報演算部74では、LEDモジュール8Lおよび8Rから出力される赤外線成分を検出することで、上記撮像画像における当該LEDモジュール8Lおよび8Rの位置(対象画像の位置)や面積情報を取得する。具体的には、画像処理回路744は、撮像素子743が撮像した画像データを解析して、まず面積情報からLEDモジュール8Lおよび8Rからの赤外光ではあり得ない画像を除外し、さらに輝度が高い点をLEDモジュール8Lおよび8Rそれぞれの位置として判別する。
【0059】
そして、撮像情報演算部74は、判別されたそれらの輝点の重心位置等の位置情報を取得し、上記処理結果データとして出力する。ここで、上記処理結果データである位置情報は、撮像画像における所定の基準点(例えば、撮像画像の中央や左上隅)を原点とした座標値として出力するものでもよく、所定のタイミングにおける輝点位置を基準点として、当該基準位置からの現在の輝点位置の差をベクトルとして出力するものでもよい。
【0060】
つまり、上記対象画像の位置情報は、撮像素子743が撮像した撮像画像に対して所定の基準点を設定した場合に、当該基準点に対する差として用いられるパラメータである。このような処理結果データをゲーム装置3へ送信することによって、ゲーム装置3では、基準からの上記位置情報の差に基づいて、LEDモジュール8Lおよび8Rに対する撮像情報演算部74すなわちコアユニット70の動き、姿勢、位置等に応じた信号の変化量を得ることができる。具体的には、コアユニット70が動かされることによって、通信部75から送信される画像内の高輝度点の位置が変化するため、高輝度点の位置の変化に対応させた方向入力や座標入力を行うことで、コアユニット70の移動方向に沿った方向入力や座標入力を行うことができる。なお、後述するゲーム処理動作例では、撮像情報演算部74が撮像画像におけるLEDモジュール8Lおよび8Rの対象画像それぞれの重心位置の座標を取得し、上記処理結果データとして出力する例を用いる。
【0061】
このように、コアユニット70の撮像情報演算部74によって、固定的に設置されたマーカ(実施例では、2つのLEDモジュール8Lおよび8Rからの赤外光)を撮像することによって、ゲーム装置3におけるゲーム処理において、コアユニット70から出力されるデータを処理することによって、コントローラの動き、姿勢、位置等に対応した操作が可能となり、ボタンを押下するような操作ボタンや操作キーとは異なった直感的な操作入力となる。また、上述したように上記マーカは、モニタ2の表示画面近傍に設置されているため、マーカに対する位置をモニタ2の表示画面に対するコアユニット70の動き、姿勢、位置等に換算することも容易に行うことができる。つまり、コアユニット70の動き、姿勢、位置等による処理結果データは、モニタ2の表示画面に直接作用する操作入力として用いることができる。
【0062】
図8を参照して、遊技者がコアユニット70を一方の手で把持した状態について説明する。なお、図8(A)は、遊技者がコアユニット70を右手で把持した状態をコアユニット70の前面側から見た一例である。図8(B)は、遊技者がコアユニット70を右手で把持した状態をコアユニット70の左側面側から見た一例である。
【0063】
図8に示すように、コアユニット70は、全体として大人や子供の片手で把持可能な大きさである。そして、遊技者の親指をコアユニット70の上面(例えば、十字キー72a付近)に添え、遊技者の人差し指をコアユニット70下面の凹部(例えば、操作ボタン72i付近)に添えたとき、コアユニット70の前面に設けられている撮像情報演算部74の光入射口が遊技者の前方方向に露出する。なお、このようなコアユニット70に対する把持状態は、遊技者の左手であっても同様に行えることは言うまでもない。
【0064】
このように、コアユニット70は、遊技者が片手で把持した状態で十字キー72aや操作ボタン72i等の操作部72を容易に操作することができる。さらに、遊技者がコアユニット70を片手で把持したとき、当該コアユニット70の前面に設けられている撮像情報演算部74の光入射口が露出するため、上述した2つのLEDモジュール8Lおよび8Rからの赤外光を容易に当該光入射口から取り入れることができる。つまり、遊技者は、コアユニット70が有する撮像情報演算部74の機能を阻害することなくコアユニット70を片手で把持することができる。つまり、遊技者がコアユニット70を把持した手を表示画面に対して動かすことによって、コアユニット70は、遊技者の手の運動が表示画面に直接作用する操作入力をさらに備えることができる。
【0065】
ここで、図9に示すように、LEDモジュール8Lおよび8Rは、それぞれ視野角θ1を有している。また、撮像素子743は、視野角θ2を有している。例えば、LEDモジュール8Lおよび8Rの視野角θ1は共に34°(半値角)であり、撮像素子743の視野角θ2は41°である。そして、撮像素子743の視野角θ2の中にLEDモジュール8Lおよび8Rが共に存在し、LEDモジュール8Lの視野角θ1の中でかつLEDモジュール8Rの視野角θ1の中に撮像素子743が存在するとき、ゲーム装置3は、2つのLEDモジュール8Lおよび8Rによる高輝度点に関する位置データを用いてコアユニット70の位置を検出する。
【0066】
一方、撮像素子743の視野角θ2の中に1つのLEDモジュール8Lまたは8Rだけが存在するとき、またはLEDモジュール8Lの視野角θ1およびLEDモジュール8Rの視野角θ1の何れか一方の中に撮像素子743が存在するとき、2つのLEDモジュール8Lおよび8Rの何れか一方だけによる高輝度点に関する位置データを用いてコアユニット70の位置を検出する。
【0067】
ここで、上記構成のゲームシステムで実行されるガンシューティングゲームについて説明する。遊技者が、上記コントローラ7を用いてメインキャラクタを操作する。このメインキャラクタが、銃やナイフ等その他の武器を用いて敵を倒すことにより、ミッションを達成する。たとえば、バイオ・ハザード(登録商標)というゲームでは、仮想の街に発生した猟奇事件を解決するために、その街に赴いたメインキャラクタが、謎の怪物や住人に襲われつつ、謎を解決して街から脱出するというストーリーの中で、メインキャラクタが、銃やナイフ等のアイテムを使用して怪物や住人(敵キャラクタ)を倒したり、箱(オブジェクト)を壊して物を探したりする。
【0068】
図10、図11は、上記ガンシューティングゲームにおけるメインキャラクタの動作制御処理を示すフローチャートである。図12〜14は、上記ガンシューティングゲームの1場面を示す図である。
【0069】
以下のゲームの説明において、銃に装填されている弾数である発射可能弾数、および、メインキャラクタが予備として所持している弾数であるストック弾数は、メインメモリ33に記憶されている。
【0070】
図10(A)は、Bボタン(ボタンスイッチ72i)がオンされたか否かを判定する動作である。この動作は短時間(たとえば数十ミリ秒)毎に定期的に実行される。Bボタンが現在オンされている状態か否かを判定する(S10)。オンされている状態の場合には(S10でYES)、銃を構えた姿勢のメインキャラクタを描画して出力する(S11)。そして、コントローラ7のコアユニット70が指し示す方向(図7参照)にその銃の照準を合わせる(S12)。一方、Bボタンがオンされていない状態の場合には(S10でNO)、銃を構えない通常の姿勢のメインキャラクタを描画して出力する(S13)。そして、そのキャラクタをコントローラが指し示す方向に向かせる(S14)。
【0071】
S11で出力される銃を構えた姿勢のメインキャラクタを含むゲーム画面の例を図12に示す。この図において、中央やや右よりに表示されている円が照準位置である。
【0072】
同図(B)は、Aボタン(ボタンスイッチ72d)がオンされたときに実行される処理動作を示すフローチャートである。Aボタンがオンされると(S20)、イベントドリブンでこの処理が実行される。そのとき、上記Bボタンがオンされた状態であるか、すなわち、メインキャラクタが銃を構えた姿勢であるかを判断する(S21)。メインキャラクタが銃を構えている場合には(S21でYES)、そのとき照準を合わせている方向へ弾を発射し、そのターゲットを破壊する(S22)。このとき、弾を発射した旨の信号がゲーム装置本体3からコントローラ7に送信される。コントローラ7は、バイブレータ704を駆動し、弾を発射した衝撃を振動として遊技者の手に伝える。そして、発射可能弾数を1つ減算する(S23)。
【0073】
一方、Bボタンがオンされておらず、メインキャラクタが銃を構えていない状態で(S21でNO)、Aボタンがオンされた場合には、そのとき選択されている他のアクションを実行する(S24)。他のアクションとしては、飛ぶ、投げる等がある。
【0074】
図11(A)は、コアユニット70のスイング(所定速度以上の揺動操作)を検出したときに実行される処理動作を示すフローチャートである。コアユニット70が所定速度以上で揺動操作された (スイングされた)ことを検出すると(S30)、イベントドリブンでこの処理が実行される。そのとき、上記Bボタンがオンされた状態であるか、すなわち、メインキャラクタが銃を構えた姿勢であるかを判断する(S31)。メインキャラクタが銃を構えている場合には(S31でYES)、その銃の弾丸の再装填動作を実行する(S32)。この再装填動作は、同図(B)のフローチャートで詳述する。一方、Bボタンがオンされておらず、メインキャラクタが銃を構えていない状態で(S31でNO)、コアユニット70がスイングされた場合には、メインキャラクタが、ナイフ(サーチナイフ)を振って、近くにあるターゲットを破壊する画像を描画して出力する(S33)。
【0075】
S33で出力されるメインキャラクタがナイフを振ったときの画像を図14に示す。同図(A)はナイフを振る前(スイングを検出した瞬間)の画像であり、同図(B)は、ナンフを振った後の画像である。このゲームにおいては、コアユニット70のスイングによって繰り出されるナイフは、サーチナイフであり、遊技者がどの方向にスイングしたかにかかわらず、ナイフは、ゲーム画面中にある何らかのターゲット(敵キャラクタやオブジェクト)をめがけて繰り出される。
【0076】
図11(B)は、再装填動作を示すフローチャートである。この動作は、上記のように、Bボタンがオンされメインキャラクタが銃を構えている状態でコアユニット70がスイングされたときに実行される。
【0077】
まず、銃にセットされている発射可能弾数が最大値ではないか、すなわち、銃のマガジンに空きがあるか否か(S40)、および、予備のストック弾数が0でないか(S41)を判断する。マガジンに空きがあり(S40YES)、且つ、ストック弾数が0でない(S41YES)場合には、S42以下の動作を実行する。一方、マガジンに空きがない場合(S40NO)、または、ストック弾数が0の場合(S41NO)には、弾の再装填ができないため、そのまま動作を終了する。
【0078】
S42では、メインキャラクタに、図13(A)、(B)に示すような、銃のグリップからマガジンを取り出して、再度マガジンをセットする再装填(リロード)の動作を行わせる(S42)。このとき同時に、リロードのサウンドエフェクト(たとえば「ガチャッ」という音声)を発生する。そして、マガジン内の空き数とストック弾数とを比較し(S43)、空き数以上の数のストック弾数があれば(S43でYES)、マガジンの空き数分だけ弾を装填する(S44)。すなわち、発射可能弾数を最大値まで増加させる。一方、ストック弾数が空き数未満でれば(S43でNO)、ストックしている弾を全てマガジンに装填する(S45)。すなわち、ストック弾数分だけ発射可能弾数を増加させる。こののち、この装填した数だけストック弾数レジスタを減算して(S46)、動作を終了する。
【0079】
請求項3の発明では、モニタに出力される画像中に銃を所持するキャラクタが登場し、画像(ゲーム)内で、キャラクタが銃を発射する設定になっているが、請求項1、2の発明では、画像内にキャラクタが登場することは必須ではなく、は登場せず遊技者自身が(仮想の)銃を発射する設定等も含む。すなわち、この発明は、メインキャラクタが登場しないガンシューティングゲームにも適用可能であり、遊技者本人が銃を発射して的を射抜くゲームにこの発明を適用してもよい。いずれの場合においても、遊技者がコントローラを揺動させることにより、仮想の銃に弾を再装填することができる。この揺動操作は、右手に持った短銃のグリップを左手に叩きつけてマガジンを取り出す操作に似ているため、遊技者は銃を操作している気分で銃の再装填操作をすることができる。
【0080】
S42で描画出力されるメインキャラクタが銃に弾を再装填している姿を含むゲーム画面の例を図13に示す。同図(A)は、銃のグリップからマガジンを取り出しているところを示している。そして、同図(B)は、このマガジンを再装着した状態を示している。このように、銃からマガジンを取り出して再び装着することにより、弾が再装填されたことを遊技者に分からせることができる。
【0081】
なお、銃に装填する弾丸は、メインキャラクタがゲーム内の店舗で購入する、または、隠されているのを見つける、落ちているものを拾う等によって入手することができる。
【0082】
なお、このガンシューティングゲームをプレイする場合に、メインキャラクタの移動制御にサブユニットを用いるようにしてもよい。
【0083】
また、この発明は、家庭用ゲーム機のみならずアーケードゲーム機に適用してもよい。また、ゲーム機本体とコントローラが分離したゲーム機のみならず、コントローラと装置本体が一体化した携帯用ゲーム機に適用してもよい。
【0084】
また、上記実施形態では、コアユニット70をどの方向にスイングしても、弾の再装填やサーチナイフの振りが可能であるが、メインキャラクタに弾の再装填やナイフの振りを行わせるためのコアユニット70のスイング方向を制限してもよい。また、遊技者がコアユニット70を異なる方向にスイングすることにより、メインキャラクタそれぞれ異なる行動をするようにしてもよい。たとえば、コアユニット70が横方向にスイングされれば、メインキャラクタに弾の再装填をさせ、コアユニット70が縦方向にスイングされれば、メインキャラクタにナイフを振らせる等である。
【図面の簡単な説明】
【0085】
【図1】この発明が適用されるゲームシステムを説明するための外観図
【図2】図1に示したゲーム装置の機能ブロック図
【図3】図1に示したコントローラの外観構成を示す斜視図
【図4】図3に示したコアユニットの斜視図
【図5】図3に示したサブユニットの3面図
【図6】前記コントローラの構成を示すブロック図
【図7】図3に示したコントローラを用いてゲーム操作するときの状態を説明する図
【図8】遊技者が前記コアユニットを右手で把持した状態を示す図
【図9】LEDモジュール8Lおよび8Rと撮像情報演算部74との視野角を説明するための図
【図10】上記ゲームシステムにおいて、ガンシューティングゲームを実行する処理動作を示すフローチャート
【図11】上記ゲームシステムにおいて、ガンシューティングゲームを実行する処理動作を示すフローチャート
【図12】上記ガンシューティングゲームにおいてメインキャラクタが銃を構えた画面の例を示す図
【図13】上記ガンシューティングゲームにおいてメインキャラクタが銃に弾を再装填する画面の例を示す図
【図14】上記ガンシューティングゲームにおいてメインキャラクタがナイフを振る画面の例を示す図
【符号の説明】
【0086】
1…ゲームシステム
2…モニタ
2b…スピーカ
3…ゲーム装置
30…CPU
31…メモリコントローラ
32…GPU
33…メインメモリ
7…コントローラ
70…コアユニット
74…撮像情報演算部
741…赤外線フィルタ
742…レンズ
743…撮像素子
744…画像処理回路
75…通信部
751…マイコン
752…メモリ
753…無線モジュール
754…アンテナ
700…基板
701…加速度センサ
702…LED
704…バイブレータ
8…LEDモジュール

【特許請求の範囲】
【請求項1】
銃の発射操作を受け付ける操作子と、速度または加速度の一方または両方を検出することにより揺動操作を検出する揺動検出部とを備えたコントローラを無線または有線で接続したコンピュータを、
前記銃の発射可能弾数を記憶する発射可能弾数記憶手段、
前記コントローラが前記銃の発射操作を受け付けたとき、前記発射可能弾数を減算する銃発射手段、
前記コントローラが揺動操作されたことを検出したとき、前記発射可能弾数を加算する再装填手段、
として機能させるためのプログラム。
【請求項2】
前記コンピュータを、前記コントローラが所定の構え操作を受け付けている間のみ、前記再装填機能を有効にする銃構え手段としてさらに機能させる請求項1に記載のプログラム。
【請求項3】
1または複数の操作子と、速度または加速度の一方または両方を検出することにより揺動操作を検出する揺動検出部とを備えたコントローラを無線または有線で接続し、銃を所持したキャラクタの画像を作成してモニタに出力するコンピュータを、
前記銃の発射可能弾数を記憶する発射可能弾数記憶手段、
前記コントローラが所定の発射操作を受け付けたとき、前記キャラクタが銃を発射する画像を生成するとともに、前記発射可能弾数を減算する銃発射手段、
前記コントローラが揺動操作されたことを検出したとき、前記発射可能弾数を加算する再装填手段、
として機能させるためのプログラム。
【請求項4】
前記再装填手段は、前記キャラクタが銃に弾を装填する画像を生成する手段を含む請求項3に記載のプログラム。
【請求項5】
前記再装填手段は、前記キャラクタが銃に弾を装填する画像として、前記キャラクタが短銃のグリップからマガジンを取り出したのち、再度該マガジンを再装着する動画を生成する請求項4に記載のプログラム。
【請求項6】
前記コンピュータを、前記コントローラが所定の構え操作を受け付けている間のみ、前記再装填機能を有効にする銃構え手段としてさらに機能させる請求項3乃至請求項5のいずれかに記載のプログラム。
【請求項7】
前記コンピュータを、前記コントローラが前記所定の構え操作を受け付けていない間に、前記コントローラが揺動操作されたことを検出したとき、前記キャラクタが銃とは異なる武器アイテムを振る画像を生成する武器アイテム旋回手段としてさらに機能させる請求項6に記載のプログラム。
【請求項8】
前記コンピュータを、予備の弾数である予備弾数を記憶する予備弾数記憶手段としてさらに機能させ、
前記前記再装填手段は、前記発射可能弾数を加算した分だけ、前記予備弾数を減算する請求項1乃至請求項7のいずれかに記載のプログラム。
【請求項9】
前記コンピュータは、前記コントローラに設定した仮想軸が指し示す方向を検出する方向検出部を更に備え、
前記銃発射手段は、前記銃の発射操作を受け付けたとき、前記コントローラの仮想軸が指し示す前記コンピュータに接続されているモニタ上の位置に向けて前記銃の弾を発射させる請求項1乃至請求項8の何れかに記載のプログラム。
【請求項10】
前記再装填手段は、前記銃に弾が装填される動作を表す効果音声を生成する手段を含む請求項1乃至請求項9のいずれかに記載のプログラム。
【請求項11】
前記再装填手段は、前記銃に弾が装填される動作を表す振動を生成する手段を含む請求項1乃至請求項10のいずれかに記載のプログラム。
【請求項12】
請求項1乃至請求項11のいずれかに記載のプログラムを実行するコンピュータ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate