説明

ゲームシステム

【課題】携帯型ゲーム機を用いて多人数で音声出力を行ってプレイするゲームにおいて、操作と音声出力のずれがないゲームシステムを提供すること。
【解決手段】画像を表示する表示部と操作部とを備える複数の携帯型ゲーム機と、据置型ゲーム機との間で通信を行うことでゲームを行うゲームシステムであって、複数の携帯型ゲーム機はそれぞれ、プレイヤが操作部に対して行うべき操作を指示する複数の指示標識を表示部に表示させる。また、操作部に対して行われた操作内容を示す操作データを据置型ゲーム機に送信する。据置型ゲーム機では、複数の携帯型ゲーム機からそれぞれ送信される操作データを受信する。それぞれの操作データに対応する音声データを、複数の音声データが記憶されている音声データ記憶手段から取得する。そして、取得したそれぞれの音声データに基づく音声を同時に出力する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、据置型ゲーム装置と複数の携帯型ゲーム装置との間で通信を行ってゲーム処理を実行するゲームシステムに関し、より特定的には、複数のプレイヤで楽曲を合奏する音楽ゲームシステムに関する。
【背景技術】
【0002】
従来より、音楽をゲームの要素に取り入れた、音楽ゲームというジャンルのゲームが多く知られている。これらのゲームでは、縦あるいは横方向に配置された複数のトラックがTV画面に表示される。また、音楽演奏に合わせてオブジェクトがトラック上を移動する。そして、画面上で示される操作タイミングに合わせて、プレイヤが所定の操作スイッチを操作することによって、あたかも音楽を演奏しているかのような効果を醸し出しながらゲームをプレイする。
【0003】
上記のような音楽ゲームの一つとして、複数のプレイヤが参加して1つの曲を合奏するような音楽ゲーム(以下、合奏ゲームと呼ぶ)が知られている(例えば、非特許文献1)。当該合奏ゲームでは、無線通信機能を搭載した複数の携帯型ゲーム機を用いてプレイする。図32は、当該合奏ゲームをプレイするときのシステム構成を示す図である。本合奏ゲームでは、複数の携帯型ゲーム機のうち、1台が親機401aとなる。そして、他の携帯型ゲーム機は子機401bとなり、それぞれ親機401aと無線通信ができるように、通信路を確立する。
【0004】
また、本合奏ゲームにおいては、1つの曲は、その曲を演奏する楽器毎に「パート」と呼ばれる単位で分けられている(例えば、ギター、ピアノ、バイオリン等のパート)。そして、一人のプレイヤが1台の携帯型ゲーム機を持つ。そして、上記の「パート」を各プレイヤに割り振る。各自の携帯型ゲーム機では、各パートに応じて操作画面が表示されるので、各自、演奏のための操作(各自の画面に表示される操作タイミングに合わせてボタン等を押す)を行う。つまり、一人一人が別々の楽器を演奏するようなイメージとなる。上記の例では、一人がギター、一人がピアノ、一人がバイオリンを担当するイメージとなる。
【0005】
そして、各自の操作データを親機に集め、その後、集まった操作データを親機から各子機に送信する。これにより、各プレイヤが行った操作データが各自の携帯型ゲーム機に配信されることになる。そして、各携帯型ゲーム機(親機・子機共に)上で、配信された操作データに基づいて各パートの音声を同時に出力することで、各プレイヤの操作が反映された音声(上記の例では、ギター、ピアノ、バイオリン)が出力できる。このようにして、当該合奏ゲームは、1つの曲を複数のプレイヤで合奏するという体験を楽しませている。
【非特許文献1】任天堂株式会社、「大合奏!バンドブラザーズ 取扱説明書」、大合奏!バンドブラザーズ、任天堂株式会社、2004年12月2日
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上述したような非特許文献1に開示された合奏ゲームにおいては、以下に示す問題点があった。図33は、従来の合奏ゲームにおける合奏中の処理フローを模式的に示した図である。図33においては、まず、各プレイヤがそれぞれ操作を行う(時間T1)。次に、各子機401bでは親機401aへの操作データの送信処理が行われ、親機401aでは、当該操作データの受信処理が行われる(時間T2)。これにより、各自の操作データが親機401aに集まる。
【0007】
そして、次に、親機401aから各子機401bに対して、上記集まった操作データの送信処理が行われる。これに応じて、各子機401bでは、親機401aから送信された全プレイヤ分の操作データの受信処理が行われる(時間T3)。そして、各自の携帯型ゲーム機から、全プレイヤ分の操作データを反映した音声を出力する処理が行われる(時間T4)。
【0008】
上述のフローで示したように、特に子機401bにおいては、操作を行ってから音声を出力するためには、親機401a経由で他のプレイヤの操作データを受信する必要がある。逆に言うと、プレイヤが操作を行っても、すぐには全プレイヤの操作を反映した音声は出力できない。図33の場合であれば、操作を行ってから音声出力されるまでに、時間T2、T3、T4の3つの処理のステップが必要となっている。また、一般に、ゲーム処理は、ゲーム画面の描画間隔である1フレーム単位、例えば、1/60秒間隔で処理されることが多い。しかし、無線通信の通信速度との関係で、子機から親機への送信(時間T2の処理)と、親機から子機への送信(時間T3の処理)を1フレーム内で処理することは困難であり、一般的には、時間T2の処理で1フレーム、時間T3の処理で1フレームの、少なくとも2フレーム分の処理時間がかかる。その結果、従来の合奏ゲームにおいては、プレイヤが操作を行ってから、実際に各プレイヤの操作が反映された音声が出力されるまでに、少なくとも1フレーム分のずれが生じてしまうという問題があった。そのため、合奏する曲の内容(テンポ等)によっては、このような音ずれによる違和感をプレイヤに与えてしまうという問題があった。
【0009】
また、上述したような携帯型ゲーム機は、プレイヤに携帯させることを目的とするが故に、その本体(筐体)の大きさを小さいサイズにする必要がある。本体のサイズを小型化するためには、必然的に、搭載するスピーカーも小型のスピーカーとする必要がある。しかし、一般的には、小型のスピーカーは低音の出力が弱いため、出力された音声がプレイヤの満足のいくような音質とならないという問題がある。
【0010】
更に、携帯型ゲーム機に用いられるCPU等の処理装置は、一般的には、据置型のゲーム装置に比して処理速度の遅いものが用いられることが多い。一方、音声データについて、その音声が高音質なものであるほどデータ量は大きくなる。しかし、上記のような携帯型ゲーム機の処理速度の比較的遅いCPUでは、データ量の大きな音声データ(高音質な音声データ)を扱うことは処理負荷が高すぎる場合がある。そのため、特にプレイヤの操作感を良好な状態に保つためには、ある程度音質を落としたような「軽い」音声データを用いて処理する必要があった。その結果、上記のスピーカーのサイズの問題に加え、そもそも携帯型ゲーム機で処理される音声データの音質自体が低いため、携帯型ゲーム機から出力される音声の音質としては低いものしか提供できないという問題があった。
【0011】
それ故に、本発明の目的は、携帯型ゲーム機を用いて多人数で音声出力を行ってプレイするゲームにおいて、操作と音声出力のずれがないゲームシステムを提供することである。
【0012】
また、本発明の他の目的は、携帯型ゲーム機による多人数プレイにおいて高音質の音声出力が楽しめるゲームシステムを提供することである。
【課題を解決するための手段】
【0013】
本発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施形態との対応関係の一例を示したものであって、本発明を何ら限定するものではない。
【0014】
第1の発明は、画像を表示する表示部(41,42)と操作部(44,45)とを備える複数の携帯型ゲーム機(40)と、据置型ゲーム機(3)との間で通信を行うことでゲームを行うゲームシステムであって、複数の携帯型ゲーム機はそれぞれ、表示制御手段(51)と、操作データ送信手段(63)とを備える。表示制御手段は、プレイヤが操作部に対して行うべき操作を指示する複数の指示標識を表示部に表示させる。操作データ送信手段は、操作部に対して行われた操作内容を示す操作データを据置型ゲーム機に送信する。また、据置型ゲーム機は、据置機用音声データ記憶手段(12)と、操作データ受信手段(18)と、音声読出し手段(10)と、音声出力手段(10、15,16)とを備える。据置機用音声データ記憶手段は、複数の音声データを記憶する。操作データ受信手段は、複数の携帯型ゲーム機からそれぞれ送信される操作データを受信する。音声読出し手段は、それぞれの操作データに対応する音声データを音声データ記憶手段から取得する。音声出力手段は、取得したそれぞれの音声データに基づく音声を同時に出力する。
【0015】
第1の発明によれば、プレイヤの操作から、その操作に対応した音声が出力されるまでのずれ(タイムラグ)を軽減することが可能となる。また、高音質での音声出力によるゲームを楽しませることが可能となる。
【0016】
第2の発明は、第1の発明において、ゲームシステムで実行されるゲームは、複数のパートから構成される楽曲を携帯型ゲーム装置毎にパートを担当させて演奏させる音楽ゲームである。また、複数の指示標識は楽曲の演奏操作の内容を各パート毎に示すものである。また、携帯型ゲーム機は、複数の指示標識を表すデータを時系列的に記憶した指示標識記憶手段(54)を更に備える。そして、表示制御手段は、各携帯型ゲーム装置が担当するパートを演奏させるための複数の指示標識を指示標識記憶手段から読み出して表示部に表示させる。更に、据置機用音声データ記憶手段は、複数のパートのそれぞれに対応した音声データを記憶する。音声データ読出し手段は、操作データに基づいて当該操作データの送信元の携帯型ゲーム装置が担当するパートの音声データを読み出す。
【0017】
第2の発明によれば、高音質の音声を用いて、音ずれ等の違和感のない合奏プレイをプレイヤに楽しませることができる。これにより、複数のプレイヤで合奏するということの一体感を高めることができ、音楽ゲームの興趣を高めることが可能となる
【0018】
第3の発明は、第2の発明において、携帯型ゲーム機は、担当するパートをプレイヤに選択させるためのパート選択手段(51)と、プレイヤが選択したパートを示すパート選択情報を据置型ゲーム機へ送信するパート情報送信手段(63)とを更に備える。また、据置型ゲーム機は、パート選択情報を受信するパート情報受信手段(10、18)と、受信した全てのパート選択情報を携帯型ゲーム機に送信する、全パート情報送信手段(10、18)とを更に備える。
【0019】
第3の発明によれば、楽曲を構成する各パートを複数のプレイヤに割り振って、楽曲の演奏を楽しませることができる。
【0020】
第4の発明は、第3の発明において、据置型ゲーム機は、楽曲を構成するパートのうち、パート選択手段によって選択されていないパートにかかる楽曲の再生を行うための自動演奏手段(10)を更に備える。
【0021】
第4の発明によれば、参加するプレイヤの人数が少ないときでも、多人数で楽曲を合奏する楽しさを与えることができる。
【0022】
第5の発明は、第1の発明において、音声出力手段は、音声読出し手段が取得した音声データの音の高さを所定の音の高さに変更して出力可能である。
【0023】
第5の発明によれば、据置機用音声データ記憶手段の記憶容量を低減することができる。
【0024】
第6の発明は、第1の発明において、操作部は、押下可能なキーを含む。また、操作データは、押下可能なキーに対する操作を示すデータを含む。
【0025】
第6の発明によれば、ボタンを押下するだけという単純な操作で音楽ゲームを楽しませることができる。
【0026】
第7の発明は、第1の発明において、操作部は、タッチパネルを含む。また、操作データは、タッチパネルのタッチ座標を示すデータを含む。
【0027】
第7の発明によれば、タッチパネル操作を取り入れることで、操作方法に幅を持たせることができる。
【0028】
第8の発明は、第2の発明において、携帯型ゲーム機は、携帯機用音声データ記憶手段(54)と、携帯機間通信手段(63)と、携帯間通信ゲーム手段(51)と、ゲームモード選択手段(51)とを更に備える。携帯機用音声データ記憶手段は、据置機用音声データ記憶手段に記憶されている音声データよりも音質が低い音声データを記憶する。携帯機間通信手段は、携帯型ゲーム機同士で通信を行う。携帯間通信ゲーム手段は、携帯機用音声データ記憶手段に記憶されている音声データと携帯機間通信手段を用いて、携帯型ゲーム機同士で通信を行いながら音楽ゲームを実行する。ゲームモード選択手段は、携帯型ゲーム機同士で通信を行いながら音楽ゲームを実行するゲームモードと、据置型ゲーム機との通信を介して音楽ゲームを実行するゲームモードとのいずれかをプレイヤに選択させる。
【0029】
第8の発明によれば、据置型ゲーム機を用いるゲームモードと、据置型ゲーム機を用いないゲームモードを選択可能となるため、プレイヤのゲームの楽しみ方の幅を広げることができる。また、据置型ゲーム機を用いた場合は高音質の音声で音楽ゲームを楽しむことができ、据置型ゲーム機の活用をプレイヤに促すことが可能となる。
【0030】
第9の発明は、第2の発明において、携帯型ゲーム装置のうち少なくとも一つは、曲データ記憶部(54)と、曲データ送信手段(63)とを更に備える。曲データ記憶部は、複数の指示標識を表すデータを含む。曲データ送信手段は、曲データを据置型ゲーム機に送信する。据置型ゲーム機は、曲データ受信手段(10,18)と、曲データ配布手段(10,18)とを更に備える。曲データ受信手段は、曲データを受信する。曲データ配布手段は、受信した曲データを携帯型ゲーム機に送信する。指示標識記憶手段は、曲データ配布手段から送信された曲データに含まれる複数の指示標識を表すデータを記憶する。
【0031】
第9の発明によれば、複数の携帯型ゲーム機のうち、いずれか1台に曲データが記憶されていれば、その曲を多人数で演奏して楽しむことができる。
【0032】
第10の発明は、第9の発明において、携帯型ゲーム機は、得点算出手段(51)と、得点送信手段(63)とを更に備える。得点算出手段は、曲データと操作データとを比較してプレイヤの操作に対する得点を算出する。得点送信手段は、得点を示す得点データを据置型ゲーム機へ送信する。また、据置型ゲーム機は、得点受信手段(18)と得点表示手段(10)とを更に備える。得点受信手段は、得点送信手段が送信した得点データを受信する。得点表示手段は、受信した得点データに基づいて各ユーザの得点を表示する。
【0033】
第10の発明によれば、正確な得点計算が可能となる。また、他のプレイヤの得点が把握できるため、ゲームの興趣を高めることができる。
【0034】
第11の発明は、第9の発明において、据置型ゲーム機は、配信用プログラム記憶手段(17)と、配信手段(18)とを更に備える。配信用プログラム記憶手段は、携帯型ゲーム機において演奏操作を可能とするための演奏操作用プログラムを記憶する。配信手段は、演奏操作用プログラムを配信する。また、携帯型ゲーム機は、記憶媒体装着部(53)と、演奏操作用プログラム記憶手段(54)とを更に備える。記憶媒体装着部は、音楽ゲームを実行するためのゲームプログラムおよび曲データが記憶されている記憶媒体(47)を着脱可能である。演奏操作用プログラム記憶手段は、演奏操作用プログラムを記憶する。上記のような構成で、記憶媒体が装着されている携帯型ゲーム機の曲データ送信手段は、当該記憶媒体に記憶されている曲データを据置型ゲーム機に送信する。そして、配信手段は、記憶媒体が装着されていない携帯型ゲーム機に対して演奏操作用プログラムを送信する。また、曲データ配布手段は、記憶媒体が装着されていない携帯型ゲーム機に、記憶媒体が装着されている携帯型ゲーム機の曲データ送信手段から送信された曲データを送信する。そして、記憶媒体が装着されていない携帯型ゲーム機は、配信手段から送信された演奏操作用プログラムと、曲データ配布手段から送信された曲データに基づいて音楽ゲームを実行する。
【0035】
第11の発明によれば、ゲームプログラムおよび曲データが記憶されている記憶媒体が全ての携帯型ゲーム機に装着されている必要が無く、当該記憶媒体が一つあるだけで、多人数での音楽ゲームを楽しむことが可能となる。
【発明の効果】
【0036】
本発明によれば、プレイヤの操作から実際の音声出力までのずれを軽減することが可能となる。これにより、音声出力のすれをプレイヤに感じさせることなく、違和感のないプレイ感覚を提供することができる。
【発明を実施するための最良の形態】
【0037】
以下、本発明の実施の形態について、図面を参照して説明する。尚、この実施例により本発明が限定されるものではない。
【0038】
図1において、本実施形態のゲームシステムは、1台の据置型ゲーム機(以下、単に「据置機」と記載する)3と複数台の携帯型ゲーム機40(以下、単に「携帯機」と記載する)とから構成される。据置機3と各携帯機40とは無線通信可能に接続されている。また、据置機3には、テレビジョン受像器(以下、単に「テレビ」と記載する)2が接続される。
【0039】
図2は、据置機3の外観図である。図2において、据置機3は、光ディスク4、コントローラ7、およびマーカ部8を含む。本ゲーム機は、コントローラ7を用いたゲーム操作に基づいて据置機3でゲーム処理を実行するものである。
【0040】
据置機3には、当該据置機3に対して交換可能に用いられる情報記憶媒体の一例である光ディスク4が脱着可能に挿入される。光ディスク4には、据置機3において実行されるためのゲームプログラムが記憶されている。据置機3の前面には光ディスク4の挿入口が設けられている。据置機3は、挿入口に挿入された光ディスク4に記憶されたゲームプログラムを読み出して実行することによってゲーム処理を実行可能である。
【0041】
据置機3には、表示装置の一例であるテレビ2が接続コードを介して接続される。テレビ2には、据置機3において実行されるゲーム処理の結果得られるゲーム画像が表示される。また、テレビ2の画面の周辺(図1では画面の上側)には、マーカ部8が設置される。マーカ部8は、その両端に2つのマーカ8Rおよび8Lを備えている。マーカ8R(マーカ8Lも同様)は、具体的には1以上の赤外LEDであり、テレビ2の前方に向かって赤外光を出力する。マーカ部8は据置機3に接続されており、据置機3はマーカ部8が備える各赤外LEDの点灯を制御することが可能である。
【0042】
コントローラ7は、当該コントローラ7自身に対して行われた操作の内容を示す操作データを据置機3に与える入力装置である。コントローラ7と据置機3とは無線通信によって接続される。本実施形態では、コントローラ7と据置機3との間の無線通信には例えばBluetooth(ブルートゥース)(登録商標)の技術が用いられる。なお、他の実施形態においてはコントローラ7と据置機3とは有線で接続されてもよい。
【0043】
(据置機3の内部構成)
次に、図3を参照して、据置機3の内部構成について説明する。図3は、据置機3の構成を示すブロック図である。据置機3は、CPU10、システムLSI11、外部メインメモリ12、ROM/RTC13、ディスクドライブ14、およびAV−IC15等を有する。
【0044】
CPU10は、光ディスク4に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。CPU10は、システムLSI11に接続される。システムLSI11には、CPU10の他、外部メインメモリ12、ROM/RTC13、ディスクドライブ14およびAV−IC15が接続される。システムLSI11は、それに接続される各構成要素間のデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。システムLSIの内部構成について後述する。揮発性の外部メインメモリ12は、光ディスク4から読み出されたゲームプログラムや、フラッシュメモリ17から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、CPU10のワーク領域やバッファ領域として用いられる。ROM/RTC13は、ゲーム装置3の起動用のプログラムが組み込まれるROM(いわゆるブートROM)と、時間をカウントするクロック回路(RTC:Real Time Clock)とを有する。ディスクドライブ14は、光ディスク4からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ11eまたは外部メインメモリ12に読み出したデータを書き込む。
【0045】
また、システムLSI11には、入出力プロセッサ11a、GPU(Graphics Processor Unit)11b、DSP(Digital Signal Processor)11c、VRAM11d、および内部メインメモリ11eが設けられる。図示は省略するが、これらの構成要素11a〜11eは内部バスによって互いに接続される。
【0046】
GPU11bは、描画手段の一部を形成し、CPU10からのグラフィクスコマンド(作画命令)に従って画像を生成する。より具体的には、GPU11bは、当該グラフィクスコマンドに従って3Dグラフィックスの表示に必要な計算処理、例えば、レンダリングの前処理にあたる3D座標から2D座標への座標変換などの処理や、テクスチャの張り込みなどの最終的なレンダリング処理を行うことで、ゲーム画像データを生成する。ここで、CPU10は、グラフィクスコマンドに加えて、ゲーム画像データの生成に必要な画像生成プログラムをGPU11bに与える。VRAM11dは、GPU11bがグラフィクスコマンドを実行するために必要なデータ(ポリゴンデータやテクスチャデータ等のデータ)を記憶する。画像が生成される際には、GPU11bは、VRAM11dに記憶されたデータを用いて画像データを作成する。
【0047】
DSP11cは、オーディオプロセッサとして機能し、内部メインメモリ11eや外部メインメモリ12に記憶されるサウンドデータや音波形(音色)データを用いて、音声データを生成する。また、内部メインメモリ11eは、外部メインメモリ12と同様に、プログラムや各種データを記憶したり、CPU10のワーク領域やバッファ領域としても用いられる。
【0048】
上述のように生成された画像データおよび音声データは、AV−IC15によって読み出される。AV−IC15は、読み出した画像データをAVコネクタ16を介してテレビ2に出力するとともに、読み出した音声データを、テレビ2に内蔵されるスピーカ2aに出力する。これによって、画像がテレビ2に表示されるとともに音がスピーカ2aから出力される。
【0049】
入出力プロセッサ(I/Oプロセッサ)11aは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ11aは、フラッシュメモリ17、無線通信モジュール18、無線コントローラモジュール19、拡張コネクタ20、および外部メモリカード用コネクタ21に接続される。無線通信モジュール18にはアンテナ22が接続され、無線コントローラモジュール19にはアンテナ23が接続される。
【0050】
入出力プロセッサ11aは、無線通信モジュール18およびアンテナ22を介してネットワークに接続し、ネットワークに接続される他のゲーム装置や各種サーバと通信することができる。入出力プロセッサ11aは、定期的にフラッシュメモリ17にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、無線通信モジュール18およびアンテナ22を介してネットワークに送信する。また、入出力プロセッサ11aは、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータやゲームプログラムを、ネットワーク、アンテナ22および無線通信モジュール18を介して受信し、受信したデータやゲームプログラムをフラッシュメモリ17に記憶する。CPU10は、フラッシュメモリ17、あるいは、光ディスク4に記憶されたゲームプログラムを実行することにより、フラッシュメモリ17に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ17には、据置機3と他のゲーム装置や各種サーバとの間で送受信されるデータの他、据置機3を利用してプレイしたゲームのセーブデータ(ゲームの結果データまたは途中データ)が記憶されてもよい。
【0051】
また、入出力プロセッサ11aは、コントローラ7から送信される操作データをアンテナ23および無線コントローラモジュール19を介して受信し、内部メインメモリ11eまたは外部メインメモリ12のバッファ領域に記憶(一時記憶)する。
【0052】
さらに、入出力プロセッサ11aには、拡張コネクタ20および外部メモリカード用コネクタ21が接続される。拡張コネクタ20は、USBやSCSIのようなインターフェースのためのコネクタであり、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによって無線通信モジュール18に替えてネットワークとの通信を行ったりすることができる。外部メモリカード用コネクタ21は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ11aは、拡張コネクタ20や外部メモリカード用コネクタ21を介して、外部記憶媒体にアクセスし、データを保存したり、データを読み出したりすることができる。
【0053】
据置機3には、電源ボタン24、リセットボタン25、およびイジェクトボタン26が設けられる。電源ボタン24およびリセットボタン25は、システムLSI11に接続される。電源ボタン24がオンにされると、据置機3の各構成要素に対して、図示しないACアダプタを経て電源が供給される。また、一旦電源がオンにされた状態で、再度電源ボタン24を押すと、低電力スタンバイモードへの移行が行われる。この状態でも、据置機3への通電は行われているため、インターネット等のネットワークに常時接続しておくことができる。なお、一旦電源がオンにされた状態で、電源をオフにしたいときは、電源ボタン24を所定時間以上長押しすることで、電源をオフとすることが可能である。リセットボタン25が押されると、システムLSI11は、据置機3の起動プログラムを再起動する。イジェクトボタン26は、ディスクドライブ14に接続される。イジェクトボタン26が押されると、ディスクドライブ14から光ディスク4が排出される。
【0054】
次に、図3および図4を参照して、コントローラ7について説明する。なお、図3は、コントローラ7の上面後方から見た斜視図である。図4は、コントローラ7を下面前方から見た斜視図である。
【0055】
図3および図4において、コントローラ7は、ハウジング71と、当該ハウジング71の表面に設けられた複数個の操作ボタンで構成される操作部72とを備える。本実施例のハウジング71は、その前後方向を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさであり、例えばプラスチック成型によって形成されている。
【0056】
ハウジング71上面の中央前面側に、十字キー72aが設けられる。この十字キー72aは、十字型の4方向プッシュスイッチであり、4つの方向(前後左右)に対応する操作部分が十字の突出片にそれぞれ90°間隔で配置される。プレイヤが十字キー72aのいずれかの操作部分を押下することによって前後左右いずれかの方向を選択される。例えばプレイヤが十字キー72aを操作することによって、仮想ゲーム世界に登場するプレイヤキャラクタ等の移動方向を指示したり、複数の選択肢から選択指示したりすることができる。
【0057】
なお、十字キー72aは、上述したプレイヤの方向入力操作に応じて操作信号を出力する操作部であるが、他の態様の操作部でもかまわない。例えば、十字方向に4つのプッシュスイッチを配設し、プレイヤによって押下されたプッシュスイッチに応じて操作信号を出力する操作部を設けてもかまわない。さらに、上記4つのプッシュスイッチとは別に、上記十字方向が交わる位置にセンタスイッチを配設し、4つのプッシュスイッチとセンタスイッチとを複合した操作部を設けてもかまわない。また、ハウジング71上面から突出した傾倒可能なスティック(いわゆる、ジョイスティック)を倒すことによって、傾倒方向に応じて操作信号を出力する操作部を上記十字キー72aの代わりに設けてもかまわない。さらに、水平移動可能な円盤状部材をスライドさせることによって、当該スライド方向に応じた操作信号を出力する操作部を、上記十字キー72aの代わりに設けてもかまわない。また、タッチパッドを、上記十字キー72aの代わりに設けてもかまわない。
【0058】
ハウジング71上面の十字キー72aより後面側に、複数の操作ボタン72b〜72gが設けられる。操作ボタン72b〜72gは、プレイヤがボタン頭部を押下することによって、それぞれの操作ボタン72b〜72gに割り当てられた操作信号を出力する操作部である。例えば、操作ボタン72b〜72dには、1番ボタン、2番ボタン、およびAボタン等としての機能が割り当てられる。また、操作ボタン72e〜72gには、マイナスボタン、ホームボタン、およびプラスボタン等としての機能が割り当てられる。これら操作ボタン72a〜72gは、据置機3が実行するゲームプログラムに応じてそれぞれの操作機能が割り当てられる。なお、図3に示した配置例では、操作ボタン72b〜72dは、ハウジング71上面の中央前後方向に沿って並設されている。また、操作ボタン72e〜72gは、ハウジング71上面の左右方向に沿って操作ボタン72bおよび72dの間に並設されている。そして、操作ボタン72fは、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
【0059】
また、ハウジング71上面の十字キー72aより前面側に、操作ボタン72hが設けられる。操作ボタン72hは、遠隔から据置機3本体の電源をオン/オフする電源スイッチである。この操作ボタン72hも、その上面がハウジング71の上面に埋没しており、プレイヤが不意に誤って押下することのないタイプのボタンである。
【0060】
また、ハウジング71上面の操作ボタン72cより後面側に、複数のLED702が設けられる。ここで、コントローラ7は、他のコントローラ7と区別するためにコントローラ種別(番号)が設けられている。例えば、LED702は、コントローラ7に現在設定されている上記コントローラ種別をプレイヤに通知するために用いられる。具体的には、コントローラ7からゲーム装置3へ送信データを送信する際、上記コントローラ種別に応じて複数のLED702のうち、種別に対応するLEDが点灯する。
【0061】
また、ハウジング71上面には、操作ボタン72bおよび操作ボタン72e〜72gの間に後述するスピーカ(図5のスピーカ706)からの音を外部に放出するための音抜き孔が形成されている。
【0062】
一方、ハウジング71下面には、凹部が形成されている。後述で明らかとなるが、ハウジング71下面の凹部は、プレイヤがコントローラ7の前面をマーカ8Lおよび8Rに向けて片手で把持したときに、当該プレイヤの人差し指や中指が位置するような位置に形成される。そして、上記凹部の傾斜面には、操作ボタン72iが設けられる。操作ボタン72iは、例えばBボタンとして機能する操作部である。
【0063】
また、ハウジング71前面には、撮像情報演算部74の一部を構成する撮像素子743が設けられる。ここで、撮像情報演算部74は、コントローラ7が撮像した画像データを解析してその中で輝度が高い場所を判別してその場所の重心位置やサイズなどを検出するためのシステムであり、例えば、最大200フレーム/秒程度のサンプリング周期であるため比較的高速なコントローラ7の動きでも追跡して解析することができる。この撮像情報演算部74の詳細な構成については、後述する。また、ハウジング71の後面には、コネクタ73が設けられている。コネクタ73は、例えばエッジコネクタであり、例えば接続ケーブルと嵌合して接続するために利用される。
【0064】
ここで、以下の説明を具体的にするために、コントローラ7に対して設定する座標系について定義する。図3および図4に示すように、互いに直交するxyz軸をコントローラ7に対して定義する。具体的には、コントローラ7の前後方向となるハウジング71の長手方向をz軸とし、コントローラ7の前面(撮像情報演算部74が設けられている面)方向をz軸正方向とする。また、コントローラ7の上下方向をy軸とし、ハウジング71の上面(操作ボタン72a等が設けられた面)方向をy軸正方向とする。さらに、コントローラ7の左右方向をx軸とし、ハウジング71の左側面(図3では表されずに図4で表されている側面)方向をx軸正方向とする。
【0065】
次に、図5および図6を参照して、コントローラ7の内部構造について説明する。なお、図5は、コントローラ7の上ハウジング(ハウジング71の一部)を外した状態を後面側から見た斜視図である。図6は、コントローラ7の下ハウジング(ハウジング71の一部)を外した状態を前面側から見た斜視図である。ここで、図6に示す基板700は、図5に示す基板700の裏面から見た斜視図となっている。
【0066】
図5において、ハウジング71の内部には基板700が固設されており、当該基板700の上主面上に操作ボタン72a〜72h、加速度センサ701、LED702、およびアンテナ754等が設けられる。そして、これらは、基板700等に形成された配線(図示せず)によってマイコン751等(図6、図7参照)に接続される。マイコン751は本願発明のボタンデータ発生手段の一例として、操作ボタン72a等の種類に応じた操作ボタンデータを発生させるように機能する。この仕組みは公知技術であるが、例えばキートップ下側に配置されたタクトスイッチなどのスイッチ機構による配線の接触/切断をマイコン751が検出することによって実現されている。より具体的には、操作ボタンが例えば押されると配線が接触して通電するので、この通電がどの操作ボタンにつながっている配線で発生したかをマイコン751が検出し、操作ボタンの種類に応じた信号を発生させている。
【0067】
また、コントローラ7は、図示しない無線モジュール753(図7参照)およびアンテナ754によって、ワイヤレスコントローラとして機能する。なお、ハウジング71内部には図示しない水晶振動子が設けられており、後述するマイコン751の基本クロックを生成する。また、基板700の上主面上に、スピーカ706およびアンプ708が設けられる。また、加速度センサ701は、操作ボタン72dの左側の基板700上(つまり、基板700の中央部ではなく周辺部)に設けられる。したがって、加速度センサ701は、コントローラ7の長手方向を軸とした回転に応じて、重力加速度の方向変化に加え、遠心力による成分の含まれる加速度を検出することができるので、所定の演算により、検出される加速度データからコントローラ7の回転を良好な感度で据置機3等が判定することができる。
【0068】
一方、図6において、基板700の下主面上の前端縁に撮像情報演算部74が設けられる。撮像情報演算部74は、コントローラ7の前方から順に赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744によって構成されており、それぞれ基板700の下主面に取り付けられる。また、基板700の下主面上の後端縁にコネクタ73が取り付けられる。さらに、基板700の下主面上にサウンドIC707およびマイコン751が設けられている。サウンドIC707は、基板700等に形成された配線によってマイコン751およびアンプ708と接続され、据置機3から送信されたサウンドデータに応じてアンプ708を介してスピーカ706に音声信号を出力する。
【0069】
そして、基板700の下主面上には、バイブレータ704が取り付けられる。バイブレータ704は、例えば振動モータやソレノイドである。バイブレータ704は、基板700等に形成された配線によってマイコン751と接続され、据置機3から送信された振動データに応じてその作動をオン/オフする。バイブレータ704が作動することによってコントローラ7に振動が発生するので、それを把持しているプレイヤの手にその振動が伝達され、いわゆる振動対応ゲームが実現できる。ここで、バイブレータ704は、ハウジング71のやや前方寄りに配置されるため、プレイヤが把持している状態において、ハウジング71が大きく振動することになり、振動を感じやすくなる。
【0070】
次に、図7を参照して、コントローラ7の内部構成について説明する。なお、図7は、コントローラ7の構成を示すブロック図である。
【0071】
図7において、コントローラ7は、上述した操作部72、撮像情報演算部74、加速度センサ701、バイブレータ704、スピーカ706、サウンドIC707、およびアンプ708の他に、その内部に通信部75を備えている。
【0072】
撮像情報演算部74は、赤外線フィルタ741、レンズ742、撮像素子743、および画像処理回路744を含んでいる。赤外線フィルタ741は、コントローラ7の前方から入射する光から赤外線のみを通過させる。レンズ742は、赤外線フィルタ741を透過した赤外線を集光して撮像素子743へ出射する。撮像素子743は、例えばCMOSセンサやあるいはCCDのような固体撮像素子であり、レンズ742が集光した赤外線を撮像する。したがって、撮像素子743は、赤外線フィルタ741を通過した赤外線だけを撮像して画像データを生成する。撮像素子743で生成された画像データは、画像処理回路744で処理される。具体的には、画像処理回路744は、撮像素子743から得られた画像データを処理して高輝度部分を検知し、それらの位置座標や面積を検出した結果を示す処理結果データを通信部75へ出力する。なお、これらの撮像情報演算部74は、コントローラ7のハウジング71に固設されており、ハウジング71自体の方向を変えることによってその撮像方向を変更することができる。後述により明らかとなるが、この撮像情報演算部74から出力される処理結果データに基づいて、コントローラ7の位置や動きに応じた信号を得ることができる。
【0073】
コントローラ7は、3軸(x、y、z軸)の加速度センサ701を備えていることが好ましい。この3軸の加速度センサ701は、3方向、すなわち、上下方向、左右方向、および前後方向で直線加速度を検知する。また、他の実施形態においては、ゲーム処理に用いる制御信号の種類によっては、上下および左右方向(または他の対になった方向)のそれぞれに沿った直線加速度のみを検知する2軸の加速度検出手段を使用してもよい。例えば、この3軸または2軸の加速度センサ701は、アナログ・デバイセズ株式会社(Analog Devices, Inc.)またはSTマイクロエレクトロニクス社(STMicroelectronics N.V.)から入手可能であるタイプのものでもよい。加速度センサ701は、シリコン微細加工されたMEMS(Micro Electro Mechanical Systems:微小電子機械システム)の技術に基づいた静電容量式(静電容量結合式)であってもよい。しかしながら、既存の加速度検出手段の技術(例えば、圧電方式や圧電抵抗方式)あるいは将来開発される他の適切な技術を用いて3軸または2軸の加速度センサ701が提供されてもよい。
【0074】
当業者には公知であるように、加速度センサ701に用いられるような加速度検出手段は、加速度センサの持つ各軸に対応する直線に沿った加速度(直線加速度)のみを検知することができる。つまり、加速度センサ701からの直接の出力は、その2軸または3軸のそれぞれに沿った直線加速度(静的または動的)を示す信号である。このため、加速度センサ701は、非直線状(例えば、円弧状)の経路に沿った動き、回転、回転運動、角変位、傾斜、位置、または姿勢等の物理特性を直接検知することはできない。
【0075】
しかしながら、加速度センサ701から出力される加速度の信号に基づいて、ゲーム装置のプロセッサ(例えばCPU10)またはコントローラのプロセッサ(例えばマイコン751)などのコンピュータが処理を行うことによって、コントローラ7に関するさらなる情報を推測または算出(判定)することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサを搭載するコントローラが静的な状態であることを前提としてコンピュータ側で処理する場合(すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理する場合)、コントローラが現実に静的な状態であれば、検出された加速度に基づいてコントローラの姿勢が重力方向に対して傾いているか否か又はどの程度傾いているかを知ることができる。具体的には、加速度センサの検出軸が鉛直下方向を向いている状態を基準としたとき、1G(重力加速度)がかかっているか否かだけで傾いているか否かを知ることができるし、その大きさによってどの程度傾いているかも知ることができる。また、多軸の加速度センサの場合には、さらに各軸の加速度の信号に対して処理を施すことによって、各軸が重力方向に対してどの程度傾いているかをより詳細に知ることができる。この場合において、、加速度センサ701からの出力に基づいて、プロセッサがコントローラ7の傾き角度のデータを算出する処理をおこなってもよいが、当該傾き角度のデータを算出する処理をおこなうことなく、加速度センサ701からの出力に基づいて、おおよその傾き具合を推定するような処理としてもよい。このように、加速度センサ701をプロセッサと組み合わせて用いることによって、コントローラ7の傾き、姿勢または位置を判定することができる。一方、加速度センサが動的な状態であることを前提とする場合には、重力加速度成分に加えて加速度センサの動きに応じた加速度を検出するので、重力加速度成分を所定の処理により除去すれば、動き方向などを知ることができる。具体的には、、加速度センサ701を備えるコントローラ7がユーザの手で動的に加速されて動かされる場合に、加速度センサ701によって生成される加速度信号を処理することによって、コントローラ7のさまざまな動きおよび/または位置を算出することができる。なお、加速度センサが動的な状態であることを前提とする場合であっても、加速度センサの動きに応じた加速度を所定の処理により除去すれば、重力方向対する傾きを知ることが可能である。他の実施例では、加速度センサ701は、信号をマイコン751に出力する前に内蔵の加速度検出手段から出力される加速度信号に対して所望の処理を行うための、組込み式の信号処理装置または他の種類の専用の処理装置を備えていてもよい。例えば、組込み式または専用の処理装置は、加速度センサが静的な加速度(例えば、重力加速度)を検出するためのものである場合、検知された加速度信号をそれに相当する傾斜角(あるいは、他の好ましいパラメータ)に変換するものであってもよい。
【0076】
他の実施形態の例では、コントローラ7の動きを検出する動きセンサとして、回転素子または振動素子などを内蔵したジャイロセンサを用いてもよい。この実施形態で使用されるMEMSジャイロセンサの一例として、アナログ・デバイセズ株式会社から入手可能なものがある。加速度センサ701と異なり、ジャイロセンサは、それが内蔵する少なくとも一つのジャイロ素子の軸を中心とした回転(または角速度)を直接検知することができる。このように、ジャイロセンサと加速度センサとは基本的に異なるので、個々の用途のためにいずれの装置が選択されるかによって、これらの装置からの出力信号に対して行う処理を適宜変更する必要がある。
【0077】
具体的には、加速度センサの代わりにジャイロセンサを用いて傾きや姿勢を算出する場合には、大幅な変更を行う。すなわち、ジャイロセンサを用いる場合、検出開始の状態において傾きの値を初期化する。そして、当該ジャイロセンサから出力される角速度データを積分する。次に、初期化された傾きの値からの傾きの変化量を算出する。この場合、算出される傾きは、角度に対応する値が算出されることになる。一方、加速度センサによって傾きを算出する場合には、重力加速度のそれぞれの軸に関する成分の値を、所定の基準と比較することによって傾きを算出するので、算出される傾きはベクトルで表すことが可能であり、初期化を行わずとも、加速度検出手段を用いて検出される絶対的な方向を検出することが可能である。また、傾きとして算出される値の性質は、ジャイロセンサが用いられる場合には角度であるのに対して、加速度センサが用いられる場合にはベクトルであるという違いがある。したがって、加速度センサに代えてジャイロセンサが用いられる場合、当該傾きのデータに対して、2つのデバイスの違いを考慮した所定の変換を行う必要がある。加速度検出手段とジャイロセンサとの基本的な差異と同様にジャイロセンサの特性は当業者に公知であるので、本明細書ではさらなる詳細を省略する。ジャイロセンサは、回転を直接検知できることによる利点を有する一方、一般的には、加速度センサは、本実施形態で用いるようなコントローラに適用される場合、ジャイロセンサに比べて費用効率が良いという利点を有する。
【0078】
通信部75は、マイクロコンピュータ(Micro Computer:マイコン)751、メモリ752、無線モジュール753、およびアンテナ754を含んでいる。マイコン751は、処理の際にメモリ752を記憶領域として用いながら、送信データを無線送信する無線モジュール753を制御する。また、マイコン751は、アンテナ754を介して無線モジュール753が受信した据置機3からのデータに応じて、サウンドIC707およびバイブレータ704の動作を制御する。サウンドIC707は、通信部75を介して据置機3から送信されたサウンドデータ等を処理する。また、マイコン751は、通信部75を介して据置機3から送信された振動データ(例えば、バイブレータ704をONまたはOFFする信号)等に応じて、バイブレータ704を作動させる。
【0079】
コントローラ7に設けられた操作部72からの操作信号(キーデータ)、加速度センサ701からの加速度信号(x、y、およびz軸方向加速度データ;以下、単に加速度データと記載する)、および撮像情報演算部74からの処理結果データは、マイコン751に出力される。マイコン751は、入力した各データ(キーデータ、加速度データ、処理結果データ)を無線コントローラモジュール19へ送信する送信データとして一時的にメモリ752に格納する。ここで、通信部75から無線コントローラモジュール19への無線送信は、所定の周期毎に行われるが、ゲームの処理は1/60秒を単位として行われることが一般的であるので、それよりも短い周期で送信を行うことが必要となる。具体的には、ゲームの処理単位は16.7ms(1/60秒)であり、ブルートゥース(Bluetooth;登録商標)で構成される通信部75の送信間隔は例えば5msである。マイコン751は、無線コントローラモジュール19への送信タイミングが到来すると、メモリ752に格納されている送信データを一連の操作情報として出力し、無線モジュール753へ出力する。そして、無線モジュール753は、例えばブルートゥース(登録商標)の技術に基づいて、所定周波数の搬送波を用いて操作情報で変調し、その電波信号をアンテナ754から放射する。つまり、コントローラ7に設けられた操作部72からのキーデータ、加速度センサ701からの加速度データ、および撮像情報演算部74からの処理結果データが無線モジュール753で電波信号に変調されてコントローラ7から送信される。そして、据置機3の無線コントローラモジュール19でその電波信号を受信し、据置機3で当該電波信号を復調や復号することによって、一連の操作情報(キーデータ、加速度データ、および処理結果データ)を取得する。そして、据置機3のCPU10は、取得した操作情報とゲームプログラムとに基づいて、ゲーム処理を行う。なお、ブルートゥース(登録商標)の技術を用いて通信部75を構成する場合、通信部75は、他のデバイスから無線送信された送信データを受信する機能も備えることができる。
【0080】
(携帯型ゲーム装置40の構成)
図9は、本発明の一実施形態に係る携帯機40の外観図である。図10は、この携帯機40の斜視図である。図10において、携帯機40は、第1のLCD(Liquid Crystal Display:液晶表示装置)41および第2のLCD42を含む。ハウジング43は上側ハウジング43aと下側ハウジング43bとによって構成されており、第1のLCD41は上側ハウジング43aに収納され、第2のLCD42は下側ハウジング43bに収納される。第1のLCD41および第2のLCD42の解像度はいずれも256dot×192dotである。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用することができる。また任意の解像度のものを利用することができる。
【0081】
上側ハウジング43aには、後述する1対のスピーカ(図10の60a、60b)からの音を外部に放出するための音抜き孔61a、61bが形成されている。
【0082】
上側ハウジング43aと下側ハウジング43bとを開閉可能に接続するヒンジ部にはマイクロフォン用孔57が設けられている。
【0083】
下側ハウジング43bには、入力装置として、十字スイッチ44a、スタートスイッチ44b、セレクトスイッチ44c、Aボタン44d、Bボタン44e、Xボタン44f、およびYボタン44gが設けられている。また、下側ハウジング43dの左上の角の部分にLボタン44hが設けられている。下側ハウジング43dの右上の角の部分に、Rボタン44iが設けられている。また、さらなる入力装置として、第2のLCD42の画面上にタッチパネル45が装着されている。このタッチパネル45の表面にはガイド枠34が貼り付けられている。下側ハウジング43bには、電源スイッチ49、メモリカード47を収納するための挿入口、スタイラスペン46を収納するための挿入口が設けられている。
【0084】
タッチパネル45は、抵抗膜方式のタッチパネルである。ただし、本発明は抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。タッチパネル45は、スタイラスペン46に限らず指で操作することも可能である。本実施形態では、タッチパネル45として、第2のLCD42の解像度と同じく256dot×192dotの解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル45の解像度と第2のLCD42の解像度が一致している必要はない。
【0085】
メモリカード47はゲームプログラムを記録した記録媒体であり、下部ハウジング43bに設けられた挿入口に着脱自在に装着される。
【0086】
次に、図10を参照して携帯型ゲーム装置40の内部構成を説明する。
【0087】
図10において、ハウジング43に収納される電子回路基板50には、CPUコア51が実装される。CPUコア51には、バス52を介して、コネクタ53が接続されるとともに、入出力インターフェース回路(図面ではI/F回路と記す)55、第1GPU(Graphics Processing Unit)56、第2GPU57、RAM54、およびLCDコントローラ61、およびワイヤレス通信部63が接続される。コネクタ53には、メモリカード47が着脱自在に接続される。メモリカード47は、ゲームプログラムを記憶するROM47aと、バックアップデータを書き換え可能に記憶するRAM47bを搭載する。メモリカード47のROM47aに記憶されたゲームプログラムはRAM54にロードされ、RAM54にロードされたゲームプログラムがCPUコア51によって実行される。RAM54には、ゲームプログラムの他にも、CPUコア51がゲームプログラムを実行して得られる一時的なデータや、ゲーム画像を生成するためのデータが記憶される。I/F回路55には、タッチパネル45、右スピーカ60a、左スピーカ60b、図1の十字スイッチ44aやAボタン44d等から成る操作スイッチ部44、およびマイクロフォン56が接続される。右スピーカ60aと左スピーカ60bは、音抜き孔61a、61bの内側にそれぞれ配置される。マイクロフォン56は、マイクロフォン用孔57の内側に配置される。
【0088】
第1GPU56には、第1VRAM(Video RAM)58が接続され、第2GPU57には、第2VRAM59が接続される。第1GPU56は、CPUコア51からの指示に応じて、RAM54に記憶されているゲーム画像を生成するためのデータに基づいて第1のゲーム画像を生成し、第1VRAM58に描画する。第2GPU57は、同様にCPUコア51からの指示に応じて第2のゲーム画像を生成し、第2VRAM59に描画する。第1VRAM58および第2VRAM59はLCDコントローラ51に接続されている。
【0089】
LCDコントローラ61はレジスタ62を含む。レジスタ62はCPUコア51からの指示に応じて0または1の値を記憶する。LCDコントローラ61は、レジスタ62の値が0の場合は、第1VRAM58に描画された第1のゲーム画像を第1のLCD41に出力し、第2VRAM59に描画された第2のゲーム画像を第2のLCD42に出力する。また、レジスタ62の値が1の場合は、第1VRAM58に描画された第1のゲーム画像を第2のLCD42に出力し、第2VRAM59に描画された第2のゲーム画像を第1のLCD41に出力する。
【0090】
ワイヤレス通信部63は、据置機3や他の携帯機40のワイヤレス通信部との間で、ゲーム処理に利用されるデータやその他のデータをやりとりする機能を有している。
【0091】
なお、本発明はゲーム装置に限らず、ハウジングで支持された押圧式のタッチパネルを備えた任意の装置に適用することができる。例えば、携帯ゲーム装置や、据え置き型ゲーム装置のコントローラや、PDA(Personal Digital Assistant)に適用することができる。また、本発明はタッチパネルの下にディスプレイが設けられていないような入力装置にも適用することができる。
【0092】
次に、本実施形態で想定するゲームの概要について説明する。まず、本実施形態における合奏ゲームソフトの各装置への導入(提供形態)について説明する。最初に、据置機3で実行される合奏ゲームソフト(以下、「据置機用合奏ソフト」と呼ぶ)は、所定のサーバからダウンロードされ、フラッシュメモリ17に記憶されている。そして、据置機3で当該ソフトが実行されることで、本実施形態にかかる合奏ゲームをプレイすることが可能となる。なお、上記ダウンロードされた据置機用合奏ソフトには、後述するような、携帯機40用の合奏ゲームプログラムが含まれており、本実施形態では、一部の携帯機40に対しては当該合奏ゲームプログラムを配信する。以下、当該合奏ゲームプログラムを「配信プログラム」と呼ぶ。また、据置機用合奏ソフトには、合奏に用いられる各楽器の音(音声データ)は含まれているが、後述するような、合奏する曲についてのデータ(後述する曲データ)そのものは含まれていない。
【0093】
一方、携帯機40で実行される合奏ゲームソフトの提供形態は2種類ある。すなわち、メモリカード47で提供される形態と、据置機3からダウンロードすることで提供される形態である。1つめの、メモリカード47で提供されるソフトは、単体(一人用)でもプレイできるように構成されている。また、演奏する曲についてのデータ(楽譜データ等)も当該ソフトの一部としてメモリカード47に記録されている。そして、当該合奏ゲームソフトが記録されているメモリカード47を挿入し、携帯型ゲーム機40を起動することで、当該合奏ゲームソフト(以下、単体合奏ソフトと呼ぶ)が実行される。
【0094】
もう一つの提供形態は、上述した配信用プログラムを据置機3からダウンロードする形態である。当該配信用プログラムは、上記メモリカード47を挿入していない携帯機40において実行されるプログラムである。また、当該配信用プログラムは、本実施形態に係る合奏ゲーム処理においてのみ用いられるものであり、一人用プレイ等、単体でプレイすることはできない。
【0095】
つまり、携帯機40については、メモリカード47が挿入され、当該メモリカード47に記録されているゲームプログラム(単体合奏ソフト)を実行する携帯機(以下、「リーダ機」と呼ぶ)と、メモリカード47が挿入されておらず、据置機3から上記配信用プログラムをダウンロードして実行する携帯機(以下、「メンバ機」と呼ぶ)との2種類が存在することになる。
【0096】
次に、図11を用いて、本実施形態における合奏ゲーム処理の流れの概要について説明する。図11において、まず最初に、据置機3、リーダ機、メンバ機との間で接続処理が行われる(ステップS1)。この処理では、接続情報のやりとりが行われて、据置機3を中心とする通信路を確立する処理が行われる。
【0097】
通信路が確立すれば、次に、準備処理が実行される(ステップS2)。この処理では、合奏ゲームの実行の準備を行う処理が実行される。具体的には、上記メンバ機における配信用プログラムのダウンロード処理や、合奏する曲のデータ等の送受信処理、各プレイヤが演奏するパートを決定するための処理等が行われる。
【0098】
準備処理が終われば、各ゲーム機間で同期がとられながら、合奏処理が実行される(ステップS3)。この処理では、リーダ機およびメンバ機の画面に、各プレイヤが操作すべき内容を指示する複数の指示標識(後述する音符ヘッダ107等)が表示される。そして、各プレイヤは、各自の携帯機40の画面に表示される指示標識に従って、自分のパートを演奏する操作を行う。各プレイヤの操作データは、据置機3に送信される。本実施形態では、ゲームの処理は1/60秒を単位として行われる。そのため、本実施形態での操作データの送信間隔は1/60秒であるものとする。据置機3では、当該操作データに基づいて、据置機3から音声出力を行うための処理が行われる。この結果、例えば、据置機3に接続されているテレビ2のスピーカから各プレイヤの操作を反映した音声(合奏音声)が出力される。
【0099】
次に、本合奏ゲームの流れについて、画面の遷移例を示しながらより具体的に説明する。図12は、本実施形態で想定するゲームの画面遷移の一例を示す図である。
【0100】
まず、上記接続処理(図11のステップS1)におけるゲームの流れを説明する。図12において、まず、据置機3では、所定のサーバからダウンロードした据置機用合奏ソフトが起動される。すると、接続案内画面(G1)がテレビ2に表示される。この画面では、リーダ機およびメンバ機に対しての操作案内が表示される。例えば、「ゲームカードを持っている人は、メニューから”集まって合奏”を選んでください。ゲームカードを持っていない人は、”ダウンロードプレイ”を選んでください」等のメッセージが表示される。
【0101】
上記のような操作案内画面が表示された後に、リーダ機においてメモリカード47に記憶されている単体合奏ソフトが起動される。すると、第2のLCD42にゲームモード選択画面が表示される(G2)。この画面では、プレイヤは、多人数プレイの他、一人用プレイも選択可能である。ここでは、リーダ機のプレイヤは、ゲームモード選択画面から多人数プレイのゲームモードを選択する。すると、リーダ機と据置機との接続を確立するための処理(接続処理)が実行される。接続処理が終わるまでは、接続中であることを示す接続処理画面が表示される(G3)。
【0102】
一方、メンバ機においては、上記のような操作案内画面が表示された後、プレイヤがメンバ機の電源を投入する。すると、起動メニューがメンバ機の画面に表示される(G4)。当該起動メニューからは、他のゲーム機などからプログラムをダウンロードして実行する「ダウンロードプレイ」や、携帯機40自体の設定(時刻設定など)を行うための「設定」等が選択できる。プレイヤは、この画面から「ダウンロードプレイ」を選択する。すると、メンバ機と据置機3との接続を確立するための処理(接続処理)が実行される。接続処理が終わるまでは、接続中であることを示す接続処理画面が表示される(G5)。
【0103】
次に、上記準備処理(図11のステップS2)におけるゲームの流れを説明する。準備処理は、大きく分けて、配信プログラムをダウンロードする処理と、エントリ処理と、演奏曲の選択処理と、パート選択処理の4つに分れる。まず、上記の接続処理が終わると、メンバ機で据置機3から配信プログラムをダウンロードする処理が行われる。ダウンロードが完了するまでは、ダウンロード中であることを示す画面(G6)が表示される。また、図示はしていないが、リーダ機や据置機3でも、メンバ機がダウンロード処理中であることを示す画面を表示しても良い。
【0104】
配信プログラムのダウンロードが完了すれば、メンバ機において当該配信プログラムが起動され、起動画面(G7)が表示される。その後、プレイヤの操作に応じてエントリ画面(G8)が表示される。この画面は、プレイヤが合奏ゲームへの参加を登録(エントリ)するための画面である。具体的には、プレイヤは、自分の名前(またはニックネーム)を入力して据置機3へ送信する操作を行うことで、参加の登録を行う。また、これとほぼ同時期に、リーダ機でも同様のエントリ画面(G9)が表示される。また、据置機3では、エントリ人数を表示する画面(G10)が表示される。
【0105】
エントリが終了すると、次に、合奏する曲を選択するための曲選択処理が行われる。曲の選択はリーダ機上で行われる。具体的には、リーダ機において、まず、曲一覧画面が表示される(G11)。このとき、据置機3およびメンバ機では、待機中の画面(G12,G13)が表示される。
【0106】
リーダ機のプレイヤは、画面に表示されている曲一覧から所望する曲を選択する。すると、曲データ配信中画面(G14)が表示され、選択された曲に対応する曲データがメモリカード47から読み出されて据置機3に送信される。据置機3では、リーダ機から送信されてきた曲データを受信し、自機のメモリに記憶する。そして、メンバ機に対して、当該曲データの配信を行う。メンバ機では、据置機3からの曲データの配信が始まると、曲データ受信画面(G15)が表示され、曲データの受信処理を行う。
【0107】
メンバ機での曲データの受信処理が終わると、次に、リーダ機およびメンバ機において、パート選択画面(G16、G17)が表示される。この画面では、各プレイヤが各自の受け持つパートを選択する操作を行う。図13に、パート選択画面の詳細を示す。図13では、第1のLCD41に、選択された曲についての情報101が円盤を模した形状で表示される。図13の例では、曲名、アーティスト名が表示される。また、第2のLCD42には、その曲を構成するパート(楽器名)が一覧表示されている。各パートには、その演奏難易度を示す★の数と、”PUSH”ボタン102が表示されている。各プレイヤは、タッチパネル上の自分の担当したいパートの”PUSH”ボタン102を押すことで、パートの選択を行うことができる。なお、パートの選択については、本実施形態では早い者順で決定されていく。例えば、いずれかのプレイヤが”ピアノ1”というパートを選択すれば、その情報が据置機3経由ですぐに他の携帯機40に送信される。そして、各携帯機40では、選択されたパートについては選択済みであることを示す表示がされ、そのパートは選択できないようになる。そして、各プレイヤのパートの担当が決まれば、準備処理が完了する。
【0108】
次に、上記合奏処理(図11のステップS3)のゲームの流れを説明する。図12に戻り、準備処理が完了し、リーダ機でスタートスイッチ44bが押されると、据置機3で曲の演奏開始を知らせるためのカウントダウン画面(G18)が表示される。その後、据置機3では合奏中の画面(G19)が表示される。また、リーダ機、メンバ機でもそれぞれ合奏画面(G20、G21)が表示される。
【0109】
図14は、各携帯機40に表示される上記合奏画面の詳細を示した図である。図14においては、第1のLCD41に楽譜画面が表示されている。第2のLCD42には、曲名や得点等の各種情報が表示されている。
【0110】
第1のLCD41に表示されている楽譜画面では、1小節分のトラック105が縦に4つ表示されている。このトラック105は、曲の進行に合わせて画面の下から上に向かってスクロールしてくる。また、各トラックの左側には、ライト106が表示されている。当該ライト106が点滅しているトラック105が、現在の演奏(操作)対象であることを示す。
【0111】
各トラック105は、縦線で4つのエリアに区切られている。そして、1つのエリアが1拍(4分音符分の長さ)を示している。また、トラック105上には、プレイヤが操作するべきボタン名を示す音符ヘッダ107と、そのボタンを押し続けることを示す音符バー108が表示されている。当該音符ヘッダ107に示されるボタン名は、十字スイッチ44aと、Aボタン44d、Bボタン44e、Xボタン44f、Yボタン44g、Lボタン44hおよびRボタン44iのいずれかが表示される。また、十字スイッチ44aに関しては、その上下左右方向のいずれかが矢印で表示される。例えば、音符ヘッダ107に”A”と表示されている場合は、Aボタン44d(図9参照)を押すことを示している。また、”←”と表示されている場合は、十字スイッチ44aの左キーを押すことを示している。
【0112】
ここで、本合奏ゲームにおける音の長さの最小単位は16分音符分の長さであるとする。すなわち、1つの音符ヘッダ107は16分音符に相当する。そして、その後に続く音符バー108の長さ(つまり、音符ヘッダ107と音符バー108との組み合わせ)により、8分音符や4分音符等が示されることになる。
【0113】
更に、トラック105の上下に、操作位置(すなわち、曲の演奏位置)を示すカーソル110が表示されている。当該カーソル110は、曲の進行に合わせて、トラック105の左から右へと移動する(右端まで来れば、次のトラックの左端に移動する)。すなわち、プレイヤが操作するのは、ライト106が点滅しているトラック105の、カーソル110が表示されているところとなる。図14の例では、”B”と表示された音符ヘッダ107の位置にカーソル110がある。そのため、図14で示されているタイミングでは、プレイヤはBボタン44eを押すべきことが示されている(その後、音符バー108が途切れるまで、Bボタン44eを押し続けることが示されている)。
【0114】
各ボタンには、それぞれ所定の音の高さが割り当てられている。例えば、Aボタン44dが”ソ”、Bボタン44eが”ラ”の音が割り当てられている。なお、本実施形態では、当該キーの割り当て(キーマップ)については、合奏プログラムの中で予め定義されているものとする。また、このキーマップは、据置機3および携帯機40とで同じ内容が用いられる。
【0115】
また、本実施形態において演奏中に操作すべき内容として、上述した十字スイッチ44a等の操作に加え、タッチパネル操作が採用されている。タッチパネル操作は、例えばギターのパートを演奏する際に用いられる。ギターパートの演奏時に、タッチパネル上をスライドさせる操作を行わせることによって、本物のギターを演奏しているかのような感覚が得られる。また、タッチパネル操作は、ボタン操作との組み合わせであってもよい。
【0116】
このように、各プレイヤは、各自の携帯機40に表示される音符ヘッダ107、音符バー108等の内容に従って、タイミング良くボタン操作を行う。この操作内容を示す操作データが据置機3に逐次送信される。そして、据置機3でこれらの操作データに基づいた音声を出力する処理が実行される。これにより、各プレイヤのボタン操作を反映した音声(合奏状態となった音声)を据置機3から出力できる。
【0117】
図12に戻り、合奏処理が終了すれば、最後に、テレビ2に結果画面(G22)が表示される。図15に、結果画面の一例を示す。当該画面では、各プレイヤの得点が表示される。
【0118】
このように、本実施形態では、各携帯機40の操作データを据置機3に送信し、据置機3において音声出力処理を行うようにしている。図16は、本発明にかかる処理の原理を模式的に示したものである。従来の処理を示した図32と比べると、図16では、操作から音声出力にかかるまでの処理が1つ少なくなっている。つまり、図32では時間T1〜T4の処理となっていたところが、図16では、時間T1〜T3の処理で済んでいる。すなわち、従来行っていた、親機から子機への全プレイヤの操作データの送信にかかる処理が本実施形態の合奏ゲームでは不要となる。そのため、従来に比して、操作から音声出力までのずれを軽減することが可能となる。特に、据置機3と各携帯機40との間の通信処理について、各携帯機40から据置機3への操作データの送信だけで済むため、時間T1〜T3までの処理を1フレーム分の処理時間内で行うことが十分に可能となる。これにより、音声出力のずれをプレイヤに感じさせることなく、良好なプレイ感覚を提供することができる。
【0119】
また、音声出力処理を据置機3側で行うため、一般に処理速度の比較的遅いCPUが搭載されている携帯機40で音声処理を行う場合に比べ、より高音質の音声データ(重いデータ)を扱うことが可能となる。これにより、高音質での音声出力が可能となり、合奏ゲームの興趣を高めることが可能となる。
【0120】
次に、本実施形態で用いられる各種データについて説明する。まず、据置型ゲーム装置3(Wii)にかかるデータについて説明する。図17は、図3に示した外部メインメモリ12(ただし、内部メインメモリ11eでもよいし、両方を使用するようにしてもよい)のメモリマップを示す図である。図17において、外部メインメモリ12は、プログラム記憶領域120、データ記憶領域123、作業領域128を含む。プログラム記憶領域120およびデータ記憶領域123のデータは、所定のサーバからのダウンロードによりフラッシュメモリ17に記憶されたものが、合奏ゲーム処理に際して外部メインメモリ12にコピーされたものである。
【0121】
プログラム記憶領域120は、CPU10によって実行されるゲームプログラムを記憶し、このゲームプログラムは、ゲームメインプログラム121と、配信プログラム122などで構成される。
【0122】
ゲームメインプログラム121は、後述する図27(据置機処理の部分)のフローチャートの処理に対応するプログラムである。配信プログラム122は、メンバ機に配信するプログラム(メンバ機上で実行されるプログラム)である。
【0123】
データ記憶領域123には、高音質版音声データ124、画像データ125、通信用データ126、配信データ127などのデータが記憶されるとともに、ゲーム処理中に用いられる各種フラグも記憶される。
【0124】
高音質版音声データ124は、合奏ゲームで用いられる全ての楽器の音の波形データである。なお、本実施形態では、全ての高さの音を記憶するのではなく、いくつかの高さの音を基準音として記憶している。例えば”ド”や”ソ”の音の波形データのみを記憶している。そして、音声出力処理に際して、当該波形データを適宜加工して、別の高さの音を生成し、出力する。また、当該高音質版音声データ124は、後述するような、携帯機40に記憶される低音質版音声データ148に比べて音質の良いデータである。例えば、サンプリングレートが、低音質版音声データ148よりも高い波形データである。
【0125】
画像データ125は、合奏ゲームにおいてテレビ2に表示する各種画像のデータである。また、通信用データ126は、携帯機40と通信を行うために必要な各種データである。
【0126】
配信データ127は、上記配信プログラムにおいて用いられるデータである。配信データ127には、メンバ機上で表示される画像データ等が含まれている。そのため、配信データ127は、上記配信プログラムとセットでメンバ機に配信される。
【0127】
作業領域128には、合奏曲データ129、得点データ130等が記憶される。合奏曲データ129は、リーダ機から送信される曲データである。その内容は、後述のリーダ機の曲データ146のうち、合奏対象となる1曲分の曲データである。得点データ130は、各携帯機40から送信されてくる得点データが記憶されたものである。当該データは、図15に示したような得点画面を表示するために用いられる。
【0128】
次に、携帯機40にかかるデータについて説明する。まず、携帯機40のうち、リーダ機に記憶されるデータについて説明する。図18は、リーダ機における、図10に示したRAM54のメモリマップを示す図である。図18において、RAM54は、プログラム記憶領域140、データ記憶領域144、作業領域149を含む。
【0129】
プログラム記憶領域140には、CPUコア51によって実行されるゲームメインプログラム141等が記憶される。ゲームメインプログラム141には、合奏処理プログラム142および通信プログラム143等が含まれる。合奏処理プログラム142は、図14に示したような画面を表示して、本実施形態にかかる合奏ゲームを実行するためのプログラムである。通信プログラム143は、合奏ゲーム中において据置機3との通信を行うためのプログラムである。その他、図示はしないが、ゲームメインプログラム141には、一人用の合奏処理プログラム等、ゲーム処理等に必要な各種プログラムも記憶される。また、上述したような、音符ヘッダ107で示されるボタンと音の高さとの対応付け(キーマップ)も合奏処理プログラム142の中で定義されている。
【0130】
データ記憶領域144には、通信用データ145、曲データ146、画像データ147、低音質版音声データ148などのデータが記憶される。通信用データ145は、据置機3と接続、通信する際に用いられるデータである。
【0131】
曲データ146は、合奏する曲についてのデータである。図19は、曲データ146のデータ構造の一例を示した図である。曲データ146は、曲ID161と書誌データ162と楽譜データ163の集合から構成される。曲ID161は、各曲を一意に識別するためのIDである。書誌データ162は、各曲に関する書誌的事項のデータである。例えば、曲名、アーティスト名等のデータが含まれる。これらの書誌情報が曲選択画面(図13参照)等で表示される。
【0132】
楽譜データ163は、プレイヤが演奏操作を行うときに用いられるデータである。図20は、楽譜データ163のデータ構造の一例を示す図である。図20において、楽譜データ163は、パート164、音階データ165、テンポリスト166、パラメータリスト167とから構成される。パート164は、そのパートを演奏する楽器を示すデータである。音階データ165は、そのパートの音符に相当する内容であると同時に、プレイヤが操作する内容を示すデータでもある。すなわち、図14で示した音符ヘッダ107、および、音符バー108に対応するデータを時系列に記憶したデータである。
【0133】
図21に、音階データ165の具体例を示す。図21(a)に示すデータ例は、図21(b)のようなトラック105の表示内容に対応している。音階データ165は、音階1651と種別1652とから構成される。また、音階データ165は、本合奏ゲームにおける音の長さの最小単位である16分音符単位で区切られてデータが格納されている(1レコード=16分音符分のデータ)。音階1651は、ド、レ、ミ・・・等の音の高さおよび休符を示すデータである。種別1652は、音符ヘッダ107であるか音符バー108であるかを示すデータである。
【0134】
図20に戻り、テンポリスト166は、その曲のテンポを示すためのデータである。図22は、テンポリスト166のテータ構造の一例である。テンポリスト166は、時刻1661とテンポ1662で構成されている。時刻1661は、その曲内での位置を示しており、曲の始まりを0とする。また、4分音符の長さ=12で表している。テンポ1662は、上記時刻1661で示される位置での曲のテンポを示す。例えば、テンポは30〜300の範囲内の値で示される。
【0135】
図20に戻り、パラメータリスト167は、そのパートの演奏に関するパラメータであり、図23に示すように、時刻1671およびプレイパラメタ1672から構成されている。時刻1671は、上記テンポリストの時刻1661と同様である。プレイパラメタ1672は、例えば、シャープ(♯)やフラット(♭)の個数等を示すためのスケールモードや、音量を示すためのデータが格納される。当該プレイパラメタ1672を用いることで、演奏中に動的に音量を変化させたり、音階を変化させることができる。
【0136】
図18に戻り、画像データ147は、リーダ機のゲーム画面に表示する各種画像のデータである。低音質版音声データ148は、リーダ機のスピーカ60から出力するための音声データである。携帯機において処理されるデータであるため、据置機3に記憶される高音質版音声データ124に比べて、音質が低いデータとなっている。
【0137】
作業領域149には、リーダ機での操作に基づき算出される得点を示す得点データ150が記憶される。
【0138】
次に、メンバ機に記憶されるデータについて説明する。図24は、メンバ機におけるRAM54のメモリマップを示す図である。図24において、RAM54は、プログラム記憶領域180と、データ記憶領域184と、作業領域189とを含む。
【0139】
プログラム記憶領域180には、据置機3から送信された配信プログラム181等が記憶される。配信プログラム181には、合奏処理プログラム182や通信プログラム183等が含まれている。合奏処理プログラム182は、図14に示したような画面を表示して、本実施形態にかかる合奏ゲームをメンバ機上で実行するためのプログラムである。そのため、主要な機能は、上記リーダ機における合奏処理プログラム142と同じである。通信プログラム183は、合奏ゲーム中において据置機3との通信を行うためのプログラムである。この他、図示はしないが、ゲーム処理に必要な各種プログラムも記憶される。
【0140】
データ記憶領域184には、据置機3から送信された配信データ185が記憶される。配信データ185には、通信用データ186、画像データ187、低音質版音声データ188などのデータが記憶される。これらのデータは、上記リーダ機の通信用データ145、画像データ147、低音質版音声データ148と同様であるため、説明は省略する。
【0141】
作業領域189には、合奏曲データ190、得点データ191等が記憶される。合奏曲データ190は、据置機3の合奏曲データ129がメンバ機に送信されたものである。得点データ191は、メンバ機での操作に基づき算出される得点を示す。
【0142】
次に、本実施形態のゲーム処理において、上記ゲーム機間で送受信される通信パケットについて説明する。図25は、当該通信パケットの構造の一例を示す図である。図25において、通信パケットは、ヘッダ201、データセクション202とから構成される。ヘッダ201には、通信に使用するポートや、データセクション202のデータ長等が含まれる(すなわち、データセクション202については可変長となる)。データセクション202には、本合奏ゲームで用いられる各種データが含まれる。
【0143】
図26は、上述した合奏ゲーム処理中のいくつかの局面におけるデータセクション202の一例を示す図である。図26(a)は、上記エントリ処理において携帯機40から据置機3へ送信されるデータセクション202の一例である。図26(a)に示すデータセクション202では、通信ID203と識別コマンド204、および、名前205が設定される。通信ID203は、接続処理において据置機3から割り振られる通信IDが設定される。通信ID203とは、据置機3と携帯機40の間でやりとりされる様々な通信の内、本合奏ゲームにかかる通信であることを示すためのIDである。識別コマンド204は、送信するデータや、データを含まない単なる命令の種類を示すデータであるが、ここでは送信するデータ内容がプレイヤの名前であることを示す旨のデータ(ここでは”エントリ”と示している)が設定される。名前205には、各携帯機40において各プレイヤが入力した”名前”が設定される。
【0144】
図26(b)は、上記パート選択処理時において、携帯機40から据置機3へ送信されるデータセクション202の一例である。図26(b)では、図26(a)同様の通信ID203と識別コマンド204、および、選択パート206が設定されている。図26(b)における識別コマンド204には、選択パートを送信することを示す旨のデータ(ここでは”パート選択”と示している)が設定される。選択パート206には、プレイヤが選択したパートを示す情報が設定される。
【0145】
図26(c)は、合奏処理において、1/60秒(1フレーム)毎に携帯機40から据置機3へ送信されるデータセクション202の一例である。図26(c)では、図26(a)同様の通信ID203と識別コマンド204に加え、キー情報207、タッチ情報208、現在の演奏時間209、現在の得点210が設定される。図26(c)における識別コマンド204には、合奏時の操作データを送信することを示す旨のデータ(ここでは”合奏”と示している)が設定される。キー情報207は、携帯機40でボタン操作が行われたか否か、および、操作されたボタンの情報が設定される。タッチ情報208は、タッチパネル45がタッチされたか否か、および、そのタッチ座標の情報が設定される。現在の演奏時間209は、当該パケットが送信された時点での曲の演奏時間が設定される。これはすなわち、当該パケットが送信された時の曲の位置を示し、プレイヤがボタンを押したタイミングを判別するため等に用いることができる。現在の得点210は、当該パケットが送信された時点でのプレイヤの得点が設定される。
【0146】
以下、図27〜図31を用いて、本実施形態にかかる合奏ゲーム処理の詳細動作を説明する。図27は、本実施形態における合奏ゲーム処理の流れの詳細を示す図である。以下の説明において、メンバ機側の処理は、複数のメンバ機それぞれにおいて実行される。
【0147】
まず、上記図11で示したステップS1にかかる接続処理の詳細を説明する。まず、据置機3においてゲームが起動される(ステップS21)。具体的には、据置機3の電源が投入されると、据置機3のCPU10は、ROM/RTC13に記憶されている起動プログラムを実行し、これによって外部メインメモリ12等の各ユニットが初期化される。そして、フラッシュメモリ17に記憶された合奏ゲームプログラムが外部メインメモリ12に読み込まれ、CPU10によって当該合奏ゲームプログラムの実行が開始される。
【0148】
また、リーダ機においても、合奏ゲームが起動される(ステップS11)。具体的には、リーダ機の電源が投入されると、リーダ機のCPUコア51は、図示しないブートROMに記憶されている起動プログラムを実行し、RAM54等の各ユニットを初期化する。そして、メモリカード47に格納された単体合奏ゲームプログラムがRAM54に読み込まれ、当該ゲームプログラムの実行が開始される。その結果、第1GPU56を介して第1LCD41、第2GPU57を介して第2LCD42にゲーム画像が表示されることによって、ゲーム処理が開始される。その後、プレイヤは、多人数プレイ用のゲームモードを選択する操作を行い、据置機3との接続を開始させる操作を行う。
【0149】
一方、メンバ機では、メモリカード47が挿入されていない。そのため、据置機3からゲームプログラム(配信プログラム122)をダウンロードするための、ダウンロードモードを起動する(ステップS31)。これは、例えば、メモリカード47を挿していない状態で携帯機40の電源を入れることで起動メニューが表示され、当該メニューからダウンロードモードを選ぶことで起動することができる。なお、メンバ機については、メモリカード47が挿入されていても、メモリカード47のゲームを起動させずに上記のような起動メニューを表示可能な構成にしても良い。例えば、スタートスイッチ44bを押しながら携帯機40の電源を入れれば、起動メニューが表示されるよう構成しても良い。
【0150】
次に、接続確立処理が実行される(ステップS12、S22、S32)。図28は、据置機3と携帯機40(リーダ機、メンバ機双方とも同じ処理が実行される)との間で実行される接続確立処理の詳細を示すフローチャートである。なお、図28において、据置機3側のフロー(図28の左側)が図27のステップS22の処理に相当する。また、携帯機側のフロー(図28の右側)が、図27のステップS12、およびS32の処理に相当する。
【0151】
図28において、まず、据置機3で通信用のハードウェアの初期化が行われる(ステップS51)。同様に、携帯機40でも、通信用のハードウェアの初期化処理が実行される(ステップS61)。その後、携帯機40では、後述するステップS62の処理に進み、ビーコンをスキャンする処理が開始される。
【0152】
次に、据置機3において、CPU10は、ビーコンの発信の準備を行う。当該ビーコンは、携帯機40が据置機3の存在を認識し、接続を試みることができるようにするための信号である。当該ビーコンには、据置機3のネットワークアドレスやゲームID等、接続に必要な情報(以下、接続情報と呼ぶ)が含まれる。そのため、まず、CPU10は、ビーコンに含める接続情報の生成処理を実行する(ステップS52)。
【0153】
次に、据置機3で、通信に使用するチャンネルの選定が行われる(ステップS53)。具体的には、CPU10は各チャンネルの混雑度を計測し、混雑度が一番低い(一番空いている)チャンネルを本実施形態の合奏ゲームの通信での使用チャンネルとして選択する。
【0154】
次に、CPU10は、ステップS53で選択した使用チャンネルに上記接続情報を含むビーコンを発信する(ステップS54)。同時に、CPU10は、携帯機40からの接続要求信号を待ち受ける。
【0155】
据置機3からビーコンが発信されている間、携帯機40において、全チャンネルでビーコンのスキャンが行われる(ステップS62)。そして、ビーコンが検出されると、当該ビーコンが受信される。そして、CPUコア51は、当該ビーコンに含まれる接続情報を取得する。その結果、ビーコンの発信元である据置機3のネットワークアドレスやゲームIDを取得できる。
【0156】
次に、携帯機40において、CPUコア51は、上記接続情報に基づいて、接続先一覧を表示し、プレイヤに接続先を選択させる(ステップS63)。本実施形態ではビーコンの発信元となる据置機3は1台だけであるため、この一覧には据置機3しか表示されないが、仮に複数の据置機3が検出された場合は、それらの据置機3が一覧表示される。
【0157】
次に、CPUコア51は、選択された接続先の接続情報に基づいて、接続要求信号を据置機3へ送信する(ステップS64)。当該接続要求信号には、各携帯機のネットワークアドレスや、リーダ機であるかメンバ機であるかを識別するための情報が含まれる。当該信号の送信に応じて、据置機3では、接続要求を受け入れる処理が行われる(ステップS55)。次に、据置機3において、CPU10は、接続要求を行ってきた携帯機40に対してそれぞれ通信IDを割り振る。そして、CPU10は、当該通信IDを各携帯機に対して通知する(ステップS56)。
【0158】
次に、携帯機40において、CPUコア51は、通知された通信IDを受信し、RAM54に記憶する(ステップS65)。以降の処理では、この通信IDを用いて通信を行うことになる。以上で、接続確立処理は終了する。
【0159】
図27に戻り、接続処理が終われば、準備処理(ステップS2)が行われる。上述のように、当該準備処理では、大きく分けて、(1)配信プログラムをダウンロードする処理と、(2)エントリ処理と、(3)演奏曲の選択処理と、(4)パート選択処理の4つの処理が実行される。まず、(1)配信プログラムをダウンロードする処理が行われる。すなわち、据置機3において、配信プログラム送信処理が実行される。具体的には、CPU10は、配信プログラム122および配信用データ127を外部メインメモリ12から読出し、所定の個数の通信用パケットに分割する。そして、CPU10は、接続が確立したメンバ機全てに対して、パケット化した配信プログラム122および配信データ127を送信する(ステップS23)。
【0160】
携帯機40では、当該パケットを受信し、組み立てることで配信プログラムおよび配信データのダウンロードが行われる(ステップS33)。ダウンロードが完了すれば、そのことを知らせるための受信完了信号が携帯機40から据置機3に送信される。据置機3は、当該受信完了信号を受信した後、更にリーダ機に当該受信完了信号を送信する。次に、携帯機40では、受信した配信プログラムおよび配信データがRAM54に記憶され、当該配信プログラムが起動される(ステップS34)。
【0161】
次に、(2)エントリ処理が実行される。この処理は、合奏に参加するメンバーを決定するための処理である。具体的には、据置機3およびリーダ機においては、上記受信完了信号を受信した後に、エントリ処理が実行される(ステップS13、S24)。メンバ機では、ステップS34の次に、エントリ処理が実行される(ステップS35)。この処理においては、CPUコア51は、プレイヤに名前の入力を促す画面を表示する。リーダ機およびメンバ機のプレイヤは、自分の名前あるいはニックネームを各自の携帯機40に入力する。そして、プレイヤは、当該名前あるいはニックネームを据置機3へ送信するための操作を行う。この操作により、各携帯機40で図26(a)に示したような通信パケットが生成されて、据置機3へと送信される。
【0162】
据置機3では、エントリー人数の状況を示す画面が表示される。そして、リーダ機およびメンバ機から名前やニックネーム(図26(a)に示したようなパケット)が送信されてくるのを待ち受ける。名前等が送信されてくれば、エントリー人数の表示が適宜更新される。全員分のエントリーが終われば、任意のプレイヤがコントローラ7を用いて、テレビ2に表示されている決定ボタン(エントリが完了したことをプレイヤが据置機3に通知するために表示されている)を押す。これにより、据置機3から各携帯機40にエントリ完了信号が送信され、エントリ処理が完了する。
【0163】
次に、(3)演奏曲の選択処理が実行される。この処理では、リーダ機において演奏する曲を選択し、その曲のデータを据置機3および他の携帯機40に配布するための処理が行われる。まず、リーダ機において、上記エントリ完了信号を受信した後に、曲の選択処理が実行される(ステップS14)。具体的には、リーダ機のCPUコア51は曲データ146を取得する。次に、CPUコア51は、書誌データ162に基づいて曲一覧を作成し、第1のLCD41に表示する。
【0164】
次に、リーダ機のプレイヤは、表示された曲一覧から所望の曲を選択する操作を行う。当該操作に応じて、CPUコア51は、選択された曲の書誌データ162および楽譜データ163を取得し、据置機3に送信する(ステップS15)。そして、曲データ配信中である旨の表示を行い、曲配信完了信号が送信されてくるのを待ち受ける。
【0165】
据置機3では、上記書誌データ162および楽譜データ163がリーダ機から送信されてくれば、CPU10が当該データを受信し、合奏曲データ129として作業領域128に記憶する(ステップS25)。そして、CPU10は、当該合奏曲データ129をメンバ機に対して配信する処理を行う(ステップS26)。
【0166】
据置機3から合奏曲データ129の配信が開始されれば、メンバ機のCPUコア51は、当該合奏曲データ129を受信し、作業領域189に合奏曲データ190として記憶する(ステップS36)。合奏曲データの受信が完了すれば、CPUコア51は、受信完了したことを示す受信完了信号を据置機3へ送信する。
【0167】
据置機3では、全てのメンバ機から受信完了信号を受信すれば、曲データの配信が完了したことを示す曲配信完了信号をリーダ機および各メンバ機に送信する。以上で、演奏曲の選択処理は終了する。
【0168】
次に、(4)パート選択処理が実行される。この処理では、図13で示したようなパート選択画面が表示される。そして、各プレイヤが各自の携帯機40でパートの選択操作を行う。各携帯機で選択操作が行われると、図26(b)に示したようなパケットが生成され、据置機3に送信される。据置機3では当該パケットが受信される。そして、CPU10は、当該受信したパケットに基づいて、各携帯機40と、当該各携帯機40が担当するパートとを対応づけた情報を生成して作業領域128に記憶する。そして、CPU10は、選択されたパートを示すための選択済み信号を生成して、各携帯機40に送信する。各携帯機40では、当該選択済み信号を随時受信し、パート選択画面に反映させる。据置機3は、全てのプレイヤのパートが決定すれば、パート選択完了信号を各携帯機40に送信する。
【0169】
図29は、リーダ機およびメンバ機で実行されるパート選択処理の詳細を示すフローチャートである。図29において、まず、リーダ機およびメンバ機のCPUコア51はそれぞれ、楽譜データ163(メンバ機は、合奏曲データ190に含まれる楽譜データ)に基づいて、図13で示したようなパート選択画面を生成し、表示する(ステップS71)。次に、CPUコア51は、据置機3からの選択済み信号の送信の有無を判定を行う。その結果、当該信号が送信されてきた場合は、これを受信する処理を行う(ステップS72)。選択済み信号とは、他のプレイヤが選択したパートを示すための信号である。
【0170】
次に、CPUコア51は、上記選択済み信号を適宜画面に反映して、画面を更新する(ステップS73)。これにより、他のプレイヤのパート選択状況が自機の画面に随時反映されることになる。
【0171】
次に、プレイヤからの選択操作があったか否かの判定が行われる(ステップS74)。選択操作がなければ、ステップS72に戻り、処理が繰り返される、選択操作があれば(ステップS74でYES)、CPUコア51は、プレイヤの操作内容を示す操作データを取得して、選択されたパートがどのパートであるかを判定する(ステップS75)。
【0172】
次に、CPUコア51は、当該操作データに基づいて図26(b)に示したような通信パケットを生成し、据置機3に送信する(ステップS76)。上述のように、据置機3では、当該通信パケットを受信する。そして、据置機3では、これに基づいて上記選択済み信号を生成し、各携帯機に送信することになる。
【0173】
次に、CPUコア51は、全員のパート選択が終わるまで待機することを示す待機画面を表示する(ステップS77)。次に、CPUコア51は、上記パート選択完了信号が据置機3から送信されてきたか否かを判定する(ステップS78)。パート選択完了信号が送信されていないときは(ステップS78でNO)、パート選択完了信号が送信されてくるまで待ち受ける。パート選択完了信号が送信されてくれば(ステップS78でYES)、CPUコア51は、当該信号を受信し、パート選択処理を終了する。以上で、準備処理の説明を終了する。
【0174】
図27に戻り、準備処理が終了すれば、次に、各ゲーム機間で同期を取りながら、合奏処理が実行される(S17,S28、S38)。まず、携帯機40側での合奏処理(S17、S38)について説明する。図30は、各携帯機40で実行される携帯側合奏処理の詳細を示すフローチャートである。図30において、まず最初に、CPUコア51は、楽譜データ163(メンバ機では合奏曲データ190)に基づいて、図14に示したような合奏画面を生成する(ステップS81)。
【0175】
次に、CPUコア51は、据置機3から制御情報を受信する(ステップS82)。当該制御情報は、据置機3と各携帯機40の間でゲーム進行の同期をとるための情報が含まれている。また、各携帯機40から据置機3への操作データの送信タイミングを示す情報が含まれている。これは、本合奏ゲームにおいては複数の携帯機40から1台の据置機3へ操作データを送信する必要があるところ、文字通り”同時”に送信が行われても、据置機3では、同時に受信することができなかったり、取りこぼしが発生する可能性がある。そのため、携帯機40での送信タイミングに僅かな時差を設けるものである。
【0176】
次に、CPUコア51は、ゲーム画面の表示を行う(ステップS83)。このとき、上記制御情報に含まれている、ゲーム進行の同期をとるための情報に基づいて、適宜画面の表示内容(カーソル110の表示位置等)を調整して表示を行う。
【0177】
次に、CPUコア51は、操作データを取得する(ステップS84)。すなわち、十字スイッチ44a等のボタンが押されたか否かを判定し、押されていたときは、押されたボタンがどのボタンであるかを検出する。また、タッチパネル45がタッチされたか否かの判定も行い、タッチされていたときは、そのタッチ座標を取得する。
【0178】
次に、CPUコア51は、ステップS84で取得した操作データに基づいて、得点計算処理を行う(ステップS85)。すなわち、操作データで示される操作内容と音階データ165とを照合し、正しいボタンが操作されたか否かを判定する。また、ボタンが操作されたタイミングと正解となるべきタイミングとのずれ等も算出する。例えば、ボタンが押されたタイミングにおける音階データ165の種別1652が「ヘッダ」であるか「バー」であるかを判定し、種別1652が「バー」のときは、「ヘッダ」とのずれがどの程度あるか、等を算出する。そして、上記の照合結果に基づいて得点を算出する。音階データ165で示されている操作内容に近いほど点数は高くなる。
【0179】
ここで、上記の得点算出処理に併せて、各携帯機40において、各自のパートにかかる音声のみを低音質版音声データ148、188に基づいて出力するようにしてもよい。
【0180】
なお、この得点計算処理を据置機3側で行うことも考えられるが、ボタンを押すタイミングのずれも得点に反映されるという音楽ゲームの性質がある。仮に操作データを送信して据置機側で得点計算を行うとした場合、その送信処理等でオーバーヘッドが発生し、ボタンの押されたタイミングが据置機3側で正確に把握できず、正確な得点算出ができない恐れがある。そのため、上記のように、携帯機40側で得点計算処理を行っている。
【0181】
次に、CPUコア51は、ステップS84で取得した操作データに基づいて、上記図26(c)に示したような通信パケットを生成する(ステップS86)。すなわち、いずれかのボタンが押されたか否か(いずれのボタンも押されていない場合は”操作無し”の旨を送信する)の情報と、押されたボタンを示す情報がキー情報207に設定される。同様に、タッチパネル45がタッチされたか否かの情報と、そのタッチ座標がタッチ情報208に設定される。また、現在の演奏時間209や現在の得点210も適宜設定される。
【0182】
次に、CPUコア51は、上記ステップS82で受信した制御情報に示される送信タイミングに従って、ステップS86で生成した通信パケットを据置機3に送信する(ステップS87)。
【0183】
次に、CPUコア51は、据置機3から送信される受信確認信号を受信する(ステップS88)。次に、CPUコア51は、現在合奏中の曲が終了したか否か判定する(ステップS89)。曲が終わっていなければ(ステップS89でNO)、ステップS82に戻って処理を繰り返す。曲が終了すれば(ステップS89でYES)、最終得点の計算を算出し、据置機3へ送信する(ステップS90)。以上で、携帯側合奏処理が終了する。
【0184】
次に、据置機3側での合奏処理について説明する。図31は、据置機3で実行される据置側合奏処理の詳細を示すフローチャートである。合奏が始まると、図31において、まず、据置機3のCPU10は、上述したような制御情報を各携帯機40に送信する(ステップS101)。
【0185】
次に、CPU10は、制御情報に基づき、いずれかの携帯機40からの通信パケット(図26(c)に示したパケット)を受信する(ステップS102)。
【0186】
次に、CPU10は、当該受信したパケットの内容(キー情報207およびタッチ情報208)に基づいて、送信元の携帯機40で操作が行われたか否かを判定する(ステップS103)。送信元の携帯機40で操作が行われていないときは(ステップS103でNO)、後述のステップS107の処理に進む。一方、何らかの操作が行われていたときは(ステップS103でYES)、CPU10は、その操作内容を検出する(ステップS104)。
【0187】
次に、送信元の携帯機40が担当しているパートの楽器の高音質版音声データ124を取得する(ステップS105)。続いて、CPU10は、ステップS104で検出した操作内容に応じた音の高さになるように、上述したようなキーマップ(ボタンと音の高さの関係を対応づけた定義)に基づいて上記取得した高音質版音声データ124を加工する(ステップS106)。例えば、取得した高音質版音声データ124の音の高さが”ド”であれば、操作内容に応じて”ミ”や”ソ”等に加工する。
【0188】
次に、合奏に参加している全ての携帯機40の操作データについて処理したか否かを判定する。まだ全ての携帯機40を処理していないときは(ステップS107でNO)、ステップS102の処理に戻り、まだ未処理の携帯機40についてステップS102〜S107の処理を繰り返す。
【0189】
一方、全ての携帯機40について処理が終われば(ステップS107でYES)、次に、CPU10は、合奏曲データ129に基づいて、上記パート選択処理で選択されなかったパートについての音声データを生成する(ステップS108)。つまり、いずれのプレイヤも担当していないパートについては、据置機3が自動演奏を行うことになる。
【0190】
次に、CPU10は、全パートの音声データを合成して、出力用の音声データを作成する(ステップS109)。つまり、合奏状態となっている音声データが作成される。
【0191】
次に、CPU10は、ステップS109で生成した音声データを、スピーカ2aから出力する(ステップS110)。
【0192】
次に、CPU10は、現在合奏中の曲が終了したか否か判定する(ステップS111)。曲が終わっていなければ(ステップS111でNO)、ステップS101に戻って処理を繰り返す。曲が終了すれば(ステップS111でYES)、各携帯機40から送信されてくる最終得点のデータを受信し、得点データ130に記憶する(ステップS112)。以上で、据置機3側での合奏処理が終了する。
【0193】
図27に戻り、合奏処理が終われば、最後に据置機3において、結果表示処理が実行される(ステップS29)。この処理では、図15に示したような画面を生成してテレビ2に表示する。すなわち、全プレイヤの得点をまとめてテレビ2に表示する。以上で、本実施形態にかかる合奏ゲーム処理は終了する。
【0194】
このように、本実施形態では、各携帯機40の操作データを据置機3に送信し、据置機3において、当該操作データに基づいて音声データを生成して出力している。これにより、各携帯機40でプレイヤが操作してから各プレイヤの操作が反映された音声(合奏状態の音声)が出力されるまでのタイムラグを軽減することができ、音ずれがなく違和感のない合奏をプレイヤに楽しませることができる。これにより、複数のプレイヤで合奏するということの一体感を高めることができ、合奏ゲームの興趣を高めることが可能となる。
【0195】
また、音声に関する処理を携帯機40より高性能なCPUを搭載している据置機3側で行い、音声出力も据置機3側で行うようにしている。このため、一般的にデータ量が大きくなる高音質のデータを用いた音声処理を、処理遅延を発生させることなく実行することが可能となり、より高音質の音声を出力することができる。また、音声データにエフェクト処理(リバーブ等)等を施して出力するような場合でも、携帯機40でエフェクト処理をかけるよりも高度なエフェクト処理を実行することが可能となり、より深みのある音や広がりのある音など、より豊かな音声表現が可能となる。これにより、合奏ゲームの興趣を更に高めることができる。
【0196】
また、上記実施形態では、据置機3に導入されるソフトには、楽器の音声のデータのみを記憶させるように構成している。そして、実際に合奏する曲についてのデータ(楽譜データ)はメモリカード47に記憶しておき、これをリーダ機から据置機3に送信して、据置機3から他の携帯機40に配信するように構成している。これにより、据置機3に導入するソフトの容量を抑えることが可能になる、更に、新たな曲データが記憶されたメモリカード47を追加することで、合奏できる曲を事後的に増やすことができ、拡張性の高い合奏ゲームシステムを提供することができる。これにより、飽きのこない合奏ゲームをプレイヤに提供することができる。
【0197】
なお、上記合奏曲の選択処理において、リーダ機から曲データを据置機3へ送信し、据置機3は、メンバ機に対してのみ曲データを送信していた。これに限らず、据置機3は、リーダ機から送信されてきた曲データをリーダ機に送信するようにしてもよい。つまり、据置機3での曲データの配信処理において、リーダ機とメンバ機を区別することなく、接続が確立している携帯機40の全てに一律に曲データを配信するようにしてもよい。これにより、据置機3で配信先にメンバ機を選別する処理が不要となり、据置機3での処理負荷を軽減することが可能となる。
【0198】
また、上述した実施形態では、上記パート選択処理において、パートの選択は早い者順で選択されるようにしており、全てのプレイヤが異なるパートを担当するようにしていた。これに限らず、同じパートを異なるプレイヤで重複して選択できるようにしてもよい。
【0199】
また、上述したような据置機3を用いた合奏処理に加え、従来のように、携帯機40同士で合奏処理が行えるようにしておき、いずれかのプレイモードを選択可能に構成しても良い。但し、携帯機40同士での合奏処理では低音質版音声データが用いられることになる。このように構成することで、プレイヤの合奏ゲームのプレイスタイルの選択の幅を広げることができる。
【0200】
また、上述した実施形態では、音符バーや音符ヘッダを各携帯機の画面に表示し、当該表示内容に従って各プレイヤに演奏操作を行わせるようにしていた。これに限らず、各携帯機の画面には音符ヘッダ等は表示せずに、ボタンと音の高さとの対応がわかるような操作ガイド(例えば、Aボタン=ド、Bボタン=レ・・・等の表示)だけを表示しておき、各プレイヤが自由に演奏操作をできるようにしてもよい。つまり、各自の携帯機40を各プレイヤの好きな楽器に見立てて、画面の演奏操作の指示無しで、好きなように音を出せるようにしてもよい。これにより、据置機3からの高音質な音声出力を用いた、即興の合奏プレイ(即興演奏)等をプレイヤに提供することが可能となる。
【産業上の利用可能性】
【0201】
本発明にかかるゲームシステムは、プレイヤの操作とこれに応じて出力される音声とのタイムラグが少なく、かつ、高音質な音声出力が可能なゲームシステムが提供でき、多人数で通信してプレイする音楽ゲームシステム等に有用である。
【図面の簡単な説明】
【0202】
【図1】本発明の一実施形態に係るゲームシステム全体を説明するための外観図
【図2】図1の据置型ゲーム装置3を説明するための外観図
【図3】図1の据置型ゲーム装置3の機能ブロック図
【図4】図1のコントローラ7の上面後方から見た斜視図
【図5】図3のコントローラ7を下面前方から見た斜視図
【図6】図3のコントローラ7の上ハウジングを外した状態を示す斜視図
【図7】図3のコントローラ7の下ハウジングを外した状態を示す斜視図
【図8】図3のコントローラ7の構成を示すブロック図
【図9】本発明の実施形態に係る携帯ゲーム装置40の外観図
【図10】本発明の実施形態に係る携帯ゲーム装置40のブロック図
【図11】本実施形態で想定する合奏ゲームの処理の流れの概要を示す図
【図12】本実施形態で想定するゲームの画面遷移の一例を示す図
【図13】本実施形態で想定する合奏ゲームの画面の一例
【図14】本実施形態で想定する合奏ゲームの画面の一例
【図15】本実施形態で想定する合奏ゲームの画面の一例
【図16】本発明にかかる処理の原理を模式的に示した図
【図17】図3に示した外部メインメモリ12のメモリマップを示す図
【図18】リーダ機のRAM54のメモリマップを示す図
【図19】曲データ146のデータ構造の一例を示した図
【図20】楽譜データ163のデータ構造の一例を示す図
【図21】音階データ165の具体例を示す図
【図22】テンポリスト166のテータ構造の一例を示す図
【図23】パラメータリスト167のテータ構造の一例を示す図
【図24】メンバ機におけるRAM54のメモリマップを示す図
【図25】本実施形態における通信パケットの構造の一例を示す図
【図26】本実施形態における通信パケットの構造の一例を示す図
【図27】本実施形態における合奏ゲーム処理の流れの詳細を示す図
【図28】接続確立処理の詳細を示すフローチャート
【図29】パート選択処理の詳細を示すフローチャート
【図30】各携帯機40で実行される携帯側合奏処理の詳細を示すフローチャート
【図31】据置機3で実行される据置側合奏処理の詳細を示すフローチャート
【図32】従来の合奏ゲームをプレイするときのシステム構成を示す図
【図33】従来の合奏ゲームにおける合奏中の処理フローを模式的に示した図
【符号の説明】
【0203】
1…ゲームシステム
2…テレビ
2a…スピーカ
3…ゲーム装置
4…光ディスク
7…コントローラ
10…CPU
11…システムLSI
11a…入出力プロセッサ
11b…GPU
11c…DSP
11d…VRAM
11e…内部メインメモリ
12…外部メインメモリ
13…ROM/RTC
14…ディスクドライブ
15…AV−IC
16…AVコネクタ
17…フラッシュメモリ
18…無線通信モジュール
19…無線コントローラモジュール
20…拡張コネクタ
21…外部メモリカード用コネクタ
22…アンテナ
23…アンテナ
24…電源ボタン
25…リセットボタン
26…イジェクトボタン
71…ハウジング
72…操作部
73…コネクタ
74…撮像情報演算部
741…赤外線フィルタ
742…レンズ
743…撮像素子
744…画像処理回路
75…通信部
751…マイコン
752…メモリ
753…無線モジュール
754…アンテナ
700…基板
701…加速度センサ
702…LED
703…水晶振動子
704…バイブレータ
707…サウンドIC
708…アンプ
40…携帯型ゲーム装置
41…第1LCD
42…第2LCD
43…ハウジング
44…操作スイッチ部
45…タッチパネル
46…スタイラスペン
47…メモリカード
50…電子回路基板
51…CPUコア
52…バス
53…コネクタ
54…RAM
55…インターフェース回路
56…第1GPU
57…第2GPU
58…第1VRAM
59…第2VRAM
60…スピーカ
61…LCDコントローラ
62…レジスタ

