(57)【特許請求の範囲】
【請求項１】
位置指示部を含む位置指示コントローラと、
自装置を基準とした前記位置指示部の相対位置を検出して前記相対位置を示す相対位置情報を生成する位置検出コントローラと、
ゲームプログラムをロードして、ロードされたゲームプログラムに基づくゲーム処理を、前記相対位置情報を用いて実行する制御装置と、
を備え、
前記制御装置は、
前記ゲーム処理の実行により仮想的なゲーム空間を生成するゲーム空間生成部と、
第１パーツオブジェクトと第２パーツオブジェクトとを含み、ユーザの操作対象として生成されるプレイヤオブジェクトを生成するオブジェクト生成部と、
前記第１パーツオブジェクトを前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に対応付けて前記ゲーム空間に配置し、前記第２パーツオブジェクトを他方に対応付けて前記ゲーム空間に配置するオブジェクト配置部と、
前記相対位置情報に基づいて、前記第１パーツオブジェクトと前記第２パーツオブジェクトとの位置関係を変化させることにより、前記プレイヤオブジェクトの動作を制御する動作制御部と、
を含むことを特徴とするゲームシステム。
【請求項２】
請求項１に記載のゲームシステムにおいて、
前記第１パーツオブジェクトは、第１手オブジェクトであり、
前記第２パーツオブジェクトは、第２手オブジェクトであり、
前記動作制御部は、
前記相対位置情報と、前記ゲーム空間における前記第１手オブジェクトの位置とに基づいて、前記ゲーム空間における前記第２手オブジェクトの位置を変化させる位置変化部、
を含むことを特徴とするゲームシステム。
【請求項３】
請求項２に記載のゲームシステムにおいて、
前記ゲームプログラムは、ジャグリングゲームプログラムであり、
前記第１手オブジェクトが前記位置検出コントローラに対応し、
前記第２手オブジェクトが前記位置指示コントローラに対応し、
前記位置検出コントローラは、
前記位置検出コントローラの動きに応じた加速度を検出する加速度センサ、
を含み、
前記動作制御部は、
前記加速度に基づいて前記第１手オブジェクトの位置を変化させる手制御部、
を含み、
前記制御装置は、
前記第１手オブジェクトがボールオブジェクトを保持し、かつ、前記加速度の大きさが所定値より大きい場合、前記加速度に基づいて前記ボールオブジェクトを前記第１手オブジェクトから移動させるボール移動部と、
前記第２手オブジェクトと前記ボールオブジェクトとの距離が所定距離より短い場合、前記第２手オブジェクトに前記ボールオブジェクトをキャッチさせるボールキャッチ部と、
を含むことを特徴とするゲームシステム。
【請求項４】
請求項２に記載のゲームシステムにおいて、
前記ゲームプログラムは、ジャグリングゲームプログラムであり、
前記第１手オブジェクトが前記位置指示コントローラに対応し、
前記第２手オブジェクトが前記位置検出コントローラに対応し、
前記位置指示コントローラは、
前記位置指示コントローラの動きに応じた加速度を検出する加速度センサ、
を含み、
前記動作制御部は、
前記加速度に基づいて前記第１手オブジェクトの位置を変化させる手制御部、
を含み、
前記制御装置は、
前記第１手オブジェクトがボールオブジェクトを保持し、かつ、前記加速度の大きさが所定値より大きい場合、前記加速度に基づいて前記ボールオブジェクトを前記第１手オブジェクトから移動させるボール移動部と、
前記第２手オブジェクトと前記ボールオブジェクトとの距離が所定距離より短い場合、前記第２手オブジェクトに前記ボールオブジェクトをキャッチさせるボールキャッチ部と、
含むことを特徴とするゲームシステム。
【請求項５】
請求項２に記載のゲームシステムにおいて、
前記ゲームプログラムは、アーチェリーゲームプログラムであり、
前記制御装置は、
前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に所定の操作情報が入力された場合、前記第１手オブジェクト及び前記第２手オブジェクトが保持する弓オブジェクトから矢オブジェクトを発射させる発射処理部と、
前記所定の操作情報が入力されたタイミングにおける前記相対位置情報に基づいて前記第１手オブジェクトと前記第２手オブジェクトとの距離を決定し、前記距離に基づいて前記矢オブジェクトの飛距離を決定する飛距離決定部と、
を含むことを特徴とするゲームシステム。
【請求項６】
請求項５に記載のゲームシステムにおいて、
前記制御装置は、
前記所定の操作情報が入力されたタイミングにおける前記相対位置情報に基づいて、前記矢オブジェクトの発射方向を決定する発射方向決定部、
を含むことを特徴とするゲームシステム。
【請求項７】
請求項２に記載のゲームシステムにおいて、
前記ゲームプログラムは、ロッククライミングゲームプログラムであり、
前記オブジェクト配置部は、
前記第１手オブジェクト及び前記第２手オブジェクトが掴むことができるホールドポイントが形成された岩壁オブジェクトを前記ゲーム空間に配置する岩壁配置部、
を含み、
前記制御装置は、
前記位置指示コントローラまたは前記位置検出コントローラから前記第２手オブジェクトの移動を指示する情報が入力された場合、前記第２手オブジェクトの位置の移動を前記位置変化部に指示する移動指示部と、
前記第２手オブジェクトと前記ホールドポイントとの距離が所定距離より短い場合、前記第２手オブジェクトが前記ホールドポイントを掴めることを通知する通知部と、
前記位置指示コントローラまたは前記位置検出コントローラから所定の操作情報が入力された場合、前記第２手オブジェクトが前記ホールドポイントを掴む処理を行うホールド処理部と、
を含むことを特徴とするゲームシステム。
【請求項８】
請求項２に記載のゲームシステムにおいて、
前記ゲームプログラムは、柔道ゲームプログラムであり、
前記オブジェクト配置部は、
前記プレイヤオブジェクトの対戦相手である対戦相手オブジェクトを前記ゲーム空間に配置する対戦相手配置部、
を含み、
前記動作制御部は、
前記第１手オブジェクトが前記対戦相手オブジェクトの所定の部位を掴む処理を行う第１手制御部と、
前記対戦相手オブジェクトの部位と前記第２手オブジェクトとの距離が所定距離より短く、かつ、前記位置指示コントローラまたは前記位置検出コントローラに所定の操作情報が入力された場合、前記第２手オブジェクトが前記対戦相手オブジェクトの部位を掴む処理を行う第２手制御部と、
前記第１手オブジェクトが掴む前記対戦相手オブジェクトの部位と前記第２手オブジェクトが掴む前記対戦相手オブジェクトの部位とに基づいて投げ技を決定し、前記プレイヤオブジェクトが前記対戦相手オブジェクトを決定した投げ技で投げる処理を行う投げ技処理部と、
を含むことを特徴とするゲームシステム。
【請求項９】
位置指示部を含む位置指示コントローラと、
自装置を基準とした前記位置指示部の相対位置を検出して前記相対位置を示す相対位置情報を生成する位置検出コントローラと、
ゲームプログラムをロードして、ロードされたゲームプログラムに基づくゲーム処理を、前記相対位置情報を用いて実行する制御装置と、
を備え、
前記制御装置は、
前記ゲーム処理の実行により仮想的なゲーム空間を生成するゲーム空間生成部と、
ユーザの操作対象である操作対象オブジェクトと、前記操作対象オブジェクトの位置の基準となる基準オブジェクトとを生成するオブジェクト生成部と、
前記操作対象オブジェクトを前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に対応付けて前記ゲーム空間に配置し、前記基準オブジェクトを他方に対応付けて前記ゲーム空間に配置するオブジェクト配置部と、
前記相対位置情報と前記ゲーム空間における前記基準オブジェクトの位置とに基づいて、前記ゲーム空間における前記操作対象オブジェクトの位置を変化させるオブジェクト制御部と、
を含むことを特徴とするゲームシステム。
【請求項１０】
請求項９に記載のゲームシステムにおいて、
前記ゲームプログラムは、カーリングゲームプログラムであり、
前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方が前記ユーザの胴体に装着されており、
前記オブジェクト制御部は、
前記ゲーム空間を移動するストーンオブジェクトに合わせて、カーリングのスイーパーに対応する前記基準オブジェクトを移動させる基準オブジェクト移動部と、
前記基準オブジェクトが保持し前記操作対象オブジェクトであるブラシオブジェクトの位置を、前記相対位置情報と前記基準オブジェクトの位置とに基づいて変化させるブラシ制御部と、
前記ストーンオブジェクトの進行方向または移動距離を、前記ブラシオブジェクトが掃いた位置に基づいて変化させる。進行方向制御部と、
を含むことを特徴とするゲームシステム。
【請求項１１】
請求項１ないし請求項１０のいずれかに記載のゲームシステムにおいて、
前記位置指示コントローラは、
前記位置検出コントローラに入力された操作情報を前記位置検出コントローラから受信する受信部と、
前記相対位置情報と、前記位置指示コントローラに入力された操作情報と、前記位置検出コントローラに入力された操作情報とを前記制御装置に送信する送信部と、
を含むことを特徴とするゲームシステム。
【請求項１２】
請求項１ないし請求項１０のいずれかに記載のゲームシステムにおいて、
前記位置検出コントローラは、
前記位置指示コントローラに入力された操作情報を前記位置指示コントローラから受信する受信部と、
前記相対位置情報と、前記位置指示コントローラに入力された操作情報と、前記位置検出コントローラに入力された操作情報とを前記制御装置に送信する送信部と、
を含むことを特徴とするゲームシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲームシステムに関し、さらに詳しくは、コントローラ自体の動きを示す情報をゲームの操作情報として利用するゲームシステムに関する。
【背景技術】
【０００２】
近年、ゲーム装置のユーザインタフェースに、様々なデバイスが用いられている。たとえば、据え置き型のゲーム装置では、加速度センサなどを内蔵したコントローラを利用したものがある。加速度センサは、コントローラの移動方向を検出する。ゲーム装置は、加速度センサから出力される移動方向を示す情報を、ゲームの操作情報に使用する。ユーザは、コントローラを持ちながらユーザ自身の体を動かすことで、ゲームを楽しむことができる。
【０００３】
携帯型ゲーム装置では、ユーザインタフェースにタッチパネルを利用したものがある。ユーザは、スタイラスペンやユーザの指などを用いて、タッチパネルに位置情報を入力する。ユーザは、タッチパネルにタッチするだけでゲームをプレイすることが可能となる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３３４８２４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
パーソナルコンピュータ（ＰＣ）のユーザインタフェースとして、タブレットがある。タブレットは、ユーザがタブレットの操作面上をスタイラスペンでタッチすることにより、タッチされた位置に応じた２次元の位置情報を出力する。ＰＣは、モニタに表示されるポインタの位置を、２次元の位置情報に基づいて制御する。
【０００６】
特許文献１には、サイコロなどの立体構造物に内蔵された位置指示コイルの高さを検出する姿勢検出装置が開示されている。姿勢検出装置は、電磁誘導方式のタブレットと同様の構成であり、複数のループコイルからなるセンサコイル群を備えている。センサコイル群は、位置指示コイルで発生する共振信号を受信する。姿勢検出装置は、受信した共振信号から検出波形を形成する。姿勢検出装置は、検出波形の中央に形成されるメイン信号の半値幅に基づいて、センサコイル群の設置面と位置指示コイルとの距離を位置指示コイルの高さとして検出する。
【０００７】
位置指示コイルは、サイコロの各面を上にして設置面に置かれたときに、位置指示コルの高さが異なるような位置に配置される。姿勢検出装置は、位置指示コイルの高さを検出することにより、サイコロの出目を特定する。このため、ユーザは、実際にサイコロを振りながら、コンピュータゲームを楽しむことができる。
【０００８】
そこで、本発明は、３次元位置情報を用いた様々なゲームを実行することができるゲームシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、請求項１記載の発明は、ゲームシステムであって、位置指示部を含む位置指示コントローラと、自装置を基準とした前記位置指示部の相対位置を検出して前記相対位置を示す相対位置情報を生成する位置検出コントローラと、ゲームプログラムをロードして、ロードされたゲームプログラムに基づくゲーム処理を、前記相対位置情報を用いて実行する制御装置と、を備え、前記制御装置は、前記ゲーム処理の実行により仮想的なゲーム空間を生成するゲーム空間生成部と、第１パーツオブジェクトと第２パーツオブジェクトとを含み、ユーザの操作対象として生成されるプレイヤオブジェクトを生成するオブジェクト生成部と、前記第１パーツオブジェクトを前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に対応付けて前記ゲーム空間に配置し、前記第２パーツオブジェクトを他方に対応付けて前記ゲーム空間に配置するオブジェクト配置部と、前記相対位置情報に基づいて、前記第１パーツオブジェクトと前記第２パーツオブジェクトとの位置関係を変化させることにより、前記プレイヤオブジェクトの動作を制御する動作制御部と、を含むことを特徴とする。
【００１０】
請求項２記載の発明は、請求項１に記載のゲームシステムにおいて、前記第１パーツオブジェクトは、第１手オブジェクトであり、前記第２パーツオブジェクトは、第２手オブジェクトであり、前記動作制御部は、前記相対位置情報と、前記ゲーム空間における前記第１手オブジェクトの位置とに基づいて、前記ゲーム空間における前記第２手オブジェクトの位置を変化させる位置変化部、を含むことを特徴とする。
【００１１】
請求項３記載の発明は、請求項２に記載のゲームシステムにおいて、前記ゲームプログラムは、ジャグリングゲームプログラムであり、前記第１手オブジェクトが前記位置検出コントローラに対応し、前記第２手オブジェクトが前記位置指示コントローラに対応し、前記位置検出コントローラは、前記位置検出コントローラの動きに応じた加速度を検出する加速度センサ、を含み、前記動作制御部は、前記加速度に基づいて前記第１手オブジェクトの位置を変化させる手制御部、を含み、前記制御装置は、前記第１手オブジェクトがボールオブジェクトを保持し、かつ、前記加速度の大きさが所定値より大きい場合、前記加速度に基づいて前記ボールオブジェクトを前記第１手オブジェクトから移動させるボール移動部と、前記第２手オブジェクトと前記ボールオブジェクトとの距離が所定距離より短い場合、前記第２手オブジェクトに前記ボールオブジェクトをキャッチさせるボールキャッチ部と、を含むことを特徴とする。
【００１２】
請求項４記載の発明は、請求項２に記載のゲームシステムにおいて、前記ゲームプログラムは、ジャグリングゲームプログラムであり、前記第１手オブジェクトが前記位置指示コントローラに対応し、前記第２手オブジェクトが前記位置検出コントローラに対応し、前記位置指示コントローラは、前記位置指示コントローラの動きに応じた加速度を検出する加速度センサ、を含み、前記動作制御部は、前記加速度に基づいて前記第１手オブジェクトの位置を変化させる手制御部、を含み、前記制御装置は、前記第１手オブジェクトがボールオブジェクトを保持し、かつ、前記加速度の大きさが所定値より大きい場合、前記加速度に基づいて前記ボールオブジェクトを前記第１手オブジェクトから移動させるボール移動部と、前記第２手オブジェクトと前記ボールオブジェクトとの距離が所定距離より短い場合、前記第２手オブジェクトに前記ボールオブジェクトをキャッチさせるボールキャッチ部と、含むことを特徴とする。
【００１３】
請求項５記載の発明は、請求項２に記載のゲームシステムにおいて、前記ゲームプログラムは、アーチェリーゲームプログラムであり、前記制御装置は、前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に所定の操作情報が入力された場合、前記第１手オブジェクト及び前記第２手オブジェクトが保持する弓オブジェクトから矢オブジェクトを発射させる発射処理部と、前記所定の操作情報が入力されたタイミングにおける前記相対位置情報に基づいて前記第１手オブジェクトと前記第２手オブジェクトとの距離を決定し、前記距離に基づいて前記矢オブジェクトの飛距離を決定する飛距離決定部と、を含むことを特徴とする。
【００１４】
請求項６記載の発明は、請求項５に記載のゲームシステムにおいて、前記制御装置は、前記所定の操作情報が入力されたタイミングにおける前記相対位置情報に基づいて、前記矢オブジェクトの発射方向を決定する発射方向決定部、を含むことを特徴とする。
【００１５】
請求項７記載の発明は、請求項２に記載のゲームシステムにおいて、前記ゲームプログラムは、ロッククライミングゲームプログラムであり、前記オブジェクト配置部は、前記第１手オブジェクト及び前記第２手オブジェクトが掴むことができるホールドポイントが形成された岩壁オブジェクトを前記ゲーム空間に配置する岩壁配置部、を含み、前記制御装置は、前記位置指示コントローラまたは前記位置検出コントローラから前記第２手オブジェクトの移動を指示する情報が入力された場合、前記第２手オブジェクトの位置の移動を前記位置変化部に指示する移動指示部と、前記第２手オブジェクトと前記ホールドポイントとの距離が所定距離より短い場合、前記第２手オブジェクトが前記ホールドポイントを掴めることを通知する通知部と、前記位置指示コントローラまたは前記位置検出コントローラから所定の操作情報が入力された場合、前記第２手オブジェクトが前記ホールドポイントを掴む処理を行うホールド処理部と、を含むことを特徴とする。
【００１６】
請求項８記載の発明は、請求項２に記載のゲームシステムにおいて、前記ゲームプログラムは、柔道ゲームプログラムであり、前記オブジェクト配置部は、前記プレイヤオブジェクトの対戦相手である対戦相手オブジェクトを前記ゲーム空間に配置する対戦相手配置部、を含み、前記動作制御部は、前記第１手オブジェクトが前記対戦相手オブジェクトの所定の部位を掴む処理を行う第１手制御部と、前記対戦相手オブジェクトの部位と前記第２手オブジェクトとの距離が所定距離より短く、かつ、前記位置指示コントローラまたは前記位置検出コントローラに所定の操作情報が入力された場合、前記第２手オブジェクトが前記対戦相手オブジェクトの部位を掴む処理を行う第２手制御部と、前記第１手オブジェクトが掴む前記対戦相手オブジェクトの部位と前記第２手オブジェクトが掴む前記対戦相手オブジェクトの部位とに基づいて投げ技を決定し、前記プレイヤオブジェクトが前記対戦相手オブジェクトを決定した投げ技で投げる処理を行う投げ技処理部と、を含むことを特徴とする。
【００１７】
請求項９記載の発明は、ゲームシステムであって、位置指示部を含む位置指示コントローラと、自装置を基準とした前記位置指示部の相対位置を検出して前記相対位置を示す相対位置情報を生成する位置検出コントローラと、ゲームプログラムをロードして、ロードされたゲームプログラムに基づくゲーム処理を、前記相対位置情報を用いて実行する制御装置と、を備え、前記制御装置は、前記ゲーム処理の実行により仮想的なゲーム空間を生成するゲーム空間生成部と、ユーザの操作対象である操作対象オブジェクトと、前記操作対象オブジェクトの位置の基準となる基準オブジェクトとを生成するオブジェクト生成部と、前記操作対象オブジェクトを前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方に対応付けて前記ゲーム空間に配置し、前記基準オブジェクトを他方に対応付けて前記ゲーム空間に配置するオブジェクト配置部と、前記相対位置情報と前記ゲーム空間における前記基準オブジェクトの位置とに基づいて、前記ゲーム空間における前記操作対象オブジェクトの位置を変化させるオブジェクト制御部と、を含むことを特徴とする。
【００１８】
請求項１０記載の発明は、請求項９に記載のゲームシステムにおいて、前記ゲームプログラムは、カーリングゲームプログラムであり、前記位置指示コントローラ及び前記位置検出コントローラのいずれか一方が前記ユーザの胴体に装着されており、前記オブジェクト制御部は、前記ゲーム空間を移動するストーンオブジェクトに合わせて、カーリングのスイーパーに対応する前記基準オブジェクトを移動させる基準オブジェクト移動部と、前記基準オブジェクトが保持し前記操作対象オブジェクトであるブラシオブジェクトの位置を、前記相対位置情報と前記基準オブジェクトの位置とに基づいて変化させるブラシ制御部と、前記ストーンオブジェクトの進行方向または移動距離を、前記ブラシオブジェクトが掃いた位置に基づいて変化させる。進行方向制御部と、を含むことを特徴とする。
【００１９】
請求項１１記載の発明は、請求項１ないし請求項１０のいずれかに記載のゲームシステムにおいて、前記位置指示コントローラは、前記位置検出コントローラに入力された操作情報を前記位置検出コントローラから受信する受信部と、前記相対位置情報と、前記位置指示コントローラに入力された操作情報と、前記位置検出コントローラに入力された操作情報とを前記制御装置に送信する送信部と、を含むことを特徴とする。
【００２０】
請求項１２記載の発明は、請求項１ないし請求項１０のいずれかに記載のゲームシステムにおいて、前記位置検出コントローラは、前記位置指示コントローラに入力された操作情報を前記位置指示コントローラから受信する受信部と、前記相対位置情報と、前記位置指示コントローラに入力された操作情報と、前記位置検出コントローラに入力された操作情報とを前記制御装置に送信する送信部と、を含むことを特徴とする。
【発明の効果】
【００２１】
本発明のゲームシステムは、位置指示部を含む位置指示コントローラと、自装置を基準とした位置指示部の相対位置を検出して相対位置情報を生成する位置検出コントローラとを備える。ユーザは、位置指示コントローラ及び位置検出コントローラを両手に持つなどして、各コントローラを動かす。
【００２２】
制御装置は、第１パーツオブジェクト及び第２パーツオブジェクトを有する操作対象オブジェクトをゲーム空間に配置する。制御装置は、第１パーツオブジェクトを位置指示コントローラ及び位置検出コントローラのいずれか一方に対応付けてゲーム空間に配置し、第２パーツオブジェクトを他方に対応付ける。第２パーツオブジェクトの位置は、相対位置情報と第１パーツオブジェクトの位置との変化に基づいて変化する。これにより、ゲームシステムは、操作対象オブジェクトの動きをユーザの動きに合わせて制御することが可能となるため、よりリアリティの高いゲームを提供することができる。
【００２３】
制御装置は、操作対象オブジェクトを位置指示コントローラ及び前記位置検出コントローラのいずれか一方に対応付け、基準オブジェクトを他方に対応付ける。操作対象オブジェクト及び基準オブジェクトは、ゲーム空間に配置される。制御装置は、基準オブジェクト及び相対位置情報の変化に応じて操作対象オブジェクトの位置を変化させる。これにより、操作対象オブジェクトをユーザの動きに合わせて制御することができるため、よりリアリティの高いゲームを提供することができる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施の形態に係るゲームシステムの全体図である。
【図２】ゲーム装置の機能的構成を示すブロック図である。
【図３】メインコントローラ及びサブコントローラの外観図である。
【図４Ａ】メインコントローラの機能的構成を示すブロック図である。
【図４Ｂ】サブコントローラの機能的構成を示すブロック図である。
【図５】サブコントローラの相対位置を検出する原理を示す図である。
【図６】ジャグリングゲームの初期画面を説明する図である。
【図７】ジャグリングゲームの操作方法を説明する図である。
【図８】アーチェリーゲームの操作方法を説明する図である。
【図９】ロッククライミングゲームの操作方法を説明する図である。
【図１０】カーリングゲームの操作方法を説明する図である。
【図１１】柔道ゲームの操作方法を説明する図である。
【発明を実施するための形態】
【００２５】
｛１．ゲームシステム１の全体構成｝
以下、図面を参照しつつ本発明の実施の形態について説明する。実施の形態では、据え置き型のゲームシステムを例にして説明する。
【００２６】
図１は、実施の形態に係るゲームシステム１の全体図である。ゲームシステム１は、ゲーム装置２と、メインコントローラ３と、サブコントローラ４とを備える。
【００２７】
ゲーム装置２は、ゲームシステム１の全体制御を行う処理装置であり、光ディスクに記録されたゲームプログラムを実行する。ゲーム装置２は、テレビジョン受像機５の画面５ａにゲームの映像を表示するために画像データを生成し、画像データをテレビジョン受像機５に出力する。
【００２８】
メインコントローラ３及びサブコントローラ４は、ユーザがゲームのプレイヤオブジェクトなどを操作するための情報（操作情報）を入力する装置である。メインコントローラ３は、サブコントローラ４に入力された操作情報を有線通信により受信する。メインコントローラ３及びサブコントローラ４に入力された操作情報は、無線通信によりメインコントローラ３からゲーム装置２に送信される。
【００２９】
メインコントローラ３は、自装置を基準としたサブコントローラ４の相対位置を検出する。サブコントローラ４の相対位置を示す情報（相対位置情報）は、メインコントローラ３とサブコントローラ４との距離を示す距離情報と、メインコントローラ３から見たサブコントローラ４の方位を示す方位情報とを含む。相対位置情報は、後述するように、操作情報として用いられる。
【００３０】
ユーザは、たとえば、メインコントローラ３を右手に持ち、サブコントローラ４を左手に持ちながらゲームをプレイする。ゲーム装置２は、相対位置情報を操作情報として用いることにより、ユーザの両手の位置関係に基づいてプレイヤオブジェクトの動きや姿勢を制御することができる。したがって、ゲームシステム１は、ユーザの動きに合わせてゲームを進行することができるため、より臨場感の高いゲームを提供することができる。
【００３１】
図２は、ゲーム装置２のブロック図である。ゲーム装置２は、制御部２１と、光ディスクドライブ２２と、出力部２３と、無線通信部２４とを備える。
【００３２】
制御部２１は、ＣＰＵ及びＲＡＭなどを備え、様々なゲームプログラムを実行する。制御部２１は、光ディスクドライブ２２にセットされた光ディスク６にアクセスし、光ディスク６に記録されたゲームプログラムを実行する。ユーザは、ゲームプログラムが記録された光ディスク６を光ディスクドライブ２２にセットすることで、様々なゲームを楽しむことができる。
【００３３】
出力部２３は、ゲーム装置２に接続されたテレビジョン受像機５に、ゲームの映像やゲームの音声を出力する。無線通信部２４は、ゲーム装置２とメインコントローラ３との間で無線通信を行う。無線通信には、Ｂｌｕｅｔｏｏｔｈ（登録商標）などを利用することができる。
【００３４】
図３は、メインコントローラ３及びサブコントローラ４の外観図である。メインコントローラ３とサブコントローラ４とは、サブコントローラ４が備える通信ケーブル４０を介して接続されている。サブコントローラ４に入力された操作情報は、通信ケーブル４０を介してメインコントローラ３に送信される。メインコントローラ３は、自装置及びサブコントローラ４に入力された操作情報を、無線通信によりゲーム装置２に送信する。
【００３５】
メインコントローラ３は、直方体型の形状であり、Ａボタン３２ａと、Ｂボタン３２ｂと、十字ボタン３２ｃと、スタートボタン３２ｄと、セレクトボタン３２ｅとを備える。ユーザは、Ａボタン３２ａ、Ｂボタン３２ｂ、十字ボタン３２ｃ、スタートボタン３２ｄ、及びセレクトボタン３２ｅの各種ボタン（以下、操作部３２と呼ぶ。図４Ａ参照）を押すことにより、操作情報を入力する。
【００３６】
メインコントローラ３において、操作部３２が配置されている面を前面３ａとする。前面３ａと反対側の面を背面３ｂとする。メインコントローラ３の長手方向（Ｘ軸方向）に垂直な側面のうち、十字ボタン３２ｃ側の側面を上面３ｃとし、Ｂボタン３２ｂ側の側面を下面３ｄとする。下面３ｄには、通信ケーブル４０と接続するコネクタ３０が設けられている。Ｘ軸方向に平行な側面のうち、スタートボタン３２ｄ側の側面を左面３ｅとし、セレクトボタン３２ｅ側の右面３ｆとする。Ｘ軸は、メインコントローラ３の長手方向の中心軸である。左面３ｅから右面３ｆへの方向をＹ軸方向とする。背面３ｂから前面３ａへの方向をＺ軸方向とする。
【００３７】
サブコントローラ４は、卵型の形状であり、Ｃボタン４２ｃと、通信ケーブル４０とを備える。ユーザは、Ｃボタン４２ｃを押すことにより、操作情報を入力する。
【００３８】
図４Ａは、メインコントローラ３の機能的構成を示すブロック図である。メインコントローラ３は、制御部３１と、操作部３２と、無線通信部３３と、有線通信部３４と、位置検出部３５と、加速度センサ３６と、振動部３７とを備える。
【００３９】
制御部３１は、メインコントローラ３の全体制御を行う。操作部３２は、図３に示す各種ボタンである。無線通信部３３は、ゲーム装置２と無線通信を行うことにより、メインコントローラ３及びサブコントローラ４の操作情報をゲーム装置２に送信する。メインコントローラ３の操作情報には、相対位置情報と、操作部４２（図４Ｂ参照）に入力された情報と、加速度センサ３６により検出された情報とが含まれる。有線通信部３４は、通信ケーブル４０を介してサブコントローラ４と有線通信を行うことにより、サブコントローラ４に入力された操作情報を取得する。
【００４０】
位置検出部３５は、メインコントローラ３の各面に設けられたセンサコイルなどであり、サブコントローラ４に設けられた位置指示部４４（図４Ｂ参照）の位置を検出する。加速度センサ３６は、３軸の加速度センサであり、メインコントローラ３の加速度及び地表面に対するメインコントローラ３の傾きを検出する。振動部３７は、制御部３１の指示に応じて、メインコントローラ３全体を振動させる。
【００４１】
図４Ｂは、サブコントローラ４の機能的構成を示すブロック図である。サブコントローラ４は、制御部４１と、操作部４２と、有線通信部４３と、位置指示部４４と、加速度センサ４５とを備える。
【００４２】
制御部４１は、サブコントローラ４の全体制御を行う。操作部４２は、図３に示すＣボタン４２ｃに対応する。サブコントローラ４は、操作部４２として、Ｃボタン４２ｃの他のボタン（十字ボタンなど）を備えてもよい。
【００４３】
有線通信部４３は、通信ケーブル４０を介して、サブコントローラ４の操作情報をメインコントローラ３に送信する。サブコントローラ４の操作情報には、Ｃボタン４２ｃの押下を示す情報及び加速度センサ４５により検出された情報が含まれる。位置指示部４４は、サブコントローラ４の位置を通知するための共振信号（位置通知信号）をメインコントローラ３に送信する。加速度センサ４５は、加速度センサ３６と同様の３軸加速度センサであり、サブコントローラ４の加速度及び地表面に対するサブコントローラ４の傾きを検出する。
【００４４】
メインコントローラ３及びサブコントローラ４は、ジャイロセンサをさらに備えていてもよい。これにより、メインコントローラ３及びサブコントローラ４は、地表面に対する傾きをより正確に検出することができる。
【００４５】
図５は、サブコントローラ４の相対位置を検出する原理を説明する図である。相対位置の基準となる原点Ｏが上面３ｃにあると定義する。図５では、後述するセンサコイルを直線で示す。
【００４６】
メインコントローラ３がサブコントローラ４の相対位置を検出する流れについて、図５を用いて説明する。ここでは、サブコントローラ４が、メインコントローラ３の紙面手前側の左上方（前面３ａ、上面３ｃ、及び左面３ｅに面した位置）に位置すると仮定する。
【００４７】
サブコントローラ４において、位置指示部４４は、コイル４４ａ及びコンデンサ４４ｂにより構成される共振回路を含む。位置指示部４４の共振周波数はｆ１（Ｈｚ）である。
【００４８】
メインコントローラ３の各面の内側には、位置検出部３５が設けられている。たとえば、前面３ａには、Ｙ軸方向に沿って設けられたセンサコイル３５１ａ，３５１ａ・・・を有する位置検出部３５ａが設けられる。センサコイル３５１ａは、実際には、操作部３２と重ならない位置に設けられる。上面３ｃには、センサコイル３５１ｃ，３５１ｃ・・・を有する位置検出部３５ｃが設けられる。左面３ｅには、センサコイル３５１ｅ，３５１ｅ・・・を有する位置検出部３５ｅが設けられる。センサコイル３５１ｃ，３５１ｅが配置される方向は、Ｚ軸方向である。
【００４９】
図５に示していないが、背面３ｂ，下面３ｄ，及び右面３ｆの内側にも、それぞれ複数のセンサコイルを有する位置検出部３５が設けられる。
【００５０】
メインコントローラ３は、位置指示部４４が位置指示信号を送信するタイミングを通知するために、各面の位置検出部３５に正弦波信号を供給する。正弦波信号の周波数は、ｆ１（Ｈｚ）である。正弦波信号は、各面の位置検出部３５に一斉に供給されるのではなく、たとえば、前面３ａ、背面３ｂ、上面３ｃ、下面３ｄ、左面３ｅ、右面３ｆの順に供給される。上述したように、各面の位置検出部３５は、複数のセンサコイルを有する。各面の位置検出部３５では、一定のレベルの正弦波信号が、各センサコイルに順次供給される。たとえば、位置検出部３５ａの場合、図５の上側に位置するセンサコイル３５１ａから正弦波信号が順に供給される。位置検出部３５ａの全てのセンサコイル３５１ａに正弦波信号を供給した後に、メインコントローラ３は、背面３ｂの位置検出部３５への正弦波信号の供給を開始する。このようにして、各面の位置検出部３５が有する全てのセンサコイルに正弦波信号が供給される。
【００５１】
正弦波信号が供給されたセンサコイルは、周辺の磁界を変化させて、ｆ１（Ｈｚ）の共振信号（タイミング通知信号）を発生させる。位置指示部４４がタイミング通知信号を受信した場合、コイル４４ａに誘導電流が流れる。コンデンサ４４ｂは、誘導電流の大きさに応じた電荷を蓄積する。誘導電流の大きさは、位置指示部４４と、正弦波信号が供給されたセンサコイルとの距離に応じて変化する。
【００５２】
位置指示部４４でタイミング通知信号の受信が終了すると、コンデンサ４４ｂは、蓄積した電荷をコイル４４ａに供給する。電流が供給されたコイル４４ａは、ｆ１（Ｈｚ）の位置指示信号を発生させる。このため、コイル４４ａに供給される電流の大きさと、位置指示信号の強度は、コンデンサ４４ｂに蓄積された電荷の量に応じて変化する。
【００５３】
メインコントローラ３において、各面の位置検出部３５は、位置指示信号を受信する。メインコントローラ３とサブコントローラ４とが図５に示す位置関係にある場合、位置検出部３５ａ，３５ｃ，３５ｅが位置指示信号を受信することができる。
【００５４】
位置検出部３５ａ，３５ｃ，３５ｅにおいて、各センサコイルが受信する位置指示信号の強度は異なる。これは、各センサコイルと位置指示部４４との距離が異なるためである。したがって、メインコントローラ３は、各面の位置検出部３５における位置指示信号の受信強度に基づいて、メインコントローラ３を基準としたサブコントローラ４の方位角Ａを検出することができる。
【００５５】
メインコントローラ３とサブコントローラ４との距離Ｄは、位置指示部４４が受信する位置指示信号の強度に基づいて求めることができる。具体的には、メインコントローラ３が送信したタイミング通知信号の強度に対する、各センサコイルが受信した位置指示信号の強度の総和との比率を計算することによって、距離Ｄを求めることができる。
【００５６】
メインコントローラ３は、メインコントローラ３を基準としたサブコントローラ４の相対位置Ｐ１を示す相対位置情報Ｒ１をゲーム装置２に送信する。相対位置情報Ｒ１は、距離Ｄを示す距離情報と、方位角Ａを示す方位情報とを含む。相対位置情報Ｒ１は、原点Ｏ（図５参照）を基準とした３次元直交座標に基づく情報であってもよい。
【００５７】
ここでは、メインコントローラ３は、相対位置情報Ｒ１ではなく、サブコントローラ４を基準としたメインコントローラ３の相対位置を示す相対位置情報Ｒ２をゲーム装置２に送信してもよい。あるいは、ゲーム装置２が、実行するゲームプログラムに応じて、相対位置情報Ｒ１から相対位置情報Ｒ２を生成してもよい。
【００５８】
サブコントローラ４は、位置指示信号を発生させるときに、内蔵する電池からコイル４４ａに電流を供給してもよい。位置指示部４４がタイミング信号を受信した場合、サブコントローラ４は、一定レベルの電流をコイル４４ａに供給する。これにより、コンデンサ４４ｂがコイル４４ａに供給する電流よりも大きい電流をコイル４４ａに供給することができるため、メインコントローラ３は、位置指示信号を検出することができる限界距離を大きくすることができる。
【００５９】
｛２．ゲームの具体例｝
以下、ゲームシステム１で実行することができるゲームの具体例について説明する。
【００６０】
｛２．１．ジャグリングゲーム｝
ジャグリングゲームは、ジャグリングを疑似的に体験することができるゲームである。ジャグリングゲームでは、サブコントローラ４の相対位置を示す相対位置情報Ｒ１と、メインコントローラ３の相対位置を示す相対位置情報Ｒ２の両者が用いられる。
【００６１】
まず、ユーザは、ジャグリングゲームプログラムが格納された光ディスク６を光ディスクドライブ２２にセットする。これにより、ジャグリングゲームが開始される。以下、制御部２１における処理は、ジャグリングゲームプログラムの実行による処理である。
【００６２】
図６は、ジャグリングゲームの初期画面を示す図である。図６では、メインコントローラ３、サブコントローラ４、及び画面５ａのみを表示している。ジャグリングゲームが開始されると、制御部２１は、ジャグリングゲーム用のゲーム空間５１ａを生成する。ゲーム空間５１ａは、仮想的な３次元空間である。制御部２１は、ユーザの操作対象として、プレイヤオブジェクト５１ｂを生成する。プレイヤオブジェクト５１ｂは、右手オブジェクト５１ｃと左手オブジェクト５１ｄとを含み、ゲーム空間５１ａ内のデフォルトの位置に配置される。左手オブジェクト５１ｄは、ボールオブジェクト５１ｅを保持している。
【００６３】
ユーザは、ジャグリングゲームをプレイする場合、メインコントローラ３を右手６１に持ち、サブコントローラ４を左手６２に持つ。ユーザとプレイヤオブジェクト５１ｂとは、鏡像関係にある。このため、メインコントローラ３が、左手オブジェクト５１ｄに対応する。サブコントローラ４が、右手オブジェクト５１ｃに対応する。
【００６４】
プレイヤオブジェクト５１ｂは、初期状態では、右手オブジェクト５１ｃ及び左手オブジェクト５１ｄを下向きに広げた状態で立っている。ユーザは、メインコントローラ３及びサブコントローラ４を持ちながら、プレイヤオブジェクト５１ｂと同じ姿勢をとる。
【００６５】
ジャグリングゲームの操作方法を、左手オブジェクト５１ｄから右手オブジェクト５１ｃへボールオブジェクト５１ｅを投げ渡す操作を例にして説明する。ユーザは、左手６２へボールを投げ渡すように、メインコントローラ３（右手６１）を左上方向へ動かす。加速度センサ３６（図４Ａ参照）は、メインコントローラ３の動きに応じた加速度を検出する。メインコントローラ３の加速度は、リアルタイムにゲーム装置２へ送信される。制御部２１は、メインコントローラ３の加速度の方向及び大きさに基づいて、左手オブジェクト５１ｄのゲーム空間５１ａにおける位置（仮想位置）を変化させる。
【００６６】
図７は、メインコントローラ３を左上方向に動かしたときの、プレイヤオブジェクト５１ｂ及びボールオブジェクト５１ｅを示す図である。制御部２１は、メインコントローラ３の加速度が所定値より大きい場合、左方向へ放物線を描くようにボールオブジェクト５１ｅを移動させる。ボールオブジェクト５１ｅの軌跡は、メインコントローラ３の加速度の大きさ及び向きに基づいて決定される。
【００６７】
ユーザは、メインコントローラ３を左上方向に動かした後に、右手オブジェクト５１ｃにボールオブジェクト５１ｅにキャッチさせるためにサブコントローラ４を動かす。制御部２１は、相対位置情報Ｒ１を、ゲーム空間５１ａに対応する仮想相対位置情報に変換する。左手オブジェクト５１ｄの仮想位置と、仮想相対位置情報とに基づいて、右手オブジェクト５１ｃの仮想位置が決定される。制御部２１は、左手オブジェクト５１ｄの仮想位置及び相対位置情報Ｒ１の変化に基づいて、右手オブジェクト５１ｃの仮想位置を変化させる。
【００６８】
右手オブジェクト５１ｃとボールオブジェクト５１ｅとの距離が所定の距離より短くなった場合、制御部２１は、右手オブジェクト５１ｃがボールオブジェクト５１ｅをキャッチしたと判断する。
【００６９】
次に、ユーザは、右手オブジェクト５１ｃから左手オブジェクト５１ｄへボールオブジェクト５１ｅを投げ渡すために、サブコントローラ４（左手６２）を右上方向へ動かす。
【００７０】
具体的には、右手オブジェクト５１ｃがボールオブジェクト５１ｅを保持しているため、制御部２１は、サブコントローラ４の加速度の大きさ及び向きに基づいて、右手オブジェクト５１ｃの仮想位置を変化させる。サブコントローラ４の加速度の大きさ及び向きに基づいて、ボールオブジェクト５１ｅが放物線を描いて移動する。ユーザは、メインコントローラ３を動かして、左手オブジェクト５１ｄにボールオブジェクト５１ｅをキャッチさせる。左手オブジェクト５１ｄの仮想位置は、右手オブジェクト５１ｃの仮想位置及び相対位置情報Ｒ２に基づいて変化する。
【００７１】
ユーザは、メインコントローラ３及びサブコントローラ４を動かすことにより、ボールオブジェクト５１ｅを投げる操作及びキャッチする操作を繰り返す。このようにして、ユーザは、ジャグリングゲームをプレイすることができる。
【００７２】
ここでは、ボールオブジェクト５１ｅが一つである場合を例にして説明しているが、ボールオブジェクト５１ｅが複数である場合も、ボールオブジェクト５１ｅを投げる動作及びキャッチする操作は基本的に同じである。ボールオブジェクト５１ｅの数が複数である場合、右手オブジェクト５１ｃ及び左手オブジェクト５１ｄの両者が、ボールオブジェクト５１ｅを同時に保持することがあり得る。この場合、制御部２１は、先にボールオブジェクト５１ｅをキャッチした手オブジェクトの仮想位置を、コントローラの加速度の大きさ及び向きに基づいて決定すればよい。他方の手オブジェクトの仮想位置は、相対位置情報と、ボールオブジェクト５１ｅを先にキャッチした手オブジェクトの仮想位置とに基づいて決定することができる。あるいは、両方の手オブジェクトがボールオブジェクト５１ｅを保持している場合、右手オブジェクト５１ｃ及び左手オブジェクト５１ｄの位置を、それぞれの手オブジェクトに対応するコントローラの加速度に基づいて決定してもよい。
【００７３】
このように、ジャグリングゲームでは、相対位置情報Ｒ１，Ｒ２を用いることにより、ユーザの右手６１および左手６２の動きに合わせて右手オブジェクト５１ｃ及び左手オブジェクト５１ｄを動かすことができる。したがって、ユーザは、よりリアルな感覚でジャグリングゲームを楽しむことができる。
【００７４】
｛２．２．アーチェリーゲーム｝
アーチェリーゲームは、アーチェリーを疑似的に体験することができるゲームである。アーチェリーゲームでは、サブコントローラ４の相対位置を示す相対位置情報Ｒ１が用いられる。
【００７５】
まず、ユーザは、アーチェリーゲームプログラムが格納された光ディスク６を光ディスクドライブ２２にセットする。これにより、アーチェリーゲームが開始される。以下、制御部２１における処理は、アーチェリーゲームプログラムの実行による処理である。
【００７６】
図８は、アーチェリーゲームの操作方法を説明する図である。図８では、メインコントローラ３、サブコントローラ４、及び画面５ａのみを表示している。アーチェリーゲームが開始されると、制御部２１は、アーチェリーゲーム用のゲーム空間５２ａを生成する。
【００７７】
制御部２１は、プレイヤオブジェクト５２ｂと、的オブジェクト５２ｃとを生成する。プレイヤオブジェクト５２ｂは、アーチェリーゲームにおけるユーザの操作対象であり、右手オブジェクト５２ｄ及び左手オブジェクト５２ｅを含む。プレイヤタオブジェクト５２ｂは、矢オブジェクト５２ｆがセットされた弓オブジェクト５２ｇを保持する。プレイヤオブジェクト５２ｂ及び的オブジェクト５２ｃは、ゲーム空間５２ａ内のデフォルトの位置に配置される。
【００７８】
ユーザは、左手６２にメインコントローラ３を持ち、右手６１にサブコントローラ４を持ってアーチェリーゲームをプレイする。メインコントローラ３が左手オブジェクト５２ｅに対応する。サブコントローラ４が右手オブジェクト５２ｄに対応する。
【００７９】
初期状態では、プレイヤオブジェクト５２ｂは、直立不動の姿勢を取っている。ユーザも、プレイヤオブジェクト５２ｂと同様に、直立不動の姿勢からアーチェリーゲームを開始する。
【００８０】
まず、ユーザは、メインコントローラ３（左手６２）を画面５ａの方向に突き出す。図８では、メインコントローラ３（左手６２）を突き出す方向と、左手オブジェクト５２ｅを伸ばす方向が異なる。実際には、メインコントローラ３の上面３ｃ（図４参照）が画面５ａに向いているものとする。
【００８１】
ユーザが左手６２を画面５ａの方向に伸ばすことで、メインコントローラ３の加速度が変化する。制御部２１は、メインコントローラ３の加速度の向き及び大きさに基づいて、左手オブジェクト５２ｅの位置を変化させる。この結果、プレイヤオブジェクト５２ｂは、左手オブジェクト５２ｅを的オブジェクト５２ｃの方向に伸ばした姿勢をとる。
【００８２】
ユーザは、メインコントローラ３を固定したまま、弓の弦を引くようにしてサブコントローラ４（右手６１）を動かす。制御部２１が、左手オブジェクト５２ｅの仮想位置と、相対位置情報Ｒ１の変化とに基づいて、右手オブジェクト５２ｄの位置を変化させる。この結果、プレイヤオブジェクト５２ｂは、図８に示すように、弓オブジェクト５２ｇを引いた姿勢となる。ユーザは、弓を引く姿勢のまま、サブコントローラ４のＣボタン４２ｃを押すことで、弓オブジェクト５２ｇから矢オブジェクト５２ｆを発射させることができる。
【００８３】
矢オブジェクト５２ｆの飛距離及び発射方向は、相対位置情報Ｒ１に基づいて決定される。具体的には、矢オブジェクト５２ｆの飛距離は、相対位置情報Ｒ１に含まれる距離情報（距離Ｄ）基づいて決定される。距離Ｄは、ユーザが弓を引く姿勢を取った場合における右手６１と左手６２との距離に対応する。距離Ｄから変換された仮想距離Ｄｖは、プレイヤオブジェクト５２ｂが弓オブジェクト５２ｇの弦を引く強さに対応する。したがって、制御部２１は、仮想距離Ｄｖに基づいて飛距離を決定することができる。
【００８４】
つまり、ユーザは、メインコントローラ３とサブコントローラ４との距離を調整することによって、矢オブジェクト５２ｆの飛距離をコントロールすることができる。ユーザは、的オブジェクト５２ｃに矢オブジェクト５２ｆを当てるためには、距離Ｄを一定の距離より大きく保った上で、Ｃボタン４２ｃを押す必要がある。
【００８５】
矢オブジェクト５２ｆの発射方向は、相対位置情報Ｒ１に含まれる方位情報（方位角Ａ）によって決定される。制御部２１は、方位情報をゲーム空間５２ａに対応する仮想方位情報に変換する。矢オブジェクト５２ｆの発射方向は、仮想方位情報に基づいて決定される。つまり、矢オブジェクト５２ｆは、右手オブジェクト５２ｄから左手オブジェクト５２ｅの方向に発射される。
【００８６】
また、矢オブジェクト５２ｆの発射方向を決定する際に、メインコントローラ３の傾き情報を使用してもよい。たとえば、ユーザが、Ｘ軸を水平方向と平行にした状態でメインコントローラ３を持っている場合、制御部２１は、矢オブジェクト５２ｆを水平方向に発射させてもよい。あるいは、方位情報と傾き情報との両者を用いて、矢オブジェクト５２ｆの発射方向を決定してもよい。
【００８７】
このように、アーチェリーゲームでは、右手６１と左手６２との位置関係に基づいて矢オブジェクト５２ｆの移動を制御することができる。したがって、ゲームシステム１は、非常にリアリティの高いアーチェリーゲームを提供することができる。
【００８８】
｛２．３．ロッククライミングゲーム｝
ロッククライミングゲームは、ロッククライミングを疑似的に体験することができるゲームである。ロッククライミングゲームでは、サブコントローラ４の相対位置を示す相対位置情報Ｒ１と、メインコントローラ３の相対位置を示す相対位置情報Ｒ２の両者が用いられる。
【００８９】
まず、ユーザは、ロッククライミングゲームプログラムが格納された光ディスク６を光ディスクドライブ２２にセットする。これにより、ロッククライミングゲームが開始される。以下、制御部２１における処理は、ロッククライミングゲームプログラムの実行による処理である。
【００９０】
図９は、ロッククライミングゲームの操作方法を説明する図である。図９では、メインコントローラ３、サブコントローラ４、及び画面５ａのみを表示している。ロッククライミングゲームが開始されると、制御部２１は、ロッククライミングゲーム用のゲーム空間５３ａを生成する。制御部２１は、プレイヤオブジェクト５３ｂと、岩壁オブジェクト５３ｃを生成する。プレイヤオブジェクト５３ｂは、ユーザの操作対象であり、右手オブジェクト５３ｄ及び左手オブジェクト５３ｅを含む。プレイヤオブジェクト５３ｂ及び岩壁オブジェクト５３ｃは、ゲーム空間５３ａのデフォルトの位置に配置される。画面５ａには、プレイヤオブジェクト５３ｂが岩壁オブジェクト５３ｃに掴まっている映像が表示される。
【００９１】
岩壁オブジェクト５３ｃには、プレイヤオブジェクト５３ｂが掴むことができるホールドポイントとして、突起５３ｆ，５３ｇが設けられている。突起５３ｆ，５３ｇの他に、ホールドポイントとして岩壁オブジェクト５３ｃに窪みなどを設けてもよい。
【００９２】
ユーザは、右手６１にメインコントローラ３を持ち、左手６２にサブコントローラ４を持ってロッククライミングゲームをプレイする。メインコントローラ３が右手オブジェクト５３ｄに対応する。サブコントローラ４は、左手オブジェクト５３ｅに対応する。ユーザは、各コントローラ３，４を動かして、突起５３ｆ，５３ｇのうちプレイヤオブジェクト５３ｂが掴む突起を指定する。プレイヤオブジェクト５３ｂは、右手オブジェクト５３ｄ及び左手オブジェクト５３ｅが掴む突起５３ｆ，５３ｇをユーザの操作に応じて変えていくことで、岩壁オブジェクト５３ｃを登る。
【００９３】
まず、ユーザは、メインコントローラ３又はサブコントローラ４のボタンを押して、操作対象の手オブジェクトを指定する。右手オブジェクト５３ｄを動かす場合、ユーザは、メインコントローラ３のＡボタン３２ａを押せばよい。この場合、右手オブジェクト５２ｄの位置は、左手オブジェクト５３ｅの仮想位置と、相対位置情報Ｒ２とに基づいて決定される。
【００９４】
ユーザは、サブコントローラ４を固定したまま、メインコントローラ３を動かす。制御部２１は、左手オブジェクト５３ｅの仮想位置と、相対位置情報Ｒ２から変換された仮想相対位置情報の変化に応じて、右手オブジェクト５３ｄを移動させる。たとえば、ユーザがメインコントローラ３を矢印Ｈの方向（上方向）に動かした場合、右手オブジェクト５３ｄは、矢印５３ｈの方向に移動する。
【００９５】
制御部２１は、右手オブジェクト５３ｄと突起５３ｇとの距離が所定の距離以下となった場合、振動部３７を振動させる。これにより、ユーザは、右手オブジェクト５３ｄが突起５３ｇを掴むことができることを認識できる。ユーザは、Ａボタン３２ａを押すことにより、右手オブジェクト５３ｄで突起５３ｇを掴むことができる。
【００９６】
次に、ユーザは、Ｃボタン４２ｃを押す。これにより、操作対象が左手オブジェクト５３ｅに変化する。左手オブジェクト５３ｅの仮想位置が、右手オブジェクト５３ｄの仮想位置と相対位置情報Ｒ１とに基づいて決定される。左手オブジェクト５３ｅが突起５３ｆを掴むための操作方法は、上述の手順と同様である。
【００９７】
以下、右手オブジェクト５３ｄ及び左手オブジェクト５３ｅを交互に操作対象として、メインコントローラ３及びサブコントローラ４を動かす。これにより、ユーザは、実際にロッククライミングをしているように、プレイヤオブジェクト５３ｂに岩壁オブジェクト５３ｃを登らせることができる。
【００９８】
｛２．４．カーリングゲーム｝
カーリングゲームは、カーリングを疑似的に体験することができるゲームである。カーリングゲームでは、メインコントローラ３の相対位置を示す相対位置情報Ｒ２が用いられる。
【００９９】
まず、ユーザは、カーリングゲームプログラムが格納された光ディスク６を光ディスクドライブ２２にセットする。これにより、カーリングゲームが開始される。以下、制御部２１における処理は、カーリングゲームプログラムの実行による処理である。
【０１００】
図１０は、カーリングゲームの操作方法を説明する図である。図１０では、メインコントローラ３、サブコントローラ４、及び画面５ａのみを表示している。カーリングゲームが開始されると、制御部２１は、カーリングのリンク５４ｂが設けられたゲーム空間５４ａを生成する。制御部２１は、プレイヤオブジェクト５４ｃと、ブラシオブジェクト５４ｄと、ストーンオブジェクト５４ｅ，５４ｆ，５４ｇとを生成する。プレイヤオブジェクト５４ｃは、リンク５４ｂにおけるユーザの位置を示すために用いられる。ユーザの操作対象は、ブラシオブジェクト５４ｄである。
【０１０１】
カーリングゲームでは、メインコントローラ３がブラシの役割を有する。ユーザは、スイーパーとしてカーリングゲームをプレイする。サブコントローラ４は、ベルトなどを用いてユーザの腹部に固定される。サブコントローラ４は、プレイヤオブジェクト５４ｃに対応する。メインコントローラ３の原点Ｏ（図５参照）は、ブラシオブジェクト５４ｄのヘッド（リンク５４ｂを掃く部分）に対応する。
【０１０２】
図１０において、砂地模様で示すストーンオブジェクト５４ｅ，５４ｆは、ユーザが所属するユーザチームのストーンである。ハッチングで示すストーンオブジェクト５４ｇは、相手チームのストーンである。ストーンオブジェクト５４ｅ，５４ｇは、リンク５４ｂ上の同心円が描かれた的（ハウス）の近傍にランダムに配置される。
【０１０３】
図示しないユーザチームのプレイヤオブジェクトがリンク５４ｂ上でストーンオブジェクト５４ｆを滑らせる。これにより、ストーンオブジェクト５４ｆが、一定の速度で左から右方向に移動する。
【０１０４】
プレイヤオブジェクト５４ｃは、ストーンオブジェクト５４ｆの進行方向右側（画面５ａでは下側）に位置し、ストーンオブジェクト５４ｆとともにリンク５４ｂの上を移動する。プレイヤオブジェクト５４ｃは、ブラシオブジェクト５４ｄを保持している。ブラシオブジェクト５４ｄのヘッダの位置は、相対位置情報Ｒ２と、サブコントローラ４に対応するプレイヤオブジェクト５４ｃの仮想位置とに基づいて決定される。
【０１０５】
ユーザは、ブラシの役割を有するメインコントローラ３を前後に動かす。これにより、相対位置情報Ｒ２が変化する。ブラシオブジェクト５４ｄのヘッダの位置は、相対位置情報Ｒ２及びプレイヤオブジェクト５４ｃの仮想位置の変化に応じて変化する。これにより、ユーザは、ブラシオブジェクト５４ｄを用いてリンク５４ｂを掃くことができる。
【０１０６】
ユーザは、メインコントローラ３を前後に動かす位置を変えることにより、ブラシオブジェクト５４ｄが掃く位置を決めることができる。つまり、ユーザは、リンク５４ｂを掃く位置を変えることにより、ストーンオブジェクト５４ｆの動きを制御することができる。
【０１０７】
たとえば、ストーンオブジェクト５４ｆをカーブを描きながら移動させたい場合、ストーンの進行方向の右側（画面５ａでは下側）の氷をブラシオブジェクト５４ｄで掃けばよい。この場合、ユーザは、メインコントローラ３を腹部に引きつけながらメインコントローラ３を前後させる。また、ストーンオブジェクト５４ｆの正面の氷を掃くことにより、ストーンの移動距離を延ばすことができる。
【０１０８】
このように、ユーザは、単にメインコントローラ３を動かすだけでなく、メインコントローラ３を動かす位置を変えることで、リンク５４ｂを掃く位置を変えることができる。したがって、実際のカーリングの競技のようにストーンオブジェクト５４ｆの動きをコントロールすることができるため、ゲームシステム１は、よりリアリティの高いカーリングゲームを提供することができる。
【０１０９】
｛２．５．柔道ゲーム｝
柔道ゲームは、様々な柔道の投げ技を仮想的に体験することができるゲームである。柔道ゲームでは、メインコントローラ３の相対位置を示す相対位置情報Ｒ２が用いられる。
【０１１０】
まず、ユーザは、柔道ゲームプログラムが格納された光ディスク６を光ディスクドライブ２２にセットする。これにより、柔道ゲームが開始される。以下、制御部２１における処理は、柔道ゲームプログラムの実行による処理である。
【０１１１】
図１１は、柔道ゲームの操作方法を説明する図である。図１１では、メインコントローラ３、サブコントローラ４、及び画面５ａのみを表示している。柔道ゲームが開始されると、制御部２１は、柔道ゲーム用のゲーム空間５５ａを生成する。制御部２１は、プレイヤオブジェクト５５ｂと、対戦相手オブジェクト５５ｃとを生成する。対戦相手オブジェクト５５ｃは、ゲーム空間５５ａのデフォルトの位置に配置される。画面５ａには、プレイヤオブジェクト５５ｂの左手のみが表示されている。
【０１１２】
ユーザは、メインコントローラ３を右手６１に持ち、サブコントローラ４を左手６２に持ちながら、柔道ゲームをプレイする。メインコントローラ３は、プレイヤオブジェクト５５ｂの右手に対応する。サブコントローラ４は、プレイヤオブジェクト５５ｂの左手に対応する。ユーザは、メインコントローラ３及びサブコントローラ４を動かすことにより、対戦相手オブジェクト５５ｃと組み合う。
【０１１３】
初期状態では、ユーザに対応するプレイヤオブジェクト５５ｂの左手が、対戦相手オブジェクト５５ｃの右袖５５ｄを掴んでいる。ユーザは、サブコントローラ４の位置を固定しながらメインコントローラ３を動かして、対戦相手オブジェクト５５ｃのうちプレイヤオブジェクト５５ｂの右手が掴む部位を指定する。プレイヤオブジェクト５５ｂの右手が掴む部位に応じて、プレイヤオブジェクト５５ｂが対戦相手オブジェクト５５ｃを投げるときの投げ技が決定さえる。
【０１１４】
ユーザは、メインコントローラ３を動かして、プレイヤオブジェクト５５ｂの右手が掴む対戦相手オブジェクト５５ｃの部位を指定する。プレイヤオブジェクト５５ｂの左手の仮想位置と、相対位置情報Ｒ２の変化とに基づいて、プレイヤオブジェクト５５ｂの右手の位置が変化する。
【０１１５】
たとえば、対戦相手オブジェクト５５ｃの襟元５５ｅを掴む場合、ユーザは、メインコントローラ３を動かしてプレイヤオブジェクト５５ｂの右手を襟元５５ｅの位置まで移動させる。そして、襟元５５ｅとプレイヤオブジェクト５５ｂの右手とが所定の距離より短くなったときにＡボタン３２ａを押すことにより、プレイヤオブジェクト５５ｂの右手で襟元５５ｅを掴むことができる。制御部２１は、プレイヤオブジェクト５５ｂの左手が右袖５５ｄを掴み、プレイヤオブジェクト５５ｂの右手が襟元５５ｅを掴んでいるため、投げ技を背負い投げに決定する。制御部２１は、プレイヤオブジェクト５５ｂが背負い投げで対戦相手オブジェクト５５ｃを投げる処理を画面５ａに表示する。
【０１１６】
プレイヤオブジェクト５５ｂの右手が掴む部位に基づいて、投げ技が決定される。たとえば、プレイヤオブジェクト５５ｂの右手が対戦相手オブジェクト５５ｃの左肩５５ｆを掴んだ場合、投げ技は大外刈りに決定される。プレイヤオブジェクト５５ｂの右手が右袖５５ｄを掴んだ場合、投げ技は一本背負い投げに決定される。
【０１１７】
柔道ゲームにおいて、難易度を設定できるようにしてもよい。たとえば、制御部２１は、対戦相手オブジェクト５５ｃの右手などを動かしてもよい。この場合、対戦相手オブジェクト５５ｃを掴む難易度が上昇する。また、所定の時間内に、プレイヤオブジェクト５５ｂが対戦相手オブジェクト５５ｃを掴めない場合、対戦相手オブジェクト５５ｃが、プレイヤオブジェクト５５ｂを投げてもよい。
【０１１８】
このように、柔道ゲームでは、ユーザは柔道の組み合いを仮想的に行うことができる。ユーザは、柔道の受け身の取り方などを知らなくても、気軽に柔道を楽しむことができる。
【０１１９】
本実施の形態では、メインコントローラ３が位置検出部３５を備え、サブコントローラ４が位置指示部４４を備える例について説明した。しかし、サブコントローラ４が位置検出部を備え、メインコントローラ３が位置指示部を備えていてもよい。
【０１２０】
本実施の形態では、サブコントローラ４は、ユーザにより入力された操作情報を、通信ケーブル４０を介してメインコントローラ３に送信する例について説明した、しかし、サブコントローラ４は、無線通信部を備えてもよい。この場合、サブコントローラ４に入力された操作情報は、無線通信によりゲーム装置２へ直接送信される。メインコントローラ３とサブコントローラ４とを通信ケーブル４０で接続する必要がないため、メインコントローラ３及びサブコントローラ４を動かす時の自由度を高めることができる。
【符号の説明】
【０１２１】
１  ゲームシステム
２  ゲーム装置
３  メインコントローラ
４  サブコントローラ
２１，３１，４１  制御部
２２  光ディスクドライブ
２３  出力部
３２，４２  操作部
３３  無線通信部
３４，４３  有線通信部
３５  位置検出部
３６，４５  加速度センサ
３７  振動部
４４  位置指示部
【図１】
0005843342.tif 000002
【図２】
0005843342.tif 000003
【図３】
0005843342.tif 000004
【図４Ａ】
0005843342.tif 000005
【図４Ｂ】
0005843342.tif 000006
【図５】
0005843342.tif 000007
【図６】
0005843342.tif 000008
【図７】
0005843342.tif 000009
【図８】
0005843342.tif 000010
【図９】
0005843342.tif 000011
【図１０】
0005843342.tif 000012
【図１１】
0005843342.tif 000013