(57)【特許請求の範囲】
【請求項１】
アウェイク状態と無線通信の少なくとも一部の機能が制限された仮眠状態とに切り替え可能な情報処理装置のコンピュータにおいて実行される無線通信プログラムであって、
送出すべきデータを順次取得するデータ取得手段と、
前記情報処理装置の状態が前記仮眠状態であるときに前記データ取得手段によって取得されたデータのうち、優先して送出すべき第１データを第１キューに格納する第１格納手段と、
前記データ取得手段によって取得されたデータのうち、優先して送出しない第２データを第２キューに格納する第２格納手段と、
前記情報処理装置の状態が前記アウェイク状態である場合において、前記第１キューに格納された第１データを前記第２キューに格納された第２データよりも優先的にエアーに送出するデータ送出手段として、前記コンピュータを機能させ、
前記第２格納手段は、前記情報処理装置の状態が前記アウェイク状態であるときに前記データ取得手段によって取得された前記第１データを、前記第２キューに格納する、無線通信プログラム。
【請求項２】
前記データ送出手段は、前記第１キューに格納された前記第１データの送出が終了した後、前記第２キューに格納された前記第２データを、前記データ取得手段によって取得された順番でエアーに送出する、請求項１に記載の無線通信プログラム。
【請求項３】
前記優先して送出すべき第１データは、他の情報処理装置にブロードキャスト又はマルチキャストするデータである、請求項１または２に記載の無線通信プログラム。
【請求項４】
前記第２データは、他の情報処理装置にユニキャストするデータである、請求項３に記載の無線通信プログラム。
【請求項５】
前記第１格納手段は、前記情報処理装置の状態が前記仮眠状態である場合において、前記第２キューに前記第１データが格納されているとき、当該第２キューに格納された第１データを前記第１キューに格納する、請求項１に記載の無線通信プログラム。
【請求項６】
前記情報処理装置は、他の情報処理装置である第１および第２情報処理装置と通信し、
前記第１データは、前記第１情報処理装置から送信されたデータであって当該第１情報処理装置から前記第２情報処理装置に送信されるべきデータ、または、自機において発生したデータである、請求項１から５の何れかに記載の無線通信プログラム。
【請求項７】
前記情報処理装置、前記第１情報処理装置、および、前記第２情報処理装置は、操作部を有し、互いにデータをやり取りすることによって所定のゲームを進行させるゲーム装置であり、
前記第１データは、第１情報処理装置において行われた操作に応じたデータ、または、自機において行われた操作に応じたデータである、請求項６に記載の無線通信プログラム。
【請求項８】
前記情報処理装置は、他の情報処理装置と通信し、
前記アウェイク状態と前記仮眠状態との切り替えを前記他の情報処理装置と同期して行う切替制御手段として、前記コンピュータをさらに機能させる、請求項１から７の何れかに記載の無線通信プログラム。
【請求項９】
前記切替制御手段は、前記アウェイク状態と前記仮眠状態との切り替えを繰り返し行うとともに、当該切り替えのタイミングを示す情報を前記他の情報処理装置に対して送信する、請求項８に記載の無線通信プログラム。
【請求項１０】
アウェイク状態と無線通信の少なくとも一部の機能が制限された仮眠状態とに切り替え可能な情報処理装置であって、
送出すべきデータを順次取得するデータ取得手段と、
前記情報処理装置の状態が前記仮眠状態であるときに前記データ取得手段によって取得されたデータのうち、優先して送出すべき第１データを第１キューに格納する第１格納手段と、
前記データ取得手段によって取得されたデータのうち、優先して送出しない第２データを第２キューに格納する第２格納手段と、
前記情報処理装置の状態が前記アウェイク状態である場合において、前記第１キューに格納された第１データを前記第２キューに格納された第２データよりも優先的にエアーに送出するデータ送出手段とを備え、
前記第２格納手段は、前記情報処理装置の状態が前記アウェイク状態であるときに前記データ取得手段によって取得された前記第１データを、前記第２キューに格納する、情報処理装置。
【請求項１１】
アウェイク状態と無線通信の少なくとも一部の機能が制限された仮眠状態とに切り替え可能な情報処理装置の通信制御方法であって、
送出すべきデータを順次取得するデータ取得ステップと、
前記情報処理装置の状態が前記仮眠状態であるときに前記データ取得ステップで取得されたデータのうち、優先して送出すべき第１データを第１キューに格納する第１格納ステップと、
前記データ取得ステップで取得されたデータのうち、優先して送出しない第２データを第２キューに格納する第２格納手段ステップと、
前記情報処理装置の状態が前記アウェイク状態である場合において、前記第１キューに格納された第１データを前記第２キューに格納された第２データよりも優先的にエアーに送出するデータ送出ステップとを含み、
前記第２格納ステップにおいて、前記情報処理装置の状態が前記アウェイク状態であるときに前記データ取得ステップにおいて取得された前記第１データを、前記第２キューに格納する、通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線通信プログラム、情報処理装置、および無線通信方法に関し、より特定的には、データ送信の優先制御を行う無線通信プログラム、情報処理装置、および通信制御方法に関する。
【背景技術】
【０００２】
従来、特定種類のデータを優先的に送信するように構成された無線通信装置が存在する。例えば、特許文献１に記載のアクセスポイント装置では、優先キューと非優先キューとを備え、送信するデータの種類に応じてこれらの何れかのキューにデータを一時的に格納し、優先キューに格納されたデータを優先的に送信する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−９８８８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のアクセスポイント装置はいわゆる家庭用電源から電力供給を受ける装置であり、そのため電力消費の抑制を行う必要がない。すなわち、特許文献１では、電力消費を抑制するための手段を備えていない。
【０００５】
それ故、本発明の目的は、電力消費を抑えつつデータ通信を円滑におこなうことができる情報処理装置を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上記の課題を解決するために、以下の構成を採用した。
【０００７】
本発明は、アウェイク状態と無線通信の少なくとも一部の機能が制限された仮眠状態とに切り替え可能な情報処理装置のコンピュータにおいて実行される無線通信プログラムである。当該無線通信プログラムは、データ取得手段と、第１格納手段と、第２格納手段と、データ送出手段として、上記コンピュータを機能させる。データ取得手段は、送出すべきデータを順次取得する。第１格納手段は、上記情報処理装置の状態が上記仮眠状態であるときに上記データ取得手段によって取得されたデータのうち、優先して送出すべき第１データを第１キューに格納する。第２格納手段は、上記データ取得手段によって取得されたデータのうち、優先して送出しない第２データを第２キューに格納する。データ送出手段は、上記情報処理装置の状態が上記アウェイク状態である場合において、上記第１キューに格納された第１データを上記第２キューに格納された第２データよりも優先的にエアーに送出する。上記第２格納手段は、上記情報処理装置の状態が上記アウェイク状態であるときに上記データ取得手段によって取得された上記第１データを、上記第２キューに格納する。
【０００８】
上記によれば、仮眠状態であるときに取得された第１データ（優先して送出すべきデータ）を第１キューに格納することができる。これにより、アウェイク状態に移行後、仮眠状態であるときに取得された第１データを第２キューに格納されたデータよりも優先してエアーに送出することができる。なお、「無線通信の少なくとも一部の機能が制限された」状態とは、例えば、少なくともデータ送受信ができない状態等である。上記によれば、アウェイク状態であるときは第１データを第２キューに格納し、仮眠状態であるときは第１データを第１キューに格納することができる。第１キューに格納されたデータは第２キューに格納されたデータよりも優先的に送出される。すなわち、第１データ（優先すべきデータ；ブロードキャストデータ）が常に第１キュー（優先送信キュー）に格納されて、第２データ（優先すべきでないデータ；ユニキャストデータ）が常に第２キュー（通常キュー）に格納されると、第１データの送信が常に優先され、第２データの送信は常に遅延する傾向にある。しかしながら、この構成によれば、アウェイク状態であるときは第１データを第２キューに格納し、仮眠状態であるときは第１データを第１キューに格納する。このため、アウェイク状態であるときは、第１データが第２データよりも常に優先して送出されることはなく、第１データと第２データとをバランスよく送出することができる。一方で、仮眠状態においては、データの送受信が制限されるため、送出すべきデータがその期間に蓄積される。送信すべきデータが蓄積された場合、優先すべき第１データを第２データよりも優先的に送出することにより、第１データの送信が遅延することを防止することができる。
【０００９】
本発明の他の構成では、上記データ送出手段は、上記第１キューに格納された上記第１データの送出が終了した後、上記第２キューに格納された上記第２データを、上記データ取得手段によって取得された順番でエアーに送出してもよい。
【００１０】
上記によれば、第１キューに格納された第１データの送出が完了してから、第２キューに格納された第２データを送出することができ、第１データを第２データよりも優先的に送出することができる。
【００１１】
本発明の他の構成では、上記優先して送出すべき第１データは、他の情報処理装置にブロードキャスト又はマルチキャストするデータであってもよい。
【００１２】
上記によれば、ブロードキャスト又はマルチキャストするデータを優先的に送信することができる。これにより、他の複数又は全ての情報処理装置に送信するデータが遅延を防止することができ、遅延によってネットワーク全体に影響が及ぶことを防止することができる。
【００１３】
本発明の他の構成では、上記第２データは、他の情報処理装置にユニキャストするデータであってもよい。
【００１４】
上記によれば、ブロードキャストまたはマルチキャストデータをユニキャストデータより優先して送信することができる。
【００１９】
本発明の他の構成では、上記第１格納手段は、上記情報処理装置の状態が上記仮眠状態である場合において、上記第２キューに上記第１データが格納されているとき、当該第２キューに格納された第１データを上記第１キューに格納してもよい。
【００２０】
上記によれば、第２キューに格納された第１データを第１キューに再格納することができる。アウェイク状態の間に送出すべきデータが取得された場合において、当該データがエアーに送出される前に仮眠状態に移行したとき、第２キューには第１データ（Ｄ１とする）が未送信のまま残る。この構成では、未送信のまま第２キューに残った第１データＤ１が第１キューに再格納される。このため、仮眠状態の間に更に第１データ（Ｄ２とする）が第１キューに格納されて、再びアウェイク状態に移行しても、第１データＤ１は第１データＤ２よりも先に送信されるため、取得された順番でデータを送出することができる。
【００２１】
本発明の他の構成では、上記情報処理装置は、他の情報処理装置である第１および第２情報処理装置と通信してもよい。上記第１データは、上記第１情報処理装置から送信されたデータであって当該第１情報処理装置から上記第２情報処理装置に送信されるべきデータ、または、自機において発生したデータである。
【００２２】
上記によれば、情報処理装置は、第１情報処理装置から送られたデータ、または、自機で発生したデータを送信することができる。これにより、ある装置からのデータを他の装置に送信することができる。
【００２３】
本発明の他の構成では、上記情報処理装置、上記第１情報処理装置、および、上記第２情報処理装置は、操作部を有し、互いにデータをやり取りすることによって所定のゲームを進行させるゲーム装置であってもよい。上記第１データは、第１情報処理装置において行われた操作に応じたデータ、または、自機において行われた操作に応じたデータである。
【００２４】
上記によれば、複数の情報処理装置において１つのゲームが行われる場合において、各情報処理装置において行われた操作データを優先的に他の情報処理装置に送信することができる。これにより、ある装置で行われた操作を他の装置に即座に反映することができる。
【００２５】
本発明の他の構成では、上記情報処理装置は、他の情報処理装置と通信してもよい。上記無線通信プログラムは、上記アウェイク状態と上記仮眠状態との切り替えを上記他の情報処理装置と同期して行う切替制御手段として、上記コンピュータをさらに機能させる。
【００２６】
上記によれば、情報処理装置は、アウェイク状態と仮眠状態との切り替えを他の情報処理装置と同期して行うができる。
【００２７】
本発明の他の構成では、上記切替制御手段は、上記アウェイク状態と上記仮眠状態との切り替えを繰り返し行うとともに、当該切り替えのタイミングを示す情報を上記他の情報処理装置に対して送信してもよい。
【００２８】
上記によれば、情報処理装置は、上記アウェイク状態と上記仮眠状態との切り替えを繰り返し行うとともに、他の情報処理装置に対して、切り替えのタイミングを示す情報を送信することができる。これにより、情報処理装置は、自機の状態を他の情報処理装置と同期させて、切り替えることができる。
【００２９】
また、本発明は、上記無線通信プログラムを実行する情報処理装置の形態で実施されてもよい。また、本発明は、通信制御方法であってもよい。
【発明の効果】
【００３０】
本発明によれば、電力消費を抑えつつデータ通信を円滑におこなうことができる。
【図面の簡単な説明】
【００３１】
【図１】開状態におけるゲーム装置１０の正面図
【図２】閉状態におけるゲーム装置１０の左側面図、正面図、右側面図および背面図
【図３】ゲーム装置１０の内部構成を示すブロック図
【図４】ゲーム装置１０ａをマスターとして機能させ、ゲーム装置１０ｂ〜１０ｄをクライアントとして機能させた場合のネットワーク構成を示す図
【図５】マスターによるクライアントの電力モードの切り替え制御と、各電力モードにおける通信の状態を示す図
【図６】無線通信モジュール３６の構成を示す機能ブロック図
【図７】アウェイク状態と仮眠状態とにおいて、マスターにおいてデータが送信されるまでの流れを示す図
【図８】本実施形態における通信処理が実行される場合において無線通信モジュール３６が有するメモリに記憶される主なデータを示す図
【図９】ゲーム装置１０ａにおいて実行される通信処理の流れを示すフローチャート
【図１０】複数のゲーム装置において１つのゲームが行われる場合において、ゲーム装置１０ｂ（クライアント１）において行われた操作を示すデータ（操作データ）をゲーム装置１０ａ（マスター）を介して他のゲーム装置に送信する様子を示す図
【図１１】ゲーム装置１０ａ〜１０ｄにおいてレースゲームが行われる場合において、各ゲーム装置において行われるゲーム処理の一例を示すフローチャート
【図１２】マスターからクライアントに対してデータを一括して送信する様子を示す図
【発明を実施するための形態】
【００３２】
（ゲーム装置の構成）
以下、本発明の一実施形態に係るゲーム装置について説明する。図１は、開状態におけるゲーム装置１０の外観を示す正面図である。図２（ａ）は閉状態におけるゲーム装置１０の左側面図であり、図２（ｂ）は閉状態におけるゲーム装置１０の正面図であり、図２（ｃ）は閉状態におけるゲーム装置１０の右側面図であり、図２（ｄ）は閉状態におけるゲーム装置１０の背面図である。ゲーム装置１０は携帯型のゲーム装置であり、図１および図２に示すように折り畳み可能に構成されている。図１は、開いた状態（開状態）におけるゲーム装置１０を示し、図２は、閉じた状態（閉状態）におけるゲーム装置１０を示している。ゲーム装置１０は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置１０は、交換可能なメモリカード内に記憶され、または、サーバーや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
【００３３】
まず、図１および図２を参照して、ゲーム装置１０の外観構成について説明する。図１および図２に示されるように、ゲーム装置１０は、下側ハウジング１１および上側ハウジング２１を有する。下側ハウジング１１と上側ハウジング２１とは、開閉可能（折り畳み可能）に接続されている。
【００３４】
（下側ハウジングの説明）
まず、下側ハウジング１１の構成について説明する。図１および図２に示すように、下側ハウジング１１には、下側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）１２、タッチパネル１３、各操作ボタン１４Ａ〜１４Ｌ、アナログスティック１５、ＬＥＤ１６Ａ〜１６Ｂ、挿入口１７、および、マイクロフォン用孔１８が設けられる。以下、これらの詳細について説明する。
【００３５】
図１に示すように、下側ＬＣＤ１２は下側ハウジング１１に収納される。下側ＬＣＤ１２の画素数は、例えば、３２０ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。下側ＬＣＤ１２は、後述する上側ＬＣＤ２２とは異なり、画像を（立体視可能ではなく）平面的に表示する表示装置である。なお、本実施形態では表示装置としてＬＣＤを用いているが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側ＬＣＤ１２として、任意の解像度の表示装置を利用することができる。
【００３６】
図１に示されるように、ゲーム装置１０は、入力装置として、タッチパネル１３を備えている。タッチパネル１３は、下側ＬＣＤ１２の画面上に装着されている。なお、本実施形態では、タッチパネル１３は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル１３として、下側ＬＣＤ１２の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル１３の解像度と下側ＬＣＤ１２の解像度が一致している必要はない。また、下側ハウジング１１の上側面には挿入口１７（図１および図２（ｄ）に示す点線）が設けられている。挿入口１７は、タッチパネル１３に対する操作を行うために用いられるタッチペン２８を収納することができる。なお、タッチパネル１３に対する入力は通常タッチペン２８を用いて行われるが、タッチペン２８に限らずユーザの指でタッチパネル１３に対する入力をすることも可能である。
【００３７】
各操作ボタン１４Ａ〜１４Ｌは、所定の入力を行うための入力装置である。図１に示されるように、下側ハウジング１１の内側面（主面）には、各操作ボタン１４Ａ〜１４Ｌのうち、十字ボタン１４Ａ（方向入力ボタン１４Ａ）、ボタン１４Ｂ、ボタン１４Ｃ、ボタン１４Ｄ、ボタン１４Ｅ、電源ボタン１４Ｆ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌが、設けられる。十字ボタン１４Ａは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン１４Ａ〜１４Ｅ、セレクトボタン１４Ｊ、ＨＯＭＥボタン１４Ｋ、およびスタートボタン１４Ｌには、ゲーム装置１０が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン１４Ａは選択操作等に用いられ、各操作ボタン１４Ｂ〜１４Ｅは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン１４Ｆは、ゲーム装置１０の電源をオン／オフするために用いられる。
【００３８】
アナログスティック１５は、方向を指示するデバイスである。アナログスティック１５は、そのキートップが、下側ハウジング１１の内側面に平行にスライドするように構成されている。アナログスティック１５は、ゲーム装置１０が実行するプログラムに応じて機能する。例えば、３次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置１０によって実行される場合、アナログスティック１５は、当該所定のオブジェクトを３次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック１５のキートップがスライドした方向に移動される。なお、アナログスティック１５として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。
【００３９】
また、下側ハウジング１１の内側面には、マイクロフォン用孔１８が設けられる。マイクロフォン用孔１８の下部には後述する音声入力装置としてのマイク４２（図３参照）が設けられ、当該マイク４２がゲーム装置１０の外部の音を検出する。
【００４０】
図２（ｂ）および（ｄ）に示されるように、下側ハウジング１１の上側面には、Ｌボタン１４ＧおよびＲボタン１４Ｈが設けられている。Ｌボタン１４ＧおよびＲボタン１４Ｈは、例えば、撮像部のシャッターボタン（撮影指示ボタン）として機能することができる。また、図２（ａ）に示されるように、下側ハウジング１１の左側面には、音量ボタン１４Ｉが設けられる。音量ボタン１４Ｉは、ゲーム装置１０が備えるスピーカの音量を調整するために用いられる。
【００４１】
図２（ａ）に示されるように、下側ハウジング１１の左側面には開閉可能なカバー部１１Ｃが設けられる。このカバー部１１Ｃの内側には、ゲーム装置１０とデータ保存用外部メモリ４５とを電気的に接続するためのコネクタ（図示せず）が設けられる。データ保存用外部メモリ４５は、コネクタに着脱自在に装着される。データ保存用外部メモリ４５は、例えば、ゲーム装置１０によって撮像された画像のデータを記憶（保存）するために用いられる。
【００４２】
また、図２（ｄ）に示されるように、下側ハウジング１１の上側面には、ゲーム装置１０とゲームプログラムを記録した外部メモリ４４を挿入するための挿入口１１Ｄが設けられ、その挿入口１１Ｄの内部には、外部メモリ４４と電気的に着脱自在に接続するためのコネクタ（図示せず）が設けられる。当該外部メモリ４４がゲーム装置１０に接続されることにより、所定のゲームプログラムが実行される。
【００４３】
また、図１および図２（ｃ）に示されるように、下側ハウジング１１の下側面にはゲーム装置１０の電源のＯＮ／ＯＦＦ状況をユーザに通知する第１ＬＥＤ１６Ａ、下側ハウジング１１の右側面にはゲーム装置１０の無線通信の確立状況をユーザに通知する第２ＬＥＤ１６Ｂが設けられる。ゲーム装置１０は他の機器との間で無線通信を行うことが可能であり、第２ＬＥＤ１６Ｂは、無線通信の機能が有効である場合に点灯する。ゲーム装置１０は、例えば、ＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。下側ハウジング１１の右側面には、この無線通信の機能を有効／無効にする無線スイッチ１９が設けられる（図２（ｃ）参照）。
【００４４】
なお、図示は省略するが、下側ハウジング１１には、ゲーム装置１０の電源となる充電式電池が収納され、下側ハウジング１１の側面（例えば、上側面）に設けられた端子を介して当該電池を充電することができる。
【００４５】
（上側ハウジングの説明）
次に、上側ハウジング２１の構成について説明する。図１および図２に示すように、上側ハウジング２１には、上側ＬＣＤ（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶表示装置）２２、外側撮像部２３（外側撮像部（左）２３ａおよび外側撮像部（右）２３ｂ）、内側撮像部２４、３Ｄ調整スイッチ２５、および、３Ｄインジケータ２６が設けられる。以下、これらの詳細について説明する。
【００４６】
図１に示すように、上側ＬＣＤ２２は上側ハウジング２１に収納される。上側ＬＣＤ２２の画素数は、例えば、８００ｄｏｔ×２４０ｄｏｔ（横×縦）であってもよい。なお、本実施形態では上側ＬＣＤ２２は液晶表示装置であるとしたが、例えばＥＬ（Ｅｌｅｃｔｒｏ  Ｌｕｍｉｎｅｓｃｅｎｃｅ：電界発光）を利用した表示装置などが利用されてもよい。また、上側ＬＣＤ２２として、任意の解像度の表示装置を利用することができる。
【００４７】
上側ＬＣＤ２２は、立体視可能な画像を表示することが可能な表示装置である。また、本実施形態では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で（例えば、１列ずつ）横方向に交互に表示される方式の表示装置である。または、左目用画像と右目用画像とが交互に表示される方式の表示装置であってもよい。また、本実施形態では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式（視差バリア方式）のものが用いられる。本実施形態では、上側ＬＣＤ２２はパララックスバリア方式のものとする。上側ＬＣＤ２２は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像（立体画像）を表示する。すなわち、上側ＬＣＤ２２は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体画像（立体視可能な画像）を表示することができる。また、上側ＬＣＤ２２は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる（上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである）。このように、上側ＬＣＤ２２は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する（平面視画像を表示する）平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する３Ｄ調整スイッチ２５によって行われる。
【００４８】
外側撮像部２３は、上側ハウジング２１の外側面（上側ＬＣＤ２２が設けられた主面と反対側の背面）２１Ｄに設けられた２つの撮像部（２３ａおよび２３ｂ）の総称である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂの撮像方向は、いずれも当該外側面２１Ｄの外向きの法線方向である。外側撮像部（左）２３ａと外側撮像部（右）２３ｂとは、ゲーム装置１０が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部（左）２３ａおよび外側撮像部（右）２３ｂは、それぞれ所定の共通の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００４９】
内側撮像部２４は、上側ハウジング２１の内側面（主面）２１Ｂに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部２４は、所定の解像度を有する撮像素子（例えば、ＣＣＤイメージセンサやＣＭＯＳイメージセンサ等）と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。
【００５０】
３Ｄ調整スイッチ２５は、スライドスイッチであり、上述のように上側ＬＣＤ２２の表示モードを切り替えるために用いられるスイッチである。また、３Ｄ調整スイッチ２５は、上側ＬＣＤ２２に表示された立体視可能な画像（立体画像）の立体感を調整するために用いられる。３Ｄ調整スイッチ２５のスライダ２５ａは、所定方向（上下方向）の任意の位置にスライド可能であり、当該スライダ２５ａの位置に応じて上側ＬＣＤ２２の表示モードが設定される。また、スライダ２５ａの位置に応じて、立体画像の見え方が調整される。具体的には、スライダ２５ａの位置に応じて、右目用画像および左目用画像の横方向の位置のずれ量が調整される。
【００５１】
３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードか否かを示す。３Ｄインジケータ２６は、ＬＥＤであり、上側ＬＣＤ２２の立体表示モードが有効の場合に点灯する。なお、３Ｄインジケータ２６は、上側ＬＣＤ２２が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。
【００５２】
また、上側ハウジング２１の内側面には、スピーカ孔２１Ｅが設けられる。後述するスピーカ４３からの音声がこのスピーカ孔２１Ｅから出力される。
【００５３】
（ゲーム装置１０の内部構成）
次に、図３を参照して、ゲーム装置１０の内部の電気的構成について説明する。図３は、ゲーム装置１０の内部構成を示すブロック図である。図３に示すように、ゲーム装置１０は、上述した各部に加えて、情報処理部３１、メインメモリ３２、外部メモリインターフェイス（外部メモリＩ／Ｆ）３３、データ保存用外部メモリＩ／Ｆ３４、データ保存用内部メモリ３５、無線通信モジュール３６、リアルタイムクロック（ＲＴＣ）３８、加速度センサ３９、電源回路４０、およびインターフェイス回路（Ｉ／Ｆ回路）４１等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング１１（または上側ハウジング２１でもよい）内に収納される。
【００５４】
情報処理部３１は、所定のプログラムを実行するためのＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１１、画像処理を行うＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３１２等を含む情報処理手段である。情報処理部３１のＣＰＵ３１１は、ゲーム装置１０内のメモリ（例えば外部メモリＩ／Ｆ３３に接続された外部メモリ４４やデータ保存用内部メモリ３５）に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部３１のＣＰＵ３１１によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部３１は、ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）３１３を含む。情報処理部３１のＧＰＵ３１２は、情報処理部３１のＣＰＵ３１１からの命令に応じて画像を生成し、ＶＲＡＭ３１３に描画する。そして、情報処理部３１のＧＰＵ３１２は、ＶＲＡＭ３１３に描画された画像を上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に出力し、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像が表示される。
【００５５】
情報処理部３１には、メインメモリ３２、外部メモリＩ／Ｆ３３、データ保存用外部メモリＩ／Ｆ３４、および、データ保存用内部メモリ３５が接続される。外部メモリＩ／Ｆ３３は、外部メモリ４４を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリＩ／Ｆ３４は、データ保存用外部メモリ４５を着脱自在に接続するためのインターフェイスである。
【００５６】
メインメモリ３２は、情報処理部３１（のＣＰＵ３１１）のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ３２は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部（外部メモリ４４や他の機器等）から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ３２として例えばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。
【００５７】
外部メモリ４４は、情報処理部３１によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ４４は、例えば読み取り専用の半導体メモリで構成される。外部メモリ４４が外部メモリＩ／Ｆ３３に接続されると、情報処理部３１は外部メモリ４４に記憶されたプログラムを読み込むことができる。情報処理部３１が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ４５は、不揮発性の読み書き可能なメモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ４５には、外側撮像部２３で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ４５がデータ保存用外部メモリＩ／Ｆ３４に接続されると、情報処理部３１はデータ保存用外部メモリ４５に記憶された画像を読み込み、上側ＬＣＤ２２及び／又は下側ＬＣＤ１２に当該画像を表示することができる。
【００５８】
データ保存用内部メモリ３５は、読み書き可能な不揮発性メモリ（例えばＮＡＮＤ型フラッシュメモリ）で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ３５には、無線通信モジュール３６を介した無線通信によってダウンロードされたデータやプログラムが格納される。
【００５９】
無線通信モジュール３６は、例えばＩＥＥＥ８０２．１１ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。無線通信モジュール３６は情報処理部３１に接続される。情報処理部３１は、無線通信モジュール３６を用いてインターネットを介して他の機器との間でデータを送受信したり、同種の他のゲーム装置との間でデータを送受信したりすることができる。
【００６０】
また、情報処理部３１には、加速度センサ３９が接続される。加速度センサ３９は、３軸（ｘｙｚ軸）方向に沿った直線方向の加速度（直線加速度）の大きさを検出する。加速度センサ３９は、下側ハウジング１１の内部に設けられる。加速度センサ３９は、図１に示すように、下側ハウジング１１の長辺方向をｘ軸、下側ハウジング１１の短辺方向をｙ軸、下側ハウジング１１の内側面（主面）に対して垂直な方向をｚ軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ３９は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ３９は１軸又は２軸方向を検出する加速度センサであってもよい。情報処理部３１は、加速度センサ３９が検出した加速度を示すデータ（加速度データ）を受信して、ゲーム装置１０の姿勢や動きを検出することができる。
【００６１】
また、情報処理部３１には、ＲＴＣ３８および電源回路４０が接続される。ＲＴＣ３８は、時間をカウントして情報処理部３１に出力する。情報処理部３１は、ＲＴＣ３８によって計時された時間に基づき現在時刻（日付）を計算する。電源回路４０は、ゲーム装置１０が有する電源（下側ハウジング１１に収納される上記充電式電池）からの電力を制御し、ゲーム装置１０の各部品に電力を供給する。
【００６２】
また、情報処理部３１には、Ｉ／Ｆ回路４１が接続される。Ｉ／Ｆ回路４１には、マイク４２およびスピーカ４３が接続される。具体的には、Ｉ／Ｆ回路４１には、図示しないアンプを介してスピーカ４３が接続される。マイク４２は、ユーザの音声を検知して音声信号をＩ／Ｆ回路４１に出力する。アンプは、Ｉ／Ｆ回路４１からの音声信号を増幅し、音声をスピーカ４３から出力させる。また、タッチパネル１３はＩ／Ｆ回路４１に接続される。Ｉ／Ｆ回路４１は、マイク４２およびスピーカ４３（アンプ）の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル１３からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部３１に出力する。タッチ位置データは、タッチパネル１３の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル１３からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。情報処理部３１は、タッチ位置データを取得することにより、タッチパネル１３に対して入力が行われた位置を知ることができる。
【００６３】
操作ボタン１４は、上記各操作ボタン１４Ａ〜１４Ｌからなり、情報処理部３１に接続される。操作ボタン１４から情報処理部３１へは、各操作ボタン１４Ａ〜１４Ｉに対する入力状況（押下されたか否か）を示す操作データが出力される。情報処理部３１は、操作ボタン１４から操作データを取得することによって、操作ボタン１４に対する入力に従った処理を実行する。
【００６４】
下側ＬＣＤ１２および上側ＬＣＤ２２は情報処理部３１に接続される。下側ＬＣＤ１２および上側ＬＣＤ２２は、情報処理部３１（のＧＰＵ３１２）の指示に従って画像を表示する。本実施形態では、情報処理部３１は、上側ＬＣＤ２２に立体画像（立体視可能な画像）を表示させる。
【００６５】
具体的には、情報処理部３１は、上側ＬＣＤ２２のＬＣＤコントローラ（図示せず）と接続され、当該ＬＣＤコントローラに対して視差バリアのＯＮ／ＯＦＦを制御する。上側ＬＣＤ２２の視差バリアがＯＮになっている場合、情報処理部３１のＶＲＡＭ３１３に格納された右目用画像と左目用画像とが、上側ＬＣＤ２２に出力される。より具体的には、ＬＣＤコントローラは、右目用画像について縦方向に１ライン分の画素データを読み出す処理と、左目用画像について縦方向に１ライン分の画素データを読み出す処理とを交互に繰り返すことによって、ＶＲＡＭ３１３から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に１ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側ＬＣＤ２２の画面に表示される。そして、上側ＬＣＤ２２の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側ＬＣＤ２２の画面には立体視可能な画像が表示される。
【００６６】
外側撮像部２３および内側撮像部２４は、情報処理部３１に接続される。外側撮像部２３および内側撮像部２４は、情報処理部３１の指示に従って画像を撮像し、撮像した画像データを情報処理部３１に出力する。
【００６７】
３Ｄ調整スイッチ２５は、情報処理部３１に接続される。３Ｄ調整スイッチ２５は、スライダ２５ａの位置に応じた電気信号を情報処理部３１に送信する。
【００６８】
また、３Ｄインジケータ２６は、情報処理部３１に接続される。情報処理部３１は、３Ｄインジケータ２６の点灯を制御する。例えば、情報処理部３１は、上側ＬＣＤ２２が立体表示モードである場合、３Ｄインジケータ２６を点灯させる。
【００６９】
また、情報処理部３１には、角速度センサ４６が接続される。角速度センサ４６は、各軸（ｘ軸、ｙ軸、ｚ軸）周りの角速度を検出する。ゲーム装置１０は、角速度センサ４６が逐次検出する角速度に基づいて、実空間におけるゲーム装置１０の姿勢を算出することができる。具体的には、ゲーム装置１０は、角速度センサ４６によって検出された各軸周りの角速度を時間で積分することによって、各軸周りのゲーム装置１０の回転角を算出することができる。以上がゲーム装置１０の内部構成の説明である。
【００７０】
（通信処理の概要）
次に、図４〜図７を参照して、本発明の一実施形態に係る通信処理の概要について説明する。ゲーム装置１０は、無線通信モジュール３６によって例えばＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、他のゲーム装置と通信可能である。具体的には、本実施形態では、複数のゲーム装置１０のうちの１台がマスターとして機能し、その他のゲーム装置１０がクライアント（端末）として機能することにより、複数のゲーム装置１０はスター型のネットワークを構成することが可能である。図４は、ゲーム装置１０ａをマスターとして機能させ、ゲーム装置１０ｂ〜１０ｄをクライアントとして機能させた場合のネットワーク構成を示す図である。
【００７１】
図４において、マスター（ゲーム装置１０ａ）は、ネットワークに接続されたクライアントを管理するために、各クライアントを識別するための情報（ＭＡＣアドレス）を保持している。また、マスターは、ネットワークに接続されたクライアントを制御するための制御フレームを送信する。例えば、マスターは、各クライアントに対して制御フレーム（ビーコン）を定期的に送信する。各クライアントは、マスターから送信される制御フレーム（ビーコン）に基づいて、自己の電力モードを制御する。また、本実施形態では、クライアント１（ゲーム装置１０ｂ）がクライアント３（ゲーム装置１０ｄ）にデータを送信する場合、クライアント１は送信すべきデータを格納したフレームをマスターに対して送信する。マスターは、クライアント１から送信されたフレームをクライアント３に対して送信する。
【００７２】
各ゲーム装置１０は、電力消費を抑えるために、無線通信の機能が制限された仮眠（Ｄｏｚｅ）状態と、無線通信が可能なアウェイク（Ａｗａｋｅ）状態とを切り替え可能に構成されている。具体的には、仮眠状態では、ゲーム装置１０のＣＰＵ３１１等は通常通り動作するが、無線通信モジュール３６の特定の機能が一時的に停止される。仮眠状態では、例えばＣＰＵ３１１によって所定のゲーム処理が行われて上側ＬＣＤ２２にゲーム画像が表示される一方で、無線通信モジュール３６による電波の送受信が停止される。アウェイク状態では無線通信は制限されず、他のゲーム装置との通信が可能である。ゲーム装置１０は、アウェイク状態と低消費電力の仮眠状態とを繰り返し切り替えることによって、電力消費を抑えるとともに、無線通信が可能となる。マスターは、自身の電力モード（仮眠状態又はアウェイク状態）を繰り返し切り替えるとともに、各クライアントの電力モードを切り替えるためのビーコンを定期的に送信する。これにより、ネットワーク全体で同期して各ゲーム装置１０の電力モードが切り替えられる。
【００７３】
図５は、マスターによるクライアントの電力モードの切り替え制御と、各電力モードにおける通信の状態を示す図である。なお、図５では、説明の都合上クライアント３が省略されている。図５に示すように、マスターは所定のタイミングで他の全てのクライアントに対して、同期のための制御フレーム（ビーコン）をブロードキャストで送信する。当該ビーコンには、アウェイク状態を維持する期間を示す情報等が含まれる。ビーコンを受信してから所定期間は、各クライアントおよびマスターは、アウェイク状態を維持し、通信が可能となる。例えば、図５に示すように、アウェイク状態においてマスターは、クライアント２に対してユニキャストでデータを送信することが可能であり、クライアント２はそのデータを受信して、Ａｃｋ（返答）をマスターに送信することができる。また、マスターは、アウェイク状態の間、他のクライアントに対してブロードキャストでデータを送信することが可能である。一方、マスターがビーコンを送信してから所定期間が経過すると、マスター及び全てのクライアントは仮眠状態に移行する。仮眠状態では、マスター及び全てのクライアントは、データの送受信機能が制限されるため、データは送信されない。その後、さらに時間が経過すると、再びマスターはビーコンを送信して、マスター及び他のクライアントは再びアウェイク状態に移行する（ビーコンが送信される直前にマスター及び各クライアントはデータの送受信が可能な状態になる）。このように、マスターは、ビーコンを定期的に各クライアントに送信することによって、各クライアントの電力モードの切り替えを制御する。
【００７４】
次に、無線通信モジュール３６の具体的な構成について、図６を参照して説明する。図６は、無線通信モジュール３６の構成を示す機能ブロック図である。図６に示すように、無線通信モジュール３６は、データ取得部３６１と、優先送信キュー３６２と、通常キュー３６３と、送信部３６４とを有する。また、無線通信モジュール３６は、電力モード切替部５０と接続されている。なお、図６においては、データを外部に送信する場合を例にデータの流れが示されているが、データを外部から受信する場合は、データを受信した順番にアプリ層に渡す。
【００７５】
データ取得部３６１は、アプリケーションから送信すべきデータを取得するとともに、当該データを含む送信用のフレームを生成する。ここで生成されるフレームは、ＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠したフレームであり、送信すべきデータの他、ＩＥＥＥ８０２．１１ヘッダ（フレームの種類、送信先ＭＡＣアドレスや送信元ＭＡＣアドレス等）を含む。また、データ取得部３６１は、優先送信キュー３６２又は通常キュー３６３に、生成したフレームを格納する。詳細は後述するが、データ取得部３６１は、ゲーム装置１０の状態が仮眠状態である場合において、アプリケーションから取得したデータが優先的に送出すべきデータであるとき、当該データを含むフレームを優先送信キュー３６２に格納する。
【００７６】
優先送信キュー３６２は、優先的に送出すべきデータを時系列に格納するためのキューである。優先送信キュー３６２に格納されたフレームは、格納された順に送信部３６４に送られる。優先送信キュー３６２に格納されたフレームは、通常キューに格納されたフレームよりも優先的に送出される。
【００７７】
通常キュー３６３は、送出するデータを時系列に格納するためのキューである。通常キュー３６３に格納されたフレームは、格納された順に送信部３６４に送られる。
【００７８】
送信部３６４はアンテナを含み、フレームをエアー（空間）に送出するとともに、他のゲーム装置から送信されたフレームを受信する。
【００７９】
電力モード切替部５０は、ゲーム装置１０を仮眠状態とアウェイク状態とに切り替える。電力モード切替部５０によってゲーム装置１０が仮眠状態に切り替えられると、無線通信モジュール３６の送信部３６４の動作は一時的に停止し、電力消費が抑えられるとともにデータを外部に送信（受信も）することができなくなる。
【００８０】
なお、上記優先送信キュー３６２および通常キュー３６３は、無線通信モジュール３６が有する異なる２つのメモリ上に実装されてもよいし、１つのメモリ上に実装されてもよい。
【００８１】
次に、図７を参照してマスターにおいてデータがエアーに送出されるまでの流れを説明する。図７は、アウェイク状態と仮眠状態とにおいて、マスターにおいてデータが送信されるまでの流れを示す図である。図７において、時間軸が下方向に示されている。図７に示すように、マスター（ゲーム装置１０）は、アウェイク状態（時刻ｔ０〜ｔ４）から仮眠状態（時刻ｔ４〜ｔ９）に移行した後、再びアウェイク状態（時刻ｔ９〜）に移行する。
【００８２】
例えば、時刻ｔ１においてユニキャストで送信すべきデータ（ユニキャストデータ１；ＵＣ１）がアプリケーション層から無線通信モジュール３６に送られると、ＵＣ１は、無線通信モジュール３６の通常キュー３６３に格納される。その後、格納されたＵＣ１は、送信部３６４によってエアーに送出される（指定されたクライアントに送信される）。また、時刻ｔ２においてブロードキャストで送信すべきデータ（ブロードキャストデータ１；ＢＣ１）がアプリケーション層から無線通信モジュール３６に送られると、ＢＣ１は、無線通信モジュール３６の通常キュー３６３に格納される。その後、格納されたＢＣ１は、送信部３６４によってエアーに送出される（全てのクライアントに送信される）。同様に、アウェイク状態において、ＵＣ２がアプリケーション層から送られると、ＵＣ２は通常キュー３６３に格納された後、エアーに送出される。
【００８３】
なお、ＵＣ１が通常キュー３６３に格納されてから当該ＵＣ１がエアーに送出されるまでの間に、別のデータ（ＵＣ又はＢＣ）がアプリケーション層から送られた場合は、当該別のデータは通常キュー３６３に格納される。そして、２つの格納されたデータは、格納された順にエアーに送出される（すなわち、ＵＣ１が先に送出され、別のデータは後に送出される）。このように、アウェイク状態においては、データの種類（ユニキャストデータＵＣ、又は、ブロードキャストデータＢＣ）に関わらず、アプリケーション層から送られたデータは常に通常キュー３６３に格納されて、格納された順にエアーに送出される。
【００８４】
次に、時刻ｔ３においてアプリケーション層から無線通信モジュール３６にＢＣ２が送られると、ＢＣ２は同様に通常キュー３６３に格納される。ここで、図７に示すように、通常キュー３６３に格納されたＢＣ２がエアーに送出される前に、時刻ｔ４においてゲーム装置１０が仮眠状態に切り替わったものとする。
【００８５】
図７に示すように、時刻ｔ０から所定期間経過して時刻ｔ４になると、マスター（及び他の全てのクライアント）は、仮眠状態に移行する。この時点では、通常キュー３６３にはＢＣ２が格納されている。ゲーム装置１０が仮眠状態である間にアプリケーションから送られてきたＢＣ、および、通常キュー３６３に格納されているＢＣは優先送信キュー３６２に格納される。例えば、仮眠状態の間の時刻ｔ５において、通常キュー３６３に格納されているＢＣ２は、優先送信キュー３６２に格納される。次に、時刻ｔ６においてアプリケーション層からＵＣ３が送られると、ＵＣ３は、通常キュー３６３に格納される。仮眠状態においてはデータの送信が制限されるため、ＵＣ３およびＢＣ２は、ゲーム装置１０がアウェイク状態に移行するまで通常キュー３６３および優先送信キュー３６２にそれぞれ格納されたまま維持される。次に、時刻ｔ７においてＢＣ３がアプリケーション層から送られると、ＢＣ３は、優先送信キュー３６２に格納される。また、時刻ｔ８においてＵＣ４がアプリケーション層から送られると、ＵＣ４は通常キュー３６３に格納される。このように、仮眠状態においては、ブロードキャストデータ（ＢＣ）は優先送信キュー３６２に格納され、ユニキャストデータ（ＵＣ）は通常キュー３６３に格納される。
【００８６】
その後、ゲーム装置１０の状態は時刻ｔ９においてアウェイク状態に切り替えられる。図７に示すように、アウェイク状態に切り替えられた直後では、無線通信モジュール３６の優先送信キュー３６２にはＢＣ３およびＢＣ２が格納され、通常キュー３６３にはＵＣ４およびＵＣ３が格納されている。時刻ｔ１０において、優先送信キュー３６２に格納されたＢＣ２がエアーに送出され、さらに時刻ｔ１１において、ＢＣ３がエアーに送出される。その後、時刻ｔ１２においては、優先送信キュー３６２には送出すべきデータがないため、通常キュー３６３に格納されたＵＣ３がエアーに送出される（この時点では通常キュー３６３にはＵＣ４のみが格納されている）。そして、時刻ｔ１３において、通常キュー３６３に格納されたＵＣ４がエアーに送出される。
【００８７】
なお、アウェイク状態においてはブロードキャストデータも通常キュー３６３に格納されるため、例えば、時刻ｔ１０と時刻ｔ１１の間にアプリケーション層からブロードキャストデータ（ＢＣ）が送られた場合は、当該ＢＣは通常キュー３６３に格納される。このため、当該ＢＣは、ＵＣ４がエアーに送出された後（時刻ｔ１３より後）に、エアーに送出される。
【００８８】
以上のように、本実施形態においては、ブロードキャストデータＢＣがユニキャストデータＵＣに対して優先して送信すべきデータとされて、優先送信キュー３６２に格納される。具体的には、ＢＣは、ゲーム装置１０の状態が仮眠状態である場合に、優先送信キュー３６２に格納される。一方、ＢＣは、ゲーム装置１０の状態がアウェイク状態であれば、通常キュー３６３に格納される。このように、本実施形態では、ゲーム装置１０がアウェイク状態であれば、データの種類（優先して送信すべきデータ、又は、優先して送信すべきでないデータ）に関わらず、データは通常キュー３６３に格納されて、格納された順にエアーに送出される。ゲーム装置１０が仮眠状態であれば、優先して送信すべきデータは、優先送信キュー３６２に格納されて、アウェイク状態に移行後、優先的にエアーに送出される。
【００８９】
このように、ゲーム装置１０の状態とデータの種類とに応じて優先制御されることにより、優先して送信すべきデータ（ＢＣ）を優先的に送信することができるとともに、優先して送信すべきでないデータ（ＵＣ）の遅延を防止することができる。携帯型のゲーム装置においては消費電力を抑えるために電力モードが繰り返し切り替えられてデータの送信が制限されるため、データの送信が遅延する可能性がある。この場合において、優先して送信すべきデータが常に優先的に送信されると、当該優先して送信すべきデータの送信が全て完了するまでは、優先して送信すべきでないデータは送信待ちの状態となる。そうすると、優先して送信すべきでないデータは、常に遅延する傾向にあり、ゲームの進行に支障をきたすことがある。しかしながら、本実施形態では、上述した制御で優先送信キュー３６２と通常キュー３６３とを使い分けることにより、消費電力を抑えながら、優先して送信すべきデータを優先的に送信するとともに、優先して送信すべきでないデータの遅延を防止することができる。
【００９０】
また、本実施形態では、マスターは、ブロードキャストデータを優先送信キュー３６２に格納して、ユニキャストデータを通常キュー３６３に格納した。ブロードキャストデータは、全てのクライアントに送信するデータであり、全てのクライアントが保有すべきデータである。例えば、ブロードキャストで送信されるデータは、各ゲーム装置１０の内部で発生または生成されたデータであり、より具体的には、例えば、各ゲーム装置１０においてユーザによって行われたキー操作（ボタン１４Ａ〜１４Ｅ、１４Ｇ、１４Ｈ、アナログスティック１５等に対する操作）に関するデータであり、または、各ゲーム装置１０において発生または生成された各キャラクタの動作データなどである。複数のゲーム装置１０が接続されて１つのゲーム（例えば、レースゲーム）が進行する場合、各ゲーム装置１０の内部で発生または生成された情報（たとえば、当該キー操作に関する情報）は、複数のゲーム装置１０によってリアルタイムに共有される必要がある。従って、あるクライアントにおいて発生または生成された情報（たとえば、各クライアントにおいて行われたキー操作に関する情報）は、当該クライアントからマスターに送信されて、マスターが他の全てのクライアントに同時に送信することが好ましい。このような全てのゲーム装置が共有すべき情報の送信が遅延すると、ゲーム全体の進行が遅延してしまう。すなわち、全てのゲーム装置に送信されるべきデータの送信が遅延すると、その影響が全てのゲーム装置に波及するため好ましくない。本実施形態では、全てのゲーム装置にブロードキャストで送信すべきデータを優先的に送信することによって、そのようなデータの送信の遅延を防止することができ、全てのゲーム装置に対して影響が及ぶことを防止することができる。
【００９１】
（通信処理の詳細）
次に、図８および図９を参照してマスター（ゲーム装置１０ａ）において実行される通信処理の詳細について説明する。図８は、本実施形態における通信処理が実行される場合において無線通信モジュール３６が有するメモリに記憶される主なデータを示す図である。
【００９２】
図８に示すように、無線通信モジュール３６が有するメモリ（図示せず）には、通信プログラム７１と、状態データ７２とが記憶される。通信プログラム７１は、後述する通信処理を実行するためのプログラムである。通信プログラム７１は、無線通信モジュール３６が有する不揮発性のメモリ（図示せず）に記憶されており、ゲーム装置１０ａの電源が供給されると当該プログラムが読み込まれて上記メモリに格納される。状態データ７２は、ゲーム装置１０ａの電力モードを示すデータであり、現在のゲーム装置１０ａの状態がアウェイク状態か仮眠状態かを示すデータである。上述のように、電力モード切替部５０によって電力モードが切り換えられたことに応じて、状態データ７２は更新される。
【００９３】
次に、図９を参照して、マスター（ゲーム装置１０ａ）によって実行される通信処理について説明する。図９は、ゲーム装置１０ａにおいて実行される通信処理の流れを示すフローチャートである。図９に示す処理は、ゲーム装置１０ａの無線通信モジュール３６が有する制御部（図示せず）が通信プログラム７１を実行することによって行われる。なお、図９では、本発明に直接関連しない通信処理については記載を省略する。また、図９に示すステップＳ１０〜Ｓ２４の処理ループは、所定時間間隔で繰り返し実行される。
【００９４】
まず、ステップＳ１０において、無線通信モジュール３６は、ゲーム装置１０ａが仮眠状態か否かを判定する。上述のように、電力モード切替部５０は、所定の時間間隔でゲーム装置１０ａをアウェイク状態と仮眠状態とに切り替える。判定結果が肯定の場合、無線通信モジュール３６は、次にステップＳ１４の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ１１の処理を実行する。
【００９５】
ステップＳ１１において、無線通信モジュール３６は、アプリケーション層からデータが送られたか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６はステップＳ１２の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ２１の処理を実行する。
【００９６】
ステップＳ１２において、無線通信モジュール３６は、アプリケーション層から送られたデータを取得する。次に、ステップＳ１３の処理が実行される。
【００９７】
ステップＳ１３において、無線通信モジュール３６は、ステップＳ１２において取得したデータ（ユニキャストデータまたはブロードキャストデータ）を含むフレームを生成して、生成したフレームを通常キュー３６３に格納する。無線通信モジュール３６は、次にステップＳ２１の処理を実行する。
【００９８】
一方、ステップＳ１４において、無線通信モジュール３６は、通常キュー３６３にブロードキャストデータ（ＢＣデータ）が存在するか否かを判定する。ゲーム装置１０ａがアウェイク状態のときにブロードキャストデータが通常キュー３６３に格納された場合において、当該データがエアーに送出される前にゲーム装置１０ａが仮眠状態に移行した場合、通常キュー３６３には当該ブロードキャストデータが格納されたままになる。ここでは、そのようなブロードキャストデータが通常キュー３６３に格納されているか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６は、次にステップＳ１５の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ１６の処理を実行する。
【００９９】
ステップＳ１５において、無線通信モジュール３６は、通常キュー３６３に格納されたブロードキャストデータを取り出して優先送信キュー３６２に再格納する。複数のブロードキャストデータ（ブロードキャストデータを含む複数のフレーム）が、通常キュー３６３に格納されている場合、通常キュー３６３に格納された順番で、全てのブロードキャストデータが優先送信キュー３６２に格納される。これにより、通常キュー３６３に格納されたブロードキャストデータが優先送信キュー３６２に移され、アウェイク状態に移行後、後述するステップＳ２２において当該ブロードキャストデータは優先的に送信される。無線通信モジュール３６は、ステップＳ１５の処理の後、ステップＳ１０の処理を再び実行する。
【０１００】
一方、ステップＳ１６において、無線通信モジュール３６は、アプリケーション層からデータが送られたか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６はステップＳ１７の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ１０の処理を再び実行する。
【０１０１】
ステップＳ１７において、無線通信モジュール３６は、アプリケーション層から送られたデータを取得する。次に、ステップＳ１８の処理が実行される。
【０１０２】
ステップＳ１８において、無線通信モジュール３６は、ステップＳ１７において取得したデータが、ブロードキャストデータ（ブロードキャストで送信されるデータ）か否かを判定する。アプリケーションから送られるデータには送信先に関する情報（ＭＡＣアドレス）が含まれているため、無線通信モジュール３６は、当該送信先に関する情報に基づいて、ブロードキャストデータか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６は、次にステップＳ１９の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ２０の処理を実行する。
【０１０３】
ステップＳ１９において、無線通信モジュール３６は、ステップＳ１７において取得したデータ（ブロードキャストデータ）を含むフレームを生成して、生成したフレームを優先送信キュー３６２に格納する。ステップＳ１９において優先送信キュー３６２に格納されるデータは、ゲーム装置１０ａが仮眠状態である場合においてアプリケーション層から送られたデータであり、かつ、ブロードキャストデータである。無線通信モジュール３６は、ステップＳ１９の処理の後、ステップＳ１０の処理を再び実行する。
【０１０４】
ステップＳ２０において、無線通信モジュール３６は、ステップＳ１７において取得したデータ（ユニキャストデータ）を含むフレームを生成して、生成したフレームを通常キュー３６３に格納する。無線通信モジュール３６は、ステップＳ２０の処理の後、ステップＳ１０の処理を再び実行する。
【０１０５】
ステップＳ２１において、無線通信モジュール３６は、優先送信キュー３６２にデータ（フレーム）が存在するか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６は、次にステップＳ２２の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ２３の処理を実行する。
【０１０６】
ステップＳ２２において、無線通信モジュール３６は、優先送信キュー３６２に格納されたデータ（フレーム）を取り出し、エアーに当該データを送出する。ここでは、優先送信キュー３６２に格納されたデータのうち、格納された順番が最も古いデータが送出される（すなわち、優先送信キュー３６２に格納されたデータは、格納された順番と同じ順番で、順次エアーに送出される）。無線通信モジュール３６は、次にステップＳ１０の処理を再び実行する。
【０１０７】
ステップＳ２３において、無線通信モジュール３６は、通常キュー３６３にデータ（フレーム）が存在するか否かを判定する。判定結果が肯定の場合、無線通信モジュール３６は、次にステップＳ２４の処理を実行する。一方、判定結果が否定の場合、無線通信モジュール３６は、次にステップＳ１０の処理を再び実行する。
【０１０８】
ステップＳ２４において、無線通信モジュール３６は、通常キュー３６３に格納されたデータ（フレーム）を取り出し、エアーに当該データを送出する。ここでは、通常キュー３６３に格納されたデータのうち、格納された順番が最も古いデータが送出される。無線通信モジュール３６は、次にステップＳ１０の処理を再び実行する。
【０１０９】
以上のように、ステップＳ１０〜ステップＳ２０においてデータが各キューに格納されて、ステップＳ２１〜ステップＳ２４において各キューに格納されたデータがエアー（空間）に送出される。具体的には、ゲーム装置１０ａが仮眠状態である場合では、ブロードキャストデータは優先送信キュー３６２に格納される。そして、ゲーム装置１０ａがアウェイク状態に移行した後、優先送信キュー３６２に格納されたデータが優先的にエアーに送出される。一方、ゲーム装置１０ａがアウェイク状態である場合では、データの種類がユニキャストデータかブロードキャストデータかに関わらず、通常キュー３６３に格納されて、格納された順にエアーに送出される。
【０１１０】
なお、クライアント（ゲーム装置１０ｂ〜ｄ）においては、ブロードキャストデータは優先制御されてもよいし、優先制御されなくてもよい。すなわち、クライアント（ゲーム装置１０ｂ〜ｄ）においては、仮眠状態であってもブロードキャストデータおよびユニキャストデータは通常キュー３６３に順次格納されて、アウェイク状態に移行後、順次送信されてもよい。また、クライアントは、マスターと同様に仮眠状態のときに取得したブロードキャストデータを優先送信キュー３６２に格納して、アウェイク状態に移行後、優先送信キュー３６２に格納されたブロードキャストデータを優先的に送信してもよい。
【０１１１】
また、他の実施形態では、優先送信キュー３６２および通常キュー３６３に加えて、第３キューが備えられてもよい。第３キューには、ゲーム装置１０の状態に関わらずアプリケーションから送られたデータが順次格納される。アウェイク状態においては、第３キューに格納されたデータは、通常キューに順次格納されて、エアーに送信される。一方、仮眠状態においては、第３キューに格納されたデータは、ユニキャストデータである場合は、第３キューに格納されたままで、ブロードキャストデータである場合は、優先送信キュー３６２に格納される。第３キューに格納されたユニキャストデータは、アウェイク状態に移行後、通常キュー３６３に格納された後、エアーに送出される。
【０１１２】
また、上記実施形態では、マスターはブロードキャストデータをユニキャストデータよりも優先的に送信したが、ブロードキャストデータに限らず、マルチキャストで送信するデータ（マルチキャストデータ）を優先的に送信してもよい。また、優先的に送信されるデータは、ユニキャストデータであってアプリケーションで定義される特定のデータであってもよい。
【０１１３】
また、上記実施形態では、マスターは、優先送信キュー３６２に格納されたデータが全て送信された後、通常キュー３６３に格納されたデータを送信した。他の実施形態では、優先送信キュー３６２に格納されたデータを通常キュー３６３に格納されたデータよりも優先的に送信するのであれば、具体的な優先制御の仕方はどのようなものであってもよい。例えば、優先送信キュー３６２に４つのフレームが格納され、通常キュー３６３に２つのフレームが格納される場合、まず優先送信キュー３６２に格納された２つのフレームを送信した後、通常キュー３６３に格納された１つのフレームを送信してもよい。更に優先送信キュー３６２に格納された残りの２つのフレームを送信した後、通常キュー３６３に格納された残りの１つのフレームを送信してもよい。
【０１１４】
また、上記実施形態では、アウェイク状態であるときに取得したブロードキャストデータは通常キュー３６３に格納された。他の実施形態では、アウェイク状態であるときに取得したブロードキャストデータを優先送信キュー３６２に格納してもよい。すなわち、ゲーム装置の状態がアウェイク状態か仮眠状態かに関わらず、ブロードキャストデータを優先送信キュー３６２に格納し、ユニキャストデータを通常キュー３６３に格納してもよい。
【０１１５】
また、上記実施形態では、マスターが各クライアントの電力モードを切り替えるためのビーコンを送信することにより、ネットワーク全体で同期して各ゲーム装置１０の電力モードが切り換えられた。他の実施形態では、マスターおよびクライアントが、他の機器から送信された信号を受信して、当該信号に基づいて、マスターおよびクライアントが同期されてもよい。例えば、マスターおよびクライアントがＧＰＳ衛星からの信号や地上デジタル放送の信号等を受信することにより、マスターおよびクライアントが同期してもよい。また、例えば、マスターおよびクライアントが、電波時計の時刻を修正するために送信局から送られる信号を受信することにより、マスターおよびクライアントが同期してもよい。
【０１１６】
また、上記実施形態では、携帯型のゲーム装置を想定したが、他の実施形態では、バッテリで動作する他の任意の情報処理装置であってもよい。また、バッテリで動作する装置に限らず、消費電力を抑えるためにアウェイク状態と仮眠状態とを切り替える情報処理装置であれば、どのようなものでものい。
【０１１７】
また、本実施形態においては、ゲーム装置１０の無線通信モジュール３６が通信プログラムを実行することによって、上述したフローチャートによる処理が行われた。他の実施形態においては、上記処理の一部又は全部は、１又は複数の専用回路によって行われてもよい。また、上記処理は、ゲーム装置１０が備える複数のコンピュータ（ＣＰＵ３１１や無線通信モジュール３６内の制御部等）によって行われてもよい。
【０１１８】
また、上述した通信方法は、ゲーム装置１０以外の情報処理装置、例えば、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）や無線ＬＡＮ機能を有する高機能携帯電話、独自の通信方式により他の機器と通信可能に構成された情報処理装置等において適用されてもよい。
【０１１９】
（ゲーム装置の具体的な利用形態）
（利用形態１）
次に、上記複数のゲーム装置の具体的な利用形態について例示する。図１０は、複数のゲーム装置において１つのゲームが行われる場合において、ゲーム装置１０ｂ（クライアント１）において行われた操作を示すデータ（操作データ）をゲーム装置１０ａ（マスター）を介して他のゲーム装置に送信する様子を示す図である。
【０１２０】
クライアント１において行われた操作（操作ボタン１４Ａ〜Ｄやアナログスティック１５に対する操作）に関する情報は、ブロードキャストでマスター、クライアント２、および、クライアント３に送信される。図１０で示すように、クライアント１は、マスターに対して操作データをユニキャストで送信する。具体的には、クライアント１は、まず、フレームヘッダの送信先アドレスにマスターのＭＡＣアドレスを指定するとともに、Ｔｏ  ＤＳフィールドに１をセット（受信局が基地局であることを示す）し、Ｆｒｏｍ  ＤＳフィールドに０をセット（送信局が端末であることを示す）して、操作データをマスターに送信する。マスターはクライアント１から送信されたフレームを受信し、当該フレームに含まれる操作データを他のゲーム装置に対してブロードキャストで送信する。具体的には、マスターは、フレームヘッダの送信先アドレスにブロードキャストアドレスを指定するとともに、Ｔｏ  ＤＳフィールドに０をセット（受信局が端末であることを示す）し、Ｆｒｏｍ  ＤＳフィールドに１をセット（送信局が基地局であることを示す）して、当該操作データを他のゲーム装置１０ｃおよび１０ｄに送信する。
【０１２１】
以上のように、あるゲーム装置において行われた操作を示す操作データは、マスターを介してブロードキャストで他の全てのゲーム装置に対して同時に送信される。上述のように、マスターはブロードキャストデータを優先的に送信する。このため、操作データは、ユニキャストで送信される他のデータ（例えば、クライアント１からクライアント２に対してマスターを介して送信されるデータ）に対して、優先的に送信される。操作データは、優先的に送信されて他のゲーム装置と共有される。このため、複数のゲーム装置で１つのゲーム空間を構築して当該ゲーム空間内でゲームが行われる場合、あるゲーム装置において行われた操作を即座に他のゲーム装置に反映することができる。
【０１２２】
例えば、レースゲームがゲーム装置１０ａ〜１０ｄにおいて行われる場合、ゲーム装置１０ｂで行われた操作情報は、他の全てのゲーム装置に共有される。そして、共有されたゲーム装置１０ｂで行われた操作情報に基づいて、各ゲーム装置は、ゲーム装置１０ｂによって操作される車オブジェクトの位置や運動に関する情報（速度等）を更新する。このように、あるゲーム装置において行われた操作を示す操作データが、マスターを介して全てのゲーム装置に送信されることによって、当該操作データをネットワークに接続された全てのゲーム装置に共有することができ、それぞれのゲーム装置に個別に送信する場合よりも遅延を少なくすることができる。
【０１２３】
図１１は、ゲーム装置１０ａ〜１０ｄにおいてレースゲームが行われる場合において、各ゲーム装置において行われるゲーム処理の一例を示すフローチャートである。各ゲーム装置１０の電源が投入されると、ゲーム装置１０の情報処理部３１（ＣＰＵ３１１）は、図示しないＲＯＭに記憶されている起動プログラムを実行し、これによってメインメモリ３２等の各ユニットが初期化される。次に、不揮発性メモリ（外部メモリ４４等；コンピュータ読み取り可能な記憶媒体）に記憶されたゲームプログラムがＲＡＭ（具体的には、メインメモリ３２）に読み込まれ、情報処理部３１のＣＰＵ３１１によって当該プログラムの実行が開始される。そして、各ゲーム装置１０を操作するユーザによって、自機で操作する車オブジェクトがそれぞれ選択された後、レースゲームが開始する。図１１に示すフローチャートは、以上の処理が完了した後に行われる処理を示すフローチャートである。なお、図１１に示すステップＳ３０〜ステップＳ３５の処理ループは、１フレーム（例えば１／３０秒。フレーム時間という）毎に繰り返し実行される。
【０１２４】
ステップＳ３０において、情報処理部３１は、自機において操作ボタン１４Ａ〜Ｄ又はアナログスティック１５（以下、操作ボタン等）に対する操作が行われたか否かを判定する。判定結果が肯定の場合、情報処理部３１は、次にステップＳ３１の処理を実行する。判定結果が否定の場合、情報処理部３１は、次にステップＳ３３の処理を実行する。
【０１２５】
ステップＳ３１において、情報処理部３１は、操作ボタン等に対する操作情報を示す操作データを他の全てのゲーム装置にブロードキャストで送信する。図１０を用いて説明したように、操作データは、（マスターに送信されて）優先送信キュー３６２または通常キュー３６３に格納された後、他の全てのゲーム装置に対してブロードキャストで送信される。情報処理部３１は、次にステップＳ３２の処理を実行する。
【０１２６】
ステップＳ３２において、情報処理部３１は、自機で行われた操作情報を示す操作データに基づいて、自機で操作される車オブジェクトのゲーム空間（コース）における位置や姿勢、速度等に関する情報を更新する。情報処理部３１は、次にステップＳ３３の処理を実行する。
【０１２７】
ステップＳ３３において、情報処理部３１は、他機（他のゲーム装置）から操作データを受信したか否かを判定する。判定結果が肯定の場合、情報処理部３１は、次にステップＳ３４の処理を実行する。判定結果が否定の場合、情報処理部３１は、次にステップＳ３５の処理を実行する。
【０１２８】
ステップＳ３４において、情報処理部３１は、他機から送信された操作データに基づいて、当該他機で操作される車オブジェクトのゲーム空間（コース）における位置や姿勢、速度等に関する情報を更新する。ここで情報処理部３１は、複数のゲーム装置からそれぞれ操作データを受信した場合、各ゲーム装置において操作される車キャラクタの位置等に関する情報をそれぞれ更新する。情報処理部３１は、次にステップＳ３５の処理を実行する。
【０１２９】
ステップＳ３５において、情報処理部３１は、ゲーム画像を生成して表示する。具体的には、情報処理部３１は、仮想カメラでゲーム空間を撮像することによって、ゲーム画像を生成し、上側ＬＣＤ２２に当該画像を表示する。なお、表示される画像は、立体視画像であってもよいし、平面画像であってもよい。立体視画像を上側ＬＣＤ２２に表示する場合は、情報処理部３１は、仮想ステレオカメラでゲーム空間を撮像することによって右目用画像および左目用画像を生成し、生成した２つの画像を上側ＬＣＤ２２にそれぞれ出力する。
【０１３０】
以上のようにして、各ゲーム装置において行われた操作を示す操作データが、全てのゲーム装置で共有され、レースゲームが進行する。
【０１３１】
（利用形態２）
また、他の利用形態としては、マスターから全てのクライアントに対して、例えば、ある種のゲームソフトを配信してもよい。図１２は、マスターからクライアントに対してデータを一括して送信する様子を示す図である。図１２に示すように、マスターは、全てのクライアントに対して、ブロードキャストでデータを送信する。各クライアントは、ブロードキャストで送信されたデータを受信することによって、ゲームソフトをダウンロードすることができる。
【０１３２】
図１２に示すように、例えば、クライアント１がデータのダウンロードに失敗した場合、クライアント１はマスターに対して、再送要求をすることができる。再送要求は、フレーム毎に行うことができる。すなわち、ダウンロードするゲームソフトのデータ量が大きいと複数のフレームに分けて当該ゲームソフトは送信されるが、クライアント１は、受信に失敗したフレームのみを再送要求する。各フレームに含まれるデータには、番号がシーケンシャルに割り振られており、クライアント１は、当該番号によって受信に失敗したデータを認識することができ、当該データの再送要求をマスターに対して送信することができる。再送要求を受信したマスターは、クライアント１に対してユニキャスト（又はブロードキャストでもよい）で再送要求されたデータを含むフレームを送信する。
【０１３３】
なお、配信するデータの種類は、ゲームソフトに限らず、映像データ等であってもよい。以上のように、マスターから各クライアントに対して、一括してデータを配信することができる。このように、マスターから各クライアントに対してデータを一括配信することによって、マスターが各クライアントに個別にデータを配信する場合よりも、効率的にデータを配信することができる。
【符号の説明】
【０１３４】
１０  ゲーム装置
１４  操作ボタン
１５  アナログスティック
３１  情報処理部
３２  メインメモリ
４４  外部メモリ
３１１  ＣＰＵ
３６  無線通信モジュール
３６１  データ取得部
３６２  優先送信キュー
３６３  通常キュー
３６４  送信部
５０  電力モード切替部
【図１】
0005858626.tif 000002
【図２】
0005858626.tif 000003
【図３】
0005858626.tif 000004
【図４】
0005858626.tif 000005
【図５】
0005858626.tif 000006
【図６】
0005858626.tif 000007
【図７】
0005858626.tif 000008
【図８】
0005858626.tif 000009
【図９】
0005858626.tif 000010
【図１０】
0005858626.tif 000011
【図１１】
0005858626.tif 000012
【図１２】
0005858626.tif 000013