【特許請求の範囲】
【請求項1】
画像を表示する表示部と操作部とを備える複数の携帯型ゲーム機と、据置型ゲーム機との間で通信を行うことでゲームを行うゲームシステムであって、
前記複数の携帯型ゲーム機はそれぞれ、
プレイヤが前記操作部に対して行うべき操作を指示する複数の指示標識を前記表示部に表示させる表示制御手段と、
前記操作部に対して行われた操作内容を示す操作データを前記据置型ゲーム機に送信する操作データ送信手段とを備え、
前記据置型ゲーム機は、
複数の音声データを記憶する据置機用音声データ記憶手段と、
前記複数の携帯型ゲーム機からそれぞれ送信される操作データを受信する操作データ受信手段と、
前記それぞれの操作データに対応する音声データを前記音声データ記憶手段から取得する音声読出し手段と、
前記取得したそれぞれの音声データに基づく音声を同時に出力する音声出力手段とを備える、ゲームシステム。
【請求項2】
前記ゲームシステムで実行されるゲームは、複数のパートから構成される楽曲を前記携帯型ゲーム機毎にパートを担当させて演奏させる音楽ゲームであり、
前記複数の指示標識は前記楽曲の演奏操作の内容を前記各パート毎に示し、
前記携帯型ゲーム機は、前記複数の指示標識を表すデータを時系列的に記憶した指示標識記憶手段を更に備え、
前記表示制御手段は、各携帯型ゲーム機が担当するパートを演奏させるための前記複数の指示標識を前記指示標識記憶手段から読み出して前記表示部に表示させ、
前記据置機用音声データ記憶手段は、前記複数のパートのそれぞれに対応した音声データを記憶し、
前記音声データ読出し手段は、前記操作データに基づいて当該操作データの送信元の携帯型ゲーム機が担当するパートの音声データを読み出す、請求項1に記載のゲームシステム。
【請求項3】
前記携帯型ゲーム機は、
前記担当するパートをプレイヤに選択させるためのパート選択手段と、
前記プレイヤが選択したパートを示すパート選択情報を前記据置型ゲーム機へ送信するパート情報送信手段とを更に備え、
前記据置型ゲーム機は、
前記パート選択情報を受信するパート情報受信手段と、
受信した全てのパート選択情報を前記携帯型ゲーム機に送信する、全パート情報送信手段とを更に備える、請求項2に記載のゲームシステム。
【請求項4】
前記据置型ゲーム機は、前記楽曲を構成するパートのうち、前記パート選択手段によって選択されていないパートにかかる楽曲の再生を行うための自動演奏手段を更に備える、請求項3に記載のゲームシステム。
【請求項5】
前記音声出力手段は、前記音声読出し手段が取得した音声データの音の高さを所定の音の高さに変更して出力可能である、請求項1に記載のゲームシステム。
【請求項6】
前記操作部は、押下可能なキーを含み、
前記操作データは、前記押下可能なキーに対する操作を示すデータを含む、請求項1に記載のゲームシステム。
【請求項7】
前記操作部は、タッチパネルを含み、
前記操作データは、前記タッチパネルのタッチ座標を示すデータを含む、請求項1に記載のゲームシステム。
【請求項8】
前記携帯型ゲーム機は、
前記据置機用音声データ記憶手段に記憶されている音声データよりも音質が低い音声データを記憶する携帯機用音声データ記憶手段と、
携帯型ゲーム機同士で通信を行うための携帯機間通信手段と、
前記携帯機用音声データ記憶手段に記憶されている音声データと前記携帯機間通信手段を用いて、携帯型ゲーム機同士で通信を行いながら前記音楽ゲームを実行する携帯間通信ゲーム手段と、
前記携帯型ゲーム機同士で通信を行いながら前記音楽ゲームを実行するゲームモードと、前記据置型ゲーム機との通信を介して前記音楽ゲームを実行するゲームモードとのいずれかをプレイヤに選択させるためのゲームモード選択手段とを更に備える、請求項2に記載のゲームシステム。
【請求項9】
前記携帯型ゲーム装置のうち少なくとも一つは、
前記複数の指示標識を表すデータを含む曲データ記憶部と、
前記曲データを前記据置型ゲーム機に送信する曲データ送信手段とを更に備え、
前記据置型ゲーム機は、
前記曲データを受信する曲データ受信手段と、
前記受信した曲データを携帯型ゲーム機に送信する曲データ配布手段とを更に備え、
前記指示標識記憶手段は、前記曲データ配布手段から送信された曲データに含まれる前記複数の指示標識を表すデータを記憶する、請求項2に記載のゲームシステム。
【請求項10】
前記携帯型ゲーム機は、
前記曲データと前記操作データとを比較してプレイヤの操作に対する得点を算出する得点算出手段と、
前記得点を示す得点データを前記据置型ゲーム機へ送信する得点送信手段とを更に備え、
前記据置型ゲーム機は、
前記得点送信手段が送信した得点データを受信する得点受信手段と、
前記受信した得点データに基づいて各ユーザの得点を表示する得点表示手段とを更に備える、請求項9に記載のゲームシステム。
【請求項11】
前記据置型ゲーム機は、
前記携帯型ゲーム機において演奏操作を可能とするための演奏操作用プログラムを記憶する配信用プログラム記憶手段と、
前記演奏操作用プログラムを配信する配信手段とを更に備え、
前記携帯型ゲーム機は、
前記音楽ゲームを実行するためのゲームプログラムおよび前記曲データが記憶されている記憶媒体を着脱可能な記憶媒体装着部と、
前記演奏操作用プログラムを記憶するための演奏操作用プログラム記憶手段とを更に備え、
前記記憶媒体が装着されている携帯型ゲーム機の曲データ送信手段は、当該記憶媒体に記憶されている前記曲データを前記据置型ゲーム機に送信し、
前記配信手段は、前記記憶媒体が装着されていない携帯型ゲーム機に対して前記演奏操作用プログラムを送信し、
前記曲データ配布手段は、前記記憶媒体が装着されていない携帯型ゲーム機に、前記記憶媒体が装着されている携帯型ゲーム機の曲データ送信手段から送信された曲データを送信し、
前記記憶媒体が装着されていない携帯型ゲーム機は、前記配信手段から送信された前記演奏操作用プログラムと、前記曲データ配布手段から送信された前記曲データに基づいて前記音楽ゲームを実行する、請求項9に記載のゲームシステム。

【図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

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate


【公開番号】特開2009−131492(P2009−131492A)
【公開日】平成21年6月18日(2009.6.18)
【国際特許分類】
【出願番号】特願2007−310902(P2007−310902)
【出願日】平成19年11月30日(2007.11.30)
【出願人】(000233778)任天堂株式会社 (1,115)
【Fターム(参考)】