(57)【要約】【課題】複数人でプレイ可能なゲームにおいて、各プレイヤにとって見やすいゲーム画像を表示する。【解決手段】ゲームシステムは、ゲーム装置と、操作装置と、ハンドヘルドデバイスとを含む。ゲーム装置は、操作装置を操作する第１プレイヤの操作を表す第１操作データと、ハンドヘルドデバイスを操作する第２プレイヤの操作を表す第２操作データとに基づいてゲーム制御処理を実行する。ゲーム装置は、ゲーム制御処理の結果を表す仮想のゲーム空間の画像であって第１プレイヤのための第１ゲーム画像を、当該ゲーム空間に設定される第１仮想カメラに基づいて生成する。また、ゲーム空間の画像であって第２プレイヤのための第２ゲーム画像を、当該ゲーム空間に設定される第２仮想カメラに基づいて生成する。第１ゲーム画像は、ハンドヘルドデバイスとは別体の第１表示装置に表示される。第２ゲーム画像は、ハンドヘルドデバイスの第２表示装置に表示される。【選択図】図１
2012050804.tif 000002
【特許請求の範囲】
【請求項１】
ゲーム装置と、操作装置と、ハンドヘルドデバイスとを含むゲームシステムであって、
前記ゲーム装置は、
前記操作装置および前記ハンドヘルドデバイスから送信されてくるデータを受信する第１受信部と、
前記操作装置を操作する第１プレイヤの操作を表す第１操作データと、前記ハンドヘルドデバイスを操作する第２プレイヤの操作を表す第２操作データとに基づいてゲーム制御処理を実行するゲーム処理部と、
前記ゲーム制御処理の結果を表す仮想のゲーム空間の画像であって前記第１プレイヤのための第１ゲーム画像を、当該ゲーム空間に設定される第１仮想カメラに基づいて生成する第１画像生成部と、
前記ゲーム空間の画像であって前記第２プレイヤのための第２ゲーム画像を、当該ゲーム空間に設定される第２仮想カメラに基づいて生成する第２画像生成部と、
前記ハンドヘルドデバイスとは別体の第１表示装置に前記第１ゲーム画像を出力する第１画像出力部と、
前記ハンドヘルドデバイスに前記第２ゲーム画像を出力する第２画像出力部とを備え、
前記操作装置は、
前記第１操作データを出力する第１操作データ出力部と、
前記第１操作データを前記ゲーム装置へ送信する第１操作データ送信部とを備え、
前記ハンドヘルドデバイスは、
前記第２操作データを出力する第２操作データ出力部と、
前記第２操作データを前記ゲーム装置へ送信する第２操作データ送信部と、
前記ゲーム装置から前記第２ゲーム画像を受信する第２受信部と、
前記ハンドヘルドデバイスに設けられる第２表示装置に前記第２ゲーム画像を表示させる表示処理部とを備える、ゲームシステム。
【請求項２】
前記第２操作データ出力部は、前記ハンドヘルドデバイスの動きに応じて値が変化するデータを出力するセンサを含み、
前記第２操作データは、前記センサの出力データを含み、
前記ゲーム処理部は、前記第２操作データに基づいて、前記ハンドヘルドデバイスの動きに応じたゲーム制御処理を実行する、請求項１に記載のゲームシステム。
【請求項３】
前記第２操作データ出力部は、加速度センサおよび／またはジャイロセンサを含み、
前記第２操作データは、加速度センサが検知した加速度データおよび／またはジャイロセンサが検知した角速度データを含む、請求項２に記載のゲームシステム。
【請求項４】
前記ゲーム処理部は、前記第２操作データに基づいて、前記ハンドヘルドデバイスの動きに応じて前記第２仮想カメラを動かすゲーム制御処理を実行する、請求項２または請求項３に記載のゲームシステム。
【請求項５】
前記ゲーム処理部は、第１操作データに基づいて動作が制御される所定のオブジェクトが第１ゲーム画像に含まれるように前記第１仮想カメラを設定する、請求項１から請求項４のいずれか１項に記載のゲームシステム。
【請求項６】
前記第１操作データ出力部は、前記操作装置の動きに応じて値が変化するデータを出力するセンサを含み、
前記第１操作データは、前記センサの出力データを含み、
前記ゲーム処理部は、前記ゲーム空間内に配置されるオブジェクトを前記第１操作データに基づいて制御するゲーム制御処理を実行する、請求項２から請求項５のいずれか１項に記載のゲームシステム。
【請求項７】
前記第１操作データ出力部は、加速度センサおよび／またはジャイロセンサを含み、
前記第１操作データは、加速度センサが検知した加速度データおよび／またはジャイロセンサが検知した角速度データを含む、請求項６に記載のゲームシステム。
【請求項８】
前記ゲーム処理部は、
前記ハンドヘルドデバイスの動きに応じて変化するように所定の移動オブジェクトの移動方向を決定し、当該移動オブジェクトを移動させる第１処理部と、
前記移動オブジェクトを含む第１ゲーム画像が生成されるように前記第１仮想カメラを設定する第２処理部と、
前記操作装置の動きに応じて所定の操作オブジェクトを動かす第３処理部と、
前記移動オブジェクトと前記操作オブジェクトとの接触を判定し、判定結果に応じたゲーム画像を生成する第４処理部とを含む、請求項６または請求項７に記載のゲームシステム。
【請求項９】
前記ゲーム処理部は、
前記操作装置の動きに応じて決められる所定の移動オブジェクトの挙動を前記第１操作データに基づいて計算し、当該挙動に基づいて前記移動オブジェクトを移動させる第５処理部と、
前記ハンドヘルドデバイスの動きに応じて前記第２仮想カメラを動かす第６処理部と、
前記第２仮想カメラが前記移動オブジェクトを含む所定範囲を向いているか否かを判定し、判定結果に応じたゲーム画像を生成する第７処理部とを含む、請求項６から請求項８のいずれか１項に記載のゲームシステム。
【請求項１０】
前記ゲーム処理部は、前記第１操作データに基づいて前記操作装置を振る操作を検出するとともに、前記第２操作データに基づいて前記ハンドヘルドデバイスを傾ける操作を検出し、当該振る操作および当該傾ける操作に応じたゲーム制御処理を実行する、請求項６または請求項７に記載のゲームシステム。
【請求項１１】
前記ゲーム装置は、
ゲーム空間内に配置される各オブジェクトのうちで、前記第１ゲーム画像において描画しないオブジェクトを表す第１表示設定データと、当該各オブジェクトのうちで、前記第２ゲーム画像において描画しないオブジェクトを表す第２表示設定データとをそれぞれ設定する表示設定部をさらに備え、
前記第１画像生成部は、前記第１表示設定データに基づいて前記第１ゲーム画像を生成し、
前記第２画像生成部は、前記第２表示設定データに基づいて前記第２ゲーム画像を生成する、請求項１から請求項１０のいずれか１項に記載のゲームシステム。
【請求項１２】
前記第２操作データ出力部は、前記第２表示装置の画面上に設けられるタッチパネルを含み、
前記第２操作データには、前記タッチパネルに対する入力位置を表すタッチデータが含まれ、
前記ゲーム処理部は、前記タッチデータに基づくゲーム制御処理を実行する、請求項１から請求項１１のいずれか１項に記載のゲームシステム。
【請求項１３】
前記第２操作データ出力部は、少なくとも１つの操作ボタンを含み、
前記第２操作データには、前記操作ボタンに対する入力の有無を表す操作ボタンデータが含まれる、請求項１から請求項１２のいずれか１項に記載のゲームシステム。
【請求項１４】
前記第１データ出力部は、撮像手段を含み、
前記第１操作データは、前記撮像手段が撮像した画像内における所定の撮像対象の位置を表すデータを含み、
前記ゲーム処理は、前記撮像対象の位置を表すデータに基づいて、前記第１表示装置の画面上における位置を算出するゲーム制御処理を実行する、請求項１から請求項１３のいずれか１項に記載のゲームシステム。
【請求項１５】
自身の動きに応じて値が変化するデータを含む第１操作データを送信可能な操作装置と、自身の動きに応じて値が変化するデータを含む第２操作データを送信可能なハンドヘルドデバイスとに対して通信可能なゲーム装置であって、
前記操作装置およびハンドヘルドデバイスから前記第１操作データおよび第２操作データをそれぞれ取得する操作データ取得部と、
仮想のゲーム空間内に配置されるオブジェクトを前記第１操作データに基づいて制御する第１オブジェクト制御部と、
前記ゲーム空間内に第１仮想カメラを設定する第１仮想カメラ設定部と、
前記操作装置を操作する第１プレイヤのための第１ゲーム画像を前記第１仮想カメラに基づいて生成する第１画像生成部と、
前記第２操作データに基づいて、前記ゲーム空間内において第２仮想カメラを前記ハンドヘルドデバイスの動きに応じて移動させるように制御する第２仮想カメラ設定部と、
前記ハンドヘルドデバイスを操作する第２プレイヤのための第２ゲーム画像を前記第２仮想カメラに基づいて生成する第２画像生成部と、
前記ハンドヘルドデバイスとは別体の第１表示装置に前記第１ゲーム画像を出力する第１画像出力部と、
前記ハンドヘルドデバイスに設けられる第２表示装置に表示させるために前記第２ゲーム画像を前記ハンドヘルドデバイスに出力する第２画像出力部とを備える、ゲーム装置。
【請求項１６】
前記ハンドヘルドデバイスの動きに応じて変化するように所定の移動オブジェクトの移動方向を決定し、当該移動オブジェクトを移動させる第２オブジェクト制御部をさらに備え、
前記第１仮想カメラ設定部は、前記移動オブジェクトを含む第１ゲーム画像が生成されるように前記第１仮想カメラを設定し、
前記第１オブジェクト制御部は、前記操作装置の動きに応じて所定の操作オブジェクトを動かし、
前記移動オブジェクトと前記操作オブジェクトとの接触を判定し、判定結果に応じたゲーム画像を生成する第１判定処理部をさらに備える、請求項１５に記載のゲーム装置。
【請求項１７】
前記第１オブジェクト制御部は、前記操作装置の動きに応じて決められる所定の移動オブジェクトの挙動を前記第１操作データに基づいて計算し、当該挙動に基づいて前記移動オブジェクトを移動させ、
前記第２仮想カメラが前記移動オブジェクトを含む所定範囲を向いているか否かを判定し、判定結果に応じたゲーム画像を生成する第２判定処理部をさらに備える、請求項１５または請求項１６に記載のゲーム装置。
【請求項１８】
自身の動きに応じて値が変化するデータを含む第１操作データを送信可能な操作装置と、自身の動きに応じて値が変化するデータを含む第２操作データを送信可能なハンドヘルドデバイスとに対して通信可能なゲーム装置のコンピュータにおいて実行されるゲームプログラムであって、
前記操作装置およびハンドヘルドデバイスから前記第１操作データおよび第２操作データをそれぞれ取得する操作データ取得手段と、
仮想のゲーム空間内に配置されるオブジェクトを前記第１操作データに基づいて制御する第１オブジェクト制御手段と、
前記ゲーム空間内に第１仮想カメラを設定する第１仮想カメラ設定手段と、
前記操作装置を操作する第１プレイヤのための第１ゲーム画像を前記第１仮想カメラに基づいて生成する第１画像生成手段と、
前記第２操作データに基づいて、前記ゲーム空間内において第２仮想カメラを前記ハンドヘルドデバイスの動きに応じて移動させるように制御する第２仮想カメラ設定手段と、
前記ハンドヘルドデバイスを操作する第２プレイヤのための第２ゲーム画像を前記第２仮想カメラに基づいて生成する第２画像生成手段と、
前記ハンドヘルドデバイスとは別体の第１表示装置に前記第１ゲーム画像を出力する第１画像出力手段と、
前記ハンドヘルドデバイスに設けられる第２表示装置に表示させるために前記第２ゲーム画像を前記ハンドヘルドデバイスに出力する第２画像出力手段として前記コンピュータを機能させる、ゲームプログラム。
【請求項１９】
前記ゲームプログラムは、前記ハンドヘルドデバイスの動きに応じて変化するように所定の移動オブジェクトの移動方向を決定し、当該移動オブジェクトを移動させる第２オブジェクト制御手段として前記コンピュータをさらに機能させ、
前記第１仮想カメラ設定手段は、前記移動オブジェクトを含む第１ゲーム画像が生成されるように前記第１仮想カメラを設定し、
前記第１オブジェクト制御手段は、前記操作装置の動きに応じて所定の操作オブジェクトを動かし、
前記移動オブジェクトと前記操作オブジェクトとの接触を判定し、判定結果に応じたゲーム画像を生成する第１判定処理手段として前記コンピュータをさらに機能させる、請求項１８に記載のゲームプログラム。
【請求項２０】
前記第１オブジェクト制御手段は、前記操作装置の動きに応じて決められる所定の移動オブジェクトの挙動を前記第１操作データに基づいて計算し、当該挙動に基づいて前記移動オブジェクトを移動させ、
前記第２仮想カメラが前記移動オブジェクトを含む所定範囲を向いているか否かを判定し、判定結果に応じたゲーム画像を生成する第２判定処理手段として前記コンピュータをさらに機能させる、請求項１８または請求項１９に記載のゲームプログラム。
【請求項２１】
ゲーム装置と、操作装置と、ハンドヘルドデバイスとを含むゲームシステムにおいて実行されるゲーム処理方法であって、
前記ゲーム装置は、
前記操作装置および前記ハンドヘルドデバイスから送信されてくるデータを受信する第１受信ステップと、
前記操作装置を操作する第１プレイヤの操作を表す第１操作データと、前記ハンドヘルドデバイスを操作する第２プレイヤの操作を表す第２操作データとに基づいてゲーム制御処理を実行するゲーム処理ステップと、
前記ゲーム制御処理の結果を表す仮想のゲーム空間の画像であって前記第１プレイヤのための第１ゲーム画像を、当該ゲーム空間に設定される第１仮想カメラに基づいて生成する第１画像生成ステップと、
前記ゲーム空間の画像であって前記第２プレイヤのための第２ゲーム画像を、当該ゲーム空間に設定される第２仮想カメラに基づいて生成する第２画像生成ステップと、
前記ハンドヘルドデバイスとは別体の第１表示装置に前記第１ゲーム画像を出力する第１画像出力ステップと、
前記ハンドヘルドデバイスに前記第２ゲーム画像を出力する第２画像出力ステップとを実行し、
前記操作装置は、
前記第１操作データを出力する第１操作データ出力ステップと、
前記第１操作データを前記ゲーム装置へ送信する第１操作データ送信ステップとを実行し、
前記ハンドヘルドデバイスは、
前記第２操作データを出力する第２操作データ出力ステップと、
前記第２操作データを前記ゲーム装置へ送信する第２操作データ送信ステップと、
前記ゲーム装置から前記第２ゲーム画像を受信する第２受信ステップと、
前記ハンドヘルドデバイスに設けられる第２表示装置に前記第２ゲーム画像を表示させる表示処理ステップとを実行する、ゲーム処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、２つの表示画面に画像をそれぞれ表示させるゲームシステム、ゲーム装置、ゲームプログラム、および、ゲーム処理方法に関する。
【背景技術】
【０００２】
従来、野球ゲームをプレイヤに行わせるための技術として、例えば特許文献１に記載のものがある。特許文献１には、プレイヤが把持可能なコントローラを用いてバットを操作する技術が記載されている。なお、特許文献１に記載の野球ゲームでは、従来の野球ゲームでは一般的な、打者側から投手を見た場合のゲーム画像が表示される（特許文献１の図９参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−２８９４１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方、従来、複数人でプレイ可能なゲームもあるが、従来のゲームでは単一の表示装置にゲーム画像が表示されるため、いずれかのプレイヤにとってゲーム画像が見にくく、ゲームがやりにくくなるという課題があった。例えば、特許文献１の野球ゲームにおいては、打者側から投手を見た場合のゲーム画像が表示されるので、仮に２人のプレイヤが打者と投手とをそれぞれ操作する場合には、投手を操作するプレイヤにとってはゲーム画像が見にくく、ゲーム操作が行いにくくなる。
【０００５】
それ故、本発明の目的は、複数人でプレイ可能なゲームにおいて、各プレイヤにとって見やすいゲーム画像を表示することができるゲームシステム、ゲーム装置、ゲームプログラム、および、ゲーム処理方法を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の（１）〜（１７）の構成を採用した。
【０００７】
（１）
本発明の一例は、ゲーム装置と、操作装置と、ハンドヘルドデバイスとを含むゲームシステムである。ゲーム装置は、第１受信部と、ゲーム処理部と、第１画像生成部と、第２画像生成部と、第１画像出力部と、第２画像出力部とを備える。第１受信部は、操作装置およびハンドヘルドデバイスから送信されてくるデータを受信する。ゲーム処理部は、操作装置を操作する第１プレイヤの操作を表す第１操作データと、ハンドヘルドデバイスを操作する第２プレイヤの操作を表す第２操作データとに基づいてゲーム制御処理を実行する。第１画像生成部は、ゲーム制御処理の結果を表す仮想のゲーム空間の画像であって第１プレイヤのための第１ゲーム画像を、当該ゲーム空間に設定される第１仮想カメラに基づいて生成する。第２画像生成部は、ゲーム空間の画像であって第２プレイヤのための第２ゲーム画像を、当該ゲーム空間に設定される第２仮想カメラに基づいて生成する。第１画像出力部は、ハンドヘルドデバイスとは別体の第１表示装置に第１ゲーム画像を出力する。第２画像出力部は、ハンドヘルドデバイスに第２ゲーム画像を出力する。また、操作装置は、第１操作データ出力部と、第１操作データ送信部とを備える。第１操作データ出力部は、第１操作データを出力する。第１操作データ送信部は、第１操作データをゲーム装置へ送信する。ハンドヘルドデバイスは、第２操作データ出力部と、第２操作データ送信部と、第２受信部と、表示処理部とを備える。第２操作データ出力部は、第２操作データを出力する。第２操作データ送信部は、第２操作データをゲーム装置へ送信する。第２受信部は、ゲーム装置から第２ゲーム画像を受信する。表示処理部は、ハンドヘルドデバイスに設けられる第２表示装置に第２ゲーム画像を表示させる。
【０００８】
上記「ゲーム装置」は、ゲーム処理を実行し、ゲーム処理に基づいて画像を生成する情報処理装置であればどのようなものであってもよい。すなわち、上記ゲーム装置は、ゲーム専用の情報処理装置であってもよいし、一般的なパーソナルコンピュータのような多用途の情報処理装置であってもよい。
上記「操作装置」は、操作データ（第１操作データ）をゲーム装置へ送信可能な装置であればよく、ゲーム装置との通信は有線であっても無線であってもよい。
上記「ハンドヘルドデバイス」は、後述する実施形態では携帯型のゲーム装置であるが、ゲーム処理（ゲームプログラム）を実行する機能を有していなくてもよい。すなわち、ゲーム装置のゲームコントローラとして用いられるハンドヘルドデバイスであってもよいし、後述する変形例における端末装置がハンドヘルドデバイスとして用いられてもよい。
上記「ゲームシステム」は、ゲーム装置、操作装置、およびハンドヘルドデバイスを含んでいればよく、第１ゲーム画像を表示する上記「第１表示装置」を含んでいなくともよいし、含んでいてもよい。すなわち、ゲームシステムは、当該第１表示装置を含まない形態で提供されてもよいし、含む形態で提供されてもよい。
上記「ゲーム処理部」は、後述する実施形態のような野球ゲームのためのゲーム制御処理（ステップＳ２）に限らず、第１操作データおよび第２操作データに基づく任意のゲーム制御処理を実行する情報処理手段であればよい。
上記「第１表示装置」とは、ハンドヘルドデバイスとは別体であればよく、後述する実施形態におけるテレビ２の他、ゲーム装置によって生成された画像を表示することが可能なものであればどのようなものであってもよい。例えば、第１表示装置は、ゲーム装置と一体として（１つの筐体内に）形成されるものであってもよい。
上記「第１操作データ出力部」は、後述する実施形態における加速度センサ３７、ジャイロセンサユニット６（ジャイロセンサ５５および５６）、撮像情報演算部（赤外光検知手段）３５、操作部３２の他、操作装置に対する操作を検出可能なものであればどのようなものであってもよい。
上記「第２操作データ出力部」は、後述する実施形態における加速度センサ８９、ジャイロセンサ９０、タッチパネル６３、操作ボタン６４、およびアナログスティック６５の他、ハンドヘルドデバイスに対する操作を検出可能なものであればどのようなものであってもよい。
【０００９】
上記（１）の構成によれば、第１表示装置には、仮想のゲーム空間における第１仮想カメラに基づいて生成される第１ゲーム画像が表示されるとともに、ハンドヘルドデバイス第２表示装置には、仮想のゲーム空間における第２仮想カメラに基づいて生成される第２ゲーム画像が表示される。これによれば、２つの仮想カメラを用いることによって、単一のゲーム空間を異なる視点から見た異なる２種類のゲーム画像を生成することが可能となる。したがって、上記（１）の構成によれば、各仮想カメラを適切に設定することによって、各プレイヤのそれぞれについて見やすいゲーム画像を表示することができる。
【００１０】
（２）
第２操作データ出力部は、ハンドヘルドデバイスの動きに応じて値が変化するデータを出力するセンサを含んでいてもよい。このとき、第２操作データは、センサの出力データを含む。ゲーム処理部は、第２操作データに基づいて、ハンドヘルドデバイスの動きに応じたゲーム制御処理を実行する。
【００１１】
上記「ハンドヘルドデバイスの動き」とは、ハンドヘルドデバイスの位置の変化と、姿勢の変化とを含む意味である。すなわち、「動き」は位置の変化と姿勢の変化のいずれの意味であってもよく、また、位置および姿勢の両方の変化であってもよい。上記「センサ」は、ゲーム処理部がハンドヘルドデバイスの何らかの動きをセンサ出力から算出（推測）することができるものであればよい。
【００１２】
上記（２）の構成によれば、第２プレイヤは、ハンドヘルドデバイス自体を動かすゲーム操作を行うことができる。このようなゲーム操作によれば、第２プレイヤは直感的な操作でゲームをプレイすることができ、ゲーム操作がより容易になる。
【００１３】
（３）
第２操作データ出力部は、加速度センサおよび／またはジャイロセンサを含んでいてもよい。このとき、第２操作データは、加速度センサが検知した加速度データおよび／またはジャイロセンサが検知した角速度データを含む。
【００１４】
上記（３）の構成によれば、加速度センサあるいはジャイロセンサの検知結果を用いることによって、ゲーム処理部はハンドヘルドデバイスの動きを容易に算出（推測）することができる。
【００１５】
（４）
ゲーム処理部は、第２操作データに基づいて、ハンドヘルドデバイスの動きに応じて第２仮想カメラを動かすゲーム制御処理を実行してもよい。
【００１６】
上記「第２仮想カメラを動かす」とは、第２仮想カメラの位置および／または姿勢を変化させる意味である。
【００１７】
上記（４）の構成によれば、ハンドヘルドデバイスの動きに応じて第２仮想カメラが動く結果、ハンドヘルドデバイスの画面に表示されるゲーム空間の表示範囲がハンドヘルドデバイスの動きに応じて変化することになる。つまり、第２プレイヤは、ハンドヘルドデバイス自体を動かすことでハンドヘルドデバイスの画面内の表示範囲を変化させる操作を行うことができる。したがって、第２プレイヤは、直感的かつ容易な操作で表示範囲を自由に変更することができる。
【００１８】
なお、本発明では、第１表示装置には第１ゲーム画像が表示されるので、第１プレイヤは当該第１ゲーム画像を見てゲームをプレイすることができる。つまり、本発明によれば、２つの画面にそれぞれ別のゲーム画像を表示することができるので、第２プレイヤは第１プレイヤへの支障を気にすることなく、一方の画面の表示範囲を自由に変更することができる。したがって、第２プレイヤは、第１プレイヤへの影響を気にすることなく、ハンドヘルドデバイス側の第２ゲーム画像の表示範囲を自由に変更することができる。
【００１９】
（５）
ゲーム処理部は、第１操作データに基づいて動作が制御される所定のオブジェクトが第１ゲーム画像に含まれるように第１仮想カメラを設定してもよい。
【００２０】
上記「所定のオブジェクト」とは、第１操作データに基づいて動作が制御されるオブジェクトであればよく、第１操作データを用いて直接的に動作が制御されるオブジェクトであっても、第１操作データを用いて間接的に動作が制御されるオブジェクトであってもよい。例えば、後述する実施形態における打者オブジェクト１０１およびバットオブジェクト１０３のように、第１操作データに基づいて直接的に動作が制御されるものでもよい。また例えば、守備シーンにおけるボールオブジェクト１０４のように、第１操作データに基づいて動作が制御されるバットオブジェクト１０３の挙動に基づいて動作が制御されるものでもよい。
【００２１】
上記（５）の構成によれば、第１プレイヤの操作対象あるいは注目対象が第１ゲーム画像に含まれるように第１仮想カメラが設定される。したがって、第１プレイヤにとってより見やすい第１ゲーム画像を表示することができる。
【００２２】
（６）
第１操作データ出力部は、操作装置の動きに応じて値が変化するデータを出力するセンサを含んでいてもよい。このとき、第１操作データは、センサの出力データを含む。ゲーム処理部は、ゲーム空間内に配置されるオブジェクトを操作装置の動きに応じて制御するゲーム制御処理を実行する。
【００２３】
上記「操作装置の動き」とは、操作の位置の変化と、姿勢の変化とを含む意味である。上記「センサ」は、後述する実施形態における撮像情報演算部３５、加速度センサ３７、ならびに、ジャイロセンサ５５および５６のように、ゲーム処理部が操作の何らかの動きをセンサ出力から算出（推測）することができるものであればよい。
【００２４】
上記（６）の構成によれば、第１プレイヤは、操作装置自体を動かすゲーム操作を行うことができる。このようなゲーム操作によれば、第１プレイヤは直感的な操作でゲームをプレイすることができ、ゲーム操作がより容易になる。
【００２５】
（７）
第１操作データ出力部は、加速度センサおよび／またはジャイロセンサを含んでいてもよい。このとき、第１操作データは、加速度センサが検知した加速度データおよび／またはジャイロセンサが検知した角速度データを含む。
【００２６】
上記（７）の構成によれば、加速度センサあるいはジャイロセンサの検知結果を用いることによって、ゲーム処理部は操作装置の動きを容易に算出（推測）することができる。
【００２７】
（８）
ゲーム処理部は、第１処理部と、第２処理部と、第３処理部と、第４処理部とを含んでいてもよい。第１処理部は、ハンドヘルドデバイスの動きに応じて変化するように所定の移動オブジェクトの移動方向を決定し、当該移動オブジェクトを移動させる。第２処理部は、移動オブジェクトを含む第１ゲーム画像が生成されるように第１仮想カメラを設定する。第３処理部は、操作装置の動きに応じて所定の操作オブジェクトを動かす。第４処理部は、移動オブジェクトと操作オブジェクトとの接触を判定し、判定結果に応じたゲーム画像を生成する。
【００２８】
上記「所定の移動オブジェクト」は、後述する実施形態における投球シーンでのボールオブジェクト１０４のように、ハンドヘルドデバイスの動きに応じて変化するように移動方向が決定されるオブジェクトであればよい。
上記「操作オブジェクト」は、後述する実施形態におけるバットオブジェクト１０３のように、操作装置の動きに応じて動かされるオブジェクトであればよい。
【００２９】
上記（８）の構成によれば、第２プレイヤがハンドヘルドデバイスを動かすことで移動オブジェクトの移動方向を操作し、第１プレイヤが操作装置を動かすことで操作オブジェクトを操作して移動オブジェクトに当てる、というゲームを実現することができる。これによれば、例えば後述する実施形態における投球シーンにおける野球ゲームのように、２人のプレイヤが自分用のゲーム画像をそれぞれ見ながら、自身の操作手段を動かして対戦を行うという、新規で興趣性の高いゲームを提供することができる。
【００３０】
また、上記（８）の構成において、第２ゲーム画像に上記同方向を表す画像（例えば、後述する実施形態における目標画像１０５）が含まれる場合には、第２ゲーム画像を第１プレイヤに見えないようにすれば、対戦ゲームにおける戦略性をより高めることができる。第２ゲーム画像が第１プレイヤに見えてしまうと、第２プレイヤの操作内容（具体的には、移動オブジェクトの移動方向）が第１プレイヤに知られてしまうため、第２プレイヤはゲーム上不利になってしまい、戦略性が低くなってしまう。これに対して、上記（８）の構成によれば、第２ゲーム画像はハンドヘルドデバイスの第２表示装置に表示されるので、第１プレイヤからは見えにくく、上記の問題は生じない。このように、上記（８）の構成によれば、一方のプレイヤがそのゲーム画像を見てしまうと他方のプレイヤにとってゲーム上の不都合が生じる場合には、当該ゲーム画像をハンドヘルドデバイスに表示することによって、上記の問題を防止することができる。
【００３１】
（９）
ゲーム処理部は、第５処理部と、第６処理部と、第７処理部とを含んでいてもよい。第５処理部は、操作装置の動きに応じて決められる所定の移動オブジェクトの挙動を第１操作データに基づいて計算し、当該挙動に基づいて移動オブジェクトを移動させる。第６処理部は、ハンドヘルドデバイスの動きに応じて第２仮想カメラを動かす。第７処理部は、第２仮想カメラが移動オブジェクトを含む所定範囲を向いているか否かを判定し、判定結果に応じたゲーム画像を生成する。
【００３２】
上記「所定の移動オブジェクト」は、後述する実施形態における守備シーンでのボールオブジェクト１０４のように、操作装置の動きに応じて挙動が変化するオブジェクトであればよい。
【００３３】
上記（９）の構成によれば、第１プレイヤが操作装置を動かすことで挙動が決められる移動オブジェクトを、第２プレイヤがハンドヘルドデバイスを動かすことで第２仮想カメラを移動オブジェクトの方へ向ける、というゲームを実現することができる。これによれば、例えば後述する実施形態における守備シーンにおける野球ゲームのように、２人のプレイヤが自分用のゲーム画像をそれぞれ見ながら、自身の操作手段を動かして対戦を行うという、新規で興趣性の高いゲームを提供することができる。
【００３４】
（１０）
ゲーム処理部は、第１操作データに基づいて操作装置を振る操作を検出するとともに、第２操作データに基づいてハンドヘルドデバイスを傾ける操作を検出し、当該振る操作および当該傾ける操作に応じたゲーム制御処理を実行してもよい。
【００３５】
上記（１０）の構成によれば、第１プレイヤは操作装置を振る操作によってゲームを行い、第２プレイヤはハンドヘルドデバイスを傾ける操作によってゲームを行う。ここで、本発明においては、第１プレイヤは、操作装置とは別体の第１表示装置を見ながらゲームを行うため、操作装置自身を振る操作を容易に行うことができる。一方、ハンドヘルドデバイスの画面には第２ゲーム画像が表示されるので、第２プレイヤはハンドヘルドデバイスを見ながらゲームを行うため、ハンドヘルドデバイスを振って操作するような操作は行いづらい。そこで、上記（１０）の構成では、第１プレイヤに関しては操作装置を振るゲーム操作を可能とするとともに、第２プレイヤに関してはハンドヘルドデバイスを傾けるゲーム操作を可能としている。これによれば、各装置の特徴に合った、各プレイヤが操作しやすいゲーム操作を提供することができる。
【００３６】
（１１）
ゲーム装置は、ゲーム空間内に配置される各オブジェクトのうちで、第１ゲーム画像において描画しないオブジェクトを表す第１表示設定データと、当該各オブジェクトのうちで、第２ゲーム画像において描画しないオブジェクトを表す第２表示設定データとをそれぞれ設定する表示設定部をさらに備えていてもよい。このとき、第１画像生成部は、第１表示設定データに基づいて第１ゲーム画像を生成する。第２画像生成部は、第２表示設定データに基づいて第２ゲーム画像を生成する。
【００３７】
上記（１１）の構成によれば、表示設定データを２つのゲーム画像毎に設定することによって、描画しないオブジェクトを各ゲーム画像について別々に設定することができる。これによれば、一方のゲーム画像では表示しないオブジェクトを、他方のゲーム画像では適切に表示することが可能となるので、各ゲーム画像を適切に生成することができる。
【００３８】
（１２）
第２操作データ出力部は、第２表示装置の画面上に設けられるタッチパネルを含んでいてもよい。このとき、第２操作データには、タッチパネルに対する入力位置を表すタッチデータが含まれる。ゲーム処理部は、タッチデータに基づくゲーム制御処理を実行する。
【００３９】
上記（１２）の構成によれば、第２プレイヤは、タッチパネルを用いてゲーム操作を行うことができるので、ハンドヘルドデバイスを用いたゲーム操作の操作性をより向上することができる。また、本発明では、ハンドヘルドデバイスの画面は第１プレイヤには見えないので、タッチパネルに対する操作内容は第１プレイヤに知られることがない。そのため、上記（１２）の構成によれば、第２プレイヤの操作が第１プレイヤに知られることによって第２プレイヤが不利になるといった不都合が生じず、ゲームの戦略性や興趣性を損なうことがない。
【００４０】
（１３）
第２操作データ出力部は、少なくとも１つの操作ボタンを含んでいてもよい。このとき、第２操作データには、操作ボタンに対する入力の有無を表す操作ボタンデータが含まれる。
【００４１】
上記（１３）の構成によれば、第２プレイヤは、操作ボタンを用いてゲーム操作を行うことができるので、ハンドヘルドデバイスを用いたゲーム操作の操作性をより向上することができる。
【００４２】
（１４）
第１データ出力部は、撮像手段を含んでいてもよい。このとき、第１操作データは、撮像手段が撮像した画像内における所定の撮像対象の位置を表すデータを含む。ゲーム処理は、撮像対象の位置を表すデータに基づいて、第１表示装置の画面上における位置を算出するゲーム制御処理を実行する。
【００４３】
上記（１４）の構成によれば、撮像画像内における撮像対象の位置に基づいて、表示画面上における位置が算出される。これによれば、第１プレイヤは、操作装置を動かして撮像対象の位置を変化させることによって、表示画面上における位置を変化させることができる。すなわち、第１プレイヤは、操作装置を動かして表示画面上の位置を指定するゲーム操作を行うことができるので、操作を用いたゲーム操作の操作性をより向上することができる。
【００４４】
（１５）
また、本発明の別の一例は、操作装置と、ハンドヘルドデバイスとに対して通信可能なゲーム装置として提供されてもよい。ここで、操作装置は、自身の動きに応じて値が変化するデータを含む第１操作データを送信可能である。ハンドヘルドデバイスは、自身の動きに応じて値が変化するデータを含む第２操作データを送信可能である。ゲーム装置は、操作データ取得部と、オブジェクト制御部と、第１仮想カメラ設定部と、第１画像生成部と、第２仮想カメラ設定部と、第２画像生成部と、第１画像出力部と、第２画像出力部とを備える。操作データ取得部は、操作装置およびハンドヘルドデバイスから第１操作データおよび第２操作データをそれぞれ取得する。オブジェクト制御部は、第１操作データに基づいて、仮想のゲーム空間内に配置されるオブジェクトを操作装置の動きに応じて制御する。第１仮想カメラ設定部は、ゲーム空間内に第１仮想カメラを設定する。第１画像生成部は、操作装置を操作する第１プレイヤのための第１ゲーム画像を第１仮想カメラに基づいて生成する。第２仮想カメラ設定部は、第２操作データに基づいて、ゲーム空間内において第２仮想カメラをハンドヘルドデバイスの動きに応じて移動させるように制御する。第２画像生成部は、ハンドヘルドデバイスを操作する第２プレイヤのための第２ゲーム画像を第２仮想カメラに基づいて生成する。第１画像出力部は、ハンドヘルドデバイスとは別体の第１表示装置に第１ゲーム画像を出力する。第２画像出力部は、ハンドヘルドデバイスに設けられる第２表示装置に表示させるために第２ゲーム画像をハンドヘルドデバイスに出力する。
【００４５】
上記（１５）の構成によれば、上記（１）の構成と同様、各仮想カメラを適切に設定することによって、各プレイヤのそれぞれについて見やすいゲーム画像を表示することができる。さらに、上記（１５）の構成によれば、上記（４）の構成と同様、第２プレイヤは、直感的かつ容易な操作で表示範囲を自由に変更することができ、上記（５）の構成と同様、第１プレイヤにとって見やすい第１ゲーム画像を表示することができる。
【００４６】
（１６）
ゲーム装置は、ハンドヘルドデバイスの動きに応じて変化するように所定の移動オブジェクトの移動方向を決定し、当該移動オブジェクトを移動させる第２オブジェクト制御部をさらに備えていてもよい。このとき、第１仮想カメラ設定部は、移動オブジェクトを含む第１ゲーム画像が生成されるように第１仮想カメラを設定する。第１オブジェクト制御部は、操作装置の動きに応じて所定の操作オブジェクトを動かす。また、ゲーム装置は、移動オブジェクトと操作オブジェクトとの接触を判定し、判定結果に応じたゲーム画像を生成する第１判定処理部をさらに備える。
【００４７】
上記（１６）の構成によれば、上記（８）の構成と同様、２人のプレイヤが自分用のゲーム画像をそれぞれ見ながら、自身の操作手段を動かして対戦を行うという、新規で興趣性の高いゲームを提供することができる。
【００４８】
（１７）
第１オブジェクト制御部は、操作装置の動きに応じて決められる所定の移動オブジェクトの挙動を第１操作データに基づいて計算し、当該挙動に基づいて移動オブジェクトを移動させてもよい。このとき、ゲーム装置は、第２仮想カメラが移動オブジェクトを含む所定範囲を向いているか否かを判定し、判定結果に応じたゲーム画像を生成する第２判定処理部をさらに備える。
【００４９】
上記（１７）の構成によれば、上記（９）の構成と同様、２人のプレイヤが自分用のゲーム画像をそれぞれ見ながら、自身の操作手段を動かして対戦を行うという、新規で興趣性の高いゲームを提供することができる。
【００５０】
また、本発明の別の一例では、ゲーム装置のコンピュータを、上記（１）〜（１７）におけるゲーム装置の各部と同等の手段として機能させるゲームプログラムの形態で実施されてもよい。また、本発明は、上記（１）〜（１４）のゲームシステムにおいて行われるゲーム処理方法の形態で実施されてもよい。
【発明の効果】
【００５１】
本発明によれば、２つの仮想カメラを用いることによって、単一のゲーム空間を異なる視点から見た異なる２種類のゲーム画像を生成することができるので、各プレイヤのそれぞれについて見やすいゲーム画像を表示することができる。
【図面の簡単な説明】
【００５２】
【図１】ゲームシステムの外観図
【図２】ゲーム装置の内部構成を示すブロック図
【図３】操作装置の外観構成を示す斜視図
【図４】コントローラの外観構成を示す斜視図
【図５】コントローラの内部構造を示す図
【図６】コントローラの内部構造を示す図
【図７】操作装置の構成を示すブロック図
【図８】ハンドヘルドデバイスの外観構成を示す図
【図９】ハンドヘルドデバイスの内部構成を示すブロック図
【図１０】投球シーンにおいてテレビに表示されるゲーム画像（第１ゲーム画像）の一例を示す図
【図１１】投球シーンにおいてハンドヘルドデバイスに表示されるゲーム画像（第２ゲーム画像）の一例を示す図
【図１２】ハンドヘルドデバイスの姿勢と第２ゲーム画像との関係を示す図
【図１３】守備シーンにおいてテレビに表示されるゲーム画像の一例を示す図
【図１４】守備シーンにおいてハンドヘルドデバイスに表示されるゲーム画像の一例を示す図
【図１５】ゲーム処理において用いられる各種データを示す図
【図１６】ゲーム装置において実行されるゲーム処理の流れを示すメインフローチャート
【図１７】投球モードにおけるゲーム制御処理の詳細な流れを示すフローチャート
【図１８】ハンドヘルドデバイスの姿勢と第２仮想カメラの姿勢との関係を示す図
【図１９】守備モードにおけるゲーム制御処理の詳細な流れを示すフローチャート
【図２０】図１９のステップＳ３５（第２カメラ制御処理）の処理の詳細な流れを示すフローチャート
【図２１】仮想のゲーム空間を上から見た図
【図２２】ゲーム空間における第２仮想カメラとボールとを示す図
【図２３】他のゲーム例においてテレビに表示される第１ゲーム画像の一例を示す図
【図２４】図２３に示すゲーム例においてハンドヘルドデバイスに表示される第２ゲーム画像の一例を示す図
【図２５】上記実施形態の変形例における端末装置の外観構成を示す図
【図２６】上記実施形態の変形例における端末装置の外観構成を示す図
【図２７】ユーザが端末装置を横向きで把持した様子を示す図
【図２８】ユーザが端末装置を横向きで把持した様子を示す図
【図２９】ユーザが端末装置を縦向きで把持した様子を示す図
【図３０】ユーザが端末装置を縦向きで把持した様子を示す図
【図３１】図２５に示す端末装置の内部構成を示すブロック図
【発明を実施するための形態】
【００５３】
［１．ゲームシステムの全体構成］
以下、図面を参照して、本発明の一実施形態に係るゲームシステム１について説明する。図１は、ゲームシステム１の外観図である。図１において、ゲームシステム１は、テレビジョン受像器等に代表されるディスプレイ装置（以下、「テレビ」と記載する）２、ゲーム装置３、光ディスク４、操作装置７、マーカ装置８、および、ハンドヘルドデバイス９を含む。ゲームシステム１は、操作装置７およびハンドヘルドデバイス９を用いたゲーム操作に基づいてゲーム装置３においてゲーム処理を実行し、ゲーム処理によって得られるゲーム画像をテレビ２および／またはハンドヘルドデバイス９の表示装置（図８に示す下側ＬＣＤ６２）に表示するものである。
【００５４】
ゲーム装置３には、当該ゲーム装置３に対して交換可能に用いられる情報記憶媒体の一例である光ディスク４が脱着可能に挿入される。光ディスク４には、ゲーム装置３において実行されるための情報処理プログラム（典型的にはゲームプログラム）が記憶されている。ゲーム装置３の前面には光ディスク４の挿入口が設けられている。ゲーム装置３は、挿入口に挿入された光ディスク４に記憶されている情報処理プログラムを読み出して実行することによってゲーム処理を実行する。
【００５５】
ゲーム装置３には、テレビ２が接続コードを介して接続される。テレビ２は、ゲーム装置３において実行されるゲーム処理によって得られるゲーム画像を表示する。テレビ２はスピーカ２ａ（図２）を有しており、スピーカ２ａは、上記ゲーム処理の結果得られるゲーム音声を出力する。なお、他の実施形態においては、ゲーム装置３と表示装置とは一体となっていてもよい。また、ゲーム装置３とテレビ２との通信は無線通信であってもよい。
【００５６】
テレビ２の画面の周辺（図１では画面の上側）には、マーカ装置８が設置される。詳細は後述するが、ユーザは操作装置７を動かすゲーム操作を行うことができ、マーカ装置８は、操作装置７の動きをゲーム装置３が検出するために用いられる。マーカ装置８は、その両端に２つのマーカ８Ｒおよび８Ｌを備えている。マーカ８Ｒ（マーカ８Ｌも同様）は、具体的には１以上の赤外ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）であり、テレビ２の前方に向かって赤外光を出力する。マーカ装置８はゲーム装置３に接続されており、ゲーム装置３はマーカ装置８が備える各赤外ＬＥＤの点灯を制御することが可能である。なお、図１ではマーカ装置８がテレビ２の上に設置された態様を表しているが、マーカ装置８を設置する位置および向きは任意である。
【００５７】
操作装置７は、自機に対して行われた操作の内容を表す操作データをゲーム装置３に与えるものである。以下では、操作装置７がゲーム装置３へ送信する操作データを「第１操作データ」と呼ぶ。本実施形態では、操作装置７はコントローラ５とジャイロセンサユニット６とを含む。詳細は後述するが、操作装置７は、コントローラ５に対してジャイロセンサユニット６が着脱可能に接続されている構成である。なお、コントローラ５にジャイロセンサが内蔵されている構成であってもよい。コントローラ５とゲーム装置３とは無線通信によって接続される。本実施形態では、コントローラ５とゲーム装置３との間の無線通信には例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術が用いられる。なお、他の実施形態においてはコントローラ５とゲーム装置３とは有線で接続されてもよい。
【００５８】
ハンドヘルドデバイス９は、本実施形態では携帯型のゲーム装置であり、表示装置（後述する各ＬＣＤ６２および７２）および入力装置（後述するタッチパネル６３や加速度センサ８９等）等を備える。ハンドヘルドデバイス９は、ゲーム装置３と無線（有線であってもよい）により通信可能である。ハンドヘルドデバイス９は、ゲーム処理の結果得られるゲーム画像およびゲーム音声をゲーム装置３から受信し、ゲーム画像を表示装置に表示するとともにゲーム音声をマイクから出力する。また、ハンドヘルドデバイス９は、自機に対して行われた操作の内容を表す操作データをゲーム装置３へ送信する。以下では、ハンドヘルドデバイス９がゲーム装置３へ送信する操作データを「第２操作データ」と呼ぶ。
【００５９】
なお、本実施形態においてはハンドヘルドデバイス９は携帯型のゲーム装置であるとするが、他の実施形態においては、ハンドヘルドデバイス９は、表示装置および入力装置を備え、ユーザが把持可能な機器（コントローラ）であればよい。すなわち、ハンドヘルドデバイス９は、ゲーム処理（ゲームプログラム）を実行する機能を有していなくてもよい。また、本実施形態のハンドヘルドデバイス９は図１で示すように表示装置が２つ備えられている携帯型のゲーム装置であるが、表示装置が１つの携帯型ゲーム装置でもよいし、表示装置を１つ備えるゲームコントローラであってもよい。
【００６０】
［２．ゲーム装置３の内部構成］
次に、図２を参照して、ゲーム装置３の内部構成について説明する。図２は、ゲーム装置３の内部構成を示すブロック図である。ゲーム装置３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０、システムＬＳＩ１１、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４、およびＡＶ−ＩＣ１５等を有する。
【００６１】
ＣＰＵ１０は、光ディスク４に記憶されたゲームプログラムを実行することによってゲーム処理を実行するものであり、ゲームプロセッサとして機能する。ＣＰＵ１０は、システムＬＳＩ１１に接続される。システムＬＳＩ１１には、ＣＰＵ１０の他、外部メインメモリ１２、ＲＯＭ／ＲＴＣ１３、ディスクドライブ１４およびＡＶ−ＩＣ１５が接続される。システムＬＳＩ１１は、それに接続される各構成要素間におけるデータ転送の制御、表示すべき画像の生成、外部装置からのデータの取得等の処理を行う。なお、システムＬＳＩの内部構成については後述する。揮発性の外部メインメモリ１２は、光ディスク４から読み出されたゲームプログラムや、フラッシュメモリ１７から読み出されたゲームプログラム等のプログラムを記憶したり、各種データを記憶したりするものであり、ＣＰＵ１０のワーク領域やバッファ領域として用いられる。ＲＯＭ／ＲＴＣ１３は、ゲーム装置３の起動用のプログラムが組み込まれるＲＯＭ（いわゆるブートＲＯＭ）と、時間をカウントするクロック回路（ＲＴＣ：Ｒｅａｌ  Ｔｉｍｅ  Ｃｌｏｃｋ）とを有する。ディスクドライブ１４は、光ディスク４からプログラムデータやテクスチャデータ等を読み出し、後述する内部メインメモリ１１ｅまたは外部メインメモリ１２に読み出したデータを書き込む。
【００６２】
システムＬＳＩ１１には、入出力プロセッサ（Ｉ／Ｏプロセッサ）１１ａ、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）１１ｂ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１１ｃ、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）１１ｄ、および内部メインメモリ１１ｅが設けられる。図示は省略するが、これらの構成要素１１ａ〜１１ｅは内部バスによって互いに接続される。
【００６３】
ＧＰＵ１１ｂは、描画手段の一部を形成し、ＣＰＵ１０からのグラフィクスコマンド（作画命令）に従って画像を生成する。ＶＲＡＭ１１ｄは、ＧＰＵ１１ｂがグラフィクスコマンドを実行するために必要なデータ（ポリゴンデータやテクスチャデータ等のデータ）を記憶する。画像が生成される際には、ＧＰＵ１１ｂは、ＶＲＡＭ１１ｄに記憶されたデータを用いて画像データを作成する。
【００６４】
ここで、本実施形態においては、ゲーム装置３は、テレビ２に表示するゲーム画像と、ハンドヘルドデバイス９の表示装置（下側ＬＣＤ６２および上側ＬＣＤ７２）に表示するゲーム画像との両方を生成する。以下では、テレビ２に表示されるゲーム画像を「第１ゲーム画像」と呼び、ハンドヘルドデバイス９に表示されるゲーム画像を「第２ゲーム画像」と呼ぶ。
【００６５】
ＤＳＰ１１ｃは、オーディオプロセッサとして機能し、内部メインメモリ１１ｅや外部メインメモリ１２に記憶されるサウンドデータや音波形（音色）データを用いて、音声データを生成する。
【００６６】
上記のように生成された画像データ（第１ゲーム画像のデータ）および音声データは、ＡＶ−ＩＣ１５によって読み出される。ＡＶ−ＩＣ１５は、読み出した画像データをＡＶコネクタ１６を介してテレビ２に出力するとともに、読み出した音声データを、テレビ２に内蔵されるスピーカ２ａに出力する。これによって、テレビ２に画像が表示されるとともにスピーカ２ａから音が出力される。
【００６７】
入出力プロセッサ１１ａは、それに接続される構成要素との間でデータの送受信を実行したり、外部装置からのデータのダウンロードを実行したりする。入出力プロセッサ１１ａは、フラッシュメモリ１７、ネットワーク通信モジュール１８、コントローラ通信モジュール１９、拡張コネクタ２０、メモリカード用コネクタ２１、画像圧縮部２７に接続される。ネットワーク通信モジュール１８にはアンテナ２２が接続される。コントローラ通信モジュール１９にはアンテナ２３が接続される。画像圧縮部２７は高速無線通信モジュール２８に接続され、高速無線通信モジュール２８にはアンテナ２９が接続される。高速無線通信モジュール２８には、コントローラ通信モジュール１９が接続される。
【００６８】
入出力プロセッサ１１ａは、ネットワーク通信モジュール１８およびアンテナ２２を介してインターネット等のネットワークに接続し、ネットワークに接続される他のゲーム装置や、各種サーバと通信することができる。入出力プロセッサ１１ａは、定期的にフラッシュメモリ１７にアクセスし、ネットワークへ送信する必要があるデータの有無を検出し、当該データが有る場合には、ネットワーク通信モジュール１８およびアンテナ２２を介してネットワークに送信する。また、入出力プロセッサ１１ａは、他のゲーム装置から送信されてくるデータやダウンロードサーバからダウンロードしたデータを、ネットワーク、アンテナ２２およびネットワーク通信モジュール１８を介して受信し、受信したデータをフラッシュメモリ１７に記憶する。ＣＰＵ１０はゲームプログラムを実行することにより、フラッシュメモリ１７に記憶されたデータを読み出してゲームプログラムで利用する。フラッシュメモリ１７には、ゲーム装置３と他のゲーム装置や各種サーバとの間で送受信されるデータの他、ゲーム装置３を利用してプレイしたゲームのセーブデータ（ゲームの結果データまたは途中データ）が記憶されてもよい。
【００６９】
入出力プロセッサ１１ａは、操作装置７から送信される第１操作データをアンテナ２３およびコントローラ通信モジュール１９を介して受信し、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。また、入出力プロセッサ１１ａは、ハンドヘルドデバイス９から送信される第２操作データをアンテナ２９、高速無線通信モジュール２８、およびコントローラ通信モジュール１９を介して受信し、内部メインメモリ１１ｅまたは外部メインメモリ１２のバッファ領域に記憶（一時記憶）する。
【００７０】
入出力プロセッサ１１ａは、ハンドヘルドデバイス９へゲーム画像（第２ゲーム画像）を送信する場合、ＧＰＵ１１ｂが生成したゲーム画像のデータを画像圧縮部２７へ出力する。画像圧縮部２７は、入出力プロセッサ１１ａからの画像データに対して所定の圧縮処理を行う。高速無線通信モジュール２８は、ハンドヘルドデバイス９との間で無線通信を行う。したがって、画像圧縮部２７によって圧縮された画像データは、高速無線通信モジュール２８によってアンテナ２９を介してハンドヘルドデバイス９へ送信される。なお、本実施形態では、ゲーム装置３からハンドヘルドデバイス９へ送信される画像データはゲームに用いるものであり、ゲームにおいては表示される画像に遅延が生じるとゲームの操作性に悪影響が出る。そのため、ゲーム装置３からハンドヘルドデバイス９への画像データの送信に関しては、できるだけ遅延が生じないようにすることが好ましい。したがって、本実施形態では、画像圧縮部２７は、例えばＨ．２６４規格といった高効率の圧縮技術を用いて画像データを圧縮する。なお、それ以外の圧縮技術を用いてもよいし、通信速度が十分である場合には無圧縮で画像データを送信する構成であってもよい。また、高速無線通信モジュール２８は、例えばＷｉ−Ｆｉの認証を受けた通信モジュールであり、例えばＩＥＥＥ８０２．１１ｎ規格で採用されるＭＩＭＯ（Ｍｕｌｔｉｐｌｅ  Ｉｎｐｕｔ  Ｍｕｌｔｉｐｌｅ  Ｏｕｔｐｕｔ）の技術を用いてハンドヘルドデバイス９との間の無線通信を高速に行うようにしてもよいし、他の通信方式を用いてもよい。
【００７１】
なお、上記においては、ゲーム装置３からハンドヘルドデバイス９へ画像データを送信する点について説明したが、本実施形態においては、画像データとともに音声データも送信される。すなわち、入出力プロセッサ１１ａは、ＤＳＰ１１ｃが生成した音声データを画像圧縮部２７を介して高速無線通信モジュール２８へ出力する。高速無線通信モジュール２８は、画像データとともに音声データをアンテナ２９を介してハンドヘルドデバイス９へ送信する。なお、音声データに関しては、画像圧縮部２７はデータの圧縮処理を行ってもよいし、行わなくてもよい。
【００７２】
また、ハンドヘルドデバイス９からゲーム装置３へデータ（具体的には第２操作データ）が送信されてくる場合、高速無線通信モジュール２８は、アンテナ２９を介して当該データを受信する。受信されたデータは入出力プロセッサ１１ａによって取得される。なお、本実施形態においては、ハンドヘルドデバイス９からゲーム装置３へのデータは圧縮処理が行われていないので、当該データに対して伸張処理は行われないが、他の実施形態においては、ハンドヘルドデバイス９側で圧縮処理を行い、ゲーム装置３側で伸張処理を行うようにしてもよい。
【００７３】
入出力プロセッサ１１ａには、拡張コネクタ２０およびメモリカード用コネクタ２１が接続される。拡張コネクタ２０は、ＵＳＢやＳＣＳＩのようなインターフェースのためのコネクタである。拡張コネクタ２０に対しては、外部記憶媒体のようなメディアを接続したり、他のコントローラのような周辺機器を接続したり、有線の通信用コネクタを接続することによってネットワーク通信モジュール１８に替えてネットワークとの通信を行ったりすることができる。メモリカード用コネクタ２１は、メモリカードのような外部記憶媒体を接続するためのコネクタである。例えば、入出力プロセッサ１１ａは、拡張コネクタ２０やメモリカード用コネクタ２１を介して外部記憶媒体にアクセスし、外部記憶媒体にデータを保存したり、外部記憶媒体からデータを読み出したりすることができる。
【００７４】
ゲーム装置３には、電源ボタン２４、リセットボタン２５、およびイジェクトボタン２６が設けられる。電源ボタン２４およびリセットボタン２５は、システムＬＳＩ１１に接続される。電源ボタン２４がオンされると、図示しないＡＣアダプタを経てゲーム装置３の各構成要素に対して電源が供給される。リセットボタン２５が押されると、システムＬＳＩ１１は、ゲーム装置３の起動プログラムを再起動する。イジェクトボタン２６は、ディスクドライブ１４に接続される。イジェクトボタン２６が押されると、ディスクドライブ１４から光ディスク４が排出される。
【００７５】
なお、他の実施形態においては、ゲーム装置３が備える各構成要素のうちでいくつかの構成要素は、ゲーム装置３とは別体の拡張機器として構成されてもよい。このとき、拡張機器は、例えば上記拡張コネクタ２０を介してゲーム装置３と接続されるようにしてもよい。具体的には、拡張機器は、例えば上記画像圧縮部２７、高速無線通信モジュール２８およびアンテナ２９の各構成要素を備えており、拡張コネクタ２０に対して着脱可能であってもよい。これによれば、上記各構成要素を備えていないゲーム装置に対して上記拡張機器を接続することによって、当該ゲーム装置をハンドヘルドデバイス９と通信可能な構成とすることができる。
【００７６】
［３．操作装置７の構成］
次に、図３〜図７を参照して、操作装置７（コントローラ５およびジャイロセンサユニット６）について説明する。図３は、操作装置７の外観構成を示す斜視図である。図４は、コントローラ５の外観構成を示す斜視図である。図３は、操作装置７の上側後方から見た斜視図であり、図４は、コントローラ５を下側前方から見た斜視図である。
【００７７】
図３および図４において、コントローラ５は、例えばプラスチック成型によって形成されたハウジング３１を有している。ハウジング３１は、その前後方向（図３に示すＺ軸方向）を長手方向とした略直方体形状を有しており、全体として大人や子供の片手で把持可能な大きさである。プレイヤは、コントローラ５に設けられたボタンを押下すること、および、コントローラ５自体を動かしてその位置や姿勢（傾き）を変えることによってゲーム操作を行うことができる。
【００７８】
ハウジング３１には、複数の操作ボタンが設けられる。図３に示すように、ハウジング３１の上面には、十字ボタン３２ａ、１番ボタン３２ｂ、２番ボタン３２ｃ、Ａボタン３２ｄ、マイナスボタン３２ｅ、ホームボタン３２ｆ、プラスボタン３２ｇ、および電源ボタン３２ｈが設けられる。本明細書では、これらのボタン３２ａ〜３２ｈが設けられるハウジング３１の上面を「ボタン面」と呼ぶことがある。一方、図４に示すように、ハウジング３１の下面には凹部が形成されており、当該凹部の後面側傾斜面にはＢボタン３２ｉが設けられる。これらの各操作ボタン３２ａ〜３２ｉには、ゲーム装置３が実行する情報処理プログラムに応じた機能が適宜割り当てられる。また、電源ボタン３２ｈは遠隔からゲーム装置３本体の電源をオン／オフするためのものである。ホームボタン３２ｆおよび電源ボタン３２ｈは、その上面がハウジング３１の上面に埋没している。これによって、プレイヤがホームボタン３２ｆまたは電源ボタン３２ｈを誤って押下することを防止することができる。
【００７９】
ハウジング３１の後面にはコネクタ３３が設けられている。コネクタ３３は、コントローラ５に他の機器（例えば、ジャイロセンサユニット６や他のコントローラ）を接続するために利用される。また、ハウジング３１の後面におけるコネクタ３３の両側には、上記他の機器が容易に離脱することを防止するために係止穴３３ａが設けられている。
【００８０】
ハウジング３１上面の後方には複数（図３では４つ）のＬＥＤ３４ａ〜３４ｄが設けられる。ここで、コントローラ５には、他のメインコントローラと区別するためにコントローラ種別（番号）が付与される。各ＬＥＤ３４ａ〜３４ｄは、コントローラ５に現在設定されている上記コントローラ種別をプレイヤに通知したり、コントローラ５の電池残量をプレイヤに通知したりする等の目的で用いられる。具体的には、コントローラ５を用いてゲーム操作が行われる際、上記コントローラ種別に応じて複数のＬＥＤ３４ａ〜３４ｄのいずれか１つが点灯する。
【００８１】
また、コントローラ５は撮像情報演算部３５（図６）を有しており、図４に示すように、ハウジング３１前面には撮像情報演算部３５の光入射面３５ａが設けられる。光入射面３５ａは、マーカ８Ｒおよび８Ｌからの赤外光を少なくとも透過する材質で構成される。
【００８２】
ハウジング３１上面における１番ボタン３２ｂとホームボタン３２ｆとの間には、コントローラ５に内蔵されるスピーカ４９（図５）からの音を外部に放出するための音抜き孔３１ａが形成されている。
【００８３】
次に、図５および図６を参照して、コントローラ５の内部構造について説明する。図５および図６は、コントローラ５の内部構造を示す図である。なお、図５は、コントローラ５の上筐体（ハウジング３１の一部）を外した状態を示す斜視図である。図６は、コントローラ５の下筐体（ハウジング３１の一部）を外した状態を示す斜視図である。図６に示す斜視図は、図５に示す基板３０を裏面から見た斜視図となっている。
【００８４】
図５において、ハウジング３１の内部には基板３０が固設されており、当該基板３０の上主面上に各操作ボタン３２ａ〜３２ｈ、各ＬＥＤ３４ａ〜３４ｄ、加速度センサ３７、アンテナ４５、およびスピーカ４９等が設けられる。これらは、基板３０等に形成された配線（図示せず）によってマイクロコンピュータ（Ｍｉｃｒｏ  Ｃｏｍｐｕｔｅｒ：マイコン）４２（図６参照）に接続される。本実施形態では、加速度センサ３７は、Ｘ軸方向に関してコントローラ５の中心からずれた位置に配置されている。これによって、コントローラ５をＺ軸回りに回転させたときのコントローラ５の動きが算出しやすくなる。また、加速度センサ３７は、長手方向（Ｚ軸方向）に関してコントローラ５の中心よりも前方に配置されている。また、無線モジュール４４（図６）およびアンテナ４５によって、コントローラ５がワイヤレスコントローラとして機能する。
【００８５】
一方、図６において、基板３０の下主面上の前端縁に撮像情報演算部３５が設けられる。撮像情報演算部３５は、コントローラ５の前方から順に赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１を備えている。これらの部材３８〜４１はそれぞれ基板３０の下主面に取り付けられる。
【００８６】
さらに、基板３０の下主面上には、上記マイコン４２およびバイブレータ４８が設けられている。バイブレータ４８は、例えば振動モータやソレノイドであり、基板３０等に形成された配線によってマイコン４２と接続される。マイコン４２の指示によりバイブレータ４８が作動することによってコントローラ５に振動が発生する。これによって、コントローラ５を把持しているプレイヤの手にその振動が伝達される、いわゆる振動対応ゲームを実現することができる。本実施形態では、バイブレータ４８は、ハウジング３１のやや前方寄りに配置される。つまり、バイブレータ４８がコントローラ５の中心よりも端側に配置することによって、バイブレータ４８の振動によりコントローラ５全体を大きく振動させることができる。また、コネクタ３３は、基板３０の下主面上の後端縁に取り付けられる。なお、図５および図６に示す他、コントローラ５は、マイコン４２の基本クロックを生成する水晶振動子、スピーカ４９に音声信号を出力するアンプ等を備えている。
【００８７】
また、ジャイロセンサユニット６は、３軸回りの角速度を検知するジャイロセンサ（図７に示すジャイロセンサ５５および５６）を有する。ジャイロセンサユニット６は、コントローラ５のコネクタ３３に着脱可能に装着される。ジャイロセンサユニット６の前端（図３に示すＺ軸正方向側の端部）には、コネクタ３３に接続可能なプラグ（図７に示すプラグ５３）が設けられる。さらに、プラグ５３の両側にはフック（図示せず）が設けられる。ジャイロセンサユニット６がコントローラ５に対して装着される状態では、プラグ５３がコネクタ３３に接続されるとともに、上記フックがコントローラ５の係止穴３３ａに係止する。これによって、コントローラ５とジャイロセンサユニット６とがしっかりと固定される。また、ジャイロセンサユニット６は側面（図３に示すＸ軸方向の面）にボタン５１を有している。ボタン５１は、それを押下すれば上記フックの係止穴３３ａに対する係止状態を解除することができるように構成されている。したがって、ボタン５１を押下しながらプラグ５３をコネクタ３３から抜くことによって、ジャイロセンサユニット６をコントローラ５から離脱することができる。
【００８８】
また、ジャイロセンサユニット６の後端には、上記コネクタ３３と同形状のコネクタが設けられる。したがって、コントローラ５（のコネクタ３３）に対して装着可能な他の機器は、ジャイロセンサユニット６のコネクタに対しても装着可能である。なお、図３においては、当該コネクタに対してカバー５２が着脱可能に装着されている。
【００８９】
なお、図３〜図６に示したコントローラ５およびジャイロセンサユニット６の形状や、各操作ボタンの形状、加速度センサやバイブレータの数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であっても、本発明を実現することができる。また、本実施形態では、撮像手段による撮像方向はＺ軸正方向であるが、撮像方向はいずれの方向であってもよい。すなわち、コントローラ５における撮像情報演算部３５の位置（撮像情報演算部３５の光入射面３５ａ）は、ハウジング３１の前面でなくてもよく、ハウジング３１の外部から光を取り入れることができれば他の面に設けられてもかまわない。
【００９０】
図７は、操作装置７（コントローラ５およびジャイロセンサユニット６）の構成を示すブロック図である。コントローラ５は、操作部３２（各操作ボタン３２ａ〜３２ｉ）、コネクタ３３、撮像情報演算部３５、通信部３６、および加速度センサ３７を備えている。コントローラ５は、自機に対して行われた操作内容を表すデータを第１操作データとしてゲーム装置３へ送信するものである。
【００９１】
操作部３２は、上述した各操作ボタン３２ａ〜３２ｉを含み、各操作ボタン３２ａ〜３２ｉに対する入力状態（各操作ボタン３２ａ〜３２ｉが押下されたか否か）を表す操作ボタンデータを通信部３６のマイコン４２へ出力する。
【００９２】
撮像情報演算部３５は、撮像手段が撮像した画像データを解析してその中で輝度が高い領域を判別してその領域の重心位置やサイズなどを算出するためのシステムである。撮像情報演算部３５は、例えば最大２００フレーム／秒程度のサンプリング周期を有するので、比較的高速なコントローラ５の動きでも追跡して解析することができる。
【００９３】
撮像情報演算部３５は、赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１を含んでいる。赤外線フィルタ３８は、コントローラ５の前方から入射する光から赤外線のみを通過させる。レンズ３９は、赤外線フィルタ３８を透過した赤外線を集光して撮像素子４０へ入射させる。撮像素子４０は、例えばＣＭＯＳセンサやあるいはＣＣＤセンサのような固体撮像素子であり、レンズ３９が集光した赤外線を受光して画像信号を出力する。ここで、テレビ２の表示画面近傍に配置されるマーカ装置８のマーカ８Ｒおよび８Ｌは、テレビ２の前方に向かって赤外光を出力する赤外ＬＥＤで構成される。したがって、赤外線フィルタ３８を設けることによって、撮像素子４０は、赤外線フィルタ３８を通過した赤外線だけを受光して画像データを生成するので、マーカ８Ｒおよび８Ｌの画像をより正確に撮像することができる。以下では、撮像素子４０によって撮像された画像を撮像画像と呼ぶ。撮像素子４０によって生成された画像データは、画像処理回路４１で処理される。画像処理回路４１は、撮像画像内における撮像対象（マーカ８Ｒおよび８Ｌ）の位置を算出する。画像処理回路４１は、算出された位置を示す座標を通信部３６のマイコン４２へ出力する。この座標のデータは、マイコン４２によって第１操作データとしてゲーム装置３に送信される。以下では、上記座標を「マーカ座標」と呼ぶ。マーカ座標はコントローラ５自体の向き（傾斜角度）や位置に対応して変化するので、ゲーム装置３はこのマーカ座標を用いてコントローラ５の向きや位置を算出することができる。
【００９４】
なお、他の実施形態においては、コントローラ５は画像処理回路４１を備えていない構成であってもよく、撮像画像自体がコントローラ５からゲーム装置３へ送信されてもよい。このとき、ゲーム装置３は、画像処理回路４１と同様の機能を有する回路あるいはプログラムを有しており、上記マーカ座標を算出するようにしてもよい。
【００９５】
加速度センサ３７は、コントローラ５の加速度（重力加速度を含む）を検出する、すなわち、コントローラ５に加わる力（重力を含む）を検出する。加速度センサ３７は、当該加速度センサ３７の検出部に加わっている加速度のうち、センシング軸方向に沿った直線方向の加速度（直線加速度）の値を検出する。例えば、２軸以上の多軸加速度センサの場合には、加速度センサの検出部に加わっている加速度として、各軸に沿った成分の加速度をそれぞれ検出する。例えば、３軸または２軸の加速度センサは、アナログ・デバイセズ株式会社（Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ，  Ｉｎｃ．）またはＳＴマイクロエレクトロニクス社（ＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ  Ｎ．Ｖ．）から入手可能である種類のものでもよい。なお、加速度センサ３７は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。
【００９６】
本実施形態では、加速度センサ３７は、コントローラ５を基準とした上下方向（図３に示すＹ軸方向）、左右方向（図３に示すＸ軸方向）および前後方向（図３に示すＺ軸方向）の３軸方向に関してそれぞれ直線加速度を検出する。加速度センサ３７は、各軸に沿った直線方向に関する加速度を検出するものであるため、加速度センサ３７からの出力は３軸それぞれの直線加速度の値を表すものとなる。すなわち、検出された加速度は、操作装置７（コントローラ５）を基準に設定されるＸＹＺ座標系（コントローラ座標系）における３次元のベクトルとして表される。
【００９７】
加速度センサ３７が検出した加速度を表すデータ（加速度データ）は、通信部３６へ出力される。なお、加速度センサ３７が検出した加速度は、コントローラ５自体の向き（傾斜角度）や動きに対応して変化するので、ゲーム装置３は取得された加速度データを用いてコントローラ５の向きや動きを算出することができる。本実施形態では、ゲーム装置３は、取得された加速度データに基づいてコントローラ５の姿勢や傾斜角度等を算出する。
【００９８】
なお、加速度センサ３７（後述する加速度センサ８９についても同様）から出力される加速度の信号に基づいて、ゲーム装置３のプロセッサ（例えばＣＰＵ１０）またはコントローラ５のプロセッサ（例えばマイコン４２）等のコンピュータが処理を行うことによって、コントローラ５に関するさらなる情報を推測または算出（判定）することができることは、当業者であれば本明細書の説明から容易に理解できるであろう。例えば、加速度センサ３７を搭載するコントローラ５が静止状態であることを前提としてコンピュータ側の処理が実行される場合（すなわち、加速度センサによって検出される加速度が重力加速度のみであるとして処理が実行される場合）、コントローラ５が現実に静止状態であれば、検出された加速度に基づいてコントローラ５の姿勢が重力方向に対して傾いているか否かまたはどの程度傾いているかを知ることができる。具体的には、加速度センサ３７の検出軸が鉛直下方向を向いている状態を基準としたとき、１Ｇ（重力加速度）がかかっているか否かによって、コントローラ５が基準に対して傾いているか否かを知ることができるし、その大きさによって基準に対してどの程度傾いているかも知ることができる。また、多軸の加速度センサ３７の場合には、さらに各軸の加速度の信号に対して処理を施すことによって、重力方向に対してコントローラ５がどの程度傾いているかをより詳細に知ることができる。この場合において、プロセッサは、加速度センサ３７からの出力に基づいてコントローラ５の傾斜角度を算出してもよいし、当該傾斜角度を算出せずに、コントローラ５の傾斜方向を算出するようにしてもよい。このように、加速度センサ３７をプロセッサと組み合わせて用いることによって、コントローラ５の傾斜角度または姿勢を判定することができる。
【００９９】
一方、コントローラ５が動的な状態（コントローラ５が動かされている状態）であることを前提とする場合には、加速度センサ３７は重力加速度に加えてコントローラ５の動きに応じた加速度を検出するので、検出された加速度から重力加速度の成分を所定の処理により除去することによってコントローラ５の動き方向を知ることができる。また、コントローラ５が動的な状態であることを前提とする場合であっても、検出された加速度から、加速度センサの動きに応じた加速度の成分を所定の処理により除去することによって、重力方向に対するコントローラ５の傾きを知ることが可能である。なお、他の実施例では、加速度センサ３７は、内蔵の加速度検出手段で検出された加速度信号をマイコン４２に出力する前に当該加速度信号に対して所定の処理を行うための、組込み式の処理装置または他の種類の専用の処理装置を備えていてもよい。組込み式または専用の処理装置は、例えば、加速度センサ３７が静的な加速度（例えば、重力加速度）を検出するために用いられる場合、加速度信号を傾斜角（あるいは、他の好ましいパラメータ）に変換するものであってもよい。
【０１００】
通信部３６は、マイコン４２、メモリ４３、無線モジュール４４、およびアンテナ４５を含んでいる。マイコン４２は、処理を行う際にメモリ４３を記憶領域として用いながら、マイコン４２が取得したデータをゲーム装置３へ無線送信する無線モジュール４４を制御する。また、マイコン４２はコネクタ３３に接続されている。ジャイロセンサユニット６から送信されてくるデータは、コネクタ３３を介してマイコン４２に入力される。以下、ジャイロセンサユニット６の構成について説明する。
【０１０１】
ジャイロセンサユニット６は、プラグ５３、マイコン５４、２軸ジャイロセンサ５５、および１軸ジャイロセンサ５６を備えている。上述のように、ジャイロセンサユニット６は、３軸（本実施形態では、ＸＹＺ軸）周りの角速度を検出し、検出した角速度を表すデータ（角速度データ）をコントローラ５へ送信する。
【０１０２】
２軸ジャイロセンサ５５は、Ｘ軸周りの角速度およびＺ軸周りの（単位時間あたりの）角速度を検出する。また、１軸ジャイロセンサ５６は、Ｙ軸周りの（単位時間あたりの）角速度を検出する。なお、本明細書では、コントローラ５の撮像方向（Ｚ軸正方向）を基準として、ＸＹＺ軸周りの回転方向を、それぞれ、ピッチ方向、ヨー方向、ロール方向と呼ぶ。すなわち、２軸ジャイロセンサ５５は、ピッチ方向（Ｘ軸周りの回転方向）およびロール方向（Ｚ軸周りの回転方向）の角速度を検出し、１軸ジャイロセンサ５６は、ヨー方向（Ｙ軸周りの回転方向）の角速度を検出する。
【０１０３】
なお、本実施形態では、３軸回りの角速度を検出するために、２軸ジャイロセンサ５５と１軸ジャイロセンサ５６とを用いる構成としたが、他の実施形態においては、３軸回りの角速度を検出することができればよく、用いるジャイロセンサの数および組み合わせはどのようなものであってもよい。
【０１０４】
各ジャイロセンサ５６および５７で検出された角速度を表すデータは、マイコン５４に出力される。したがって、マイコン５４には、ＸＹＺ軸の３軸回りの角度速度を表すデータが入力されることになる。マイコン５４は、上記３軸回りの角速度を表すデータを角速度データとしてプラグ５３を介してコントローラ５へ送信する。なお、マイコン５４からコントローラ５への送信は所定の周期毎に逐次行われるが、ゲームの処理は１／６０秒を単位として（１フレーム時間として）行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。
【０１０５】
コントローラ５の説明に戻り、操作部３２、撮像情報演算部３５、および加速度センサ３７からマイコン４２へ出力されたデータ、ならびに、ジャイロセンサユニット６からマイコン４２へ送信されてきたデータは、一時的にメモリ４３に格納される。これらのデータは、上記第１操作データとしてゲーム装置３へ送信される。すなわち、マイコン４２は、ゲーム装置３のコントローラ通信モジュール１９への送信タイミングが到来すると、メモリ４３に格納されている操作データを第１操作データとして無線モジュール４４へ出力する。無線モジュール４４は、例えばＢｌｕｅｔｏｏｔｈ（ブルートゥース）（登録商標）の技術を用いて、所定周波数の搬送波を第１操作データで変調し、その微弱電波信号をアンテナ４５から放射する。つまり、第１操作データは、無線モジュール４４で微弱電波信号に変調されてコントローラ５から送信される。微弱電波信号はゲーム装置３側のコントローラ通信モジュール１９で受信される。受信された微弱電波信号について復調や復号を行うことによって、ゲーム装置３は第１操作データを取得することができる。そして、ゲーム装置３のＣＰＵ１０は、操作装置７から取得した第１操作データと、ハンドヘルドデバイス９から取得した第２操作データと、ゲームプログラムとに基づいてゲーム処理を行う。なお、通信部３６からコントローラ通信モジュール１９への無線送信は所定の周期毎に逐次行われるが、ゲームの処理は１／６０秒を単位として（１フレーム時間として）行われることが一般的であるので、この時間以下の周期で送信を行うことが好ましい。コントローラ５の通信部３６は、例えば１／２００秒に１回の割合で第１操作データをゲーム装置３のコントローラ通信モジュール１９へ出力する。
【０１０６】
以上のように、操作装置７は、自機に対する操作を表す第１操作データとして、マーカ座標データ、加速度データ、角速度データ、および操作ボタンデータを送信可能である。また、ゲーム装置３が上記第１操作データをゲーム入力として用いてゲーム処理を実行する。したがって、上記操作装置７を用いることによって、プレイヤは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、操作装置７自体を動かすゲーム操作を行うことができる。例えば、操作装置７を任意の姿勢に傾ける操作、操作装置７によって画面上の任意の位置を指示する操作、および、操作装置７自体を動かす操作等を行うことが可能となる。
【０１０７】
また、本実施形態において、操作装置７は、ゲーム画像を表示する表示手段を有しないが、例えば電池残量を表す画像等を表示するための表示手段を有していてもよい。
【０１０８】
［４．ハンドヘルドデバイス９の外観構成］
図８は、ハンドヘルドデバイス９の外観構成を示す図である。図８に示されるように、ハンドヘルドデバイス９は、下側ハウジング６１および上側ハウジング７１を有する。下側ハウジング６１と上側ハウジング７１とは、開閉可能（折り畳み可能）に接続されている。本実施形態では、各ハウジング６１および７１はともに横長の長方形の板状形状であり、互いの長辺部分で回転可能に接続されている。つまり、下側ハウジング６１と上側ハウジング７１とは、下側ハウジング６１の突起部６１Ａと上側ハウジング７１の突起部７１Ａとが連結されることにより、折り畳み可能に接続される。
【０１０９】
（下側ハウジングの説明）
まず、下側ハウジング６１の構成について説明する。図８に示すように、下側ハウジング６１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）６２、タッチパネル６３、各操作ボタン６４Ａ〜６４Ｌ、アナログスティック６５、ＬＥＤ６６Ａ〜６６Ｂ、挿入口６７、および、マイクロフォン用孔６８が設けられる。以下、これらの詳細について説明する。
【０１１０】
下側ＬＣＤ６２は下側ハウジング６１に収納される。本実施形態においては下側ＬＣＤ６２の画素数は例えば２５６ｄｏｔ×１９２ｄｏｔ（横×縦）とするが、任意の解像度の表示装置を利用することができる。また、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用してもよい。
【０１１１】
タッチパネル６３は、下側ＬＣＤ６２の画面上に装着されている。なお、本実施形態では、タッチパネル６３は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル６３はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル６３として、下側ＬＣＤ６２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル６３の解像度と下側ＬＣＤ６２の解像度が一致している必要はない。また、下側ハウジング６１の上側面には挿入口６７（図８に示す点線）が設けられている。挿入口６７は、タッチパネル６３に対する操作を行うために用いられるタッチペン７８を収納することができる。なお、タッチパネル６３に対する入力は通常タッチペン７８を用いて行われるが、タッチペン７８に限らずユーザの指でタッチパネル６３に対する入力をすることも可能である。
【０１１２】
各操作ボタン６４Ａ〜６４Ｌは、所定の入力を行うための入力装置である。図８に示されるように、下側ハウジング６１の内側面（主面）には、各操作ボタン６４Ａ〜６４Ｌのうち、十字ボタン６４Ａ（方向入力ボタン６４Ａ）、ボタン６４Ｂ、ボタン６４Ｃ、ボタン６４Ｄ、ボタン６４Ｅ、電源ボタン６４Ｆ、セレクトボタン６４Ｊ、ＨＯＭＥボタン６４Ｋ、およびスタートボタン６４Ｌが設けられる。十字ボタン６４Ａは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン６４Ａ〜６４Ｅ、セレクトボタン６４Ｊ、ＨＯＭＥボタン６４Ｋ、およびスタートボタン６４Ｌには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン６４Ａは選択操作等に用いられ、各操作ボタン６４Ｂ〜６４Ｅは決定操作やキャンセル操作等に用いられる。また、電源ボタン６４Ｆは、ハンドヘルドデバイス９の電源をオン／オフするために用いられる。
【０１１３】
また、図示しないが、下側ハウジング６１の上側面には、ＬボタンおよびＲボタンが設けられている。Ｌボタンは、下側ハウジング６１の上面の左端部に設けられ、Ｒボタンは、下側ハウジング６１の上面の右端部に設けられる。また、図示しないが、下側ハウジング６１の左側面には、音量ボタンが設けられる。音量ボタンは、ハンドヘルドデバイス９が備えるスピーカの音量を調整するために用いられる。
【０１１４】
アナログスティック６５は、方向を指示するデバイスであり、下側ハウジング６１の内側面に設けられる。図８に示すように、アナログスティック６５は、十字ボタン６４Ａの上方に設けられる。アナログスティック６５は、指で操作されるスティック部が下側ハウジング６１の内側面に対して任意の方向（上下左右および斜め方向の任意の角度）に傾倒するように構成されている。
【０１１５】
また、下側ハウジング６１の左側面には開閉可能なカバー部が設けられる。このカバー部の内側には、ハンドヘルドデバイス９とデータ保存用外部メモリ９６とを電気的に接続するためのコネクタ（図示せず）が設けられる。データ保存用外部メモリ９６は、コネクタに着脱自在に装着される。データ保存用外部メモリ９６は、例えば、ハンドヘルドデバイス９によって撮像された画像のデータを記憶（保存）するために用いられる。
【０１１６】
また、下側ハウジング６１の上側面には開閉可能なカバー部が設けられる。このカバー部の内側には、ハンドヘルドデバイス９とゲームプログラムを記録した外部メモリ９５とを電気的に着脱自在に接続するためのコネクタ（図示せず）が設けられる。当該外部メモリ９５がハンドヘルドデバイス９に接続されることにより、所定のゲームプログラムが実行される。
【０１１７】
また、図８に示されるように、下側ハウジング６１の下側面にはハンドヘルドデバイス９の電源のＯＮ／ＯＦＦ状況をユーザに通知する第１ＬＥＤ６６Ａが設けられる。さらに、下側ハウジング６１の右側面にはハンドヘルドデバイス９の無線通信の確立状況をユーザに通知する第２ＬＥＤが設けられる。ハンドヘルドデバイス９は他の機器との間で無線通信を行うことが可能であり、第２ＬＥＤ６６Ｂは、無線通信が確立している場合に点灯する。ハンドヘルドデバイス９は、例えば、ＩＥＥＥ８０２．１１ｎの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。下側ハウジング６１の右側面には、この無線通信の機能を有効／無効にする無線スイッチが設けられる。
【０１１８】
また、下側ハウジング６１の内側面には、マイクロフォン用孔６８が設けられる。マイクロフォン用孔６８の下部には後述する音声入力装置としてのマイク（図９参照）が設けられ、当該マイクがハンドヘルドデバイス９の外部の音を検出する。
【０１１９】
なお、図示は省略するが、下側ハウジング６１には、ハンドヘルドデバイス９の電源となる充電式電池が収納され、下側ハウジング６１の側面（例えば、上側面）に設けられた端子を介して当該電池を充電することができる。
【０１２０】
（上側ハウジングの説明）
次に、上側ハウジング７１の構成について説明する。図８に示すように、上側ハウジング７１には、上側ＬＣＤ７２、外側カメラ７３（左目用カメラ７３ａおよび右目用カメラ７３ｂ）、内側カメラ７４、３Ｄ調整スイッチ７５、および、３Ｄインジケータ７６が設けられる。以下、これらの詳細について説明する。
【０１２１】
図８に示すように、上側ＬＣＤ７２は上側ハウジング７１に収納される。本実施形態においては、上側ＬＣＤ７２の画面は下側ＬＣＤ６２の画面よりも横長に設定され、上側ＬＣＤ７２の画素数は、例えば６４０ｄｏｔ×２００ｄｏｔ（横×縦）である。ただし、他の実施形態においては、上側ＬＣＤ７２として任意の解像度の表示装置を利用することができる。また、本実施形態では上側ＬＣＤ７２は液晶表示装置であるとしたが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置などが利用されてもよい。
【０１２２】
また、本実施形態においては、上側ＬＣＤ７２は、（裸眼で）立体視可能な画像を表示することが可能な表示装置である。具体的には、本実施形態では、上側ＬＣＤ７２において横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるように、レンチキュラー方式やパララックスバリア方式（視差バリア方式）の表示装置が上側ＬＣＤ７２として用いられる。ただし、他の実施形態においては、上側ＬＣＤ７２は必ずしも立体視可能な画像を表示することが可能な表示装置でなくてもよい。なお、本実施形態においては、上側ＬＣＤ７２は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する（平面視画像を表示する）平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する３Ｄ調整スイッチ７５によって行われる。
【０１２３】
外側カメラ７３は、上側ハウジング７１の外側面（上側ＬＣＤ７２が設けられた主面と反対側の背面）に設けられ、当該外側面の法線方向を撮像方向とするステレオカメラである。外側カメラ７３は、左目用カメラ７３ａおよび右目用カメラ７３ｂの２つのカメラで構成される。左目用カメラ７３ａおよび右目用カメラ７３ｂは、それぞれの撮像方向が平行となるように配置される。左目用カメラ７３ａおよび右目用カメラ７３ｂは、それぞれ所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。左目用カメラ７３ａおよび右目用カメラ７３ｂの間隔は、人間の両目の間隔程度に設定され、例えば、３０ｍｍ〜７０ｍｍの範囲で設定されてもよい。なお、左目用カメラ７３ａおよび右目用カメラ７３ｂの間隔は、この範囲に限らない。また、他の実施形態においては、上記２つのカメラ７３ａおよび７３ｂの間隔は可変であってもよい。上記外側カメラ７３によって、立体視可能な画像を撮像することができる。
【０１２４】
内側カメラ７４は、上側ハウジング７１の内側面（主面）７１Ｂに設けられ、当該内側面の法線方向を撮像方向とするカメラである。内側カメラ７４は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。内側カメラ７４は、外側カメラ７３とは反対方向を撮像するので、ユーザが上側ＬＣＤ７２を正視した際、内側カメラ７４でユーザの顔を正面から撮像することができる。
【０１２５】
３Ｄ調整スイッチ７５は、スライドスイッチであり、上述のように上側ＬＣＤ７２の表示モードを切り替えるために用いられるスイッチである。３Ｄ調整スイッチ７５は、上側ＬＣＤ７２に表示された立体視可能な画像（立体画像）の立体感を調整するために用いられる。図８に示されるように、３Ｄ調整スイッチ７５は、上側ハウジング７１の内側面および右側面の端部に設けられ、ユーザが上側ＬＣＤ７２を正視した場合に、当該３Ｄ調整スイッチ７５を視認できる位置に設けられる。３Ｄ調整スイッチ７５には上下方向にスライド可能なスライダが設けられており、スライダの位置に応じて立体画像の立体感が調整される。ここでは、スライダが最下点の位置に存在する場合、上側ＬＣＤ７２は平面表示モードに設定され、スライダが最下点より上側の所定位置から最上点の位置までの間に存在する場合、上側ＬＣＤ７２は立体表示モードに設定される。また、スライダが上記所定位置から最上点の位置までの間に存在する場合、スライダの位置に応じて、立体画像の見え方が調整される。
【０１２６】
３Ｄインジケータ７６は、上側ＬＣＤ７２が立体表示モードか否かを示す。３Ｄインジケータ７６は、ＬＥＤであり、上側ＬＣＤ７２の立体表示モードが有効の場合に点灯する。
【０１２７】
また、上側ハウジング７１の内側面には、スピーカ孔７１Ｅが設けられる。後述するスピーカ９３からの音声がこのスピーカ孔７１Ｅから出力される。
【０１２８】
［５．ハンドヘルドデバイス９の内部構成］
次に、図９を参照して、ハンドヘルドデバイス９の内部の電気的構成について説明する。図９は、ハンドヘルドデバイス９の内部構成を示すブロック図である。図９に示すように、ハンドヘルドデバイス９は、上述した各部に加えて、情報処理部８１、メインメモリ８２、外部メモリインターフェイス（外部メモリＩ／Ｆ）８３、データ保存用外部メモリＩ／Ｆ８４、データ保存用内部メモリ８５、無線通信モジュール８６、ローカル通信モジュール８７、リアルタイムクロック（ＲＴＣ）３８、加速度センサ８９、ジャイロセンサ９０、電源回路９４、およびインターフェイス回路（Ｉ／Ｆ回路）４１等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング６１（または上側ハウジング７１でもよい）内に収納される。
【０１２９】
情報処理部８１は、所定のプログラムを実行するためのＣＰＵ８１１、画像処理を行うＧＰＵ８１２等を含む情報処理手段である。本実施形態では、所定の処理を実行するためのプログラムがハンドヘルドデバイス９内のメモリ（例えば外部メモリＩ／Ｆ８３に接続された外部メモリ９５やデータ保存用内部メモリ８５）に記憶されている。情報処理部８１のＣＰＵ８１１は、当該プログラムを実行することによって、当該プログラムに応じた処理（例えば、撮影処理や、後述する画像表示処理など）を実行する。なお、情報処理部８１のＣＰＵ８１１によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部８１は、ＶＲＡＭ８１３を含む。情報処理部８１のＧＰＵ８１２は、情報処理部８１のＣＰＵ８１１からの命令に応じて画像を生成し、ＶＲＡＭ８１３に描画する。そして、情報処理部８１のＧＰＵ８１２は、ＶＲＡＭ８１３に描画された画像を上側ＬＣＤ７２及び／又は下側ＬＣＤ６２に出力し、上側ＬＣＤ７２及び／又は下側ＬＣＤ６２に当該画像が表示される。なお、画像データが外部（ゲーム装置３）から取得される場合には、取得された画像データがＶＲＡＭ８１３に記憶され、上側ＬＣＤ７２及び／又は下側ＬＣＤ６２に画像が表示される。
【０１３０】
情報処理部８１には、メインメモリ８２、外部メモリＩ／Ｆ８３、データ保存用外部メモリＩ／Ｆ８４、および、データ保存用内部メモリ８５が接続される。外部メモリＩ／Ｆ８３は、外部メモリ９５を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリＩ／Ｆ８４は、データ保存用外部メモリ９６を着脱自在に接続するためのインターフェイスである。
【０１３１】
メインメモリ８２は、情報処理部８１（のＣＰＵ８１１）のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ８２は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部（外部メモリ９５や他の機器等）から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ８２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。
【０１３２】
外部メモリ９５は、情報処理部８１によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ９５は、例えば読み取り専用の半導体メモリで構成される。外部メモリ９５が外部メモリＩ／Ｆ８３に接続されると、情報処理部８１は外部メモリ９５に記憶されたプログラムを読み込むことができる。情報処理部８１が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ９６は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ９６には、外側カメラ７３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ９６がデータ保存用外部メモリＩ／Ｆ８４に接続されると、情報処理部８１はデータ保存用外部メモリ９６に記憶された画像を読み込み、上側ＬＣＤ７２及び／又は下側ＬＣＤ６２に当該画像を表示することができる。
【０１３３】
データ保存用内部メモリ８５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ８５には、無線通信モジュール８６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【０１３４】
無線通信モジュール８６は、例えばＩＥＥＥ８０２．１１ｎの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。また、ローカル通信モジュール８７は、所定の通信方式（例えば独自プロトコルによる通信や、赤外線通信）により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール８６およびローカル通信モジュール８７は情報処理部８１に接続される。情報処理部８１は、無線通信モジュール８６を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール８７を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【０１３５】
本実施形態においては、ゲーム装置３とハンドヘルドデバイス９との通信は、上記無線通信モジュール８６によって行われる。また、情報処理部８１は、図示しない画像伸張部を有している。画像伸張部は、無線通信モジュール８６からの画像データ（および音声データ）に対して所定の伸張処理を行う。したがって、ゲーム装置３から画像データ（および音声データ）が送信されてくる場合、無線通信モジュール８６によって当該画像データが受信された後、画像伸張部によって所定の伸張処理が行われる。伸張処理が行われた画像データは、ＣＰＵ８１１によってＶＲＡＭ８１３に適宜記憶されて上側ＬＣＤ７２及び／又は下側ＬＣＤ６２に出力される。
【０１３６】
また、情報処理部８１には、加速度センサ８９が接続される。加速度センサ８９は、３軸（図８に示すｘｙｚ軸）方向に沿った直線加速度の大きさを検出する。本実施形態においては、加速度センサ８９は下側ハウジング６１の内部に設けられる。加速度センサ８９は、下側ハウジング６１の長辺方向をｘ軸、下側ハウジング６１の短辺方向をｙ軸、下側ハウジング６１の内側面（主面）に対して垂直な方向をｚ軸として、各軸の直線加速度の大きさを検出する。例えば、加速度センサ８９は、アナログ・デバイセズ株式会社（Ａｎａｌｏｇ  Ｄｅｖｉｃｅｓ，  Ｉｎｃ．）又はＳＴマイクロエレクトロニクス社（ＳＴＭｉｃｒｏｅｌｅｃｔｒｏｎｉｃｓ  Ｎ．Ｖ．）から入手可能である種類のものでもよい。なお、加速度センサ８９は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ８９は１軸または２軸方向を検出する加速度センサであってもよい。情報処理部８１は、加速度センサ８９が検出した加速度を表すデータ（加速度データ）を取得して、ハンドヘルドデバイス９の姿勢や動きを検出することができる。
【０１３７】
また、情報処理部８１には、ジャイロセンサ９０が接続される。ジャイロセンサ９０は、ｘ軸、ｙ軸およびｚ軸の３軸周りの角速度を検出する。３軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ９０はジャイロセンサユニット６と同様、２軸ジャイロセンサと１軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ９０は１軸または２軸方向を検出するジャイロセンサであってもよい。情報処理部８１は、ジャイロセンサ９０が検出した角速度を表すデータ（角速度データ）を取得して、ハンドヘルドデバイス９の姿勢や動きを検出することができる。
【０１３８】
以上のように、ハンドヘルドデバイス９は、自身に対する操作を表す操作データとして、加速度データおよび角速度データを取得可能である。したがって、ハンドヘルドデバイス９を用いることによって、プレイヤは、各操作ボタンを押下する従来の一般的なゲーム操作に加えて、ハンドヘルドデバイス９自体を動かすゲーム操作を行うことができる。
【０１３９】
また、情報処理部８１には、ＲＴＣ８８および電源回路９４が接続される。ＲＴＣ８８は、時間をカウントして情報処理部８１に出力する。情報処理部８１は、ＲＴＣ８８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路９４は、ハンドヘルドデバイス９が有する電源（下側ハウジング６１に収納される上記充電式電池）からの電力を制御し、ハンドヘルドデバイス９の各部品に電力を供給する。
【０１４０】
また、情報処理部８１には、Ｉ／Ｆ回路９１が接続される。Ｉ／Ｆ回路９１には、マイク９２およびスピーカ９３が接続される。具体的には、Ｉ／Ｆ回路９１には、図示しないアンプを介してスピーカ９３が接続される。マイク９２は、ユーザの音声を検知して音声信号をＩ／Ｆ回路９１に出力する。アンプは、Ｉ／Ｆ回路９１からの音声信号を増幅し、音声をスピーカ９３から出力させる。また、タッチパネル６３はＩ／Ｆ回路９１に接続される。Ｉ／Ｆ回路９１は、マイク９２およびスピーカ９３（アンプ）の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル６３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部８１に出力する。タッチ位置データは、タッチパネル６３の入力面において入力が行われた位置の座標を表す。なお、タッチパネル制御回路は、タッチパネル６３からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。情報処理部８１は、タッチ位置データを取得することにより、タッチパネル６３に対して入力が行われた位置を知ることができる。
【０１４１】
操作ボタン６４は、上記各操作ボタン６４Ａ〜６４ＬならびにＬボタンおよびＲボタンからなり、情報処理部８１に接続される。操作ボタン６４から情報処理部８１へは、操作ボタン６４に対する入力状況（押下されたか否か）を表す操作ボタンデータが出力される。情報処理部８１は、操作ボタン６４から上記操作ボタンデータを取得することによって、操作ボタン６４に対する入力に従った処理を実行する。
【０１４２】
アナログスティック６５は、情報処理部８１に接続され、アナログスティック６５の傾倒された方向および量を表すスティックデータを情報処理部８１へ出力する。情報処理部８１は、アナログスティック６５から上記スティックデータを取得することによって、アナログスティック６５に対する入力に従った処理を実行する。
【０１４３】
上記のように、ハンドヘルドデバイス９は、入力装置として、加速度センサ８９、ジャイロセンサ９０、タッチパネル６３、操作ボタン６４、およびアナログスティック６５という５種類の入力手段を備えている。ただし、他の実施形態においては、ハンドヘルドデバイス９が備える入力装置はどのようなものであってもよい。例えば、ハンドヘルドデバイス９は、上記５種類の入力手段のいずれか１つ以上を備えていてもよい。また例えば、ハンドヘルドデバイス９は、タッチパッドを備えていてもよいし、コントローラ５と同様の赤外光検知手段（赤外線フィルタ３８、レンズ３９、撮像素子４０、および画像処理回路４１）を備えていてもよい。
【０１４４】
ハンドヘルドデバイス９の入力装置に対する操作を表す第２操作データは、ゲーム装置３へ送信される。ここで、第２操作データは、加速度センサ８９の加速度データ、ジャイロセンサ９０の角速度データ、上記タッチ位置データ、操作ボタンデータ、および、スティックデータを含む。情報処理部８１は、第２操作データを無線通信モジュール８６を介してハンドヘルドデバイス９へ無線送信する。なお、ハンドヘルドデバイス９からゲーム装置３への第２操作データの送信は所定の周期毎に逐次行われるが、コントローラ５からゲーム装置３への第１操作データの送信と同様、１フレーム時間以下の周期で行われることが好ましい。
【０１４５】
下側ＬＣＤ６２および上側ＬＣＤ７２は情報処理部８１に接続される。下側ＬＣＤ６２および上側ＬＣＤ７２は、情報処理部８１（のＧＰＵ８１２）の指示に従って画像を表示する。本実施形態では、情報処理部８１は、上側ＬＣＤ７２に右目用画像と左目用画像とを用いた立体画像（立体視可能な画像）を表示させることも可能である。
【０１４６】
外側カメラ７３および内側カメラ７４は、情報処理部８１に接続される。外側カメラ７３および内側カメラ７４は、情報処理部８１の指示に従って画像を撮像し、撮像した画像データを情報処理部８１に出力する。
【０１４７】
３Ｄ調整スイッチ７５は、情報処理部８１に接続される。３Ｄ調整スイッチ７５は、スライダ２５ａの位置に応じた電気信号を情報処理部８１に送信する。
【０１４８】
また、３Ｄインジケータ７６は、情報処理部８１に接続される。情報処理部８１は、３Ｄインジケータ７６の点灯を制御する。例えば、情報処理部８１は、上側ＬＣＤ７２が立体表示モードである場合、３Ｄインジケータ７６を点灯させる。以上がハンドヘルドデバイス９の内部構成の説明である。
【０１４９】
［６．ゲーム処理の概要］
次に、本実施形態のゲームシステムにおいて実行されるゲーム処理の概要について説明する。本実施形態では、ゲームの一例として２人のプレイヤが対戦する形式の野球ゲームを実行するゲーム処理について説明する。以下では、操作装置７を用いて攻撃側を担当するプレイヤを「第１プレイヤ」と呼び、ハンドヘルドデバイス９を用いて守備側を担当するプレイヤを「第２プレイヤ」と呼ぶ。
【０１５０】
本野球ゲームでは、主に、投手が投球を行って打者がボールを打つ場面（投球シーン）と、打者が打ったボールを野手が捕球する場面（守備シーン）とがある。以下、投球シーンおよび守備シーンにおけるゲーム処理の概要を説明する。
【０１５１】
まず、投球シーンにおけるゲーム処理について説明する。図１０は、投球シーンにおいてテレビ２に表示されるゲーム画像（第１ゲーム画像）の一例を示す図である。図１０に示す第１ゲーム画像は、主に第１プレイヤのための画像である。すなわち、この第１ゲーム画像は、第１プレイヤの操作対象である打者（打者オブジェクト）１０１の側から、第２プレイヤの操作対象である投手（投手オブジェクト）１０２の方を見たゲーム空間を表す。なお、図１０のゲーム画像では、捕手（捕手オブジェクト）が表示されないが、他の実施形態においては、捕手が打者１０１の手前側に表示されてもよい。また、本実施形態においては、投球シーンにおける第１ゲーム画像の視点および視線は固定されている。つまり、第１ゲーム画像を生成するための仮想カメラ（第１仮想カメラと呼ぶ）の位置および姿勢は投球シーンでは変化しない。なお、他の実施形態においては、ゲーム装置３は、第１の仮想カメラに演出のための多少の動きを加えてもよい。
【０１５２】
一方、図１１は、投球シーンにおいてハンドヘルドデバイス９に表示されるゲーム画像（第２ゲーム画像）の一例を示す図である。図１１に示す第２ゲーム画像は、主に第２プレイヤのための画像である。すなわち、この第２ゲーム画像は、第２プレイヤの操作対象である投手１０２の側から、第１プレイヤの操作対象である打者１０１の方を見たゲーム空間を表す。なお、図１１のゲーム画像では、投手１０２が表示されないが、他の実施形態においては、投手１０２が打者１０１の手前側に表示されてもよい。また、ここでは、ハンドヘルドデバイス９の下側ＬＣＤ６２に第２ゲーム画像が表示されるものとするが、他の実施形態においては上側ＬＣＤ６２に図１１に示す第２ゲーム画像が表示されてもよいし、上側ＬＣＤ６２には他のゲーム画像が表示されてもよい。
【０１５３】
ここで、第２ゲーム画像を生成するための仮想カメラ（第２仮想カメラと呼ぶ）の姿勢は、ハンドヘルドデバイス９の姿勢に対応するように制御される。図１２は、ハンドヘルドデバイス９の姿勢と第２ゲーム画像との関係を示す図である。図１２では、ハンドヘルドデバイス９がある基準姿勢となる状態において、第２仮想カメラの姿勢は投手１０２から打者１０１への方向を向く姿勢となっている。なお、図１２に示す基準姿勢では、下側ＬＣＤ６２の画面が鉛直方向（重力方向）と平行になっているものとする。この場合において、ハンドヘルドデバイス９を基準姿勢から左方向（下側ＬＣＤ６２の正面から下側ＬＣＤ６２を見たときの左方向）へ回転させると、ゲーム空間内の第２仮想カメラも左方向へ回転する。その結果、図１２に示すように、基準姿勢の場合に表示されるゲーム画像よりも視線が左を向いたゲーム画像が表示される（画面が左へスクロールする）。同様に、ハンドヘルドデバイス９を基準姿勢から右方向へ回転させると、第２仮想カメラも右方向へ回転し、基準姿勢の場合に表示されるゲーム画像よりも視線が右を向いたゲーム画像が表示される（画面が右へスクロールする）。
【０１５４】
なお、図１２ではハンドヘルドデバイス９を左右方向に回転させる場合を示したが、上下方向に回転させる場合も左右方向と同様に、ハンドヘルドデバイス９の姿勢に対応するように第２仮想カメラの姿勢が変化する。つまり、ハンドヘルドデバイス９を基準姿勢から上（下）へ回転させると、第２仮想カメラも上（下）へ回転し、基準姿勢の場合に表示されるゲーム画像よりも視線が上（下）を向いたゲーム画像が表示される。また、ハンドヘルドデバイス９を下側ＬＣＤ６２の画面に垂直な軸回りに回転させる場合も同様に、ハンドヘルドデバイス９の姿勢に対応するように第２仮想カメラの姿勢が変化する。
【０１５５】
以上のように、本実施形態では、第２プレイヤは、ハンドヘルドデバイス９の姿勢を変化させる操作によって、第２仮想カメラの姿勢（つまり、ゲーム画像の表示範囲）を変化させることができる。したがって、第２プレイヤは、自身の正面にハンドヘルドデバイス９を把持した状態で自身の向きを変えることによって、第２仮想カメラの姿勢を変化させることができる。これによれば、第２プレイヤは、ハンドヘルドデバイスの画面を見ながら自身が動くことで表示範囲を変化させることができ、今までにない操作感覚のゲーム操作をプレイヤに提供することができる。なお、第２仮想カメラの姿勢を変化させる場合、プレイヤは、自身の正面にハンドヘルドデバイス９を把持した状態で自身の向き（体ごと）を変えてもよいし、自身は回転せずにハンドヘルドデバイス９のみを回転させてもよい。
【０１５６】
また、本実施形態においては、上記第２仮想カメラの姿勢によって投手１０２の投球方向（ボールを投げる方向）が決まる。具体的には、図１１に示すように、下側ＬＣＤ６２にはゲーム空間の画像に重ねて、画面中央に目標画像１０５が表示される。そして、第２プレイヤが所定の投球指示（例えば、ボタン６４Ｂを押下することで行われる指示）を行うと、投手１０２は、目標画像１０５が指し示す位置へボール（ボールオブジェクト）１０４を投げる。以上のように、第２プレイヤは、ハンドヘルドデバイス９の姿勢を変化させる操作によって投球方向を指示して投手１０２に投球を行わせることができる。
【０１５７】
以上より、投球シーンにおいては、第２プレイヤはハンドヘルドデバイス９の姿勢を変化させることによって投球方向を決定して上記投球指示を行う。投球開始の指示は、例えばボタンやタッチパネルに対する操作によって行なうことができる。これに応じて、第１プレイヤは、投手１０２が投げたボール１０４をバット（バットオブジェクト）１０３で打つべく打者１０１を操作する。詳細は後述するが、バット１０３の動作は操作装置７の姿勢に基づいて制御され、第１プレイヤは操作装置７を振る操作によって打者１０１にバット１０３を振らせることができる。
【０１５８】
投手１０２がボール１０４を投げて、かつ、バット１０３が振られると、ゲーム装置３は、バット１０３とボール１０４との接触判定を行う。判定の結果、両者が接触した場合（打者１０１がバット１０３でボール１０４を打った場合）には、バット１０３に当たった後のボール１０４の挙動が計算され、挙動に従ってボール１０４が移動する。この場合、上述の守備シーン（打者が打ったボールを野手が捕球する場面）に切り替わる。一方、両者が接触せずにボール１０４が捕手の位置に達した場合には、ストライクまたはボールの判定が行われ、投球シーンにおけるゲーム処理が再度実行される。
【０１５９】
次に、守備シーンにおけるゲーム処理について説明する。打者１０１がボール１０４を打った場合、ゲーム装置３は、ボール１０４の挙動を計算して、当該挙動に従って移動するボール１０４を各表示装置（テレビ２および下側ＬＣＤ６２）に表示させる。守備シーンにおいては、第２プレイヤは、野手がボール１０４を捕球するためのゲーム操作を行う。
【０１６０】
図１３は、守備シーンにおいてテレビ２に表示されるゲーム画像の一例を示す図である。守備シーンにおいては、図１３に示すように、ボール１０４が移動する様子を表す画像が第１ゲーム画像としてテレビ２に表示される。つまり、第１仮想カメラは、ボール１０４がその視野範囲に含まれるように位置および姿勢が算出される。図１３においては、ボール１０４に加えて、第２プレイヤの操作対象となる野手（野手オブジェクト）１０６が含まれるように第１仮想カメラが制御される。なお、第１ゲーム画像は、プレイヤが打球の行方を把握しやすいように、ボール１０４またはボール１０４の影を含む画像であることが好ましい。また、守備シーンにおいては、第１プレイヤにはゲーム操作が要求されなくてもよいし、プレイヤが何らかのゲーム操作（例えば、走者オブジェクトの走塁に関する操作）を行うようにしてもよい。
【０１６１】
図１４は、守備シーンにおいてハンドヘルドデバイス９に表示されるゲーム画像の一例を示す図である。守備シーンにおいては、図１４に示すように、第２ゲーム画像としては、ボール１０４を捕球すべき野手１０６から見たゲーム空間の画像が表示される。なお、図１４に示すゲーム画像では、ボール１０４を見やすくするために野手１０６は表示されないが、他の実施形態においては、野手１０６が表示されてもよいし、野手１０６の全部または一部（例えばグローブ）が半透明で表示されてもよい。また、本実施形態では、ゲーム空間に配置される野手のうちで、ボール１０４を捕球すべき野手１０６はゲーム装置３によって自動的に決定される。また、当該野手１０６の移動はゲーム装置３によって自動的に制御される。したがって、上記野手１０６の位置に基づいて決定される第２仮想カメラの位置もゲーム装置３によって決定される。
【０１６２】
守備シーンにおいても投球シーンと同様、第２仮想カメラの姿勢は、ハンドヘルドデバイス９の姿勢に対応するように決定される。また、守備シーンにおいては、下側ＬＣＤ６２にはゲーム空間の画像に重ねて、画面中央に枠画像１０７が表示される。枠画像１０７は、野手１０６がボール１０４の捕球に成功するか否かの判断基準を表す。すなわち、野手１０６がボール１０４の捕球に成功するか否かは、第２ゲーム画像においてボール１０４が枠画像１０７の内側に入っているか否かによって判断される。したがって、第２プレイヤは、移動中のボール１０４が枠画像１０７内に入るようにハンドヘルドデバイス９を動かす操作によって、野手１０６にボール１０４を捕球させる。なお、ボール１０４が野手１０６に到達した時点でボール１０４が枠画像１０７内に入っていれば、捕球成功と判断される。一方、上記時点でボール１０４が枠画像１０７内に入っていない場合や、ボール１０４が野手１０６を超えていった場合には、捕球失敗と判断される。以上のように、第２プレイヤは、ハンドヘルドデバイス９の姿勢を変化させる操作によって捕球方向を指示して野手１０６に捕球動作を行わせることができる。
【０１６３】
なお、ゲーム装置３によって捕球判断（捕球に成功したか否かの判断）が行われた後は、判断結果に応じた処理が実行される。捕球判断後の処理はどのような処理であってもよいが、本実施形態においては、ゲーム装置３は、捕球に成功した場合はアウト、捕球に失敗した場合はヒットと判断してゲームを進行する。なお、他の実施形態においては、捕球判断後においては、第２プレイヤが野手１０６に対する操作（野手１０６を移動させたり、ボール１０４を投げさせたりする操作）を行うことを可能としてもよい。また、捕球判断後においてゲーム装置３が、野手１０６の動作（捕球成功の場合にボール１０４を投げたり、捕球失敗の場合にボール１０４を追いかけたりする動作）を自動的に制御するようにしてもよい。
【０１６４】
以上のように、本実施形態においては、テレビ２の他にハンドヘルドデバイス９に表示装置を設ける構成において、単一のゲーム空間に２つの仮想カメラが設定され、ゲーム空間を各仮想カメラから見た２種類のゲーム画像がそれぞれ表示される。これによって、投球シーンおよび守備シーンのそれぞれについて、それぞれのプレイヤにとって見やすい（操作しやすい）ゲーム画像を表示することができる。また、２種類のゲーム画像において、ゲーム空間に対するゲーム処理（ゲーム空間内のオブジェクトの制御等）はほとんどが共通であって、共通のゲーム空間に描画処理を２回行なうだけでそれぞれのゲーム画像が生成できるので、当該ゲーム処理をそれぞれ行なうことに比べると処理効率が高いという利点がある。
【０１６５】
また、投球シーンにおいては、投球方向を表す目標画像１０５はハンドヘルドデバイス９側にのみ表示されるので、第１プレイヤは目標画像１０５が指し示す位置を見ることができない。そのため、第１プレイヤに投球方向が知られて第２プレイヤが不利になるといったゲーム上の不都合が生じない。このように、本実施形態においては、一方のプレイヤがそのゲーム画像を見てしまうと他方のプレイヤにとってゲーム上の不都合が生じる場合には、当該ゲーム画像をハンドヘルドデバイス９に表示すればよい。これによって、ゲームの戦略性が低下する等の不都合を防止することができる。なお、他の実施形態において、ゲームの内容によっては（例えば、第２ゲーム画像が第１プレイヤに見られても上記のような不都合が生じない場合には）、ゲーム装置３は、第２ゲーム画像を第１ゲーム画像とともにテレビ２に表示するようにしてもよい。
【０１６６】
なお、本実施形態においては、ハンドヘルドデバイス９側の第２ゲーム画像が表すゲーム空間の範囲（表示範囲）は、ハンドヘルドデバイス９の姿勢に応じて変化する（図１２）。ここで、テレビ２には第２ゲーム画像とは異なる表示範囲の第１ゲーム画像が表示されるので、第１プレイヤは当該第１ゲーム画像を見てゲームをプレイすることができる。したがって、第２プレイヤは、第１プレイヤへの影響を気にすることなく、ハンドヘルドデバイス９側の第２ゲーム画像の表示範囲を自由に変更することができる。
【０１６７】
［７．ゲーム処理の詳細］
次に、本ゲームシステムにおいて実行されるゲーム処理の詳細を説明する。まず、ゲーム処理において用いられる各種データについて説明する。図１５は、ゲーム処理において用いられる各種データを示す図である。図１５において、ゲーム装置３のメインメモリ（外部メインメモリ１２または内部メインメモリ１１ｅ）に記憶される主なデータを示す図である。図１５に示すように、ゲーム装置３のメインメモリには、ゲームプログラム１１０、第１操作データ１１１、第２操作データ１１６、および処理用データ１２１が記憶される。なお、メインメモリには、図１５に示すデータの他、ゲームに登場する各種オブジェクトの画像データやゲームに使用される音声データ等、ゲームに必要なデータが記憶される。
【０１６８】
ゲームプログラム１１０は、ゲーム装置３に電源が投入された後の適宜のタイミングで光ディスク４からその一部または全部が読み込まれてメインメモリに記憶される。なお、ゲームプログラム１１０は、光ディスク４に代えて、ゲーム装置３の外部装置から（例えばインターネットを介して）取得されてもよい。また、ゲームプログラム１１０に含まれる一部（例えば、操作装置７および／またはハンドヘルドデバイス９の姿勢を算出するためのプログラム）については、ゲーム装置３内に予め記憶されていてもよい。
【０１６９】
第１操作データ１１１は、操作装置７に対するユーザの操作を表すデータである。第１操作データ１１１は、操作装置７から送信されてゲーム装置３において取得される。第１操作データ１１１は、加速度データ１１２、角速度データ１１３、マーカ座標データ１１４、および操作ボタンデータ１１５を含む。なお、メインメモリには、最新の（最後に取得された）ものから順に所定個数の第１操作データが記憶されてもよい。
【０１７０】
加速度データ１１２は、加速度センサ３７によって検出された加速度（加速度ベクトル）を表すデータである。ここでは、加速度データ１１２は、図３に示すＸＹＺの３軸の方向に関する加速度を各成分とする３次元の加速度を表すものであるが、他の実施形態においては、任意の１以上の方向に関する加速度を表すものであればよい。
【０１７１】
角速度データ１１３は、ジャイロセンサユニット６のジャイロセンサ５５および５６によって検出された角速度を表すデータである。ここでは、角速度データ１１３は、図３に示すＸＹＺの３軸回りのそれぞれの角速度を表すものであるが、他の実施形態においては、任意の１軸以上の軸回り角速度を表すものであればよい。
【０１７２】
マーカ座標データ１１４、撮像情報演算部３５の画像処理回路４１によって算出される座標、すなわち上記マーカ座標を表すデータである。マーカ座標は、撮像画像に対応する平面上の位置を表すための２次元座標系で表現され、マーカ座標データ１１４は、当該２次元座標系における座標値を表す。
【０１７３】
操作ボタンデータ１１５は、操作装置７に設けられる各操作ボタン３２ａ〜３２ｉに対する入力状態を表すデータである。
【０１７４】
なお、第１操作データ１１１は、操作装置７を操作するプレイヤの操作を表すものであればよく、上記各データ１１２〜１１５の一部のみを含むものであってもよい。また、操作装置７が他の入力手段（例えば、タッチパネルやアナログスティック等）を有する場合には、第１操作データ１１１は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。なお、本実施形態のように操作装置７自体の動きをゲーム操作として用いる場合には、第１操作データ１１１は、加速度データ１１２、角速度データ１１３、またはマーカ座標データ１１４のように、操作装置７自体の動きに応じて値が変化するデータを含むことが必要である。
【０１７５】
第２操作データ１１６は、ハンドヘルドデバイス９に対するユーザの操作を表すデータである。第２操作データ１１６は、ハンドヘルドデバイス９から送信されてゲーム装置３において取得される。第２操作データ１１６は、加速度データ１１７、角速度データ１１８、タッチ位置データ１１９、および操作ボタンデータ１２０を含む。なお、メインメモリには、最新の（最後に取得された）ものから順に所定個数の第２操作データが記憶されてもよい。
【０１７６】
加速度データ１１７は、加速度センサ８９によって検出された加速度（加速度ベクトル）を表すデータである。ここでは、加速度データ１１７は、図８に示すｘｙｚの３軸の方向に関する加速度を各成分とする３次元の加速度を表すものであるが、他の実施形態においては、任意の１以上の方向に関する加速度を表すものであればよい。
【０１７７】
角速度データ１１８は、ジャイロセンサ９０によって検出された角速度を表すデータである。ここでは、角速度データ１１８は、図８に示すｘｙｚの３軸回りのそれぞれの角速度を表すものであるが、他の実施形態においては、任意の１軸以上の軸回り角速度を表すものであればよい。
【０１７８】
タッチ位置データ１１９は、タッチパネル６３の入力面において入力が行われた位置を表すデータである。ここでは、タッチ位置データ１１９は、上記入力面上の位置を示すための２次元座標系の座標値を表す。
【０１７９】
操作ボタンデータ１２０は、ハンドヘルドデバイス９に設けられる各操作ボタン６４Ａ〜６４Ｌに対する入力状態を表すデータである。
【０１８０】
なお、第２操作データ１１６は、ハンドヘルドデバイス９を操作するプレイヤの操作を表すものであればよく、上記各データ１１７〜１２０のいずれか１つのみを含むものであってもよい。また、ハンドヘルドデバイス９が他の入力手段（例えば、タッチパッドや、操作装置７の撮像手段等）を有する場合には、第２操作データ１１６は、当該他の入力手段に対する操作を表すデータを含んでいてもよい。なお、本実施形態のようにハンドヘルドデバイス９自体の動きをゲーム操作として用いる場合には、第２操作データ１１６は、加速度データ１１７または角速度データ１１８のように、ハンドヘルドデバイス９自体の動きに応じて値が変化するデータを含むようにする。
【０１８１】
処理用データ１２１は、後述するゲーム処理（図１６）において用いられるデータである。処理用データ１２１は、第１姿勢データ１２２、第２姿勢データ１２３、第１カメラデータ１２４、第２カメラデータ１２５、ボールデータ１２６、バットデータ１２７、モードデータ１２８、第１表示設定データ１２９、第２表示設定データ１３０、正面方向データ１３１、および回転角データ１３２を含む。なお、図１５に示すデータの他、処理用データ１２１は、各種オブジェクトに設定されるパラメータを表すデータ等、ゲーム処理において用いられる各種データを含む。
【０１８２】
第１姿勢データ１２２は、操作装置７の姿勢を表すデータである。本実施形態では、第１姿勢データ１２２は、上記第１操作データ１１１に含まれる加速度データ１１２および角速度データ１１３に基づいて算出される。第１姿勢データ１２２の算出方法については後述する。
【０１８３】
第２姿勢データ１２３は、ハンドヘルドデバイス９の姿勢を表すデータである。本実施形態では、第２姿勢データ１２３は、上記第２操作データ１１６に含まれる加速度データ１１７および角速度データ１１８に基づいて算出される。第２姿勢データ１２３の算出方法については後述する。
【０１８４】
第１カメラデータ１２４は、テレビ２に表示される第１ゲーム画像を生成するための第１仮想カメラの配置を表すデータである。具体的には、第１カメラデータ１２４は、仮想のゲーム空間内における第１仮想カメラの位置および姿勢を表す。詳細は後述するが、第１カメラデータ１２４は、第１プレイヤのためのゲーム画像（第１プレイヤにとってゲーム操作が行いやすいゲーム画像）が生成されるように、打者オブジェクト１０１あるいはボールオブジェクト１０４の位置等に基づいて算出される。なお、第１カメラデータ１２４には、第１仮想カメラの画角（視野範囲）を表すデータ等が含まれていてもよい。
【０１８５】
第２カメラデータ１２５は、ハンドヘルドデバイス９の下側ＬＣＤ６２に表示される第２ゲーム画像を生成するための第２仮想カメラの配置を表すデータである。具体的には、第２カメラデータ１２５は、上記ゲーム空間内における第２仮想カメラの位置および姿勢を表す。詳細は後述するが、第２カメラデータ１２５は、第２プレイヤのためのゲーム画像（第２プレイヤにとってゲーム操作が行いやすいゲーム画像）が生成されるように、投手オブジェクト１０２あるいは野手オブジェクト１０６の位置等に基づいて算出される。なお、第２カメラデータ１２５には、第２仮想カメラの画角（視野範囲）を表すデータ等が含まれていてもよい。
【０１８６】
ボールデータ１２６は、仮想のゲーム空間内におけるボールオブジェクト１０４の位置を表すデータである。ボールデータ１２６は、第２プレイヤによる投球操作あるいは第１プレイヤによる打撃操作によってボールオブジェクト１０４の挙動が決定され、当該挙動に従ってボールオブジェクト１０４が移動するように算出される。
【０１８７】
バットデータ１２７は、仮想のゲーム空間内におけるバットオブジェクト１０３の位置および姿勢を表すデータである。バットデータ１２７は、第１プレイヤによる打撃操作に基づいて、具体的には、操作装置７の姿勢に対応する姿勢となるように上記第１姿勢データ１２２に基づいて算出される。
【０１８８】
モードデータ１２８は、ゲーム制御処理（ステップＳ２）の処理モードを表すデータである。この「処理モード」はゲーム制御処理における処理内容を示しており、処理モードが異なるとゲーム制御処理において実行される処理内容が異なる。本実施形態においては、処理モードとしては、投球モードおよび守備モードという２種類のモードがある。投球モードは、上記投球シーンにおいて設定されるモードであり、守備モードは、上記守備シーンにおいて設定されるモードである。モードデータ１２８は、上記２種類のモードのうちいずれかを表す。
【０１８９】
第１表示設定データ１２９は、テレビ２に表示される第１ゲーム画像を生成・表示するための設定を表すデータである。具体的には、第１表示設定データ１２９は、第１ゲーム画像を生成（描画）する際に描画しないオブジェクトがある場合、そのオブジェクトを表す。例えば、第１ゲーム画像を生成する際に打者オブジェクト１０１を描画しない場合には、第１表示設定データ１２９は打者オブジェクト１０１を表す。
【０１９０】
第２表示設定データ１３０は、ハンドヘルドデバイス９の下側ＬＣＤ６２に表示される第２ゲーム画像を生成・表示するための設定を表すデータである。具体的には、第２表示設定データ１３０は、第２ゲーム画像を生成（描画）する際に描画しないオブジェクトがある場合、そのオブジェクトを表す。
【０１９１】
なお、本実施形態においては、ゲーム装置３は、２種類のゲーム画像のために２種類の表示設定データ１２９および１３０を用意することとしたが、他の実施形態においては、いずれか一方のゲーム画像のために１種類の表示設定データのみを用意するようにしてもよい。例えば、第１ゲーム画像に関しては描画しないオブジェクトが存在しない場合には、ゲーム装置３は、上記第２表示設定データ１３０のみをメインメモリに記憶し、第１表示設定データ１２９についてはメインメモリに記憶しないようにしてもよい。また、他の実施形態において、描画しないオブジェクトを２種類のゲーム画像で共通にする場合には、１種類の表示設定データのみを用意するようにしてもよい。
【０１９２】
正面方向データ１３１は、守備シーンにおいてハンドヘルドデバイス９の姿勢から第２仮想カメラの姿勢を算出する際に、基準（正面）とする方向（正面方向）を表すデータである。詳細は後述するが、正面方向データ１３１は、守備シーンにおいて、ボール１０４を捕球すべき野手１０６からゲーム空間内のホームベースへの方向を表すように算出される。
【０１９３】
回転角データ１３２は、守備シーンにおいてハンドヘルドデバイス９の姿勢から第２仮想カメラの姿勢を算出する際に、第２仮想カメラを回転させる角度を表すデータである。詳細は後述するが、守備モードにおいては、ハンドヘルドデバイス９の姿勢から算出された第２仮想カメラの姿勢に対して、姿勢を回転させる補正が行われる。回転角データ１３２は、当該補正によって姿勢を回転させる角度を表す。
【０１９４】
次に、ゲーム装置３において行われるゲーム処理の詳細を、図１６〜図２１を用いて説明する。図１６は、ゲーム装置３において実行されるゲーム処理の流れを示すメインフローチャートである。ゲーム装置３の電源が投入されると、ゲーム装置３のＣＰＵ１０は、図示しないブートＲＯＭに記憶されている起動プログラムを実行し、これによってメインメモリ等の各ユニットが初期化される。そして、光ディスク４に記憶されたゲームプログラムがメインメモリに読み込まれ、ＣＰＵ１０によって当該ゲームプログラムの実行が開始される。なお、ゲーム装置３においては、電源投入後に光ディスク４に記憶されたゲームプログラムがすぐに実行される構成であってもよいし、電源投入後にまず所定のメニュー画面を表示する内蔵プログラムを実行して、その後ユーザによってゲームの開始が指示されたときに光ディスク４に記憶されたゲームプログラムが実行されるようにしてもよい。図１６に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。
【０１９５】
なお、図１６、図１７、および、図１９〜図２０に示すフローチャートの各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよい。また、変数の値や、判断ステップで利用される閾値も、単なる一例に過ぎず、必要に応じて他の値を採用してもよい。また、本実施形態では、上記フローチャートの各ステップの処理をＣＰＵ１０が実行するものとして説明するが、上記フローチャートの一部のステップの処理を、ＣＰＵ１０以外のプロセッサや専用回路が実行するようにしてもよい。
【０１９６】
まずステップＳ１において、ＣＰＵ１０は初期処理を実行する。初期処理は、仮想空間を構築し、仮想空間に登場する各オブジェクトを初期位置に配置したり、ゲーム処理で用いる各種パラメータの初期値を設定したりする処理である。なお、本実施形態においては、初期処理において、投球モードを表すデータがモードデータ１２８としてメインメモリに記憶される。ステップＳ１の次にステップＳ２の処理が実行される。以降、ステップＳ２〜Ｓ８の一連の処理からなる処理ループが所定時間（１フレーム時間）に１回の割合で繰り返し実行される。
【０１９７】
ステップＳ２において、ＣＰＵ１０はゲーム制御処理を実行する。ゲーム制御処理は、各プレイヤによるゲーム操作に従ってオブジェクトを動作させる処理等を実行し、ゲームを進行させる処理である。本実施形態における野球ゲームでは、上述の処理モード毎にゲーム制御処理の処理内容が異なる。すなわち、ゲーム制御処理の開始時において、ＣＰＵ１０は、モードデータ１２８をメインメモリから読み出し、現在の処理モードを判別する。そして、現在の処理モードに応じた内容のゲーム制御処理を実行する。以下、ゲーム制御処理の処理モード毎に、ステップＳ２〜Ｓ８の処理ループにおける処理の詳細を説明する。
【０１９８】
（投球モードにおける処理）
図１７は、投球モードにおけるゲーム制御処理の詳細な流れを示すフローチャートである。投球モードにおいてはまずステップＳ１１において、ＣＰＵ１０は、第１仮想カメラの位置および姿勢を設定する。ステップＳ１１で設定される第１仮想カメラの位置および姿勢は、予め定められている。すなわち、ＣＰＵ１０は、予め定められた位置および姿勢を表すデータを第１カメラデータ１２４としてメインメモリに記憶する。第１仮想カメラの具体的な位置および姿勢はどのように設定されてもよいが、本実施形態では、第１仮想カメラは、打者１０１のやや後方の位置に、打者１０１の側から投手１０２の方を見た視線となるように設定される。これによれば、投手１０２から投げられたボール１０４を含む第１ゲーム画像が生成されるので、第１プレイヤは、ボール１０４を打つ操作を見やすいゲーム画像で行うことができる。また、本実施形態においては、投球モードにおける第１仮想カメラの位置および姿勢は固定である。ただし、他の実施形態においては、ＣＰＵ１０は、第１プレイヤの操作に従って第１仮想カメラの位置および／または姿勢を変化させるようにしてもよい。例えば、第１プレイヤの操作によって打者の位置が変化する場合に、打者の位置に応じて第１仮想カメラの位置を変化させるようにしてもよい。ステップＳ１１の次にステップＳ１２の処理が実行される。
【０１９９】
ステップＳ１２において、ＣＰＵ１０は、操作装置７およびハンドヘルドデバイス９から各操作データを取得する。操作装置７は、加速度センサ３７、ジャイロセンサユニット６、撮像情報演算部３５および操作部３２から出力される各データを第１操作データとしてゲーム装置３へ繰り返し送信するので、ゲーム装置３は、操作装置７からのデータを逐次受信して第１操作データ１１１としてメインメモリに逐次記憶する。ステップＳ１２において、ＣＰＵ１０は、最新の第１操作データ１１１をメインメモリから読み出す。また、ハンドヘルドデバイス９は、加速度センサ８９、ジャイロセンサ９０、タッチパネル６３、および操作ボタン６４から出力される各データを第２操作データとしてゲーム装置３へ繰り返し送信するので、ゲーム装置３は、ハンドヘルドデバイス９からのデータを逐次受信して第２操作データ１１６としてメインメモリに逐次記憶する。ステップＳ１２において、ＣＰＵ１０は、最新の第２操作データ１１６をメインメモリから読み出す。ステップＳ１２の次にステップＳ１３の処理が実行される。
【０２００】
ステップＳ１３において、ＣＰＵ１０は、ハンドヘルドデバイス９の姿勢を算出する。ハンドヘルドデバイス９の姿勢は、第２操作データ１１６に基づいて算出されればどのような方法で算出されてもよいが、本実施形態においては、次の方法で姿勢を算出する。以下、ハンドヘルドデバイス９の姿勢の算出方法について説明する。
【０２０１】
まず、ＣＰＵ１０は、メインメモリに記憶されている角速度データ１１８に基づいてハンドヘルドデバイス９の姿勢を算出する。ハンドヘルドデバイス９の姿勢を角速度から算出する方法はどのような方法であってもよいが、当該姿勢は、前回の姿勢（前回に算出された姿勢）と、今回の角速度（今回の処理ループにおいて取得された角速度）とを用いて算出される。具体的には、ＣＰＵ１０は、前回の姿勢を今回の角速度で単位時間分だけ回転させることによって姿勢を算出する。なお、前回の姿勢は、メインメモリに記憶されている第２姿勢データ１２３により示され、今回の角速度は、メインメモリに記憶されている角速度データ１１８により示されている。したがって、ＣＰＵ１０は、メインメモリから第２姿勢データ１２３および角速度データ１１８を読み出して、ハンドヘルドデバイス９の姿勢を算出する。以上のようにして算出された「角速度に基づく姿勢」を表すデータはメインメモリに記憶される。
【０２０２】
なお、角速度から姿勢を算出する場合、初期姿勢を定めておくのがよい。つまり、ハンドヘルドデバイス９の姿勢を角速度から算出する場合には、ＣＰＵ１０は、最初にハンドヘルドデバイス９の初期姿勢を算出しておく。ハンドヘルドデバイス９の初期姿勢は、加速度データに基づいて算出されてもよいし、ハンドヘルドデバイス９を特定の姿勢にした状態でプレイヤに所定の操作を行わせることで、所定の操作が行われた時点の特定の姿勢を初期姿勢として用いるようにしてもよい。
【０２０３】
次に、ＣＰＵ１０は、角速度に基づいて算出したハンドヘルドデバイス９の姿勢を、加速度データ１１７を用いて補正する。具体的には、ＣＰＵ１０は、メインメモリから加速度データ１１７を読み出して、加速度データ１１７に基づいてハンドヘルドデバイス９の姿勢を算出する。ここで、加速度センサ８９は、ハンドヘルドデバイス９がほぼ静止している状態では、ハンドヘルドデバイス９に対して加えられる加速度は重力加速度を意味する。したがって、検出された重力加速度の方向（重力方向）を、加速度センサ８９が出力する加速度データ１１７を用いて算出することができるので、重力方向に対するハンドヘルドデバイス９の向き（姿勢）を当該加速度データ１１７に基づいて算出することができる。このように、加速度センサ８９が重力加速度を検出する状況では、重力方向に対するハンドヘルドデバイス９の向き（姿勢）を加速度データ１１７に基づいて算出することができる。以上のようにして算出された「加速度に基づく姿勢」を表すデータはメインメモリに記憶される。
【０２０４】
加速度に基づく姿勢を算出すると、ＣＰＵ１０は次に、加速度に基づく姿勢を用いて、角速度に基づく姿勢を補正する。具体的には、ＣＰＵ１０は、角速度に基づく姿勢を表すデータと加速度に基づく姿勢を表すデータとをメインメモリから読み出し、角速度データに基づく姿勢を、加速度データに基づく姿勢へ所定の割合で近づける補正を行う。この所定の割合は、予め定められた固定値であってもよいし、加速度データ１１７が示す加速度等に応じて設定されてもよい。また、加速度に基づく姿勢に関しては、重力方向を軸とする回転方向については姿勢を算出することができないので、ＣＰＵ１０は、当該回転方向に関しては補正を行わないようにしてもよい。本実施形態においては、以上のようにして得られた補正後の姿勢を表すデータが、第２姿勢データ１２３としてメインメモリに記憶される。ステップＳ１３の次にステップＳ１４の処理が実行される。
【０２０５】
以上のステップＳ１３の処理によって、ハンドヘルドデバイス９の姿勢が算出される。ここで、ハンドヘルドデバイス９の姿勢を算出する方法のうち、角速度を用いる方法では、ハンドヘルドデバイス９がどのように動いているときであっても姿勢を算出することができる。一方、角速度を用いる方法では、逐次検出される角速度を累積加算していくことによって姿勢を算出するので、誤差が累積すること等によって精度が悪くなったり、いわゆる温度ドリフトの問題でジャイロセンサの精度が悪くなったりするおそれがある。また、加速度を用いる方法は、誤差が蓄積しない一方、ハンドヘルドデバイス９が激しく動かされている状態では、（重力方向を正確に検出することができないので）姿勢を精度良く算出することができない。本実施形態によれば、上記のように特長の異なる２種類の方法を用いるので、ハンドヘルドデバイス９の姿勢をより正確に算出することができる。なお、本実施形態では、ゲーム装置３は、上記２つの方法を用いてハンドヘルドデバイス９の姿勢を算出するが、他の実施形態においては、２つの方法のうちいずれか１つを用いて姿勢を算出するようにしてもよい。
【０２０６】
ステップＳ１４において、ＣＰＵ１０は、ハンドヘルドデバイス９の姿勢に基づいて第２仮想カメラを制御する。すなわち、ステップＳ１４では第２仮想カメラの位置および姿勢が算出される。ここで、投球モードにおける第２仮想カメラの位置は、予め定められた所定位置に固定される。上記所定位置は、例えば、投手１０２の位置または投手１０２よりもやや後方（ホームベースから遠ざかる方向）の位置である。これによって、図１０に示されるように、投手１０２の側から打者１０１の方を見た視線となる第２ゲーム画像が生成される。
【０２０７】
また、第２仮想カメラの姿勢は、ハンドヘルドデバイス９の姿勢に対応するように設定される。以下、図１８を参照して、ハンドヘルドデバイス９の姿勢に基づく第２仮想カメラの姿勢の設定方法について説明する。
【０２０８】
図１８は、ハンドヘルドデバイス９の姿勢と第２仮想カメラの姿勢との関係を示す図である。図１８において、３つのベクトルＶＡ，ＶＢ，ＶＣは、ハンドヘルドデバイス９の姿勢を表す。すなわち、ベクトルＶＡ，ＶＢ，ＶＣは、それぞれ、ハンドヘルドデバイス９の右向き（図８に示すｘ軸正方向）、上向き（図８に示すｙ軸正方向）、前向き（図８に示すｚ軸正方向）を表すベクトルである。また、３つのベクトルＶａ，Ｖｂ，Ｖｃは、第２仮想カメラ１４０の姿勢を表し、それぞれ、第２仮想カメラ１４０の右向き、上向き、前向きを表すベクトルである。
【０２０９】
図１８に示す上欄は、ハンドヘルドデバイス９が所定の基準姿勢となる場合を示している。ハンドヘルドデバイス９の基準姿勢はどのような姿勢でもよいが、例えば、ベクトルＶＢが鉛直上向き（重力方向の逆方向）となり、ベクトルＶＣが水平方向であってテレビ２の方向となり、ベクトルＶＡが水平方向となるような姿勢である。ハンドヘルドデバイス９が上記基準姿勢となる場合、第２仮想カメラ１４０は基準姿勢となる。第２仮想カメラ１４０の基準姿勢はどのような姿勢でもよいが、本実施形態においては、ベクトルＶｂが仮想空間における鉛直上向きとなり、ベクトルＶｃが投手の位置からホームベースへの向きとなり、ベクトルＶａが水平方向となるような姿勢である。これによれば、ハンドヘルドデバイス９を基準姿勢とした場合に、投手の位置から捕手への方向を真っ直ぐに見た第２ゲーム画像を生成することができる。以上のように、第２仮想カメラ１４０の姿勢は、ハンドヘルドデバイス９が基準姿勢となる場合に、所定の基準姿勢となるように設定される。
【０２１０】
また、第２仮想カメラ１４０の姿勢は、ハンドヘルドデバイス９が基準姿勢から回転した方向に応じた方向に、回転量に応じた回転量だけ、第２仮想カメラ１４０を基準姿勢から回転させた姿勢となるように設定される。例えば、図１８の中欄に示すように、ハンドヘルドデバイス９が基準姿勢から右回りに回転した場合、第２仮想カメラは基準姿勢から右回りに回転するように算出される。また、図１８の下欄に示すように、ハンドヘルドデバイス９が基準姿勢から左回りに回転した場合、第２仮想カメラは基準姿勢から左回りに回転するように算出される。なお、上記における「右回り」および「左回り」とは、現実空間あるいは仮想空間において鉛直下向きに見た場合における回転方向である。
【０２１１】
図１８に示すように、本実施形態においては、仮想空間における第２仮想カメラ１４０の姿勢が現実空間におけるハンドヘルドデバイス９の姿勢に一致するように、第２仮想カメラ１４０の姿勢が算出される。ただし、他の実施形態においては、ハンドヘルドデバイス９の姿勢と第２仮想カメラ１４０の姿勢とが一致する必要はなく、ハンドヘルドデバイス９の姿勢に応じて変化するように第２仮想カメラ１４０の姿勢が算出されればよい。すなわち、ハンドヘルドデバイス９の回転量と第２仮想カメラ１４０の回転量を同じにする必要はなく、ハンドヘルドデバイス９を少し動かすだけで第２仮想カメラ１４０を十分制御できるようにしてもよい。また、ハンドヘルドデバイス９の回転量に対して第２仮想カメラ１４０の回転量を小さくすることによって、プレイヤが第２仮想カメラ１４０の向きを細かく操作できるようにしてもよい。
【０２１２】
ステップＳ１４の具体的な処理としては、ＣＰＵ１０は、メインメモリから第２姿勢データ１２３を読み出し、第２姿勢データ１２３に基づいて第２仮想カメラの姿勢を算出する。また、第２仮想カメラの位置を上記所定位置に設定する。そして、算出された姿勢と設定された位置を表すデータを第２カメラデータ１２５としてメインメモリに記憶する。ステップＳ１４の次にステップＳ１５の処理が実行される。
【０２１３】
上記ステップＳ１４においては、ＣＰＵ１０は第２仮想カメラの位置を固定し、第２仮想カメラの姿勢をハンドヘルドデバイス９の姿勢に応じて変化させた。ここで、他の実施形態においては、第２仮想カメラの姿勢に代えて（または姿勢と共に）位置をハンドヘルドデバイス９の姿勢に応じて変化させてもよい。例えば、ＣＰＵ１０は、第２仮想カメラを左に向けて回転させる場合、第２仮想カメラの向きを左に回転させながら位置を左に移動させてもよい。
【０２１４】
ステップＳ１５において、ＣＰＵ１０は、投手１０２およびボール１０４の動作を制御する。ここで、投手１０２は、第２仮想カメラの姿勢に応じて向きを変える動作を行い、所定の投球指示が行われたことに応じて投球動作を行う。すなわち、ＣＰＵ１０は、第２カメラデータ１２５をメインメモリから読み出し、第２仮想カメラの姿勢（より具体的には、鉛直方向の軸回りに関する向き）に合わせて投手１０２の向きを変更する。また、操作ボタンデータ１２０をメインメモリから読み出し、投球指示（例えば、ボタン６４Ｂを押下することで行われる指示）が行われたか否かを判定する。そして、投球指示が行われた場合には、投手１０２に投球動作を行わせる。なお、ＣＰＵ１０は、複数フレームに渡って（つまり、複数回のステップＳ１５の処理において）投手１０２に一連の投球動作を行わせる。
【０２１５】
また、ボール１０４は、上記投球指示が行われたことに応じて、投手１０２の位置から所定の投球方向へ所定の速さで移動するように制御される。ここで、「所定の投球方向」は、第２仮想カメラの位置および姿勢によって決められる。具体的には、所定の投球方向は、第２仮想カメラの視線方向が指し示す位置であり、換言すれば、（第２仮想カメラの姿勢によって決まる）目標画像１０５が指し示す位置である。なお、目標画像１０５の位置は、第２仮想カメラの視線方向に合わせてもよいし、視線方向から所定量ずらした位置に配置するようにしてもよい。また、目標画像１０５を用いる実施例以外の実施例として、投球の指示をタッチパネル６３で行い、投球方向がタッチパネル６３に対するタッチ位置に基づいて決定されるようにしてもよい。ボール１０４が移動する上記所定の速さは、どのように決定されてもよく、予め定められた速さでもよいし、投手１０２に設定されたパラメータに応じて決定されてもよい。以上より、ステップＳ２５において、ＣＰＵ１０は、投球指示が行われた場合には、第２カメラデータ１２５をメインメモリから読み出し、第２仮想カメラの位置および姿勢に基づいて上記投球方向を算出する。また、投球指示が行われた後においては、ＣＰＵ１０は、ボールデータ１２６をメインメモリから読み出し、ボール１０４の現在の位置を、投球方向へ所定の距離だけ移動させた位置を、ボール１０４の新たな位置として算出する。算出された新たな位置を表すデータがボールデータ１２６として新たにメインメモリに記憶される。上記のようなボールデータ１２６を更新する処理が（ステップＳ２〜Ｓ８の処理ループが繰り返されることによって）繰り返し実行されることによって、ボール１０４の位置が逐次更新され、ボール１０４が移動して表示されることになる。なお、投球指示が行われる前においては、ボール１０４の制御に関する処理は行われない。以上のステップＳ１５の次にステップＳ１６の処理が実行される。
【０２１６】
上記ステップＳ１５のように、本実施形態においては、ハンドヘルドデバイス９の姿勢と第２仮想カメラの姿勢とを対応させ、第２仮想カメラの視線方向にボール１０４を移動させた。ここで、他の実施形態においては、ボール１０４の移動方向は、第２操作データ１１６に基づいて決定されれば、どのように決定されてもよい。例えば、ボール１０４は、タッチ位置（タッチ位置データ１１９が表す位置）に対応するゲーム空間内の位置へ移動するように制御されてもよいし、十字ボタン６４Ａまたはアナログスティック６５によってボール１０４の移動方向が決定されてもよい。また、ＣＰＵ１０は、ボール１０４の移動中において移動方向が第２プレイヤの操作によって変化するようにしてもよい。例えば、ハンドヘルドデバイス９の動きの方向に応じた方向へボール１０４が曲がるようにしてもよいし、十字ボタン６４Ａまたはアナログスティック６５によってボール１０４の曲がる方向が決定されてもよい。
【０２１７】
以上のステップＳ１２〜Ｓ１５のように、投球モードにおいては、ハンドヘルドデバイス９の姿勢に応じて第２仮想カメラの姿勢を変化させる処理が実行される。また、本実施形態においては第２仮想カメラの姿勢が投手１０２の投球方向に対応しているので、ハンドヘルドデバイス９の姿勢に応じて投球方向が変化することとなる。つまり、第２プレイヤは、ハンドヘルドデバイス９の姿勢を動かすことによって投手１０２の投球方向を変化させることができる。
【０２１８】
ステップＳ１６において、ＣＰＵ１０は操作装置７の姿勢を算出する。操作装置７の姿勢は、第１操作データ１１１に基づいて算出されればどのような方法で算出されてもよい。本実施形態においては、ハンドヘルドデバイス９の姿勢と同様の方法で算出される。すなわち、ＣＰＵ１０は、まず、メインメモリから第１姿勢データ１２２および角速度データ１１３を読み出し、前回の姿勢を今回の角速度で単位時間分だけ回転させることによって操作装置７の姿勢を算出する。次に、ＣＰＵ１０は、メインメモリから加速度データ１１２を読み出して、加速度データ１１２に基づいて操作装置７の姿勢を算出する。さらに、ＣＰＵ１０は、角速度データ１１３に基づく姿勢を、加速度データ１１２に基づく姿勢へ所定の割合で近づける補正を行うことによって、最終的な操作装置７の姿勢を算出する。以上のようにして算出された補正後の姿勢を表すデータが、第１姿勢データ１２２としてメインメモリに記憶される。ステップＳ１６の次にステップＳ１７の処理が実行される。
【０２１９】
本実施形態においては、ＣＰＵ１０は、操作装置７の加速度および角速度に基づいて操作装置７の姿勢を算出したが、他の実施形態においては、加速度および角速度のいずれか一方に基づいて姿勢を算出してもよい。また、他の実施形態においては、加速度および角速度に加えて（または代えて）マーカ座標データ１１４に基づいて姿勢が算出されてもよいし、加速度および／または角速度に基づいて算出された姿勢をマーカ座標データ１１４を用いて補正してもよい。
【０２２０】
以下、マーカ座標データ１１４に基づく姿勢の算出方法および補正方法について説明する。マーカ座標データ１１４は、撮像画像内におけるマーカ８Ｒおよび８Ｌの位置を示すので、これらの位置から、ロール方向（Ｚ軸回りの回転方向）に関する操作装置７の姿勢を算出することができる。つまり、撮像画像内においてマーカ８Ｒの位置とマーカ８Ｌの位置とを結ぶ直線の傾きから、ロール方向に関する操作装置７の姿勢を算出することができる。また、マーカ装置８に対する操作装置７の位置が特定できる場合（例えば、マーカ装置８の正面に操作装置７が位置すると想定できる場合）には、撮像画像内におけるマーカ装置８の位置から、ピッチ方向およびヨー方向に関する操作装置７の姿勢を算出することができる。例えば、撮像画像内においてマーカ８Ｒおよび８Ｌの位置が左に移動した場合、操作装置７は右に向き（姿勢）を変えたと判断することができる。このように、マーカ８Ｒの位置とマーカ８Ｌの位置との中点の位置から、ピッチ方向およびヨー方向に関する操作装置７の姿勢を算出することができる。以上のようにして、マーカ座標データ１１４に基づいて操作装置７の姿勢を算出することができる。
【０２２１】
さらに、加速度および／または角速度に基づく姿勢を、マーカ座標データ１１４を用いて補正する場合には、ＣＰＵ１０は、加速度および／または角速度に基づく姿勢を、マーカ座標データ１１４に基づく姿勢へ所定の割合で近づける補正を行う。この所定の割合は、予め定められた固定値であってもよい。また、上記補正は、ロール方向、ピッチ方向、およびヨー方向のいずれか１つまたは２つの方向のみについて行われてもよい。例えば、マーカ座標データ１１４を用いる場合、ロール方向については精度良く姿勢を算出することができるので、ＣＰＵ１０は、ロール方向についてのみ、マーカ座標データ１１４に基づく姿勢を用いて補正を行ってもよい。また、操作装置７の撮像素子４０によってマーカ装置８が撮像されていない場合は、マーカ座標データ１１４に基づく姿勢を算出することができないので、この場合にはマーカ座標データ１１４を用いる補正処理は実行されなくてもよい。
【０２２２】
ステップＳ１７において、ＣＰＵ１０は、操作装置７の姿勢に基づいて打者１０１およびバット１０３の動作を制御する。本実施形態においては、バット１０３の姿勢は操作装置７の姿勢に基づいて算出される。具体的には、上記ステップＳ１４の処理と同様、操作装置７の姿勢に対応するようにバット１０３の姿勢が算出される。したがって、第１プレイヤは、操作装置７を振る操作を行うことによってバット１０３を振ることができる。なお、バット１０３の位置は、打者１０１がバット１０３を振る動作が自然に見えるように適宜算出される。また、打者１０１の動作に関しては、ＣＰＵ１０は、バット１０３の移動に合わせてバット１０３を振る動作を打者１０１に行わせ、打者１０１がバット１０３を振る動作が自然に見えるようにする。
【０２２３】
ステップＳ１７の具体的な処理としては、ＣＰＵ１０は、第１姿勢データ１２２をメインメモリから読み出して、操作装置７の姿勢に対応するようにバット１０３の姿勢を算出し、さらに、バット１０３の姿勢に応じてバット１０３の位置を算出する。算出されたバット１０３の位置および姿勢を表すデータは、バットデータ１２７としてメインメモリに記憶される。ステップＳ１７の次にステップＳ１８の処理が実行される。
【０２２４】
なお、バット１０３に対する制御は、第１操作データ１１１を用いて行われれば、どのような方法で行われてもよい。例えば、ＣＰＵ１０は、操作装置７の姿勢とバット１０３の姿勢とを正確に一致させなくてもよく、バット１０３がボール１０４に当たりやすくなるように、バット１０３の位置および姿勢を補正したり、あるいは、バット１０３を振るタイミングを補正したりするようにしてもよい。また、ＣＰＵ１０は、操作装置７を振る操作が行われたことを第１操作データ１１１によって検出し、当該操作が行われたことに応じてバット１０３を振るようにしてもよい。操作装置７を振る操作は、例えば、操作装置７の姿勢が所定方向（あるいは任意の方向）に所定角度以上変化したことや、操作装置７に対して所定方向（例えば、図３に示すＺ軸方向）に所定値以上の加速度が加えられたことによって、検出することができる。なお、このとき、バット１０３の位置および姿勢は、ボール１０４の軌道に応じて適宜（振る操作のタイミングがよければバット１０３がボール１０４に当たるように）算出されてもよい。
【０２２５】
ステップＳ１８において、ＣＰＵ１０は、バット１０３にボール１０４が当たったか否かを判定する。具体的には、ボールデータ１２６とバットデータ１２７をメインメモリから読み出し、バット１０３の位置および姿勢とボール１０４の位置とに基づいて、バット１０３とボール１０４とが接触したか否かを判定する。ステップＳ１８の判定結果が肯定である場合、ステップＳ１９の処理が実行される。一方、ステップＳ１８の判定結果が否定である場合、ステップＳ２０の処理が実行される。
【０２２６】
ステップＳ１９において、ＣＰＵ１０は、処理モードを守備モードに変更する。具体的には、ＣＰＵ１０は、メインメモリに記憶されているモードデータ１２８を、守備モードを表すデータへと変更（更新）する。これによって、次の処理ループで実行されるゲーム制御処理においては、守備モードにおける処理が実行されることになる。ステップＳ１９の後、ＣＰＵ１０はゲーム制御処理を終了する。
【０２２７】
一方、ステップＳ２０において、ＣＰＵ１０は、ボール１０４を捕手が捕球したか否かを判定する。すなわち、ＣＰＵ１０は、ボールデータ１２６をメインメモリから読み出し、ボール１０４の位置が捕手の位置に到達したか否かを判定する。ステップＳ２０の判定結果が肯定である場合、ステップＳ２１の処理が実行される。一方、ステップＳ２０の判定結果が否定である場合、ＣＰＵ１０はゲーム制御処理を終了する。
【０２２８】
以上のように、上記投球シーンにおけるゲーム制御処理においては、ボール１０４は、ハンドヘルドデバイス９の動きに応じて変化するように移動方向が決定されて移動する（ステップＳ１５）。第１仮想カメラは、ボール１０４を含む第１ゲーム画像が生成されるように設定される（ステップＳ１１）。バット１０３は、操作装置７の動きに応じて動かされる（ステップＳ１７）。そして、ボール１０４とバット１０３との接触が判定され（ステップＳ１８）、判定結果に応じた処理が実行される（ステップＳ１９，Ｓ２１）。これによって、後述するステップＳ４〜Ｓ７によって、判定結果に応じたゲーム画像を生成される。したがって、上記ゲーム制御処理によって、第２プレイヤがハンドヘルドデバイス９を動かすことでボール１０４の移動方向を操作し、第１プレイヤが操作装置７を動かすことでバット１０３を操作してボール１０４に当てる、という野球ゲームを実現することができる。
【０２２９】
ステップＳ２１において、ＣＰＵ１０は、ストライクまたはボールの判定を行う。すなわち、ＣＰＵ１０は、ボール１０４の軌道（ボール１０４の位置の履歴）を記憶しておき、当該軌道に基づいてストライクかボールかを判定する。この判定結果を表すデータはメインメモリに記憶され、後で実行されるゲーム画像の生成処理（ステップＳ４およびＳ５）において参照される。ステップＳ２１の後、ＣＰＵ１０はゲーム制御処理を終了する。
【０２３０】
図１６の説明に戻り、ステップＳ３において、ＣＰＵ１０は、オブジェクトの表示設定処理を実行する。この表示設定処理は、ゲーム画像を生成する際に表示しない（透明であるとして処理する）オブジェクトをゲーム画像毎に設定する処理である。具体的には、ＣＰＵ１０は、モードデータ１２８をメインメモリから読み出し、現在の処理モードを判別する。そして、第１ゲーム画像と第２ゲーム画像のそれぞれについて、表示しないオブジェクトを現在の処理モードに応じて特定する。本実施形態においては、ＣＰＵ１０は、各処理モードにおいて表示しないオブジェクトを次の対応関係に従って特定する。
（１）投球モード
第１表示設定データ：捕手オブジェクト
第２表示設定データ：投手オブジェクト
（２）守備モード
第１表示設定データ：なし
第２表示設定データ：捕球を行う野手オブジェクト
ＣＰＵ１０は、上記に従って特定したオブジェクトを表すデータを各表示設定データ１２９および１３０としてメインメモリに記憶する。すなわち、投球モードにおいては、捕手オブジェクトを表すデータが第１表示設定データとしてメインメモリに記憶されるとともに、投手オブジェクトを表すデータが第２表示設定データとしてメインメモリに記憶される。また、守備モードにおいては、表示しないオブジェクトがないことを表すデータが第１表示設定データとしてメインメモリに記憶されるとともに、野手オブジェクトを表すデータが第２表示設定データとしてメインメモリに記憶される。ステップＳ３の次にステップＳ４の処理が実行される。
【０２３１】
なお、本実施形態においては、ゲーム制御処理の処理モード毎に表示設定データの内容が変更されるものとしたが、表示設定データの変更は、処理モードが変更されるタイミングで行われる必要はなく、他のタイミングで行われてもよい。例えば、他の実施形態においては、単一の処理モード中において表示設定データが変更されてもよい。具体的には、投球モードにおいては、投手１０２がボール１０４を投げる前は投手１０２を表示し、ボール１０４を投げた後は投手１０２を非表示としてもよい。また、守備モードにおいては、ボール１０４を捕球する前は野手を非表示とし、捕球した後は野手を表示するようにしてもよい。
【０２３２】
ステップＳ４において、ＣＰＵ１０やＧＰＵ１１ｂによって第１ゲーム画像が生成される。すなわち、ＣＰＵ１０やＧＰＵ１１ｂは、上記ステップＳ１１で設定された第１仮想カメラから見たゲーム空間の画像（第１仮想カメラの位置から第１仮想カメラの姿勢で見たゲーム空間の画像）を第１ゲーム画像として生成する。投球モードにおいては、打者１０１の側から投手１０２の側を見たゲーム空間の画像が第１ゲーム画像として生成される（図１０参照）。生成された第１ゲーム画像はＶＲＡＭ１１ｄに記憶される。ここで、第１ゲーム画像は、上記ステップＳ３において特定されたオブジェクトを表示しないように生成される。具体的には、ＣＰＵ１０は、第１カメラデータ１２４と第１表示設定データ１２９をメインメモリから読み出し、第１表示設定データ１２９が表すオブジェクトを描画せずに（あるいは、オブジェクトを透明であるとして）、第１仮想カメラから見たゲーム空間の画像を生成する。投球モードにおいては、捕手オブジェクトが描画されない結果、第１ゲーム画像には捕手オブジェクトの画像が含まれないこととなる。
【０２３３】
また、上記ステップＳ２１の処理によってストライクまたはボールの判定が行われた場合には、ステップＳ４においては、判定結果を表す画像（例えば「ストライク」または「ボール」の文字）がゲーム空間の画像に重ねられた第１ゲーム画像が生成される。なお、この場合、判定結果を表す画像は所定時間（数秒程度）の間表示される。なお、当該画像が表示される間は、ＣＰＵ１０はゲームの進行を中断してもよい。ステップＳ４の次にステップＳ５の処理が実行される。
【０２３４】
ステップＳ５において、ＣＰＵ１０やＧＰＵ１１ｂによって第２ゲーム画像が生成される。すなわち、ＣＰＵ１０やＧＰＵ１１ｂは、上記ステップＳ１４で設定された第２仮想カメラから見たゲーム空間の画像（第２仮想カメラの位置から第２仮想カメラの姿勢で見たゲーム空間の画像）を第２ゲーム画像として生成する。投球モードにおいては、投手１０２の側から打者１０１の側を見たゲーム空間の画像が第２ゲーム画像として生成される（図１１参照）。生成された第２ゲーム画像はＶＲＡＭ１１ｄに記憶される。ここで、第２ゲーム画像は、上記ステップＳ３において特定されたオブジェクトを表示しないように生成される。具体的には、ＣＰＵ１０は、第２カメラデータ１２５と第２表示設定データ１３０をメインメモリから読み出し、第２表示設定データ１３０が表すオブジェクトを描画せずに（あるいは、オブジェクトを透明であるとして）、第２仮想カメラから見たゲーム空間の画像を生成する。投球モードにおいては、投手オブジェクト１０２が描画されない結果、第２ゲーム画像には投手オブジェクト１０２の画像が含まれないこととなる。
【０２３５】
なお、上記ステップＳ２１の処理によってストライクまたはボールの判定が行われた場合には、ステップＳ５においても上記ステップＳ４と同様に、判定結果を表す画像がゲーム空間の画像に重ねられた第１ゲーム画像が生成される。また、本実施形態においては、ＣＰＵ１０は、ゲーム空間の画像に重ねて画像の中央の位置に目標画像１０５を生成する（図１０参照）。ステップＳ５の次にステップＳ６の処理が実行される。
【０２３６】
ステップＳ６において、ＣＰＵ１０は、ステップＳ４で生成された第１ゲーム画像をテレビ２へ出力する。具体的には、ＣＰＵ１０は、ＶＲＡＭ１１ｄに記憶された第１ゲーム画像の画像データをＡＶ−ＩＣ１５へ送り、ＡＶ−ＩＣ１５は当該画像データをＡＶコネクタ１６を介してテレビ２へ出力する。これによって、第１ゲーム画像がテレビ２に表示される。ステップＳ６の次にステップＳ７の処理が実行される。
【０２３７】
ステップＳ７において、ＣＰＵ１０は、ステップＳ５で生成された第２ゲーム画像をハンドヘルドデバイス９へ出力する。具体的には、ＶＲＡＭ１１ｄに記憶された第２ゲーム画像の画像データは、ＣＰＵ１０によって画像圧縮部２７に送られ、画像圧縮部２７によって所定の圧縮処理が行われた後、高速無線通信モジュール２８によってアンテナ２９を介してハンドヘルドデバイス９へ送信される。ハンドヘルドデバイス９は、ゲーム装置３から送信されてくる画像データを無線通信モジュール８６によって受信し、画像伸張部を用いて所定の伸張処理を行う。伸張処理が行われた画像データは、ＣＰＵ８１１によってＶＲＡＭ８１３に適宜記憶されて下側ＬＣＤ６２に出力される。これによって、第２ゲーム画像が下側ＬＣＤ６２に表示される。ステップＳ７の次にステップＳ８の処理が実行される。
【０２３８】
ステップＳ８において、ＣＰＵ１０は、ゲームを終了するか否かを判定する。ステップＳ７の判定は、例えば、ゲームセットになったか否か、あるいは、プレイヤがゲームを中止する指示を行ったか否か等によって行われる。ステップＳ８の判定結果が否定の場合、ステップＳ２の処理が再度実行される。一方、ステップＳ８の判定結果が肯定の場合、ＣＰＵ１０は図１６に示すゲーム処理を終了する。以降、ステップＳ２〜Ｓ８の一連の処理は、ステップＳ８でゲームを終了すると判定されるまで繰り返し実行される。
【０２３９】
以上のように、投球シーン（投球モード）においては、テレビ２には、打者側から見たゲーム空間の画像（第１ゲーム画像）が表示され、ハンドヘルドデバイス９（下側ＬＣＤ６２）には、投手側から見たゲーム空間の画像（第２ゲーム画像）が表示される。したがって、投球シーンにおいては、第２プレイヤは、ハンドヘルドデバイス９の下側ＬＣＤ６２に表示される第２ゲーム画像を見ながら、ハンドヘルドデバイス９を傾ける（姿勢を変化させる）操作を行うことで投球方向を決めて投球を行う。一方、第１プレイヤは、テレビ２に表示される第１ゲーム画像を見ながら、操作装置７を振る操作を行うことでバット１０３を振る。そして、バット１０３にボール１０４が当たった場合には守備シーン（守備モード）に移行する。
【０２４０】
（守備モードにおける処理）
次に、守備モードにおけるゲーム処理について説明する。図１９は、守備モードにおけるゲーム制御処理の詳細な流れを示すフローチャートである。守備モードにおいては、まずステップＳ３０において、ＣＰＵ１０は、操作装置７およびハンドヘルドデバイス９から各操作データを取得する。ステップＳ３０の処理は上記ステップＳ１２の処理と同じである。ステップＳ３０の次にステップＳ３１の処理が実行される。
【０２４１】
ステップＳ３１において、ＣＰＵ１０はボール１０４の動作を制御する。すなわち、ＣＰＵ１０はボール１０４の挙動（ボール１０４が移動方向および速さ）を計算し、挙動に基づいてボール１０４を移動させる。ボール１０４の挙動は、バット１０３およびボール１０４の動作に基づいて計算される。ボール１０４の挙動の具体的な計算方法はどのような方法であってもよく、例えば、バット１０３とボール１０４とが当たった角度や強さ（バット１０３およびボール１０４の速さ）に基づいて計算される。また、ボール１０４が地面やフェンスに当たった場合には、当たった後の挙動が計算される。なお、ＣＰＵ１０は、ステップＳ３１の処理の度に１フレーム分ずつ挙動を計算してもよいし、複数フレーム分の挙動をまとめて計算してもよい。また、ＣＰＵ１０は、計算された挙動に従ってボール１０４を移動させる。すなわち、計算された挙動から１フレーム時間分の移動量および移動方向を算出し、当該移動量および移動方向だけボール１０４の位置を変更する。変更後のボール１０４の位置を表すデータは新たなボールデータ１２６としてメインメモリに記憶される。ステップＳ３１の次にステップＳ３２の処理が実行される。
【０２４２】
ステップＳ３２において、ＣＰＵ１０は第１仮想カメラを制御する。守備モードにおいては、本実施形態においては、ボール１０４がその視野範囲に含まれるように第１仮想カメラの位置および姿勢が算出される。すなわち、ＣＰＵ１０は、ボールデータ１２６をメインメモリから読み出し、ボール１０４の位置に基づいて第１仮想カメラの位置および姿勢を算出する。算出された位置および姿勢を表すデータは、新たな第１カメラデータ１２４としてメインメモリに記憶される。ステップＳ３２の次にステップＳ３３の処理が実行される。
【０２４３】
ステップＳ３３において、ＣＰＵ１０は野手の動作を制御する。本実施形態においては、野手の動作は、ボール１０４の挙動（あるいは位置）に基づいて制御される。なお、野手の動作を制御するための詳細なアルゴリズムはどのようなものであってもよく、例えばボール１０４を追いかける（ボール１０４の方へ移動する）ように野手の動作が制御されてもよい。また、ＣＰＵ１０は、ゲーム空間内の野手のうちでボールを捕球すべき野手（「捕球野手」と呼ぶ）を特定し、当該捕球野手を表すデータをメインメモリに記憶しておく。例えばボール１０４に最も近い野手が捕球野手として特定される。詳細は後述するが、守備モードにおいては、捕球野手の位置に基づいて第２仮想カメラの位置が決定される。なお、他の実施形態においては、各野手（あるいは捕球野手）の動作は、第２プレイヤによって（第２操作データ１１６に基づいて）制御されてもよい。例えば、ＣＰＵ１０は、十字ボタン６４Ａまたはアナログスティック６５に対する操作に従って野手の位置を制御してもよい。ステップＳ３３の次にステップＳ３４の処理が実行される。
【０２４４】
ステップＳ３４において、ＣＰＵ１０は、ハンドヘルドデバイス９の姿勢を算出する。ステップＳ３４の処理は上記ステップＳ１３の処理と同じである。ステップＳ３４の次にステップＳ３５の処理が実行される。
【０２４５】
ステップＳ３５において、ＣＰＵ１０は第２カメラ制御処理を実行する。第２カメラ制御処理は、ハンドヘルドデバイス９の姿勢に基づいて守備モードにおける第２カメラの姿勢を算出する処理である。以下、図２０および図２１を参照して、第２カメラ制御処理の詳細を説明する。
【０２４６】
図２０は、図１９のステップＳ３５（第２カメラ制御処理）の処理の詳細な流れを示すフローチャートである。第２カメラ制御処理においては、まずステップＳ４１において、ＣＰＵ１０は第２仮想カメラの位置を算出する。第２仮想カメラの位置は上記捕球野手の位置に基づいて決定される。具体的には、第２仮想カメラの位置は、捕球野手よりもやや後方（ホームベースから遠ざかる方向）の位置に決定される。なお、他の実施形態においては、捕球野手の位置を第２仮想カメラの位置としてもよい。ステップＳ４１の次にステップＳ４２の処理が実行される。
【０２４７】
ステップＳ４２において、ＣＰＵ１０は、ハンドヘルドデバイス９の基準姿勢と第２仮想カメラの基準姿勢とが対応するように、ハンドヘルドデバイス９に基づいて第２仮想カメラの姿勢を算出する。ステップＳ４２の処理は、上記ステップＳ１４の処理と同じである。したがって、算出された姿勢を表すデータは第２カメラデータ１２５としてメインメモリに記憶される。ステップＳ４２の次にステップＳ４３の処理が実行される。
【０２４８】
図２１は、仮想のゲーム空間を上から見た図である。図２１においては、位置ＰＰが捕球野手の位置であり、ベクトルＶ１は、捕球野手からホームベースへの方向を示すベクトルである。また、ベクトルＶ２は、第２仮想カメラが基準姿勢となる場合における第２仮想カメラの視線方向（基準方向と呼ぶ）を示すベクトルである。すなわち、ベクトルＶ２は、２塁ベースＰＢの位置からホームベースの位置ＰＨへの方向を向くベクトルである。なお、ベクトルＶ１およびＶ２は、ゲーム空間における水平方向と平行である。
【０２４９】
上記ステップＳ４２の処理においては、ハンドヘルドデバイス９が基準姿勢である場合には、第２仮想カメラの視線方向は上記基準方向（ベクトルＶ２）となるように算出される。ここで、上記投球シーンにおいては、第２仮想カメラの位置が投手の位置であったので、ハンドヘルドデバイス９が基準姿勢である場合には第２仮想カメラの視線方向が基準方向（ベクトルＶ２）となり、ホームベースの方向を向くので、問題はなかった。つまり、上記投球シーンにおいては、上記ステップＳ４２の方法で第２仮想カメラの姿勢を算出することで問題はなかった。
【０２５０】
一方、守備シーンにおいては、第２仮想カメラの位置は捕球野手の位置ＰＰである。そのため、ハンドヘルドデバイス９が基準姿勢である場合に第２仮想カメラの視線方向がベクトルＶ２の方向となると、第２仮想カメラはホームベースの方を向かないことになる。ハンドヘルドデバイス９を基準姿勢にしても第２仮想カメラはホームベースの方向を向かないので、単にステップＳ４２の処理のみによって第２仮想カメラの姿勢を算出すると、第２プレイヤは第２カメラの操作に違和感を抱き、操作しにくいと感じるおそれがある。特に投球シーンから守備シーンへとゲーム画像が切り替わる際には、投球シーンにおいてホームベースの方を向いていたゲーム画像が、守備シーンに切り替わった途端にホームベースでない方向を向いたゲーム画像へと切り替わるので、第２プレイヤがボール１０４を見失ってしまうおそれがある。
【０２５１】
そこで、本実施形態においては、守備シーンにおいては、上記ステップＳ４２の処理で算出される姿勢に対して以下のステップＳ４３〜Ｓ４５の処理によって補正を行い、第２仮想カメラの視線方向が適切となるように補正する。以下、ステップＳ４３〜Ｓ４５の処理の詳細を説明する。
【０２５２】
ステップＳ４３において、ＣＰＵ１０は、捕球野手にとっての正面方向を算出する。ここで、捕球野手にとっての正面方向とは、捕球野手の位置ＰＰからホームベースＰＨへの方向（図２１に示すベクトルＶ１）である。ＣＰＵ１０は、捕球野手の位置とホームベースの位置とに基づいて上記ベクトルＶ１を算出する。算出されたベクトルＶ１を表すデータは正面方向データ１３１としてメインメモリに記憶される。ステップＳ４３の次にステップＳ４４の処理が実行される。
【０２５３】
ステップＳ４４において、ＣＰＵ１０は、正面方向と基準方向とのなす角（図２１に示す角θ１）を算出する。すなわち、ＣＰＵ１０は、ベクトルＶ１を表すデータをメインメモリから読み出し、当該ベクトルＶ１と、予め定められる基準方向（ベクトルＶ２）とのなす角θ１を算出する。ここで、角θ１は、ベクトルＶ２から見たベクトルＶ１の角度、換言すれば、ベクトルＶ２をベクトルＶ１の向きへ回転させる時の回転角度である。以上のようにして算出された角θ１を表すデータはメインメモリに記憶される。ステップＳ４４の次にステップＳ４５の処理が実行される。
【０２５４】
ステップＳ４５において、ＣＰＵ１０は、ステップＳ４２で算出された第２仮想カメラの姿勢を上記角θ１だけ回転する補正を行う。具体的には、ＣＰＵ１０は、角θ１を表すデータと第２カメラデータ１２５とをメインメモリから読み出し、第２仮想カメラの姿勢を角θ１だけ回転させた姿勢を算出する。そして、算出された姿勢と、ステップＳ４１で算出された位置とを表すデータを新たな第２カメラデータ１２５としてメインメモリに記憶する。これによって、ステップＳ４２で算出された第２仮想カメラの姿勢が補正されたことになる。ステップＳ４５の後、ＣＰＵ１０は第２カメラ制御処理を終了する。
【０２５５】
上記第２カメラ制御処理によれば、守備シーンにおいて、ハンドヘルドデバイス９が基準姿勢となる場合には第２仮想カメラは（その位置に関係なく）ホームベースの方を向くように制御される。これによって、第２プレイヤにとってより見やすいゲーム画像を表示することができる。
【０２５６】
図１９の説明に戻り、第２カメラ制御処理（ステップＳ３５）の次にステップＳ３６の処理が実行される。ステップＳ３６において、ＣＰＵ１０は、捕球判定処理を行うか否かを判定する。捕球判定処理とは、捕球野手によるボール１０４の捕球が成功したか否かを判定する処理（ステップＳ３７）である。ステップＳ３６の判定処理は、捕球野手とボール１０４との位置関係に基づいて行われる。具体的には、ＣＰＵ１０は、捕球野手とボール１０４との距離が予め定められた所定距離よりも小さくなったか否かを判定する。そして、当該距離が所定距離よりも小さくなった場合、捕球判定処理を行うと判定し、当該距離が所定距離以上である場合、捕球判定処理を行わないと判定する。ステップＳ３６の判定結果が肯定である場合、ステップＳ３７の処理が実行される。一方、ステップＳ３６の判定結果が否定である場合、ＣＰＵ１０はゲーム制御処理を終了する。
【０２５７】
ステップＳ３７において、ＣＰＵ１０は、捕球野手による捕球が成功したか否かを判定する。図１４の説明において述べたように、捕球野手がボール１０４の捕球に成功するか否かは、第２ゲーム画像においてボール１０４が枠画像１０７の内側に入っているか否かによって判断される。したがって、ステップＳ３７の判定は、ゲーム画像内においてボール１０４を含む所定範囲に第２仮想カメラ１４０の視線方向が含まれるか否かによって行うことができる。図２２は、ゲーム空間における第２仮想カメラとボール１０４とを示す図である。ステップＳ３７においては、ＣＰＵ１０は、視線方向を表すベクトルＶ３と、第２仮想カメラ１４０からボール１０４を結ぶベクトルＶ４とのなす角度θ２が所定角度以下か否かを判定すればよい。換言すれば、ベクトルＶ４が、視線方向を中心とする所定角度内の範囲１４６の方向を向くか否かを判定すればよい。ステップＳ３７において、ＣＰＵ１０は、第２カメラデータ１２５およびボールデータ１２６をメインメモリから読み出し、第２仮想カメラの位置および姿勢とボール１０４の位置とに基づいて上記の判定を行う。ステップＳ３７の判定結果が肯定である場合、ステップＳ３８の処理が実行される。一方、ステップＳ３７の判定結果が否定である場合、ステップＳ３９の処理が実行される。
【０２５８】
ステップＳ３８において、ＣＰＵ１０はアウトと判断する。すなわち、ＣＰＵ１０は、判断結果を表すデータをメインメモリに記憶する。なお、後で実行されるゲーム画像の生成処理（ステップＳ３およびＳ４）においては、このデータが参照される。ステップＳ３８の後、ＣＰＵ１０はゲーム制御処理を終了する。なお、上記判定はフライの捕球時のものであって、ゴロ等の捕球時には必ずしもアウト判定とはならない。
【０２５９】
一方、ステップＳ３９において、ＣＰＵ１０はヒットと判断する。ステップＳ３８と同様、ＣＰＵ１０は、判断結果を表すデータをメインメモリに記憶する。ステップＳ３９の後、ＣＰＵ１０はゲーム制御処理を終了する。
【０２６０】
なお、上記ステップＳ３８またはＳ３９の処理が実行された場合、ゲーム画像の生成処理（ステップＳ３およびＳ４）においては、アウトまたはヒットの判断結果を表す画像が所定時間（数秒程度）の間表示される。したがって、上記所定時間の間、ゲーム制御処理においてＣＰＵ１０はステップＳ１１〜Ｓ２１の一連の処理を実行しなくてもよい。また、図１９に示すフローチャートには示していないが、上記判断結果を表す画像が消去されると（上記所定時間が経過すると）、ＣＰＵ１０は、ゲーム制御処理における処理モードを投球モードに変更する。具体的には、ＣＰＵ１０は、メインメモリに記憶されているモードデータ１２８を、投球モードを表すデータへと変更（更新）する。これによって、次の処理ループで実行されるゲーム制御処理においては、投球モードにおける処理が実行されることになる。
【０２６１】
以上のように、上記守備シーンにおけるゲーム制御処理においては、操作装置７の動きに応じて決められるボール１０４の挙動が第１操作データに基づいて計算され、当該挙動に基づいてボール１０４が移動する（ステップＳ３１）。第２仮想カメラは、ハンドヘルドデバイス９の動きに応じて動かされる。そして、第２仮想カメラがボール１０４を含む所定範囲を向いているか否かが判定され（ステップＳ３７）、判定結果に応じたゲーム処理が行われる（ステップＳ３８，Ｓ３９）。画像を生成する。これによって、後述するステップＳ４〜Ｓ７によって、判定結果に応じたゲーム画像を生成される。したがって、上記ゲーム制御処理によって、第１プレイヤが操作装置を動かすことで挙動が決められるボール１０４を、第２プレイヤがハンドヘルドデバイス９を動かすことで第２仮想カメラをボール１０４の方へ向ける(ボール１０４をキャッチする）、という野球ゲームを実現することができる。また、ボール１０４に対して適切な方向にハンドヘルドデバイス９（第２仮想カメラ）を向けることでボール１０４を捕球するという、新規なゲーム操作を提供することができる。
【０２６２】
なお、本実施形態においては、守備モードにおいては第１プレイヤはゲーム操作を行わないものとして説明したが、他の実施形態においては第１プレイヤが何らかのゲーム操作を行うことができるようにしてもよい。例えば、守備モードにおいては、第１プレイヤが打者および走者の走塁を操作することができるようにしてもよい。
【０２６３】
守備モードにおいても投球前モードおよび投球後モードと同様、ゲーム制御処理（ステップＳ２）の次にステップＳ３〜Ｓ８の処理が実行される。すなわち、ステップＳ３において、ＣＰＵ１０は、オブジェクトの表示設定処理を実行する。守備モードにおけるステップＳ３においては、表示しないオブジェクトがないことを表すデータが第１表示設定データ１２９としてメインメモリに記憶されるとともに、捕球野手を表すデータが第２表示設定データ１３０としてメインメモリに記憶される。
【０２６４】
また、ステップＳ４においては第１ゲーム画像が生成される。上記ステップＳ３２の処理によって、守備モードにおいては、打者１０１が打ったボール１０４を含むゲーム空間の画像が第１ゲーム画像として生成される（図１３参照）。なお、守備モードにおいては、第１表示設定データ１２９は、表示しないオブジェクトがないことを表すので、守備モードにおけるステップＳ３においては、描画されないオブジェクトは無い。
【０２６５】
また、守備モードにおいては、上記ステップＳ３８またはＳ３９のいずれかの処理が実行された場合には、ＣＰＵ１０は、当該いずれかの処理における判断結果を表す画像を表示する。すなわち、上記の場合、ＣＰＵ１０は、判断結果を表すデータをメインメモリから読み出し、判断結果を示す画像（例えば「ヒット」または「アウト」の文字）をゲーム空間の画像に重ねた第１ゲーム画像を生成する。この場合、判断結果を表す画像は所定時間（数秒程度）の間表示される。
【０２６６】
ステップＳ５においては第２ゲーム画像が生成される。守備モードにおいては、第２ゲーム画像は、捕球野手から見たゲーム空間の画像となる（図１４参照）。なお、ステップＳ５においては、ＣＰＵ１０は、第２表示設定データ１３０を参照し、捕球野手オブジェクト１０６を描画しないように第２ゲーム画像を生成する。また、守備モードにおけるステップＳ５においては上記ステップＳ４と同様、上記ステップＳ３８またはＳ３９のいずれかの処理が実行された場合には、ＣＰＵ１０は、当該いずれかの処理における判断結果を表す画像を表示する。
【０２６７】
ステップＳ６においては第１ゲーム画像がテレビ２へ出力されて表示される。また、ステップＳ７においては第２ゲーム画像がハンドヘルドデバイス９へ出力されて下側ＬＣＤ６２に表示される。これによって、ゲーム空間を互いに異なる視点および視線から見た２つのゲーム画像が２つの異なる表示装置に表示される。なお、守備モードにおけるステップＳ８の処理は投球モードと同じである。以上で、本実施形態におけるゲーム処理の説明を終了する。
【０２６８】
本実施形態におけるゲーム処理によれば、投球シーンにおいては、打者側からゲーム空間を見た第１ゲーム画像がテレビ２に表示されるとともに、投手側からゲーム空間を見た第２ゲーム画像がハンドヘルドデバイス９（の下側ＬＣＤ６２）に表示される。また、守備シーンにおいては、打者が打ったボールを含む第１ゲーム画像がテレビ２に表示されるとともに、捕球野手からゲーム空間を見た第２ゲーム画像がハンドヘルドデバイス９に表示される。したがって、いずれのシーンにおいても、第１プレイヤにとって見やすい第１ゲーム画像と、第２プレイヤにとって見やすい第２ゲーム画像とを表示することができる。このように、本実施形態によれば、単一のゲーム空間に複数の仮想カメラを設定し、各仮想カメラに基づいて生成されるゲーム画像を別個の表示装置に表示することによって、各プレイヤにとって見やすいゲーム画像を提供することができる。
【０２６９】
また、上記実施形態においては、ＣＰＵ１０は、第１操作データに基づいて操作装置７を振る操作を検出する（ステップＳ１６）とともに、第２操作データに基づいてハンドヘルドデバイス９を傾ける操作を検出した（ステップＳ１３）。そして、当該振る操作および当該傾ける操作に応じたゲーム制御処理が実行された（ステップＳ１４，Ｓ１５，Ｓ１７）。このように、本実施形態においては、第１プレイヤは操作装置を振る操作によってゲームを行い、第２プレイヤはハンドヘルドデバイスを傾ける操作によってゲームを行うことができる。
【０２７０】
ここで、本実施形態においては、操作装置７にはゲーム画像を表示する表示手段を有していないので、第１プレイヤは操作装置７とは別体のテレビ２を見ながらゲームを行うため、操作装置７自身を振る操作を容易に行うことができる。一方、ハンドヘルドデバイス９の画面には第２ゲーム画像が表示されるので、第２プレイヤはハンドヘルドデバイス９を見ながらゲームを行うため、ハンドヘルドデバイス９を振って操作するような操作は行いづらい。そこで、本実施形態では、操作装置７とハンドヘルドデバイス９とで操作方法を異ならせることによって、装置自体を動かすという直感的な操作で、かつ、各装置の特徴に合った操作しやすいゲーム操作を提供するようにしている。
【０２７１】
[８．他の実施形態]
上記実施形態は本発明を実施する一例であり、他の実施形態においては例えば以下に説明する構成で本発明を実施することも可能である。
【０２７２】
（ゲーム操作に関する例）
上記実施形態においては、ＣＰＵ１０は、ハンドヘルドデバイス９の動き（具体的には姿勢）に応じたゲーム制御処理を実行した。すなわち、ハンドヘルドデバイス９は、自身の動きに応じて値が変化するデータを出力するセンサ（加速度センサ８９およびジャイロセンサ９０）を有し、当該センサの出力データを含む第２操作データを出力した。そして、ＣＰＵ１０は、第２操作データに含まれる上記出力データに基づいて、ハンドヘルドデバイス９の姿勢に応じたゲーム制御処理（Ｓ１４，Ｓ１５，Ｓ３４，Ｓ３５）を実行した。ここで、他の実施形態においては、ハンドヘルドデバイス９に対する操作は、ハンドヘルドデバイス９自体を動かす操作に限らず、どのような操作であってもよい。例えば、ＣＰＵ１０は、ハンドヘルドデバイス９の動きに代えて、ハンドヘルドデバイス９の各操作ボタン６４、タッチパネル６３、またはアナログスティック６５に対する操作に応じたゲーム制御処理を実行してもよい。
【０２７３】
また、ハンドヘルドデバイス９の動きに応じたゲーム制御処理を実行する場合には、ＣＰＵ１０は、ハンドヘルドデバイス９の姿勢以外の他の値に応じたゲーム制御処理を実行してもよい。例えば、ハンドヘルドデバイス９の位置の変化に応じたゲーム制御処理が実行されてもよい。具体的には、ＣＰＵ１０は、加速度データ１１７が表す加速度から重力加速度を除いた加速度に基づいて、ハンドヘルドデバイス９の位置の変化を算出することができる。したがって、例えば上記ステップＳ１４の処理においては、ＣＰＵ１０は、ハンドヘルドデバイス９の位置の変化に応じて第２仮想カメラの姿勢を変化させてもよい。これによれば、ハンドヘルドデバイス９を上下左右に移動させることによって第２仮想カメラの姿勢を変化させることができる。
【０２７４】
（第２操作データに基づくゲーム制御処理に関する変形例）
上記実施形態においては、ハンドヘルドデバイス９からの第２操作データに基づくゲーム制御処理として、ハンドヘルドデバイス９の動きに応じて第２仮想カメラを動かす処理を実行する場合を例として説明した。ここで、他の実施形態においては、第２操作データに基づくゲーム制御処理は、仮想カメラを制御する処理に限らず、どのような処理であってもよい。例えば、他の実施形態においては、ＣＰＵ１０は、第２操作データに基づいて上記投球方向を制御する（第２仮想カメラは固定しておく）処理を実行してもよい。
【０２７５】
（ゲーム内容に関する変形例）
上記実施形態においては、複数人でプレイするゲームの例として野球ゲームを実行するためのゲーム処理について説明したが、ゲームの内容はどのようなものであってもよい。例えば、次のようなゲーム（いわゆる、モグラ叩きゲーム）についても本発明を適用することが可能である。
【０２７６】
図２３は、他のゲーム例においてテレビ２に表示される第１ゲーム画像の一例を示す図である。また、図２４は、図２３に示すゲーム例においてハンドヘルドデバイス９に表示される第２ゲーム画像の一例を示す図である。図２３に示すように、テレビ２には、第１ゲーム画像として、地面（地面オブジェクト）１５１、カーソル１５２、およびハンマー（ハンマーオブジェクト）１５３が表示される。図２３に示す第１ゲーム画像は、地面１５１を表側から見た画像である。つまり、第１仮想カメラは、地面１５１の表側に配置される。
【０２７７】
本変形例におけるゲーム（モグラ叩きゲーム）においては、第１プレイヤはカーソル１５２を操作することでハンマー１５３を操作し、地面１５１の穴から出てくるモグラ（第２プレイヤによって操作される）を叩く。なお、詳細は後述するが、画面上におけるカーソル１５２の位置は、操作装置７が指し示す（より具体的には操作装置７の撮像方向（Ｚ軸）が指し示す）位置となるように、マーカ座標データ１１４に基づいて算出される。ハンマー１５３は、所定の叩き操作（例えば、Ａボタン３２ｄを押下する操作）が行われたことに応じて、カーソル１５２が指し示す位置を叩くように動作が制御される。つまり、第１プレイヤは、操作装置７によってカーソル１５２を動かし、モグラが出てくる穴にカーソル１５２を合わせて叩き操作を行うことで、モグラを叩いて遊ぶ。
【０２７８】
また、図２４に示すように、ハンドヘルドデバイス９には、地面オブジェクト１５１およびモグラオブジェクト１５４が表示される。図２４に示す第２ゲーム画像は、地面１５１を裏側から見た画像である。つまり、第２仮想カメラは、地面１５１の裏側に配置される。第２プレイヤは、モグラ１５４を操作し、地面１５１の穴からモグラ１５４を出す。モグラ１５４に対する操作方法はどのようなものでもよいが、本変形例では、ハンドヘルドデバイス９の十字ボタン６４Ａで上下左右に動かし、ボタン６４Ｂで穴から顔を出すようにモグラ１５４は操作される。
【０２７９】
図２３および図２４に示すモグラ叩きゲームにおいても、上記実施形態と同様、単一のゲーム空間に２つの仮想カメラが設定され、ゲーム空間を各仮想カメラから見た２種類のゲーム画像がそれぞれ表示される。すなわち、テレビ２には、地面１５１を表側から見た、第１プレイヤのための第１ゲーム画像が表示されるとともに、ハンドヘルドデバイス９には、地面１５１を裏側から見た、第２プレイヤのための第２ゲーム画像が表示される。したがって、本変形例においても上記実施形態と同様、それぞれのプレイヤにとって見やすい（操作しやすい）ゲーム画像を表示することができる。
【０２８０】
なお、本変形例において、カーソル１５２の位置（指示位置）は次のように算出される。まず、ＣＰＵ１０は、第１操作データ１１１に含まれるマーカ座標データ１１４から２つのマーカ座標の中点を算出する。次に、ＣＰＵ１０は、上記２つのマーカ座標を結ぶベクトルがマーカ座標系の左右方向を表す軸と平行になるように、撮像画像の中心を軸としてマーカ座標の中点を回転する補正を行う。この補正によって、操作装置７のＺ軸回りに関して基準姿勢から傾いている場合においても正確に指示位置を算出することができる。次に、ＣＰＵ１０は、上記補正後の中点の位置を示す座標を、テレビ２の画面上の位置を表す座標に変換する。なお、操作装置７の指示位置と、撮像画像内での上記中点の位置とでは逆方向に移動することになるので、上記の変換においては上下左右が反転するような変換が行われる。上記の変換によって得られる画面上の位置が上記指示位置となる。以上のように、マーカ座標データ１１４を用いる方法によれば、指示位置を正確に算出することができる。
【０２８１】
以上に示した野球ゲームやモグラ叩きゲームの他、単一のゲーム空間を異なる視点から見た２種類のゲーム画像を生成して表示するゲームについて、本発明を適用することができる。例えば、サッカーのＰＫ戦のゲームや、テニスゲームについても本発明を適用することができる。サッカーのＰＫ戦のゲームの場合、一方のプレイヤがキッカーを操作し、他方のプレイヤがキーパーを操作するものとし、ゲーム装置３は、キッカーからキーパーの方を見たゲーム画像を一方の表示装置に表示させるとともに、キーパーからキッカーの方を見たゲーム画像を他方の表示装置に表示させる。なお、ゲーム装置３は、上記実施形態における投球方向の操作と同様に、キッカーがボールをキックする方向をハンドヘルドデバイス９の姿勢に応じて制御したり、あるいは、キーパーがボールをキャッチする位置をハンドヘルドデバイス９の姿勢に応じて制御したりしてもよい。また、テニスゲームの場合、ゲーム装置３は、一方のプレイヤのコートから他方のプレイヤのコートを見た画像を一方の表示装置に表示させるとともに、他方のプレイヤのコートから一方のプレイヤのコートを見た画像を他方の表示装置に表示させる。なお、ゲーム装置３は、上記実施形態における投球方向の操作と同様に、ボールを打つ方向をハンドヘルドデバイス９の姿勢に応じて制御してもよい。
【０２８２】
（ゲーム処理を実行する装置に関する変形例）
上記実施形態においては、ゲーム装置３が図１６に示す一連のゲーム処理を実行したが、ゲーム処理の一部は他の装置によって実行されてもよい。例えば、他の実施形態においては、ゲーム処理の一部（例えば、第２ゲーム画像の生成処理）をハンドヘルドデバイス９が実行するようにしてもよい。また、他の実施形態では、互いに通信可能な複数の情報処理装置を有するゲームシステムにおいて、当該複数の情報処理装置がゲーム処理を分担して実行するようにしてもよい。すなわち、ゲーム装置と、操作装置と、ハンドヘルドデバイスとを含むゲームシステムは、（ａ）前記操作装置を操作する第１プレイヤの操作を表す第１操作データと、前記ハンドヘルドデバイスを操作する第２プレイヤの操作を表す第２操作データとを取得する操作データ取得部と、（ｂ）前記第１操作データと前記第２操作データとに基づいてゲーム制御処理を実行するゲーム処理部と、（ｃ）前記ゲーム制御処理の結果を表す仮想のゲーム空間の画像であって前記第１プレイヤのための第１ゲーム画像を、当該ゲーム空間に設定される第１仮想カメラに基づいて生成する第１画像生成部と、（ｄ）前記ゲーム空間の画像であって前記第２プレイヤのための第２ゲーム画像を、当該ゲーム空間に設定される第２仮想カメラに基づいて生成する第２画像生成部と、（ｅ）前記ハンドヘルドデバイスとは別体の第１表示装置に前記第１ゲーム画像を表示させる第１画像表示制御部と、（ｆ）前記ハンドヘルドデバイスに設けられる第２表示装置に前記第２ゲーム画像を表示させる第２画像表示制御部とを備えていてもよい。このとき、１つの装置が上記（ａ）〜（ｆ）の各部を備える構成であってもよいし、複数の装置が上記（ａ）〜（ｆ）の各部を備える構成であってもよい。
【０２８３】
（ハンドヘルドデバイスの構成に関する変形例）
上記実施形態におけるハンドヘルドデバイス９は一例であり、ハンドヘルドデバイス９の各操作ボタンやハウジング５０の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。例えば、ハンドヘルドデバイスとして以下に示す端末装置が用いられてもよい。以下、図２５〜図３１を参照して、ハンドヘルドデバイスの変形例について説明する。
【０２８４】
まず、図２５〜図３０を参照して、上記実施形態の変形例における端末装置の外観構成について説明する。図２５は、端末装置２００の外観構成を示す平面図である。図２５における（ａ）図は端末装置２００の正面図であり、（ｂ）図は上面図であり、（ｃ）図は右側面図であり、（ｄ）図は下面図である。図２６は端末装置２００の背面図である。また、図２７および図２８は、ユーザが端末装置２００を横向きで把持した様子を示す図である。図２９および図３０は、ユーザが端末装置２００を縦向きで把持した様子を示す図である。
【０２８５】
図２５に示されるように、端末装置２００は、大略的には横長の長方形の板状形状であるハウジング２１０を備える。すなわち、端末装置２００は、タブレット型の情報処理装置であるということもできる。なお、ハウジング２１０は全体として板状形状であれば、曲面を有していてもよいし、一部に突起等を有していてもよい。ハウジング２１０は、ユーザが把持することができる程度の大きさである。したがって、ユーザは、端末装置２００を持って動かしたり、端末装置２００の配置位置を変更したりすることができる。端末装置２００の縦（ｚ軸方向）の長さは、１００〜１５０［ｍｍ］が好ましく、本実施形態では、１３３．５［ｍｍ］である。端末装置２００の横（ｘ軸方向）の長さは、２００〜２５０［ｍｍ］が好ましく、本実施形態では、２２８．２６［ｍｍ］である。端末装置２００の厚さ（ｙ軸方向の長さ）は、板状の部分で１５〜３０［ｍｍ］程度、最厚部まで含めて３０〜５０［ｍｍ］程度が好ましく、本実施形態では、２３．６（最厚部は４０．２６）［ｍｍ］である。また、端末装置２００の重量は、４００〜６００［ｇ］程度であって、本実施形態においては、５３０［ｇ］である。詳細は後述するが、端末装置２００は、上記のような比較的大型の端末装置（操作装置）であっても、ユーザが持ちやすく操作しやすい構成となっている。
【０２８６】
端末装置２００は、ハウジング２１０の表面（表側）にＬＣＤ２１１を有する。なお、ＬＣＤ２１１の画面の大きさは５インチ以上であることが好ましく、ここでは６．２インチである。本実施形態の端末装置７は、持ちやすく操作しやすい構成によって、大きなＬＣＤを設けても操作がしやすいものとなっている。なお、別の実施形態においては、より小さいＬＣＤ２１１を設け、端末装置７の大きさを比較的小さいものとするようにしてもよい。ＬＣＤ２１１は、ハウジング２１０の表面の中央付近に設けられる。したがって、ユーザは、図２７および図２８に示すようにＬＣＤ２１１の両側部分のハウジング２１０を持つことによって、ＬＣＤ２１１の画面を見ながら端末装置２００を持って動かすことができる。なお、図２７および図２８ではユーザがＬＣＤ２１１の左右両側の部分のハウジング２１０を持つことで端末装置２００を横持ちで（横に長い向きにして）持つ例を示しているが、図２９および図３０に示すように、端末装置２００を縦持ちで（縦に長い向きにして）持つことも可能である。
【０２８７】
図２５の（ａ）図に示すように、端末装置２００は、操作手段として、ＬＣＤ２１１の画面上にタッチパネル２１２を有する。本実施形態では、タッチパネル２１２は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。また、タッチパネル２１２はシングルタッチ方式でもよいし、マルチタッチ方式であってもよい。本実施形態では、タッチパネル２１２として、ＬＣＤ２１１の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル２１２の解像度とＬＣＤ２１１の解像度が一致している必要はない。タッチパネル２１２に対する入力は通常タッチペン２２０を用いて行われるが、タッチペン２２０に限らずユーザの指でタッチパネル２１２に対する入力をすることも可能である。なお、ハウジング２１０には、タッチパネル２１２に対する操作を行うために用いられるタッチペン２２０を収納する収納穴２２０ａが設けられている（図２５（ｂ）参照）。なお、ここでは、タッチペン２２０が落ちないように、収納穴２２０ａはハウジング２１０の上面に設けられるが、側面や下面に設けられてもよい。このように、端末装置２００はタッチパネル２１２を備えるので、ユーザは、端末装置２００を動かしながらタッチパネル２１２を操作することができる。つまりユーザは、ＬＣＤ２１１の画面を動かしつつ、その画面に対して直接（タッチパネル２１２によって）入力を行うことができる。
【０２８８】
図２５に示すように、端末装置２００は、操作手段（操作部）として、２つのアナログスティック２１３Ａおよび２１３Ｂと、複数のボタン（キー）２１４Ａ〜２１４Ｍとを備えている。各アナログスティック２１３Ａおよび２１３Ｂは、方向を指示することが可能なデバイスである。各アナログスティック２１３Ａおよび２１３Ｂは、ユーザの指で操作される可動部材（スティック部）がハウジング２１０の表面に対して任意の方向（上下左右および斜め方向の任意の角度）にスライドすることができるように構成されている。すなわち、スライドパッドと呼ばれることもある方向入力デバイスである。なお、各アナログスティック２１３Ａおよび２１３Ｂの可動部材は、ハウジング２１０の表面に対して任意の方向に傾倒する種類のものでもよい。本実施形態では、可動部材がスライドする種類のアナログスティックを用いるので、ユーザは親指を大きく動かさなくても各アナログスティック２１３Ａおよび２１３Ｂを操作することができ、ハウジング２１０をよりしっかりと把持した状態で操作を行うことができる。なお、各アナログスティック２１３Ａおよび２１３Ｂとして、可動部材が傾倒する種類のものを用いる場合には、入力の程度（傾きの程度）がユーザにとってわかりやすく、詳細な操作をより容易に行うことができる。
【０２８９】
また、左アナログスティック２１３ＡはＬＣＤ２１１の画面の左側に、右アナログスティック２１３ＢはＬＣＤ２１１の画面の右側にそれぞれ設けられる。したがって、ユーザは、左右いずれの手でもアナログスティックを用いて方向を指示する入力を行うことができる。また、図２７および図２８に示すように、各アナログスティック２１３Ａおよび２１３Ｂは、ユーザが端末装置２００の左右部分（ＬＣＤ２１１の左右両側の部分）を把持した状態で操作可能な位置に設けられるので、ユーザは、端末装置２００を持って動かす場合においても各アナログスティック２１３Ａおよび２１３Ｂを容易に操作することができる。
【０２９０】
各ボタン２１４Ａ〜２１４Ｌは、所定の入力を行うための操作手段（操作部）であり、押下可能なキーである。以下に示すように、各ボタン２１４Ａ〜２１４Ｌは、ユーザが端末装置２００の左右部分を把持した状態で操作可能な位置に設けられる（図２７および図２８参照）。したがって、ユーザは、端末装置２００を持って動かす場合においてもこれらの操作手段を容易に操作することができる。
【０２９１】
図２５の（ａ）図に示すように、ハウジング２１０の表面には、各操作ボタン２１４Ａ〜２１４Ｌのうち、十字ボタン（方向入力ボタン）２１４Ａと、ボタン２１４Ｂ〜２１４Ｈおよび２１４Ｍとが設けられる。つまり、これらのボタン２１４Ａ〜２１４Ｈおよび２１４Ｍは、ユーザの親指で操作可能な位置に配置されている（図２７および図２８参照）。
【０２９２】
十字ボタン２１４Ａは、ＬＣＤ２１１の左側であって、左アナログスティック２１３Ａの下側に設けられる。つまり、十字ボタン２１４Ａはユーザの左手で操作可能な位置に配置されている。十字ボタン２１４Ａは、十字の形状を有しており、少なくとも上下左右の方向を指示することが可能なボタンである。
【０２９３】
また、ボタン２１４Ｂ〜２１４Ｄは、ＬＣＤ２１１の下側に設けられる。これら３つのボタン２１４Ｂ〜２１４Ｄは、左右両方の手で操作可能な位置に配置されている。また、端末装置２００は、端末装置２００の電源をオン／オフするための電源ボタン２１４Ｍを有している。電源ボタン２１４Ｍの操作により、ゲーム装置３の電源を遠隔でオン／オフすることも可能である。電源ボタン２１４Ｍは、ボタン２１４Ｂ〜２１４Ｄと同様、ＬＣＤ２１１の下側に設けられる。電源ボタン２１４Ｍは、ボタン２１４Ｂ〜２１４Ｄの右側に設けられる。したがって、電源ボタン２１４Ｍは、右手で操作可能な（操作しやすい）位置に配置されている。また、４つのボタン２１４Ｅ〜２１４Ｈは、ＬＣＤ２１１の右側であって、右アナログスティック２１３Ｂの下側に設けられる。つまり、４つのボタン２１４Ｅ〜２１４Ｈはユーザの右手で操作可能な位置に配置されている。さらに、４つのボタン２１４Ｅ〜２１４Ｈは、（４つのボタン２１４Ｅ〜２１４Ｈの中心位置に対して）上下左右の位置関係となるように配置されている。したがって、端末装置２００は、ユーザに上下左右の方向を指示させるためのボタンとして４つのボタン２１４Ｅ〜２１４Ｈを機能させることも可能である。
【０２９４】
なお、本実施形態においては、各アナログスティック２１３Ａおよび２１３Ｂは、十字ボタン２１４Ａおよび各ボタン２１４Ｅ〜２１４Ｈよりも上側に配置される。ここで、各アナログスティック２１３Ａおよび２１３Ｂは、十字ボタン２１４Ａおよび各ボタン２１４Ｅ〜２１４Ｈよりも厚さ方向（ｙ軸方向）に関して突出している。そのため、仮にアナログスティック２１３Ａと十字ボタン２１４Ａとの配置を逆にした場合には、ユーザが十字ボタン２１４Ａを親指で操作する際にアナログスティック２１３Ａに親指が当たってしまい、操作を誤ってしまうおそれがある。なお、アナログスティック２１３Ｂと各ボタン２１４Ｅ〜２１４Ｈとの配置を逆にする場合も同様の問題が生じる。これに対して、本実施形態では、各アナログスティック２１３Ａおよび２１３Ｂを十字ボタン２１４Ａおよび各ボタン２１４Ｅ〜２１４Ｈよりも上側に配置するので、ユーザがアナログスティック２１３Ａおよび２１３Ｂを操作する際に十字ボタン２１４Ａおよび各ボタン２１４Ｅ〜２１４Ｈに指が当たってしまう可能性は上記の場合に比べて低くなる。このように、本実施形態においては、誤操作の可能性を低減することができ、端末装置２００の操作性を向上することができる。ただし、別の実施形態においては、必要に応じてアナログスティック２１３Ａが十字ボタン２１４Ａと逆の配置であってもよいし、アナログスティック２１３Ｂが各ボタン２１４Ｅ〜２１４Ｈと逆の配置であってもよい。
【０２９５】
ここで、本実施形態では、いくつかの操作部（各アナログスティック２１３Ａおよび２１３Ｂ、十字ボタン２１４Ａ、ならびに、３つのボタン２１４Ｅ〜２１４Ｇ）は、表示部（ＬＣＤ２１１）の左右両側において、ハウジング２１０における上下方向（ｙ軸方向）の中心よりも上側に設けられる。これらの操作部を操作する場合、ユーザは、端末装置２００における上下方向の中心よりも上側を主に把持する。ここで、ユーザがハウジング２１０の下側を把持する場合には、（端末装置２００が本実施形態のように比較的大きなサイズである場合には特に）把持される端末装置２００が不安定になり、ユーザは端末装置２００を持ちにくくなる。これに対して、本実施形態では、上記操作部を操作する場合、ユーザは、端末装置２００における上下方向の中心よりも上側を主に把持することになり、また、手のひらでハウジング２１０を横から支えることができる。したがって、ユーザは、安定した状態でハウジング２１０を把持することができ、端末装置２００が持ちやすくなるので、上記操作部も操作しやすくなる。なお、他の実施形態においては、ハウジング２１０の中央よりも上側において表示部の左右にそれぞれ少なくとも１つずつ操作部が設けられてもよい。例えば、各アナログスティック２１３Ａおよび２１３Ｂのみがハウジング２１０の中央よりも上側に設けられてもよい。また例えば、十字ボタン２１４Ａが左アナログスティック２１３Ａよりも上側に設けられ、４つのボタン２１４Ｅ〜２１４Ｈが右アナログスティック２１３Ｂよりも上側に設けられる場合には、十字ボタン２１４Ａおよび４つのボタン２１４Ｅ〜２１４Ｈがハウジング２１０の中央よりも上側に設けられても良い。
【０２９６】
また、本実施形態では、ハウジング２１０の裏側（ＬＣＤ２１１が設けられる表面の反対側）には、突起部（庇部２１９）が設けられる（図２５（ｃ）および図２６参照）。図２５（ｃ）に示すように、庇部２１９は、略板状のハウジング２１０の裏面から突起して設けられる、山状の部材である。突起部は、ハウジング２１０の裏面を把持するユーザの指に掛止可能な高さ（厚さ）を有する。突起部の高さは、１０〜２５［ｍｍ］であることが好ましく、本実施形態では１６．６６［ｍｍ］である。また、突起部の下面は、突起部がユーザの指に掛かりやすいように、ハウジング２１０の裏面に対して４５°以上（より好ましくは６０°以上）の傾斜を有することが好ましい。図２５（ｃ）に示すように、突起部の下面は、上面よりも傾斜角度が大きくなるように形成されてもよい。図２７および図２８に示すように、ユーザは、指を庇部２１９に掛けて（指の上に庇部２１９を乗せて）把持することによって、端末装置２００が比較的大きなサイズであっても、疲れることなく安定した状態で端末装置２００を把持することができる。すなわち、庇部２１９は、指でハウジング２１０を支えるための支持部材であるということができ、また、指掛部ということもできる。
【０２９７】
また、庇部２１９は、ハウジング２１０の上下方向に関しては中央よりも上側に設けられる。庇部２１９は、ハウジング２１０の表面に設けられる操作部（各アナログスティック２１３Ａおよび２１３Ｂ）の概ね反対側の位置に設けられる。つまり、突起部は、表示部の左右にそれぞれ設けられる操作部の反対側の位置を含む領域に設けられる。したがって、上記操作部を操作する場合、ユーザは、中指あるいは薬指で庇部２１９を支えるようにして端末装置２００を把持することができる（図２７および図２８参照）。これによって、端末装置２００がより持ちやすくなり、上記操作部もより操作しやすくなる。また、本実施形態では、突起部は、（突起した部分が）左右に延びる庇状の形状を有するので、ユーザは、中指あるいは薬指を突起部の下面に沿わせて端末装置２００を把持することができ、端末装置２００がより持ちやすくなる。なお、庇部２１９は、（突起した部分が）左右方向に延びるように形成されればよく、図２６に示すような水平方向に延びる形状に限られない。他の実施形態においては、庇部２１９は水平方向から若干傾いた方向に延びていてもよい。例えば、庇部２１９は、左右両端から中央に向かうにつれて上に（または下に）傾斜するように設けられてもよい。
【０２９８】
なお、本実施形態においては、後述する係止穴を庇部２１９に設けることが理由で、ハウジングの裏面に形成される突起部として、庇状の形状をした庇部２１９を採用するが、突起部はどのような形状であってもよい。例えば、他の実施形態においては、ハウジング２１０の裏側において、２つの突起部が左右両側に設けられる（左右方向の中央には突起部が設けられない）構成であってもよい（図２９参照）。また、他の実施形態においては、突起部の断面形状（ｘ軸方向に垂直な断面における形状）は、ユーザの指で端末装置２００をよりしっかりと支えることができるように（突起部が指によりしっかりと掛かるように）、鈎型（下面が凹んだ形状）であってもよい。
【０２９９】
なお、突起部（庇部２１９）の上下方向に関する幅は、いくらであってもよい。例えば、突起部は、ハウジング２１０の上辺まで形成されてもよい。すなわち、突起部の上面がハウジング２１０の上側の側面と同じ位置に形成されてもよい。このとき、ハウジング２１０は、下側が薄く、上側が厚い２段の構成となる。このように、ハウジング２１０は、裏面における左右両側に、下方を向く面（突起部の下面）が形成されることが好ましい。これによって、ユーザは、当該面に指を当てることで楽に操作装置を把持することができる。なお、上記「下方を向く面」は、ハウジング２１０の裏面におけるどの位置に形成されてもよいが、ハウジング２１０の中央よりも上側に位置することが好ましい。
【０３００】
また、図２５の（ａ）図、（ｂ）図、および（ｃ）図に示すように、第１Ｌボタン２１４Ｉおよび第１Ｒボタン２１４Ｊは、ハウジング２１０の上側の面における左右の両側にそれぞれ設けられる。本実施形態では、第１Ｌボタン２１４Ｉおよび第１Ｒボタン２１４Ｊは、ハウジング２１０の斜め上部分（左上部分および右上部分）に設けられる。具体的には、第１Ｌボタン２１４Ｉは、板状のハウジング２１０における上側の側面の左端に設けられ、左上側の側面から露出している（換言すれば上側および左側の両方の側面から露出している）。また、第１Ｒボタン２１４Ｊは、ハウジング２１０における上側の側面の右端に設けられ、右上側の側面から露出している（換言すれば上側および右側の両方の側面から露出している）。このように、第１Ｌボタン２１４Ｉは、ユーザの左手人差し指で操作可能な位置に配置され、第１Ｒボタン２１４Ｊは、ユーザの右手人差し指で操作可能な位置に配置される（図２７参照）。なお、他の実施形態においては、ハウジング２１０の上側の面における左右にそれぞれ設けられる操作部は、左右の端部に設けられる必要はなく、端部以外の位置に設けられてもよい。また、ハウジング２１０の左右の側面に操作部がそれぞれ設けられてもよい。
【０３０１】
また、図２５の（ｃ）図および図２６に示すように、第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌは、上記突起部（庇部２１９）に配置される。第２Ｌボタン２１４Ｋは、庇部２１９の左端付近に設けられる。第２Ｒボタン２１４Ｌは、庇部２１９の右端付近に設けられる。つまり、第２Ｌボタン２１４Ｋは、ハウジング２１０の裏面の左側（表面側から見たときの左側）のやや上方に設けられ、第２Ｒボタン２１４Ｌは、ハウジング２１０の裏面の右側（表面側から見たときの右側）のやや上方に設けられる。換言すれば、第２Ｌボタン２１４Ｋは、表面に設けられる左アナログスティック２１３Ａの（概ね）反対側の位置に設けられ、第２Ｒボタン２１４Ｌは、表面に設けられる右アナログスティック２１３Ｂの（概ね）反対側の位置に設けられる。このように、第２Ｌボタン２１４Ｋは、ユーザの左手中指または人差し指で操作可能な位置に配置され、第２Ｒボタン２１４Ｌは、ユーザの右手中指または人差し指で操作可能な位置に配置される（図２７および図２８参照）。また、第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌは、図２５の（ｃ）図に示すように、上記庇部２１９の上面に設けられる。そのため、第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌは、上方（斜め上方）を向くボタン面を有する。ユーザが端末装置２００を把持した場合には中指または人差し指は上下方向に動くと考えられるので、ボタン面を上方に向けることで、ユーザは第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌを押下しやすくなる。
【０３０２】
上記のように、本実施形態においては、ハウジング２１０の中央よりも上側において表示部（ＬＣＤ２１１）の左右に操作部（アナログスティック２１３Ａおよび２１３Ｂ）がそれぞれ設けられ、さらに、ハウジング２１０の裏側において当該操作部の反対側の位置に別の操作部（第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌ）がそれぞれ設けられる。これによれば、上記操作部と別の操作部とがハウジング２１０の表側と裏側との互いに対向する位置に配置されるので、ユーザは、これらの操作部を操作する際にハウジング２１０を表側と裏側から挟むように把持することができる。また、これらの操作部を操作する際にユーザは、ハウジング２１０における上下方向の中心よりも上側を把持するので、端末装置２００を上側で把持できるとともに、手のひらで端末装置２００を支えることができる（図２７および図２８参照）。以上によって、ユーザは、少なくとも４つの操作部を操作することができる状態で、ハウジング２１０を安定的に把持することができ、ユーザが容易に把持することが可能で、かつ操作性の良い操作装置（端末装置２００）を提供することができる。
【０３０３】
以上のように、本実施形態においては、突起部（庇部２１９）の下面に指を当てた状態で端末装置２００を把持することによって、ユーザは楽に端末装置２００を把持することができる。また、突起部の上面に第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌが設けられるので、ユーザは上記の状態でこれらのボタンを容易に操作することができる。ユーザは、例えば次のような持ち方で端末装置２００を容易に把持することができる。
【０３０４】
すなわち、ユーザは、図２７に示すように、薬指を庇部２１９の下面（図２７に示す一点鎖線）に当てて（薬指で庇部２１９を支えるように）端末装置２００を把持することも可能である。このとき、ユーザは、４つのボタン（第１Ｌボタン２１４Ｉ、第１Ｒボタン２１４Ｊ、第２Ｌボタン２１４Ｋ、および第２Ｒボタン２１４Ｌ）を人差し指および中指で操作することができる。例えば、要求されるゲーム操作が、使用するボタンが多く、比較的複雑である場合には、図２７に示すように把持することで、多くのボタンを容易に操作することができる。なお、各アナログスティック２１３Ａおよび２１３Ｂは十字ボタン２１４Ａおよびボタン２１４Ｅ〜２１４Ｈの上側に設けられるので、比較的複雑な操作が要求される場合にユーザは親指でアナログスティック２１３Ａおよび２１３Ｂを操作することができ、好都合である。また、図２７においては、ユーザは、ハウジング２１０の表面に親指を、ハウジング２１０の上面に人差し指を、ハウジング２１０の裏面における庇部２１９の上面に中指を、庇部２１９の下面に薬指を、ハウジング２１０の裏面に小指を当てて端末装置２００を把持する。このように、ユーザは、ハウジング２１０を四方から包み込むようにして端末装置２００をしっかりと把持することができる。
【０３０５】
また、ユーザは、図２８に示すように、中指を庇部２１９の下面（図２８に示す一点鎖線）に当てて端末装置２００を把持することも可能である。このとき、ユーザは、２つのボタン（第２Ｌボタン２１４Ｋおよび第２Ｒボタン２１４Ｌ）を人差し指で容易に操作することができる。例えば、要求されるゲーム操作が、使用するボタンが少なく、比較的単純である場合には、図２８に示すように把持してもよい。図２８においては、ユーザは、２本の指（薬指および小指）でハウジング２１０の下側を把持することができるので、しっかりと端末装置２００を把持することができる。
【０３０６】
なお、本実施形態においては、庇部２１９の下面が、各アナログスティック２１３Ａおよび２１３Ｂと、十字ボタン２１４Ａおよび４つのボタン２１４Ｅ〜２１４Ｈとの間に位置するように（各アナログスティック２１３Ａおよび２１３Ｂよりも下方で、かつ、十字ボタン２１４Ａおよび４つのボタン２１４Ｅ〜２１４Ｈよりも上方に位置するように）設けられる。したがって、薬指を庇部２１９に当てて端末装置２００を把持する場合（図２７）には、各アナログスティック２１３Ａおよび２１３Ｂを親指で操作しやすくなり、中指を庇部２１９に当てて端末装置２００を把持する場合（図２８）には、十字ボタン２１４Ａおよび４つのボタン２１４Ｅ〜２１４Ｈを親指で操作しやすくなっている。つまり、上記２種類の場合のいずれにおいても、ユーザは、端末装置２００をしっかりと把持した状態で方向入力操作を行うことができる。
【０３０７】
また、上述のように、ユーザは端末装置２００を縦持ちで把持することも可能である。すなわち、図２９に示すように、ユーザは端末装置２００の上辺を左手で把持することで端末装置２００を縦向きで把持することが可能である。また、図３０に示すように、ユーザは端末装置２００の下辺を左手で把持することで端末装置２００を縦向きで把持することが可能である。なお、図２９および図３０では端末装置２００を左手で把持する場合を示しているが、右手で把持することも可能である。このように、ユーザは端末装置２００を片手で把持することが可能であるので、例えば、一方の手で端末装置２００を把持しながら他方の手でタッチパネル２１２に対する入力を行うといった操作を行うことも可能である。
【０３０８】
また、図２９に示す持ち方で端末装置２００を把持する場合、ユーザは親指以外の指（図２９にでは中指、薬指および小指）を庇部２１９の下面（図２９に示す一点鎖線）に当てることで、端末装置２００をしっかりと把持することができる。特に、本実施形態においては、庇部２１９が左右に（図２９では上下に）延びて形成されているので、ユーザは端末装置２００の上辺におけるどこの位置で把持しても、親指以外の指を庇部２１９に当てることができ、端末装置２００をしっかりと把持することができる。すなわち、端末装置２００を縦持ちで使う場合には、庇部２１９は取っ手として使うことができる。一方、図３０に示す持ち方で端末装置２００を把持する場合、ユーザは、左手でボタン２１４Ｂ〜２１４Ｄを操作することができる。したがって、例えば片手でタッチパネル２１２に対する入力を行いつつ、端末装置２００を把持する手でボタン２１４Ｂ〜２１４Ｄに対する操作を行うことができ、より多くの操作を行うことができる。
【０３０９】
なお、本実施形態における端末装置２００に関しては、突起部（庇部２１９）が裏面に設けられるので、ＬＣＤ２１１の画面（ハウジング２１０の表面）が上を向いた状態で端末装置２００を載置させる場合、画面がやや傾いた状態となる。これによって、端末装置２００を載置した状態において画面がより見やすくなる。また、端末装置２００を載置した状態においてタッチパネル２１２に対する入力操作が行いやすくなる。また、他の実施形態においては、上記庇部２１９と同程度の高さを有する追加の突起部がハウジング２１０の裏面に形成されてもよい。これによれば、ＬＣＤ２１１の画面が上を向いた状態では、各突起部が床面に接することで、画面が水平になるように端末装置２００を載置することができる。また、追加の突起部を着脱可能な（または折り畳み可能な）ものとしてもよい。これによれば、画面がやや傾いた状態と、画面が水平になる状態との両方で端末装置を載置することができる。すなわち、端末装置２００を置いて使う場合には、庇部２１９は、脚部として使うことができる。
【０３１０】
各ボタン２１４Ａ〜２１４Ｌには、ゲームプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン２１４Ａおよびボタン２１４Ｅ〜２１４Ｈは方向指示操作や選択操作等に用いられてもよいし、各ボタン２１４Ｂ〜２１４Ｅは決定操作やキャンセル操作等に用いられてもよい。また、端末装置２００は、ＬＣＤ２１１の画面表示をオン／オフするためのボタンや、ゲーム装置３との接続設定（ペアリング）を行うためのボタンを有していてもよい。
【０３１１】
図２５の（ａ）図に示すように、端末装置２００は、マーカ２１５Ａおよびマーカ２１５Ｂからなるマーカ部２１５をハウジング２１０の表面に備えている。マーカ部２１５は、ＬＣＤ２１１の上側に設けられる。各マーカ２１５Ａおよびマーカ２１５Ｂは、マーカ装置６の各マーカ６Ｒおよび６Ｌと同様、１以上の赤外ＬＥＤで構成される。マーカ２１５Ａおよび２１５Ｂを構成する赤外ＬＥＤは、赤外光を透過する窓部の内側に配置される。マーカ部２１５は、上述のマーカ装置６と同様、コントローラ５の動き等をゲーム装置３が算出するために用いられる。また、ゲーム装置３はマーカ部２１５が備える各赤外ＬＥＤの点灯を制御することが可能である。
【０３１２】
端末装置２００は、撮像手段であるカメラ２１６を備えている。カメラ２１６は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。図２５に示すように、本実施形態では、カメラ２１６はハウジング２１０の表面に設けられる。したがって、カメラ２１６は、端末装置２００を持っているユーザの顔を撮像することができ、例えばＬＣＤ２１１を見ながらゲームを行っている時のユーザを撮像することができる。本実施形態においては、カメラ２１６は、２つのマーカ２１５Ａおよび２１５Ｂの間に配置される。
【０３１３】
なお、端末装置２００は、音声入力手段であるマイク２３９を備えている。ハウジング２１０の表面には、マイクロフォン用孔２１０ｃが設けられる。マイク２３９はこのマイクロフォン用孔２１０ｃの奥のハウジング２１０内部に設けられる。マイク２３９は、ユーザの音声等、端末装置２００の周囲の音を検出する。
【０３１４】
端末装置２００は、音声出力手段であるスピーカ２３７を備えている。図２５の（ｄ）図に示すように、ハウジング２１０の表面の下側にはスピーカ孔２１７が設けられる。スピーカ２３７の出力音はこのスピーカ孔２１７から出力される。本実施形態では、端末装置２００は２つのスピーカを備えており、左スピーカおよび右スピーカのそれぞれの位置にスピーカ孔２１７が設けられる。なお、端末装置２００は、スピーカ２３７の音量を調節するためのつまみ２２４を備える。また、端末装置２００は、イヤホン等の音声出力部を接続するための音声出力端子２２２を備える。ここでは、ハウジングの下側の側面に付加装置が接続されることを考慮して、上記音声出力端子２２２およびつまみ２２４はハウジング２１０の上画の側面に設けられるが、左右の側面や下側の側面に設けられてもよい。
【０３１５】
また、ハウジング２１０には、赤外線通信モジュール２４２からの赤外線信号を端末装置２００の外部に出射するための窓２２３が設けられる。ここでは、ＬＣＤ２１１の両側を把持した場合にユーザの前方へ赤外線信号が発射されるように、窓２２３はハウジング２１０の上側の側面に設けられる。ただし、他の実施形態においては、窓２２３は、例えばハウジング２１０の裏面等、どの位置に設けられてもよい。
【０３１６】
また、端末装置２００は、他の装置を端末装置２００に接続するための拡張コネクタ２１８を備えている。拡張コネクタ２１８は、端末装置２００に接続される他の装置との間でデータ（情報）を送受信するための通信端子である。本実施形態においては、図２５の（ｄ）図に示すように、拡張コネクタ２１８は、ハウジング２１０の下側側面に設けられる。なお、拡張コネクタ２１８に接続される他の付加装置はどのようなものであってもよく、例えば、特定のゲームに用いるコントローラ（銃型のコントローラ等）やキーボード等の入力装置であってもよい。付加装置を接続する必要がなければ、拡張コネクタ２１８は設けられていなくともよい。拡張コネクタ２１８には、付加装置に電力を供給する端子や、充電のための端子が含まれていてもよい。
【０３１７】
また、端末装置２００は、拡張コネクタ２１８とは別に、付加装置から電力を取得するための充電端子２２６を有する。所定の充電スタンドに充電端子２２６が接続された場合、充電スタンドから端末装置２００へ電力が供給される。本実施形態では、充電端子２２６はハウジング２１０の下側側面に設けられる。したがって、端末装置２００と付加装置とが接続される際には、拡張コネクタ２１８を介して情報を送受信することに加えて、一方から他方への電力供給を行うことも可能である。このように、拡張コネクタ２１８の周囲（左右両側）に充電端子２２６を設けることによって、端末装置２００と付加装置とが接続される際に、情報の送受信とともに、電力供給を行うことも可能である。また、端末装置２００は充電コネクタを有し、ハウジング２１０は充電コネクタを保護するためのカバー部２２１を有する。充電コネクタは、後述する充電器２４６に接続可能であり、充電器に充電コネクタが接続された場合、充電器２４６から端末装置２００へ電力が供給される。本実施形態では、ハウジングの下側の側面に付加装置が接続されることを考慮して、充電コネクタ（カバー部２２１）はハウジング２１０の上画の側面に設けられるが、左右の側面や下側の側面に設けられてもよい。
【０３１８】
また、端末装置２００は、ハウジング２１０に対して着脱可能な電池蓋２２７を有している。電池蓋２２７の内側には電池（図３１に示す電池２４５）が配置される。本実施形態においては、電池蓋２２７はハウジング２１０の裏側に設けられ、突起部（庇部２１９）の下側に設けられる。
【０３１９】
また、端末装置２００のハウジング２１０には、ストラップの紐を結びつけるための孔２２５ａおよび２２５ｂが設けられる。図２５（ｄ）に示すように、本実施形態においては、孔２２５ａおよび２２５ｂはハウジング２１０の下面に設けられる。また、本実施形態においては、２つの孔２２５ａおよび２２５ｂがハウジング２１０の左右両側にそれぞれ１つずつ設けられる。すなわち、孔２２５ａがハウジング２１０の下面の中央より左側に設けられ、孔２２５ｂがハウジング２１０の下面の中央より右側に設けられる。ユーザは、孔２２５ａおよび２２５ｂのいずれかにストラップを結びつけ、ストラップを自身の手首に結びつけてもよい。これによって、万一ユーザが端末装置２００を落としたり、端末装置２００が手から離れたりした場合でも、端末装置２００が落下したり他の物に衝突したりすることを防止することができる。なお、本実施形態においては、左右両側にそれぞれ孔が設けられるので、ユーザは、どちらの手にもストラップを結びつけることができ、便利である。
【０３２０】
なお、図２５〜図３０に示した端末装置２００に関して、各操作ボタンやハウジング２１０の形状や、各構成要素の数および設置位置等は単なる一例に過ぎず、他の形状、数、および設置位置であってもよい。
【０３２１】
次に、図３１を参照して、端末装置２００の内部構成について説明する。図３１は、端末装置２００の内部構成を示すブロック図である。図３１に示すように、端末装置２００は、図２５に示した構成の他、タッチパネルコントローラ２３１、磁気センサ２３２、加速度センサ２３３、ジャイロセンサ２３４、ユーザインタフェースコントローラ（ＵＩコントローラ）２３５、コーデックＬＳＩ２３６、スピーカ２３７、サウンドＩＣ２３８、マイク２３９、無線モジュール２４０、アンテナ２４１、赤外線通信モジュール２４２、フラッシュメモリ２４３、電源ＩＣ２４４、および電池２４５を備える。これらの電子部品は、電子回路基板上に実装されてハウジング２１０内に収納される。
【０３２２】
ＵＩコントローラ２３５は、各種の入出力部に対するデータの入出力を制御するための回路である。ＵＩコントローラ２３５は、タッチパネルコントローラ２３１、アナログスティック２１３（アナログスティック２１３Ａおよび２１３Ｂ）、操作ボタン２１４（各操作ボタン２１４Ａ〜２１４Ｌ）、マーカ部２１５、磁気センサ２３２、加速度センサ２３３、およびジャイロセンサ２３４に接続される。また、ＵＩコントローラ２３５は、コーデックＬＳＩ２３６と拡張コネクタ２１８に接続される。また、ＵＩコントローラ２３５には電源ＩＣ２４４が接続され、ＵＩコントローラ２３５を介して各部に電力が供給される。電源ＩＣ２４４には内蔵の電池２４５が接続され、電力が供給される。また、電源ＩＣ２４４には、外部電源から電力を取得可能な充電器２４６またはケーブルを充電コネクタを介して接続することが可能であり、端末装置２００は、当該充電器２４６またはケーブルを用いて外部電源からの電力供給と充電を行うことができる。なお、端末装置２００は、図示しない充電機能を有するクレイドルに端末装置２００を装着することで充電を行うことも可能である。すなわち、図示しないが、電源ＩＣ２４４には、外部電源から電力を取得可能なクレイドルを充電端子２２６を介して接続することが可能であり、端末装置２００は、クレイドルを用いて外部電源からの電力供給と充電を行うことができる。
【０３２３】
タッチパネルコントローラ２３１は、タッチパネル２１２に接続され、タッチパネル２１２の制御を行う回路である。タッチパネルコントローラ２３１は、タッチパネル２１２からの信号に基づいて所定の形式のタッチ位置データを生成してＵＩコントローラ２３５へ出力する。タッチ位置データは、タッチパネル２１２の入力面において入力が行われた位置の座標を表す。なお、タッチパネルコントローラ２３１は、タッチパネル２１２からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。また、ＵＩコントローラ２３５からタッチパネルコントローラ２３１へは、タッチパネル２１２に対する各種の制御指示が出力される。
【０３２４】
アナログスティック２１３は、ユーザの指で操作されるスティック部がスライドした（または傾倒した）方向および量を表すスティックデータをＵＩコントローラ２３５へ出力する。また、操作ボタン２１４は、各操作ボタン２１４Ａ〜２１４Ｌに対する入力状況（押下されたか否か）を表す操作ボタンデータをＵＩコントローラ２３５へ出力する。
【０３２５】
磁気センサ２３２は、磁界の大きさおよび方向を検知することで方位を検出する。検出された方位を示す方位データは、ＵＩコントローラ２３５へ出力される。また、ＵＩコントローラ２３５から磁気センサ２３２へは、磁気センサ２３２に対する制御指示が出力される。磁気センサ２３２に関しては、ＭＩ（磁気インピーダンス）素子、フラックスゲートセンサ、ホール素子、ＧＭＲ（巨大磁気抵抗）素子、ＴＭＲ（トンネル磁気抵抗）素子、あるいはＡＭＲ（異方性磁気抵抗）素子等を用いたセンサがあるが、方位を検出することができればどのようなものが用いられてもよい。なお、厳密には、地磁気以外に磁界が発生している場所においては、得られた方位データは方位を示さないことになるが、そのような場合であっても、端末装置２００が動いた場合には方位データが変化するため、端末装置２００の姿勢の変化を算出することができる。
【０３２６】
加速度センサ２３３は、ハウジング２１０の内部に設けられ、３軸（図２５の（ａ）図に示すｘｙｚ軸）方向に沿った直線加速度の大きさを検出する。具体的には、加速度センサ２３３は、ハウジング２１０の長辺方向をｘ軸、ハウジング２１０の表面に対して垂直な方向をｙ軸、ハウジング２１０の短辺方向をｚ軸として、各軸の直線加速度の大きさを検出する。検出された加速度を表す加速度データはＵＩコントローラ２３５へ出力される。また、ＵＩコントローラ２３５から加速度センサ２３３へは、加速度センサ２３３に対する制御指示が出力される。加速度センサ２３３は、本実施形態では例えば静電容量式のＭＥＭＳ型加速度センサであるとするが、他の実施形態においては他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ２３３は１軸または２軸方向を検出する加速度センサであってもよい。
【０３２７】
ジャイロセンサ２３４は、ハウジング２１０の内部に設けられ、上記ｘ軸、ｙ軸およびｚ軸の３軸周りの角速度を検出する。検出された角速度を表す角速度データは、ＵＩコントローラ２３５へ出力される。また、ＵＩコントローラ２３５からジャイロセンサ２３４へは、ジャイロセンサ２３４に対する制御指示が出力される。なお、３軸の角速度を検出するために用いられるジャイロセンサの数および組み合わせはどのようなものであってもよく、ジャイロセンサ２３４はジャイロセンサユニット６と同様、２軸ジャイロセンサと１軸ジャイロセンサとで構成されてもよい。また、ジャイロセンサ２３４は１軸または２軸方向を検出するジャイロセンサであってもよい。
【０３２８】
ＵＩコントローラ２３５は、上記の各構成要素から受け取ったタッチ位置データ、スティックデータ、操作ボタンデータ、方位データ、加速度データ、および角速度データを含む操作データをコーデックＬＳＩ２３６に出力する。なお、拡張コネクタ２１８を介して端末装置２００に他の装置が接続される場合には、当該他の装置に対する操作を表すデータが上記操作データにさらに含まれていてもよい。
【０３２９】
コーデックＬＳＩ２３６は、ゲーム装置３へ送信するデータに対する圧縮処理、および、ゲーム装置３から送信されたデータに対する伸張処理を行う回路である。コーデックＬＳＩ２３６には、ＬＣＤ２１１、カメラ２１６、サウンドＩＣ２３８、無線モジュール２４０、フラッシュメモリ２４３、および赤外線通信モジュール２４２が接続される。また、コーデックＬＳＩ２３６はＣＰＵ２４７と内部メモリ２４８を含む。端末装置２００はゲーム処理自体を行なわない構成であるが、端末装置２００の管理や通信のための最小限のプログラムを実行する必要がある。電源投入時にフラッシュメモリ２４３に格納されたプログラムを内部メモリ２４８に読み出してＣＰＵ２４７が実行することで、端末装置２００が起動する。また、内部メモリ２４８の一部の領域はＬＣＤ２１１のためのＶＲＡＭとして使用される。
【０３３０】
カメラ２１６は、ゲーム装置３からの指示に従って画像を撮像し、撮像した画像データをコーデックＬＳＩ２３６へ出力する。また、コーデックＬＳＩ２３６からカメラ２１６へは、画像の撮像指示等、カメラ２１６に対する制御指示が出力される。なお、カメラ２１６は動画の撮影も可能である。すなわち、カメラ２１６は、繰り返し撮像を行って画像データをコーデックＬＳＩ２３６へ繰り返し出力することも可能である。
【０３３１】
サウンドＩＣ２３８は、スピーカ２３７およびマイク２３９に接続され、スピーカ２３７およびマイク２３９への音声データの入出力を制御する回路である。すなわち、コーデックＬＳＩ２３６から音声データを受け取った場合、サウンドＩＣ２３８は当該音声データに対してＤ／Ａ変換を行って得られる音声信号をスピーカ２３７へ出力し、スピーカ２３７から音を出力させる。また、マイク２３９は、端末装置２００に伝わる音（ユーザの音声等）を検知して、当該音を示す音声信号をサウンドＩＣ２３８へ出力する。サウンドＩＣ２３８は、マイク２３９からの音声信号に対してＡ／Ｄ変換を行い、所定の形式の音声データをコーデックＬＳＩ２３６へ出力する。
【０３３２】
コーデックＬＳＩ２３６は、カメラ２１６からの画像データ、マイク２３９からの音声データ、および、ＵＩコントローラ２３５からの操作データを、端末操作データとして無線モジュール２４０を介してゲーム装置３へ送信する。本実施形態では、コーデックＬＳＩ２３６は、画像データおよび音声データに対して、画像圧縮部２７と同様の圧縮処理を行う。上記端末操作データ、ならびに、圧縮された画像データおよび音声データは、送信データとして無線モジュール２４０に出力される。無線モジュール２４０にはアンテナ２４１が接続されており、無線モジュール２４０はアンテナ２４１を介してゲーム装置３へ上記送信データを送信する。無線モジュール２４０は、ゲーム装置３の高速無線通信モジュール２８と同様の機能を有している。すなわち、無線モジュール２４０は、例えばＩＥＥＥ８０２．１１ｎの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。送信されるデータは必要に応じて暗号化されていてもよいし、されていなくともよい。
【０３３３】
以上のように、端末装置２００からゲーム装置３へ送信される送信データには、操作データ（端末操作データ）、画像データ、および音声データが含まれる。なお、拡張コネクタ２１８を介して端末装置２００に他の装置が接続される場合には、当該他の装置から受け取ったデータが上記送信データにさらに含まれていてもよい。また、赤外線通信モジュール２４２は、他の装置との間で例えばＩＲＤＡの規格に従った赤外線通信を行う。コーデックＬＳＩ２３６は、赤外線通信によって受信したデータを、必要に応じて上記送信データに含めてゲーム装置３へ送信してもよい。
【０３３４】
また、上述のように、ゲーム装置３から端末装置２００へは、圧縮された画像データおよび音声データが送信される。これらのデータはアンテナ２４１および無線モジュール２４０を介してコーデックＬＳＩ２３６に受信される。コーデックＬＳＩ２３６は、受信した画像データおよび音声データを伸張する。伸張された画像データはＬＣＤ２１１へ出力され、画像がＬＣＤ２１１に表示される。つまり、コーデックＬＳＩ２３６（ＣＰＵ２４７）は、受信された画像データを表示部に表示させる。また、伸張された音声データはサウンドＩＣ２３８へ出力され、サウンドＩＣ２３８はスピーカ２３７から音を出力させる。
【０３３５】
また、ゲーム装置３から受信されるデータに制御データが含まれる場合、コーデックＬＳＩ２３６およびＵＩコントローラ２３５は、制御データに従った制御指示を各部に行う。上述のように、制御データは、端末装置２００が備える各構成要素（本実施形態では、カメラ２１６、タッチパネルコントローラ２３１、マーカ部２１５、各センサ２２２〜２２４、および赤外線通信モジュール２４２）に対する制御指示を表すデータである。本実施形態では、制御データが表す制御指示としては、上記各構成要素を動作させたり、動作を休止（停止）させたりする指示が考えられる。すなわち、ゲームで使用しない構成要素については電力消費を抑えるために休止させてもよく、その場合、端末装置２００からゲーム装置３へ送信される送信データには、休止した構成要素からのデータが含まれないようにする。なお、マーカ部２１５は赤外ＬＥＤであるので、制御は単に電力の供給のＯＮ／ＯＦＦでよい。
【０３３６】
以上のように、端末装置２００は、タッチパネル２１２、アナログスティック２１３、および操作ボタン２１４といった操作手段を備えるが、他の実施形態においては、これらの操作手段に代えて、または、これらの操作手段とともに、他の操作手段を備える構成であってもよい。
【０３３７】
また、端末装置２００は、端末装置２００の動き（位置や姿勢、あるいは、位置や姿勢の変化を含む）を算出するためのセンサとして、磁気センサ２３２、加速度センサ２３３、およびジャイロセンサ２３４を備えるが、他の実施形態においては、これらのセンサのうち１つまたは２つのみを備える構成であってもよい。また、他の実施形態においては、これらのセンサに代えて、または、これらのセンサとともに、他のセンサを備える構成であってもよい。
【０３３８】
また、端末装置２００は、カメラ２１６およびマイク２３９を備える構成であるが、他の実施形態においては、カメラ２１６およびマイク２３９を備えていなくてもよく、また、いずれか一方のみを備えていてもよい。
【０３３９】
また、端末装置２００は、端末装置２００とコントローラ５との位置関係（コントローラ５から見た端末装置２００の位置および／または姿勢等）を算出するための構成としてマーカ部２１５を備える構成であるが、他の実施形態ではマーカ部２１５を備えていない構成としてもよい。また、他の実施形態では、端末装置２００は、上記位置関係を算出するための構成として他の手段を備えていてもよい。例えば、他の実施形態においては、コントローラ５がマーカ部を備え、端末装置２００が撮像素子を備える構成としてもよい。さらにこの場合、マーカ装置６は赤外ＬＥＤに代えて、撮像素子を備える構成としてもよい。
【産業上の利用可能性】
【０３４０】
以上のように、本発明は、複数人でプレイ可能なゲームにおいて、各プレイヤにとって見やすいゲーム画像を表示すること等を目的として、例えばゲームシステムやゲームプログラムとして利用することが可能である。
【符号の説明】
【０３４１】
１  ゲームシステム
２  テレビ
３  ゲーム装置
４  光ディスク
７  操作装置
９  ハンドヘルドデバイス
１０  ＣＰＵ
１１ｅ  内部メインメモリ
１２  外部メインメモリ
１５  ＡＶ−ＩＣ
１９  コントローラ通信モジュール
２８  高速無線通信モジュール
３５  撮像情報演算部
３７  加速度センサ
４４  無線モジュール
５５，５６  ジャイロセンサ
６２  下側ＬＣＤ
６３  タッチパネル
６４  操作ボタン
８９  加速度センサ
９０  ジャイロセンサ
１０３  バットオブジェクト
１０４  ボールオブジェクト
１１１  第１操作データ
１１６  第２操作データ
１２９  第１表示設定データ
１３０  第２表示設定データ
【図１】
2012050804.tif 000003
【図２】
2012050804.tif 000004
【図３】
2012050804.tif 000005
【図４】
2012050804.tif 000006
【図５】
2012050804.tif 000007
【図６】
2012050804.tif 000008
【図７】
2012050804.tif 000009
【図８】
2012050804.tif 000010
【図９】
2012050804.tif 000011
【図１０】
2012050804.tif 000012
【図１１】
2012050804.tif 000013
【図１２】
2012050804.tif 000014
【図１３】
2012050804.tif 000015
【図１４】
2012050804.tif 000016
【図１５】
2012050804.tif 000017
【図１６】
2012050804.tif 000018
【図１７】
2012050804.tif 000019
【図１８】
2012050804.tif 000020
【図１９】
2012050804.tif 000021
【図２０】
2012050804.tif 000022
【図２１】
2012050804.tif 000023
【図２２】
2012050804.tif 000024
【図２３】
2012050804.tif 000025
【図２４】
2012050804.tif 000026
【図２５】
2012050804.tif 000027
【図２６】
2012050804.tif 000028
【図２７】
2012050804.tif 000029
【図２８】
2012050804.tif 000030
【図２９】
2012050804.tif 000031
【図３０】
2012050804.tif 000032
【図３１】
2012050804.tif 000033