(57)【要約】    【構成】  ゲーム装置１０はＣＰＵ（５０）を含み、ＣＰＵ（５０）は通信処理を実行することにより、他のゲーム装置１０からキャラクタ情報データを取得する。また、ＣＰＵ５０は、カメラ３４によってＱＲコードを撮像した撮像データからキャラクタ情報データを算出し、取得する。ＣＰＵ（５０）は、キャラクタ情報データに基づいてキャラクタを生成し、生成したキャラクタを第２ＬＣＤ１８に表示する。    【効果】  ＱＲコードからもキャラクタを取得するので、通信できない環境であっても、新規なキャラクタを取得することができる。【選択図】  図１
2011255111.tif 000002
【特許請求の範囲】
【請求項１】
通信手段、撮像手段および表示手段を備えるゲーム装置のコンピュータで実行されるゲームプログラムであって、
前記コンピュータを、
前記コンピュータに接続可能な所定のコンピュータから、前記通信手段を経由してキャラクタデータを受信するキャラクタデータ受信手段、
前記撮像手段によって所定の画像を撮像することによりコードデータを取得するコードデータ取得手段、
前記コードデータ取得手段によって取得されたコードデータから、キャラクタデータを算出するキャラクタデータ算出手段、
前記キャラクタデータ受信手段によって受信されたキャラクタデータまたは前記キャラクタデータ算出手段によって算出されたキャラクタデータに対応するキャラクタを生成する第１キャラクタ生成手段、および
前記第１キャラクタ生成手段によって生成されたキャラクタを前記表示手段に表示してゲーム処理を実行するゲーム処理手段として機能させる、ゲームプログラム。
【請求項２】
前記コンピュータを、
前記キャラクタデータ受信手段によって受信されたキャラクタデータまたは前記キャラクタデータ算出手段によって算出されたキャラクタデータを、キャラクタデータ記憶領域に記憶するキャラクタデータ記憶手段としてさらに機能させ、
前記第１キャラクタ生成手段は、前記キャラクタデータ記憶手段によって前記キャラクタデータ記憶領域に記憶された所定のキャラクタデータに対応するキャラクタを生成する、請求項１記載のゲームプログラム。
【請求項３】
前記コンピュータを、
ユーザの操作に応じて、前記キャラクタ記憶領域に記憶されたキャラクタデータのうち、所定のキャラクタデータを選択するキャラクタ選択手段、および
前記通信手段を用いて、前記所定のコンピュータに、前記キャラクタ選択手段によって選択された所定のキャラクタデータを送信するキャラクタデータ送信手段としてさらに機能させる、請求項２記載のゲームプログラム。
【請求項４】
前記コンピュータを、
ユーザの操作に応じて、キャラクタ記憶領域に記憶されたキャラクタデータのうち、所定のキャラクタデータを選択するキャラクタ選択手段、
前記キャラクタ選択手段によって選択された所定のキャラクタデータから、コードデータを算出するコードデータ算出手段、および
前記コードデータ算出手段によって算出されたコードデータを、前記表示手段に出力するコードデータ出力手段としてさらに機能させる、請求項２または３記載のゲームプログラム。
【請求項５】
前記コンピュータを、
前記キャラクタ記憶領域に記憶された少なくとも１つのキャラクタデータに対応するキャラクタを生成する第２キャラクタ生成手段、および
前記第２キャラクタ生成手段によって生成されたキャラクタを前記表示手段に表示するキャラクタ表示手段としてさらに機能させ、
前記キャラクタ選択手段は、前記キャラクタ表示手段によって前記表示手段に表示されたキャラクタから所望のキャラクタを前記ユーザに選択させ、当該ユーザに選択させた当該所望のキャラクタに対応するキャラクタデータを前記所定のキャラクタデータとして選択する、請求項２ないし４のいずれかに記載のゲームプログラム。
【請求項６】
前記コードデータ算出手段は、
前記キャラクタ選択手段によって選択された前記所定のキャラクタデータを暗号化する暗号化手段を含み、
前記暗号化手段によって暗号化された前記所定のキャラクタデータから、前記コードデータを算出する、請求項４記載のゲームプログラム。
【請求項７】
前記キャラクタデータ算出手段は、
暗号化されたキャラクタデータを復号する復号手段を含み、
前記コードデータ取得手段によって取得されたコードデータから、暗号化されたキャラクタデータを算出し、当該暗号化されたキャラクタデータを前記復号手段によって復号した後のキャラクタデータを算出する、請求項１記載のゲームプログラム。
【請求項８】
前記コンピュータには、所定の外部記憶媒体を接続可能であり、
前記コンピュータを、
前記所定の外部記憶媒体からキャラクタデータを読み出すキャラクタデータ読出手段としてさらに機能させ、
前記キャラクタデータ記憶手段は、前記キャラクタデータ読出手段によって読み出されたキャラクタデータをさらに記憶する、請求項２記載のゲームプログラム。
【請求項９】
前記キャラクタデータは、少なくとも、対応するキャラクタを構成するパーツについてのパーツパラメータを含み、
前記コンピュータは、パーツパラメータに対応したパーツ画像を記憶するパーツ画像記憶手段をさらに備え、
前記キャラクタ生成手段は、前記所定のキャラクタデータに含まれる各パーツパラメータに対応するパーツ画像を前記パーツ画像記憶手段から読み出し、読み出したパーツ画像を用いて前記キャラクタを生成する、請求項１記載のゲームプログラム。
【請求項１０】
前記キャラクタデータは、少なくとも、対応するキャラクタを構成するパーツについてのパーツパラメータを含み、
前記コンピュータは、パーツパラメータに対応したパーツ画像を記憶するパーツ画像記憶手段をさらに備え、
前記キャラクタ生成手段は、前記所定のキャラクタデータに含まれるパーツパラメータに対応してパーツ画像を前記パーツ画像記憶手段から読み出して、読み出したパーツ画像を組み合わせることにより、キャラクタを生成し、
前記キャラクタデータ記憶手段は、前記キャラクタ生成手段によって生成されたキャラクタに対応するキャラクタデータも前記キャラクタ記憶領域に記憶する、請求項１記載のゲームプログラム。
【請求項１１】
前記コンピュータを、
ユーザの操作に応じてキャラクタを作成するキャラクタ作成手段としてさらに機能させ、
前記キャラクタデータ記憶手段は、前記キャラクタ作成手段によって作成されたキャラクタに対応するキャラクタデータを前記キャラクタデータ記憶領域にさらに記憶する、請求項２記載のゲームプログラム。
【請求項１２】
前記キャラクタ作成手段は、予め用意されたパーツを用いて前記キャラクタを作成する、請求項１１記載のゲームプログラム。
【請求項１３】
前記コンピュータを、
前記通信手段を用いて、前記キャラクタ作成手段によって作成されたキャラクタデータを送信するキャラクタデータ送信手段としてさらに機能させる、請求項１１または１２記載のゲームプログラム。
【請求項１４】
前記コンピュータを、
前記キャラクタ作成手段によって作成されたキャラクタデータから前記コードデータを生成するコードデータ生成手段、
前記コードデータ生成手段によって生成されたコードデータを前記表示手段に表示するコードデータ表示手段としてさらに機能させる、請求項１１または１２記載のゲームプログラム。
【請求項１５】
前記キャラクタデータ記憶手段は、前記キャラクタデータ受信手段によって前記キャラクタデータを受信した際に、当該キャラクタデータを前記キャラクタ記憶領域とは異なるキャラクタ一時記憶領域に記憶する、請求項２記載のゲームプログラム。
【請求項１６】
前記コンピュータを、
ユーザの操作に応じて、前記キャラクタ一時記憶領域に記憶されているキャラクタデータのうち、所定のキャラクタデータを選択する一時キャラクタ選択手段、および
前記一時キャラクタ選択手段によって選択された所定のキャラクタデータを、前記キャラクタ一時記憶領域から前記キャラクタ記憶領域へ移動させるキャラクタデータ移動手段としてさらに機能させる、請求項１５記載のゲームプログラム。
【請求項１７】
前記一時キャラクタ選択手段は、
前記キャラクタデータ記憶手段によって前記キャラクタ一時記憶領域に記憶した少なくとも１つのキャラクタデータに対応するキャラクタを生成するキャラクタ一時生成手段、および
前記キャラクタ一時生成手段によって生成されたキャラクタを前記表示手段に表示するキャラクタ一時表示手段を含み、
前記キャラクタ一時表示手段によって表示されたキャラクタから前記所定のキャラクタを前記ユーザに選択させる、請求項１６記載のゲームプログラム。
【請求項１８】
前記コンピュータを、
前記キャラクタ選択手段によって選択された所定のキャラクタデータを送信可能な状態かどうかを判定する状態判定手段および
前記状態判定手段によって前記所定のキャラクタデータの送信可能な状態であると判定されたとき、当該所定のキャラクタデータを前記キャラクタ記憶領域から送信可能領域に複写する複写手段として機能させる、請求項２記載のゲームプログラム。
【請求項１９】
前記コンピュータを、
ユーザの操作に応じて、前記キャラクタ記憶領域に記憶したキャラクタデータのうち、所定のキャラクタデータを選択するキャラクタ選択手段、
前記キャラクタ選択手段によって選択された所定のキャラクタデータから、コードデータを算出するコードデータ算出手段、および
少なくとも、前記コードデータ算出手段によって算出されたコードデータを出力する出力手段としてさらに機能させる、請求項1記載のゲームプログラム。
【請求項２０】
前記出力手段は、前記コードデータに対応する画像データを出力する、請求項１９記載のゲームプログラム。
【請求項２１】
前記コードデータ取得手段によって取得されたコードデータは、２次元コードデータであり、
前記キャラクタデータ算出手段は、前記コードデータ取得手段によって取得された前記２次元コードデータから、前記キャラクタデータを算出する、請求項１記載のゲームプログラム。
【請求項２２】
通信手段、撮像手段および表示手段を備えるゲーム装置であって、
接続可能な所定のコンピュータから、前記通信手段を経由してキャラクタデータを受信するキャラクタデータ受信手段、
前記撮像手段によって所定の画像を撮像することによりコードデータを取得するコードデータ取得手段、
前記コードデータ取得手段によって取得されたコードデータから、キャラクタデータを算出するキャラクタデータ算出手段、
前記キャラクタデータ受信手段によって受信されたキャラクタデータまたは前記キャラクタデータ算出手段によって算出されたキャラクタデータに対応するキャラクタを生成するキャラクタ生成手段、および
前記キャラクタ生成手段によって生成されたキャラクタを前記表示手段に表示してゲーム処理を実行するゲーム処理手段を備える、ゲーム装置。
【請求項２３】
通信手段、撮像手段および表示手段を備えるゲーム装置のゲーム制御方法であって、
（ａ）接続可能な所定のコンピュータから、前記通信手段を経由してキャラクタデータを受信し、
（ｂ）前記撮像手段によって所定の画像を撮像することによりコードデータを取得し、
（ｃ）前記ステップ（ｂ）によって取得されたコードデータから、キャラクタデータを算出し、
（ｄ）前記ステップ（ａ）によって受信されたキャラクタデータまたは前記ステップ（ｃ）によって算出されたキャラクタデータに対応するキャラクタを生成し、そして
（ｅ）前記ステップ（ｄ）によって生成されたキャラクタを前記表示手段に表示してゲーム処理を実行する、ゲーム制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はゲームプログラム、ゲーム装置およびゲーム制御方法に関し、特にたとえば、キャラクタを生成する、ゲームプログラム、ゲーム装置およびゲーム制御方法に関する。
【背景技術】
【０００２】
この種の背景技術の一例が、特許文献１に開示されている。この特許文献１のゲームシステムでは、複数のゲーム装置間でキャラクタデータを転送し、各ゲーム装置では受信したキャラクタデータを使用して、新規のキャラクタを取得していた。
【特許文献１】特開２００８−１２５６７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００３】
しかし、特許文献１のゲームシステムでは、通信によりキャラクタデータを転送するため、ゲーム装置が通信を行う環境に置かれていることが必須の条件となる。このため、通信を行う環境を整えることができないユーザは、新規のキャラクタを取得する手段がなかった。
【０００４】
それゆえに、この発明の主たる目的は、新規な、ゲームプログラム、ゲーム装置およびゲーム制御方法を提供することである。
【０００５】
また、この発明の他の目的は、より多くのユーザが新規のキャラクタを取得できる、ゲームプログラム、ゲーム装置およびゲーム制御方法を提供することである。
【課題を解決するための手段】
【０００６】
第１の発明は、通信手段、撮像手段および表示手段を備えるゲーム装置のコンピュータで実行されるゲームプログラムである。このゲームプログラムは、コンピュータを、キャラクタデータ受信手段、コードデータ取得手段、キャラクタデータ算出手段、第１キャラクタ生成手段、およびゲーム処理手段として機能させる。キャラクタデータ受信手段は、コンピュータに接続可能な所定のコンピュータから、通信手段を経由してキャラクタデータを受信する。コードデータ取得手段は、撮像手段によって所定の画像を撮像することによりコードデータを取得する。キャラクタデータ算出手段は、コードデータ取得手段によって取得されたコードデータから、キャラクタデータを算出する。第１キャラクタ生成手段は、キャラクタデータ受信手段によって受信されたキャラクタデータまたはキャラクタデータ算出手段によって算出されたキャラクタデータに対応するキャラクタを生成する。そして、ゲーム処理手段は、第１キャラクタ生成手段によって生成されたキャラクタを表示手段に表示してゲーム処理を実行する。
【０００７】
第１の発明によれば、撮像手段によって所定の画像を撮像することにより取得されたコードデータからキャラクタを取得できるので、つまり通信しなくてもキャラクタを取得できるので、より多くのユーザないしプレイヤに新規なキャラクタを取得させることができる。
【０００８】
第２の発明は、第１の発明に従属し、ゲームプログラムは、コンピュータを、キャラクタデータ記憶手段としてさらに機能させる。キャラクタデータ記憶手段は、キャラクタデータ受信手段によって受信されたキャラクタデータまたはキャラクタデータ算出手段によって算出されたキャラクタデータを、キャラクタデータ記憶領域に記憶する。第１キャラクタ生成手段は、キャラクタデータ記憶手段によってキャラクタデータ記憶領域に記憶された所定のキャラクタデータに対応するキャラクタを生成する。
【０００９】
第２の発明によれば、受信したり算出したりしたキャラクタデータを記憶しておくので、複数のキャラクタデータを記憶しておき、それぞれに対応するキャラクタを生成することができる。
【００１０】
第３の発明は、第２の発明に従属し、ゲームプログラムは、コンピュータを、キャラクタ選択手段、およびキャラクタデータ送信手段としてさらに機能させる。キャラクタ選択手段は、ユーザの操作に応じて、キャラクタ記憶領域に記憶されたキャラクタデータのうち、所定のキャラクタデータを選択する。キャラクタデータ送信手段は、通信手段を用いて、所定のコンピュータに、キャラクタ選択手段によって選択された所定のキャラクタデータを送信する。
【００１１】
第３の発明によれば、キャラクタデータを所定のコンピュータに送信することができる。
【００１２】
第４の発明は、第２または第３の発明に従属し、ゲームプログラムは、コンピュータを、キャラクタ選択手段、コードデータ算出手段、およびコードデータ出力手段としてさらに機能させる。キャラクタ選択手段は、ユーザの操作に応じて、キャラクタ記憶領域に記憶されたキャラクタデータのうち、所定のキャラクタデータを選択する。コードデータ算出手段は、キャラクタ選択手段によって選択された所定のキャラクタデータから、コードデータを算出する。そして、コードデータ出力手段は、コードデータ算出手段によって算出されたコードデータを、表示手段に出力する。したがって、コードデータに対応する所定の画像が表示手段に表示される。
【００１３】
第４の発明によれば、コードデータに対応する所定の画像が表示されるので、他のゲーム装置に所定の画像を撮像させることにより、当該他のゲーム装置にキャラクタを提供することができる。
【００１４】
第５の発明は、第２ないし第４の発明に従属し、ゲームプログラムは、コンピュータを、第２キャラクタ生成手段およびキャラクタ表示手段としてさらに機能させる。第２キャラクタ生成手段は、キャラクタ記憶領域に記憶された少なくとも１つのキャラクタデータに対応するキャラクタを生成する。キャラクタ表示手段は、第２キャラクタ生成手段によって生成されたキャラクタを表示手段に表示する。したがって、キャラクタ選択手段は、キャラクタ表示手段によって表示手段に表示されたキャラクタから所望のキャラクタをユーザに選択させ、当該ユーザに選択させた当該所望のキャラクタに対応するキャラクタデータを所定のキャラクタデータとして選択する。
【００１５】
第５の発明によれば、キャラクタを生成および表示してユーザに選択させるので、簡単に選択することできる。
【００１６】
第６の発明は、第４の発明に従属し、コードデータ算出手段は、キャラクタ選択手段によって選択された所定のキャラクタデータを暗号化する暗号化手段を含む。また、コードデータ算出手段は、暗号化手段によって暗号化された所定のキャラクタデータから、コードデータを算出する。
【００１７】
第６の発明によれば、所定のキャラクタデータを暗号化するので、意図しない電子機器やコンピュータによってキャラクタが生成されたり、表示されたりすることを防止することができる。
【００１８】
第７の発明は、第１の発明に従属し、キャラクタデータ算出手段は、暗号化されたキャラクタデータを復号する復号手段を含む。キャラクタデータ算出手段は、コードデータ取得手段によって取得されたコードデータから、暗号化されたキャラクタデータを算出し、当該暗号化されたキャラクタデータを復号手段によって復号した後のキャラクタデータを算出する。
【００１９】
第７の発明によれば、暗号化されたキャラクタデータを復号するので、キャラクを生成したり、表示したりすることができる。
【００２０】
第８の発明は、第２の発明に従属し、コンピュータには、所定の外部記憶媒体を接続可能である。たとえば、ＳＤカードのような汎用のメモリカードが装着される。ゲームプログラムは、コンピュータを、キャラクタデータ読出手段としてさらに機能させる。キャラクタデータ読出手段は、所定の外部記憶媒体からキャラクタデータを読み出す。キャラクタデータ記憶手段は、キャラクタデータ読出手段によって読み出されたキャラクタデータをさらに記憶する。
【００２１】
第８の発明によれば、所定の外部記憶媒体からキャラクタデータを読み出して、これを記憶するので、かかる場合にも、通信によらずに、キャラクタを取得することができる。
【００２２】
第９の発明は、第１の発明に従属し、キャラクタデータは、少なくとも、対応するキャラクタを構成するパーツについてのパーツパラメータを含む。また、コンピュータは、パーツパラメータに対応したパーツ画像を記憶するパーツ画像記憶手段をさらに備える。キャラクタ生成手段は、所定のキャラクタデータに含まれる各パーツパラメータに対応するパーツ画像をパーツ画像記憶手段から読み出し、読み出したパーツ画像を用いてキャラクタを生成する。
【００２３】
第９の発明によれば、キャラクタデータはパーツパラメータを含み、パーツ画像についてはコンピュータに記憶しておくので、送受信するキャラクタデータのデータ量を少なくすることができる。つまり、通信負荷を軽減できる。
【００２４】
第１０の発明は、第１の発明に従属し、キャラクタデータは、少なくとも、対応するキャラクタを構成するパーツについてのパーツパラメータを含む。また、コンピュータは、パーツパラメータに対応したパーツ画像を記憶するパーツ画像記憶手段をさらに備える。キャラクタ生成手段は、所定のキャラクタデータに含まれるパーツパラメータに対応してパーツ画像をパーツ画像記憶手段から読み出して、読み出したパーツ画像を組み合わせることにより、キャラクタを生成する。キャラクタデータ記憶手段は、キャラクタ生成手段によって生成されたキャラクタに対応するキャラクタデータもキャラクタ記憶領域に記憶する。
【００２５】
第１０の発明においても、第９の発明と同様に、通信負荷を軽減することができる。また、生成したキャラクタを記憶するので、一旦生成したキャラクタについては、次回以降生成処理を実行する必要がない。つまり、生成による負荷を軽減することもできる。
【００２６】
第１１の発明は、第２の発明に従属し、ゲームプログラムは、コンピュータを、さらにキャラクタ作成手段として機能させる。キャラクタ作成手段は、ユーザの操作に応じてキャラクタを作成する。キャラクタデータ記憶手段は、キャラクタ作成手段によって作成されたキャラクタに対応するキャラクタデータをキャラクタデータ記憶領域にさらに記憶する。
【００２７】
第１１の発明によれば、ユーザがキャラクタを作成できるので、作成することの楽しみもある。
【００２８】
第１２の発明は、第１１の発明に従属し、キャラクタ作成手段は、予め用意されたパーツを用いてキャラクタを作成する。
【００２９】
第１２の発明によれば、予め用意されたパーツを用いてキャラクタを作成するので、キャラクタの作成が簡単である。
【００３０】
第１３の発明は、第１１または第１２の発明に従属し、ゲームプログラムは、コンピュータを、キャラクタデータ送信手段としてさらに機能させる。キャラクタデータ送信手段は、通信手段を用いて、キャラクタ作成手段によって作成されたキャラクタデータを送信する。
【００３１】
第１３の発明によれば、作成したキャラクタを他人に渡すことができる。したがって、他人が作成したキャラクタを受信することにより、新しいキャラクタを取得することもできる。
【００３２】
第１４の発明は、第１１または第１２の発明に従属し、ゲームプログラムは、コンピュータを、コードデータ生成手段およびコードデータ表示手段としてさらに機能させる。コードデータ生成手段は、キャラクタ作成手段によって作成されたキャラクタデータからコードデータを生成する。コードデータ表示手段は、コードデータ生成手段によって生成されたコードデータを表示手段に表示する。
【００３３】
第１４の発明によれば、作成したキャラクタを通信によらずに、他人に提供することが可能である。また、他人が作成したキャラクタを通信によらずに、取得することも可能である。これによって、新しいキャラクタを取得することもできる。
【００３４】
第１５の発明は、第２の発明に従属し、キャラクタデータ記憶手段は、キャラクタデータ受信手段によってキャラクタデータを受信した際に、当該キャラクタデータをキャラクタ記憶領域とは異なるキャラクタ一時記憶領域に記憶する。つまり、たとえば特定されていないコンピュータから送信されたキャラクタデータを受信した場合には、当該キャラクタデータをキャラクタ一時記憶領域に記憶することにより、いきなりキャラクタ記憶領域に記憶しないようにしてある。
【００３５】
第１５の発明によれば、特定されたコンピュータから取得したキャラクタデータと、特定されていないコンピュータから取得したキャラクタデータとを区別して記憶することができる。
【００３６】
第１６の発明は、第１５の発明に従属し、ゲームプログラムは、コンピュータを、一時キャラクタ選択手段およびキャラクタデータ移動手段としてさらに機能させる。一時キャラクタ選択手段は、ユーザの操作に応じて、キャラクタ一時記憶領域に記憶されているキャラクタデータのうち、所定のキャラクタデータを選択する。キャラクタデータ移動手段は、一時キャラクタ選択手段によって選択された所定のキャラクタデータを、キャラクタ一時記憶領域からキャラクタ記憶領域へ移動させる。つまり、たとえば特定されていないコンピュータから取得したキャラクタデータは、ユーザの操作に従ってキャラクタ記憶領域に移動される。また、たとえば、移動しないキャラクタデータは削除される。
【００３７】
第１６の発明によれば、特定されていないコンピュータから取得したキャラクタデータについては、選択的にキャラクタ記憶領域に記憶されるので、ユーザが必要と考えるものだけを移動し、不要なものを削除することができる。
【００３８】
第１７の発明は、第１６の発明に従属し、一時キャラクタ選択手段は、キャラクタ一時生成手段およびキャラクタ一時表示手段を含む。キャラクタ一時生成手段は、キャラクタデータ記憶手段によってキャラクタ一時記憶領域に記憶した少なくとも１つのキャラクタデータに対応するキャラクタを生成する。キャラクタ一時表示手段は、キャラクタ一時生成手段によって生成されたキャラクタを表示手段に表示する。また、一時キャラクタ選択手段は、キャラクタ一時表示手段によって表示されたキャラクタから所定のキャラクタをユーザに選択させる。
【００３９】
第１７の発明によれば、特定されていないコンピュータからのキャラクタデータに対応するキャラクタを生成および表示するので、ユーザはキャラクタを見て、キャラクタ記憶領域に移動させるかどうかを判断することができる。つまり、移動させるかどうかの判断や削除するかどうかの判断が簡単である。
【００４０】
第１８の発明は、第２の発明に従属し、ゲームプログラムは、コンピュータを、状態判定手段および複写手段としてさらに機能させる。状態判定手段は、キャラクタ選択手段によって選択された所定のキャラクタデータを送信可能な状態かどうかを判定する。たとえば、取得したキャラクタデータを他の所定のコンピュータに送信することが禁止されているかどうかが判定される。複写手段は、状態判定手段によって所定のキャラクタデータの送信可能な状態であると判定されたとき、当該所定のキャラクタデータをキャラクタ記憶領域から送信可能領域に複写する。
【００４１】
第１８の発明によれば、送信可能なキャラクタデータのみを送信可能に設定することができる。
【００４２】
第１９の発明は、第１の発明に従属し、ゲームプログラムは、コンピュータを、キャラクタ選択手段、コードデータ算出手段、および出力手段としてさらに機能させる。キャラクタ選択手段は、ユーザの操作に応じて、キャラクタ記憶領域に記憶したキャラクタデータのうち、所定のキャラクタデータを選択する。コードデータ算出手段は、キャラクタ選択手段によって選択された所定のキャラクタデータから、コードデータを算出する。出力手段は、少なくとも、コードデータ算出手段によって算出されたコードデータを、たとえば表示手段やコンピュータに接続された外部記憶媒体に出力する。
【００４３】
第１９の発明によれば、コードデータを出力するので、他のコンピュータにキャラクタデータを提供することができる。
【００４４】
第２０の発明は、第１９の発明に従属し、出力手段は、コードデータに対応する画像データを出力する。したがって、たとえば、ゲーム装置の表示手段に、コードデータに対応する所定の画像が表示される。
【００４５】
第２０の発明によれば、表示手段に表示された所定の画像を撮像させることにより、他のコンピュータにキャラクタデータを提供することができる。
【００４６】
第２１の発明は、第１の発明に従属し、コードデータ取得手段によって取得されたコードデータは、２次元コードデータである。たとえば、２次元コードデータに対応する所定の画像は、ＱＲコードである。キャラクタデータ算出手段は、コードデータ取得手段によって取得された２次元コードデータから、キャラクタデータを算出する。
【００４７】
第２１の発明によれば、２次元コードデータを用いるので、それに対応する所定の画像を比較的小さくすることができる。したがって、雑誌のみならず、比較的小さなカードにもその画像を印刷することができる。したがって、印刷物を入手したユーザは、新規のキャラクタを取得することができる。
【００４８】
第２２の発明は、通信手段、撮像手段および表示手段を備えるゲーム装置であって、接続可能な所定のコンピュータから、通信手段を経由してキャラクタデータを受信するキャラクタデータ受信手段、撮像手段によって所定の画像を撮像することによりコードデータを取得するコードデータ取得手段、コードデータ取得手段によって取得されたコードデータから、キャラクタデータを算出するキャラクタデータ算出手段、キャラクタデータ受信手段によって受信されたキャラクタデータまたはキャラクタデータ算出手段によって算出されたキャラクタデータに対応するキャラクタを生成するキャラクタ生成手段、およびキャラクタ生成手段によって生成されたキャラクタを表示手段に表示してゲーム処理を実行するゲーム処理手段を備える、ゲーム装置である。
【００４９】
第２３の発明は、通信手段、撮像手段および表示手段を備えるゲーム装置のゲーム制御方法であって、（ａ）接続可能な所定のコンピュータから、通信手段を経由してキャラクタデータを受信し、（ｂ）撮像手段によって所定の画像を撮像することによりコードデータを取得し、（ｃ）ステップ（ｂ）によって取得されたコードデータから、キャラクタデータを算出し、（ｄ）ステップ（ａ）によって受信されたキャラクタデータまたはステップ（ｃ）によって算出されたキャラクタデータに対応するキャラクタを生成し、そして（ｅ）ステップ（ｄ）によって生成されたキャラクタを表示手段に表示してゲーム処理を実行する、ゲーム制御方法である。
【００５０】
第２２の発明および第２３の発明においても、第１の発明と同様に、より多くのユーザに新規のキャラクタを取得させることができる。
【発明の効果】
【００５１】
この発明によれば、コードデータに対応する画像からゲームデータを取得するので、書籍やカードのような印刷物に表示された画像からもゲームデータを取得できるので、より多くのユーザが新規のキャラクタを取得することができる。
【００５２】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【図面の簡単な説明】
【００５３】
【図１】図１はこの発明のゲーム装置の外観構成の一実施例を示す図解図である。
【図２】図２は図１に示すゲーム装置を折り畳んだ状態の上面図および左側面図を示す図解図である。
【図３】図３は図１および図２に示すゲーム装置の電気的な構成を示すブロック図である。
【図４】図４はキャラクタ情報データに対応するキャラクタ情報の例を示す図解図である。
【図５】図５は図１−図３に示すゲーム装置の第２ＬＣＤに表示される画面の例を示す図解図である。
【図６】図６はこの実施例のキャラクタを取得可能なＱＲコードの例およびＱＲコードから得られるキャラクタデータのデータ構造を示す図解図である。
【図７】図７は図３に示すメインメモリのメモリマップの例を示す図解図である。
【図８】図８は図３に示す保存用データメモリのメモリマップの例を示す図解図である。
【図９】図９は方法（１）の場合に、２つのゲーム装置間で実行されるキャラクタ送受信処理を示すフロー図である。
【図１０】図１０は方法（２）の場合に、２つのゲーム装置間で実行されるキャラクタ送受信処理を示すフロー図である。
【図１１】図１１は図３に示すＣＰＵの登録処理を示すフロー図である。
【図１２】図１２は図３に示すＣＰＵのキャラクタ取得処理（１）を示すフロー図である。
【図１３】図１３は図３に示すＣＰＵのコード出力処理（１）を示すフロー図である。
【図１４】図１４は図３に示すＣＰＵのコード出力処理（２）を示すフロー図である。
【図１５】図１５は図３に示すＣＰＵのキャラクタ取得処理（２）を示すフロー図である。
【発明を実施するための形態】
【００５４】
図１を参照して、この発明の実施例のゲーム装置１０は、上側ハウジング１２および下側ハウジング１４を含み、上側ハウジング１２と下側ハウジング１４とは、開閉可能（折り畳み可能）に連結されている。図１の例では、上側ハウジング１２および下側ハウジング１４は、それぞれ横長の長方形の板状に形成され、互いの長辺部分で回動可能に連結されている。つまり、この実施例のゲーム装置１０は、折り畳み式の携帯型のゲーム装置であり、図１には、当該ゲーム装置１０を開いた状態（開状態）で示してある。ゲーム装置１０は、開いた状態においてもユーザが両手または片手で把持することができるようなサイズで構成される。
【００５５】
通常、ユーザは、開状態でゲーム装置１０を使用する。また、ユーザは、ゲーム装置１０を使用しない場合には閉状態で保管する。ただし、ゲーム装置１０は、上記閉状態および開状態のみでなく、上側ハウジング１２と下側ハウジング１４とのなす角度が閉状態と開状態との間の任意の角度において、連結部分に発生する摩擦力などによってその開閉角度を維持することができる。つまり、上側ハウジング１２を下側ハウジング１４に対して任意の角度で静止させることができる。
【００５６】
なお、ゲーム装置１０は、後述するカメラ（３２，３４）を搭載しており、当該カメラ（３２，３４）によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりする撮像装置としても機能する。
【００５７】
図１に示すように、上側ハウジング１２には第１ＬＣＤ１６が設けられ、下側ハウジング１４には第２ＬＣＤ１８が設けられる。第１ＬＣＤ１６および第２ＬＣＤ１８は、横長形状であり、それぞれの長辺方向が上側ハウジング１２および下側ハウジング１４の長辺方向と一致するように配置される。たとえば、第１ＬＣＤ１６および第２ＬＣＤ１８の解像度は、２５６(横)×１９２(縦）画素（ドット）に設定される。
【００５８】
なお、この実施例では、表示器としてＬＣＤを用いるようにしてあるが、ＬＣＤに代えて、ＥＬ(Electronic Luminescence)ディスプレイやプラズマディスプレイを用いるようにしてもよい。また、ゲーム装置１０は、任意の解像度の表示装置を利用することができる。
【００５９】
図１および図２に示すように、下側ハウジング１４には、入力装置として、各操作ボタン２０ａ−２０ｋが設けられる。この各操作ボタン２０ａ−２０ｋのうち、方向入力ボタン２０ａ、操作ボタン２０ｂ、操作ボタン２０ｃ、操作ボタン２０ｄ、操作ボタン２０ｅ、電源ボタン２０ｆ、スタートボタン２０ｇ、およびセレクトボタン２０ｈは、下側ハウジング１４の第２ＬＣＤ１８が設けられる側の面（内側の面）に配置される。具体的には、方向入力ボタン２０ａおよび電源ボタン２０ｆは、第２ＬＣＤ１８の左側に配置され、操作ボタン２０ｂ−２０ｅ，２０ｇおよび２０ｈは、第２ＬＣＤ１８の右側に配置される。また、上側ハウジング１２と下側ハウジング１４とを折り畳んだときには、操作ボタン２０ａ−２０ｈはゲーム装置１０の内部に収められる。
【００６０】
方向入力ボタン（十字キー）２０ａは、ディジタルジョイスティックとして機能し、プレイヤオブジェクトの移動方向を指示したり、カーソルを移動させたりするなどに用いられる。各操作ボタン２０ｂ−２０ｅは、プッシュボタンであり、たとえば、プレイヤオブジェクトに任意の動作をさせたり、決定やキャンセルを実行したりする等に用いられる。電源ボタン２０ｆは、プッシュボタンであり、ゲーム装置１０の主電源をオン／オフするために用いられる。スタートボタン２０ｇは、プッシュボタンであり、ゲームを中断（ポーズ）したり、開始（再開）したりするために用いられる。セレクトボタン２０ｈは、プッシュボタンであり、ゲームモードやメニューの選択等に用いられる。
【００６１】
図１においては、操作ボタン２０ｉ−２０ｋを省略したが、図２（Ａ）に示すように、操作ボタン（Ｌボタン）２０ｉは、下側ハウジング１４の上側面の左端部に設けられ、操作ボタン（Ｒボタン）２０ｊは、下側ハウジング１４の上側面の右端部に設けられる。また、図２（Ｂ）に示すように、音量ボタン２０ｋは、下側ハウジング１４の左側面に設けられる。
【００６２】
なお、図２（Ａ）は、ゲーム装置１０を折り畳んだ状態で、上面（上ハウジング１２）側から見た図であり、図２（Ｂ）は、同じくゲーム装置１０を折り畳んだ状態で、左側面から見た図である。
【００６３】
Ｌボタン２０ｉおよびＲボタン２０ｊは、プッシュボタンであり、操作ボタン２０ｂ−２０ｅと同様の操作に用いたり、それらの操作ボタン２０ｂ−２０ｅの補助的な操作に用いたりすることができる。また、この実施例では、Ｌボタン２０ｉおよびＲボタン２０ｊは、撮影指示の操作（シャッター操作）を行うために用いることもできる。音量ボタン２０ｋは、２つのプッシュボタンを用いて構成され、図示しない２つのスピーカ（右スピーカおよび左スピーカ）から出力される音の大きさを調整するために用いられる。この実施例では、音量ボタン２０ｋには、２つの押圧部を含む操作部が設けられ、各押圧部に対応して上記のプッシュボタンが設けられる。したがって、一方の押圧部を押すと音量が大きくされ、他方の押圧部を押すと音量が小さくされる。たとえば、押圧部を押し続けると、音量が次第に大きくされたり、次第に小さくされたりする。
【００６４】
図１に戻って、ゲーム装置１０は、操作ボタン２０ａ−２０ｋとは別の入力装置として、さらにタッチパネル２２を備えている。タッチパネル２２は、第２ＬＣＤ１８の画面上を覆うように装着されている。この実施例では、タッチパネル２２は、たとえば抵抗膜方式のタッチパネルが用いられる。ただし、タッチパネル２２は、抵抗膜方式に限らず、任意の押圧式のタッチパネルを用いることができる。また、この実施例では、タッチパネル２２として、たとえば第２ＬＣＤ１８の解像度と同解像度（検出精度）のものを利用する。ただし、必ずしもタッチパネル２２の解像度と第２ＬＣＤ１８の解像度とが一致している必要はない。
【００６５】
また、下側ハウジング１４の右側面には、挿入口（図１に示す破線）が設けられている。挿入口は、タッチパネル２２に対する操作を行うために用いられるタッチペン２４を収納することができる。通常、タッチパネル２２に対する入力は、タッチペン２４を用いて行われるが、タッチペン２４に限らずユーザの指でタッチパネル２２を操作することも可能である。したがって、たとえば、タッチペン２４を用いない場合には、タッチペン２４の挿入口および収納部を設ける必要はない。
【００６６】
また、下側ハウジング１４の右側面には、メモリカード２６を収納するための挿入口（図１では、二点鎖線で示している）が設けられている。この挿入口の内側には、ゲーム装置１０とメモリカード２６とを電気的に接続するためのコネクタ（図示せず）が設けられる。メモリカード２６は、たとえばＳＤカードであり、コネクタに着脱自在に装着される。このメモリカード２６は、たとえば、ゲーム装置１０によって撮像された画像を記憶（保存）したり、他の装置で生成（撮像）ないし記憶された画像をゲーム装置１０に読み込んだりするために用いられる。
【００６７】
さらに、下側ハウジング１４の上側面には、メモリカード２８を収納するための挿入口（図１では、一点鎖線で示している）が設けられている。この挿入口の内側にも、ゲーム装置１０とメモリカード２８とを電気的に接続するためのコネクタ（図示せず）が設けられる。メモリカード２８は、情報処理プログラムおよび必要なデータなどを記録した記録媒体であり、下側ハウジング１４に設けられた挿入口に着脱自在に装着される。
【００６８】
また、上側ハウジング１２と下側ハウジング１４との連結部（ヒンジ）の左端部分には、インジケータ３０が設けられる。このインジケータ３０は、３つのＬＥＤ３０ａ，３０ｂ，３０ｃによって構成される。ここで、ゲーム装置１０は、他の機器との間で無線通信を行うことが可能であり、第１ＬＥＤ３０ａは、無線通信が確立している場合に点灯する。第２ＬＥＤ３０ｂは、ゲーム装置１０の充電中に点灯する。第３ＬＥＤ３０ｃは、ゲーム装置１０の主電源がオンである場合に点灯する。したがって、インジケータ３０（ＬＥＤ３０ａ−３０ｃ）によって、ゲーム装置１０の通信確立状況、充電状況、および主電源のオン／オフ状況をユーザに通知することができる。
【００６９】
図示は省略するが、ヒンジの内部には、ゲーム装置１０の開閉に応じて切り替えられるスイッチ（開閉スイッチ４２：図３参照）が設けられる。たとえば、ゲーム装置１０を開いている状態では、開閉スイッチ４２はオンされる。一方、ゲーム装置１０を閉じている（折り畳んでいる）状態では、開閉スイッチ４２はオフされる。ただし、ゲーム装置１０が開いている状態であるか閉じている状態であるかが分かればよいため、開閉スイッチ４２のオンとオフとは逆であっても構わない。
【００７０】
上述したように、上側ハウジング１２には、第１ＬＣＤ１６が設けられる。この実施例では、第２ＬＣＤ１８を覆うように、タッチパネル２２を設けているが、第１ＬＣＤ１６を覆うように、タッチパネル２２を設けてもよい。または、第１ＬＣＤ１６および第２ＬＣＤ１８のそれぞれを覆うように、２つのタッチパネル２２を設けるようにしてもよい。たとえば、第２ＬＣＤ１８には、各操作ボタン２０ａ−２０ｋやタッチパネル２２の役割ないし操作方法をユーザに教えるための操作説明画面やゲーム画面が表示される。
【００７１】
また、上側ハウジング１２には、２つのカメラ（内側カメラ３２および外側カメラ３４）が設けられる。図１に示すように、内側カメラ３２は、上側ハウジング１２と下側ハウジング１４との連結部付近であり、第１ＬＣＤ１６が設けられる側の面に、この第１ＬＣＤ１６の表示面とその撮影面とが平行または面一になるように取り付けられる。一方、外側カメラ３４は、図２（Ａ）に示すように、内側カメラ３２が取り付けられる面とは反対側の面、すなわち、上側ハウジング１２の外側の面（ゲーム装置１０が閉状態となった場合に外側となる面であり、図１に示す上側ハウジング１２の背面）に取り付けられる。ただし、図１においては、外側カメラ３４を破線で示してある。
【００７２】
したがって、内側カメラ３２は、上側ハウジング１２の内側の面が向く方向を撮像することが可能であり、外側カメラ３４は、内側カメラ３２の撮像方向の逆方向、すなわち、上側ハウジング１２の外側の面が向く方向を撮像することが可能である。このように、この実施例では、内側カメラ３２および外側カメラ３４の撮像方向が互いに逆方向となるように、それら２つのカメラ３２，３４が設けられる。たとえば、ゲーム装置１０を把持したユーザは、このゲーム装置１０側からユーザの方を見た景色（たとえば、当該ユーザを含む）を内側カメラ３２で撮像することができるとともに、ゲーム装置１０側からユーザとは反対側の方向を見た景色を外側カメラ３４で撮像することができる。
【００７３】
なお、上記連結部付近の内側の面には、音声入力装置としてマイク８４（図３参照）が収納されている。そして、上記連結部付近の内側の面には、マイク８４がゲーム装置１０外部の音を検知できるように、そのマイク８４用の孔３６が形成される。マイク８４を収納する位置およびマイク８４用の孔３６の位置は必ずしも上記連結部である必要はなく、たとえば下側ハウジング１４にマイク８４を収納し、マイク８４の収納位置に対応させて下側ハウジング１４にマイク８４用の孔３６を設けるようにしてもよい。
【００７４】
また、上側ハウジング１２の外側の面には、外側カメラ３４の近傍に第４ＬＥＤ３８（図１では、破線で示す）が取り付けられる。第４ＬＥＤ３８は、内側カメラ３２または外側カメラ３４によって撮影が行われた（シャッターボタンが押下された）時点で点灯する。また、内側カメラ３２または外側カメラ３４によって動画が撮影される場合には、第４ＬＥＤ３８は、撮影の間点灯し続ける。つまり、第４ＬＥＤ３８を点灯することによって、ゲーム装置１０による撮影が行われた（行われている）ことを撮影対象者や周囲に通知することができる。
【００７５】
また、上側ハウジング１２には、第１ＬＣＤ１６の両側に、音抜き孔４０が形成される。この音抜き孔４０に対応する位置であり、上側ハウジング１２の内部には、上述したスピーカが収納されている。音抜き孔４０は、スピーカからの音をゲーム装置１０の外部に放出するための孔である。
【００７６】
以上に説明したように、上側ハウジング１２には、画像を撮像するための構成である内側カメラ３２および外側カメラ３４と、主として、撮影された画像（撮影画像）およびゲーム画面を表示するための表示手段である第１ＬＣＤ１６とが設けられる。一方、下側ハウジング１４には、ゲーム装置１０に対する操作入力を行うための入力装置（操作ボタン２０（２０ａ−２０ｋ）およびタッチパネル２２）と、主として、操作画面およびゲーム画面を表示するための表示手段である第２ＬＣＤ１８とが設けられる。したがって、ゲーム装置１０は、２つの画面（１６，１８）および２系統の操作部（２０，２２）を備えている。
【００７７】
図３は、この実施例のゲーム装置１０の電気的な構成を示すブロック図である。図３に示すように、ゲーム装置１０は、ＣＰＵ５０、メインメモリ５２、メモリ制御回路５４、保存用データメモリ５６、プリセットデータ用メモリ５８、メモリカードインターフェース（メモリカードＩ／Ｆ）６０、メモリカードＩ／Ｆ６２、無線通信モジュール６４、ローカル通信モジュール６６、マイコン６８、電源回路７０、インターフェース回路（Ｉ／Ｆ回路）７２、第１ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）７４、第２ＧＰＵ７６、第１ＶＲＡＭ（Ｖｉｄｅｏ  ＲＡＭ）７８、第２ＶＲＡＭ８０、およびＬＣＤコントローラ８２等の電子部品を備えている。これらの電子部品（回路コンポーネント）は、電子回路基板上に実装されて、下側ハウジング１４（または上側ハウジング１２でもよい）内に収納される。
【００７８】
ＣＰＵ５０は、所定のプログラムを実行するための情報処理手段である。この実施例では、所定のプログラムは、ゲーム装置１０内のメモリ（たとえば保存用データメモリ５６）やメモリカード２６および／または２８に記憶されており、ＣＰＵ５０は、当該所定のプログラムを実行することによって、後述する情報処理を実行する。
【００７９】
なお、ＣＰＵ５０によって実行されるプログラムは、ゲーム装置１０内のメモリに予め記憶していてもよいし、メモリカード２６および／または２８から取得してもよいし、他の機器と通信することによって当該他の機器から取得してもよい。
【００８０】
ＣＰＵ５０には、メインメモリ５２、メモリ制御回路５４、およびプリセットデータ用メモリ５８が接続される。また、メモリ制御回路５４には、保存用データメモリ５６が接続される。メインメモリ５２は、ＣＰＵ５０のワーク領域やバッファ領域として用いられる記憶手段である。すなわち、メインメモリ５２は、上記情報処理に用いられる各種データを記憶（一時記憶）したり、外部（メモリカード２６および２８や他の機器等）から取得されるプログラムを記憶したりする。この実施例では、メインメモリ５２として、たとえばＰＳＲＡＭ（Ｐｓｅｕｄｏ−ＳＲＡＭ）を用いる。保存用データメモリ５６は、ＣＰＵ５０によって実行されるプログラムや内側カメラ３２および外側カメラ３４によって撮像された画像のデータ等を記憶（保存）するための記憶手段である。この保存用データメモリ５６は、不揮発性の記憶媒体によって構成されており、たとえば、ＮＡＮＤ型フラッシュメモリを用いることができる。メモリ制御回路５４は、ＣＰＵ５０の指示に従って、保存用データメモリ５６に対するデータの読み出しおよび書き込みを制御する。プリセットデータ用メモリ５８は、ゲーム装置１０において予め設定される各種パラメータ等のデータ（プリセットデータ）を記憶するための記憶手段である。プリセットデータ用メモリ５８としては、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）バスによってＣＰＵ５０と接続されるフラッシュメモリを用いることができる。
【００８１】
メモリカードＩ／Ｆ６０および６２は、それぞれＣＰＵ５０に接続される。メモリカードＩ／Ｆ６０は、コネクタに装着されたメモリカード２６に対するデータの読み出しおよび書き込みを、ＣＰＵ５０の指示に応じて行う。また、メモリカードＩ／Ｆ６２は、コネクタに装着されたメモリカード２８に対するデータの読み出しおよび書き込みを、ＣＰＵ５０の指示に応じて行う。この実施例では、内側カメラ３２および外側カメラ３４によって撮像された画像に対応する画像データや他の装置から受信された画像データがメモリカード２６に書き込まれたり、メモリカード２６に記憶された画像データがメモリカード２６から読み出されて保存用データメモリ５６に記憶されたり、他の装置へ送信されたりする。また、メモリカード２８に記憶された各種プログラムが、ＣＰＵ５０によって読み出されて実行されたりする。
【００８２】
なお、ゲームプログラムなどの情報処理プログラムは、メモリカード２８等の外部記憶媒体を通じてゲーム装置１０に供給されるだけでなく、有線または無線の通信回線を通じてゲーム装置１０に供給されてもよい。また、情報処理プログラムは、ゲーム装置１０内部の不揮発性記憶装置に予め記録されていてもよい。さらに、情報処理プログラムを記憶する情報記憶媒体としては、上記不揮発性記憶装置に限らず、ＣＤ−ＲＯＭ、ＤＶＤ、あるいはそれらに類する光学式ディスク状記憶媒体でもよい。
【００８３】
無線通信モジュール６４は、たとえばＩＥＥＥ８０２．１１．ｂ／ｇの規格に準拠した方式により、無線ＬＡＮに接続する機能を有する。また、ローカル通信モジュール６６は、所定の通信方式により同種のゲーム装置との間で無線通信を行う機能を有する。無線通信モジュール６４およびローカル通信モジュール６６は、ＣＰＵ５０に接続される。ＣＰＵ５０は、無線通信モジュール６４を用いてインターネットを介して他の機器との間でデータを送受信したり、ローカル通信モジュール６６を用いて同種の他のゲーム装置との間でデータを送受信したりすることができる。
【００８４】
また、ＣＰＵ５０には、マイコン６８が接続される。マイコン６８は、メモリ６８ａおよびＲＴＣ６８ｂを含む。メモリ６８ａは、たとえばＲＡＭであり、マイコン６８による制御のためのプログラムやデータが記憶される。ＲＴＣ６８ｂは、時間をカウントする。マイコン６８では、ＲＴＣ６８ｂによって計時された時間に基づいて、日付および現在時刻等を計算することもできる。
【００８５】
マイコン６８には、電源スイッチ２０ｆ、開閉スイッチ４２、電源回路７０、および加速度センサ８８が接続される。電源スイッチ２０ｆからは、オンの信号がマイコン６８に与えられる。ゲーム装置１０の主電源がオフされている状態で、電源スイッチ２０ｆがオンされると、マイコン６８のＢｏｏｔＲＯＭとしても機能するメモリ６８ａが起動され、後述するように、ゲーム装置１０の開閉状態に応じて電源制御が行なわれる。一方、ゲーム装置１０の主電源がオンされている状態で、電源スイッチ２０ｆがオンされると、マイコン６８は電源回路７０に全回路コンポーネント（マイコン６８を除く）への電力供給の停止を指示する。ここで、電源回路７０は、ゲーム装置１０が有する電源（典型的には電池であり、下側ハウジング１４に収納される）から供給される電力を制御し、ゲーム装置１０の各回路コンポーネントに電力を供給する。
【００８６】
また、開閉スイッチ４２からは、オンまたはオフの信号がマイコン６８に与えられる。開閉スイッチ４２がオンされている状態（ゲーム装置１０本体が開かれている状態）で、ゲーム装置１０の主電源がオンされている場合には、マイコン６８の制御の下、電源回路７０からゲーム装置１０の全回路コンポーネントに電力を供給するモード（以下、「通常モード」という）が設定される。通常モードでは、ゲーム装置１０は任意のアプリケーションを実行可能であり、ユーザないしプレイヤ（以下、単に「プレイヤ」という）が使用している状態（使用状態）である。
【００８７】
また、ゲーム装置１０の主電源がオンされている状態で、開閉スイッチ４２がオフされている場合（ゲーム装置１０本体が閉じられている状態）には、電源回路７０からゲーム装置１０の一部のコンポーネントに電力を供給するモード（以下、「スリープモード」という）が設定される。スリープモードでは、ゲーム装置１０は任意のアプリケーションを実行不能であり、プレイヤは使用していない状態（不使用状態）である。この実施例では、一部のコンポーネントは、ＣＰＵ５０、無線通信モジュール６４およびマイコン６８である。ただし、スリープモード（スリープ状態）では、ＣＰＵ５０は、基本的にクロックを停止した状態（不能化された状態）であるため、ほとんど電力を消費しない。また、スリープモードでは、ＣＰＵ５０への電力の供給を停止しても良い。したがって、上述したように、この実施例では、スリープモードにおいては、ＣＰＵ５０によって、アプリケーションが実行されることはない。
【００８８】
ただし、スリープ状態において、無線通信モジュール６４によって通信を実行する場合には、無線通信モジュール６４からの制御信号によってＣＰＵ５０を起動する。つまり、無線通信モジュール６４によってＣＰＵ５０のクロックが動作され、その後、無線通信モジュール６４からＣＰＵ５０に通信の開始指示が与えられる。以下、同じ。そして、ＣＰＵ５０からマイコン６８に指示して、メモリ制御回路５４および保存用データメモリ５６への電力の供給が開始される。したがって、通信により他のゲーム装置１０等に保存用データメモリ５６に記憶されたデータを送信したり、他のゲーム装置１０等から受信したデータを保存用データメモリ５６に記憶したりすることができる。
【００８９】
また、スリープ状態において、マイコン６８から歩数データを出力する場合には、マイコン６８からの制御信号によってＣＰＵ５０を起動する。つまり、マイコン６８によってＣＰＵ５０のクロックが動作され、歩数データの出力が通知される。また、マイコン６８は、電源回路７０を制御して、メモリ制御回路５４および保存用データメモリ５６への電力の供給を開始する。したがって、マイコン６８から出力される歩数データが保存用データメモリ５６に記憶される。
【００９０】
さらに、ゲーム装置１０が開かれるなどして、スリープ状態が解除（非スリープ状態）にされると、開閉スイッチ４２からオフの信号がマイコン６８に入力される。したがって、マイコン６８は、ＣＰＵ５０を起動して、ＣＰＵ５０にスリープの解除を通知する。これに応じて、ＣＰＵ５０は、マイコン６８にスリープの解除を指示する。つまり、ＣＰＵ５０の指示の下、マイコン６８は、電源回路７０を制御して、全回路コンポーネントへの電源の供給を開始する。したがって、ゲーム装置１０は、通常モードへ移行し、使用状態になる。
【００９１】
また、上述したように、マイコン６８には、加速度センサ８８が接続される。たとえば、加速度センサ８８は、３軸の加速度センサであり、下側ハウジング１４（上側ハウジング１２でもよい）の内部に設けられる。ゲーム装置１０の第１ＬＣＤ１６（第２ＬＣＤ１８）の面に対して垂直な方向の加速度、および第１ＬＣＤ１６（第２ＬＣＤ１８）の面に対して平行であり、互いに直交する２方向（縦方向および横方向）の加速度を検出する。加速度センサ８８は、検出した加速度についての信号（加速度信号）をマイコン６８に出力する。マイコン６８は、加速度信号に基づいて、ゲーム装置１０の向きを検出したり、ゲーム装置１０の振動の大きさを検出したりすることができる。したがって、たとえば、マイコン６８および加速度センサ８８を歩数計として機能させることができる。加速度センサ８８を用いた歩数計は既に周知であるため、その詳細な内容については省略するが、加速度の大きさに応じて歩数が測定される。
【００９２】
また、ゲーム装置１０は、マイク８４およびアンプ８６を備えている。マイク８４およびアンプ８６は、それぞれＩ／Ｆ回路７２に接続される。マイク８４は、ゲーム装置１０に向かって発声ないし発生されたユーザの音声ないし音（拍手や手拍子など）を検知して、当該音声ないし音を示す音声信号をＩ／Ｆ回路７２に出力する。アンプ８６は、Ｉ／Ｆ回路７２から与えられる音声信号を増幅してスピーカ（図示せず）に与える。Ｉ／Ｆ回路７２は、ＣＰＵ５０に接続される。
【００９３】
また、タッチパネル２２は、Ｉ／Ｆ回路７２に接続される。Ｉ／Ｆ回路７２は、マイク８４およびアンプ８６（スピーカ）の制御を行う音声制御回路と、タッチパネル２２の制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するＡ／Ｄ変換およびＤ／Ａ変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル２２からの信号に基づいて所定の形式のタッチ位置データを生成してＣＰＵ５０に出力する。たとえば、タッチ位置データは、タッチパネル２２の入力面に対して入力が行われた位置の座標を示すデータである。
【００９４】
なお、タッチパネル制御回路は、タッチパネル２２からの信号の読み込み、および、タッチ位置データの生成を所定時間に１回の割合で行う。ＣＰＵ５０は、Ｉ／Ｆ回路７２を介して、タッチ位置データを取得することにより、タッチパネル２２に対して入力が行われた位置を知ることができる。
【００９５】
操作ボタン２０は、上記の各操作ボタン２０ａ−２０ｋ（電源スイッチ２０ｆを除く。以下、同じ。）によって構成され、ＣＰＵ５０に接続される。操作ボタン２０からＣＰＵ５０へは、各操作ボタン２０ａ−２０ｋに対する入力状況（押下されたか否か）を示す操作データが出力される。ＣＰＵ５０は、操作ボタン２０からの操作データを取得し、取得した操作データに応じた処理を実行する。
【００９６】
内側カメラ３２および外側カメラ３４は、それぞれＣＰＵ５０に接続される。内側カメラ３２および外側カメラ３４は、ＣＰＵ５０の指示に応じて画像を撮像し、撮像した画像に対応する画像データをＣＰＵ５０に出力する。この実施例では、ＣＰＵ５０は、内側カメラ３２および外側カメラ３４のいずれか一方に対して撮像指示を行い、撮像指示を受けたカメラ（３２，３４）が画像を撮像して画像データをＣＰＵ５０に送る。
【００９７】
第１ＧＰＵ７４には、第１ＶＲＡＭ７８が接続され、第２ＧＰＵ７６には、第２ＶＲＡＭ８０が接続される。第１ＧＰＵ７４は、ＣＰＵ５０からの指示に応じて、メインメモリ５２に記憶されている表示画像を生成するためのデータに基づいて第１の表示画像を生成し、第１ＶＲＡＭ７８に描画する。第２ＧＰＵ７６は、同様にＣＰＵ５０からの指示に応じて第２の表示画像を生成し、第２ＶＲＡＭ８０に描画する。第１ＶＲＡＭ７８および第２ＶＲＡＭ８０は、ＬＣＤコントローラ８２に接続されている。
【００９８】
ＬＣＤコントローラ８２は、レジスタ８２ａを含む。レジスタ８２ａは、ＣＰＵ５０からの指示に応じて、「０」または「１」の値を記憶する。ＬＣＤコントローラ８２は、レジスタ８２ａの値が「０」である場合には、第１ＶＲＡＭ７８に描画された第１の表示画像を第２ＬＣＤ１８に出力し、第２ＶＲＡＭ８０に描画された第２の表示画像を第１ＬＣＤ１６に出力する。また、レジスタ８２ａの値が「１」である場合には、第１ＶＲＡＭ７８に描画された第１の表示画像を第１ＬＣＤ１６に出力し、第２ＶＲＡＭ８０に描画された第２の表示画像を第２ＬＣＤ１８に出力する。
【００９９】
たとえば、このようなゲーム装置１０は、スリープモードに設定された状態では、すれ違い通信処理を実行する。ここで、すれ違い通信処理について簡単に説明する。スリープモードでは、無線通信モジュール６４は、一定時間（たとえば、３０ｍｓ）毎に、他のゲーム装置１０に接続要求を示す信号（接続要求信号）を送信（ブロードキャスト）するとともに、他のゲーム装置１０からの接続要求信号の受信を試みる。つまり、通信処理が間欠的に実行される。これによって、通信相手となる他のゲーム装置１０がサーチ（スキャン）される。ただし、接続要求信号は、その送信元であるゲーム装置１０の識別情報を含む。
【０１００】
このとき、ゲーム装置１０は、接続要求信号を受信すると、これに応答して、接続要求信号の送信元のゲーム装置１０に、接続許可信号を送信する。ただし、接続許可信号は、その送信元であるゲーム装置１０の識別情報を含む。これによって、２つのゲーム装置１０で互いに他の存在を認識して、通信状態を確立する。
【０１０１】
ただし、接続要求信号に応答して接続許可信号を送信したゲーム装置１０では、無線通信モジュール６４が、ＣＰＵ５０を起動し、ＣＰＵ５０からの指示に従って、マイコン６８の制御の下、電源回路７０からメモリ制御回路５４および保存用データメモリ５６に電力の供給が開始される。また、同様に、接続許可信号を受信したゲーム装置１０では、無線通信モジュール６４が、ＣＰＵ５０を起動し、ＣＰＵ５０からの指示に従って、マイコン６８の制御の下、電源回路７０からメモリ制御回路５４および保存用データメモリ５６に電力の供給が開始される。
【０１０２】
通信状態を確立すると、２つのゲーム装置１０の間で、予め設定（決定）されている、ゲームデータやメッセージデータなどのデータが送信または受信或いは送受信される。
【０１０３】
詳細な説明は省略するが、すれ違い通信を終了すると、各ゲーム装置１０は、スリープ状態に戻る。
【０１０４】
したがって、プレイヤは、スリープ状態でゲーム装置１０を持ち歩くと、何ら操作することなく、他のゲーム装置１０との間で通信（すれ違い通信）が実行され、当該他のゲーム装置１０からゲームデータやメッセージデータなどのデータを得ることができる。
【０１０５】
なお、ここでは、他のゲーム装置１０との間ですれ違い通信処理を実行する場合について説明したが、所定のアクセスポイントとの間ですれ違い通信処理を実行するようにしてもよい。かかる場合には、アクセスポイントから送信されるゲームデータやメッセージデータなどを得ることが可能である。
【０１０６】
また、詳細な説明は省略するが、すれ違い通信が実行される場合、通信状態を確立した２つのゲーム装置１０のうち、接続要求信号を送信したゲーム装置１０が親機として機能し、接続要求信号に応答して接続許可信号を送信したゲーム装置１０が子機として機能する。
【０１０７】
また、上述したように、スリープモードにおいては、ゲーム装置１０は、歩数計としても機能し、上述のように、プレイヤが当該ゲーム装置１０を持ち歩いている場合に、当該プレイヤの歩数がカウントされる。カウントされた歩数は、必要に応じて、ゲーム装置１０で実行されるゲームプログラムなどの情報処理プログラムの処理に反映される。
【０１０８】
このような構成のゲーム装置１０には、キャラクタを作成したり、他のゲーム装置１０との間でキャラクタを交換したり、アクセスポイントからキャラクタを受信したり、カメラ３２、３４の撮影画像に基づいてキャラクタを取得したり、キャラクタの元となるデータ（後述するキャラクタ情報データ）を生成および出力したりする、似顔絵ゲームのプログラム（アプリケーションプログラム）が予め記憶されている。
【０１０９】
たとえば、キャラクタは、人間を模したキャラクタである。キャラクタを作成する場合について簡単に説明すると、まず、プレイヤは、作成するキャラクタの性別を決定する。次に、プレイヤは、顔と体型とを設定する。顔の設定は、パーツ単位で行われる。たとえば、顔の形、目、鼻、口、髭、黒子、髪型の各パーツについて、それぞれ複数種類の画像（パーツ画像）が用意されており、プレイヤは、所望のパーツを選択する。ただし、パーツ画像は、プレイヤの操作によって、位置、大きさ（長さ、太さなど）、形状および色を変更可能である。ただし、各パーツ（パーツ画像）が最初に配置される位置は予め決定されている。さらには、メガネ（サングラス）を装着させることも可能である。このメガネも上述の各パーツと同様に扱われ、位置や色を変更することもできる。顔が設定されると、続いて、体型が設定される。具体的には、身長と体の幅が設定される。これらは予め最大値と最小値とが決定されており、その間で設定することができる。
【０１１０】
顔と体型とが設定されると、作成するキャラクタのプロフィールが設定される。具体的には、キャラクタの名前（キャラクタ名）、ニックネーム、誕生日、血液型、好きな色、および作成者の名称が設定される。ただし、好きな色は、キャラクタの上着の色に反映される。
【０１１１】
さらに、作成するキャラクタのプロフィールが設定されると、作成するキャラクタに関する付加的な情報（付加情報）を設定する。具体的には、付加情報は、作成中のキャラクタをお気に入りとして登録するかどうかの情報、作成者のＩＤ（ゲーム装置１０の識別情報）、キャラクタのバージョン、コピー許可フラグおよび送信許可フラグなどである。
【０１１２】
なお、図示は省略するが、性別、顔のパーツ、体型およびプロフィールのそれぞれを選択（決定）するための画面が第２ＬＣＤ１８に表示され、プレイヤの操作に従ってそれぞれ選択される。
【０１１３】
キャラクタが作成されると、当該キャラクタの情報（図４に示すキャラクタ情報）についてのデータ（キャラクタ情報データ）が保存用データメモリ５６のキャラクタ本登録記憶領域５６４０（図８参照）に記憶される。ただし、作成（描画）されたキャラクタの画像（キャラクタ画像）についてのデータ（キャラクタ画像データ）は、メインメモリ５２に記憶される（図７参照）。
【０１１４】
ここで、図４に示すように、キャラクタ情報データに対応するキャラクタ情報は、性別、誕生日、好きな色、お気に入りフラグ、キャラクタ名（ニックネーム）、身長および体型、キャラクタのＩＤ、各パーツとその関連情報、作成者名、作成者のＩＤ、キャラクタのバージョン、コピー許可フラグ、送信許可フラグ、ＮＧワードチェック結果フラグおよび使用フォントのリージョンを含む。
【０１１５】
性別は、キャラクタに設定した性別である。誕生日は、キャラクタに設定した誕生日である。好きな色は、プレイヤの好きな色であり、この色がキャラクタの服の色に設定される。お気に入りフラグは、キャラクタの所有者または作成者が当該キャラクタを気に入っているか否かを判別するためのフラグであり、所有者または作成者によって設定される。キャラクタ名（ニックネーム）は、キャラクタに付けられた名称である。身長および体型は、キャラクタに設定された身長および体型である。キャラクタのＩＤは、キャラクタに付された固有の識別情報であり、当該キャラクタが作成されたときに、ゲーム装置１０（ＣＰＵ５０）によって自動的に付される。各パーツとその関連情報は、キャラクタの各パーツの識別情報、すなわち顔の形、目、鼻、口、髭、黒子、髪型およびメガネの識別情報（画像の識別情報）と、各パーツの関連情報である。ただし、関連情報は、各パーツについての大きさ、配置位置、傾きおよび比率の変化についての情報である。
【０１１６】
作成者名は、キャラクタを作成したプレイヤの名称である。作成者のＩＤは、作成者についての識別情報であり、キャラクタが作成されたときに、ゲーム装置１０（ＣＰＵ５０）によって自動的に付される。この実施例では、作成者のＩＤとして、ゲーム装置１０についてのＭＡＣアドレスが付される。キャラクタのバージョンは、キャラクタがオリジナルであるか、何度か変更されているかを判別するための世代管理の情報である。
【０１１７】
コピー許可フラグは、キャラクタを受信したゲーム装置１０において、当該キャラクタの複製を作って良いかどうかを判別するためのフラグである。送信許可フラグは、当該キャラクタを自動的に他のゲーム装置１０に送信して良いかどうかを判別するためのフラグである。ただし、この実施例では送信許可フラグが送信不可を示す場合には、通信によりキャラクタを送信することが禁止されるのみならず、他のゲーム装置１０が当該キャラクタを取得可能な状態にすることも禁止される。したがって、送信不可である場合には、後述するように、暗号化されたキャラクタ情報データを変換したＱＲコードを画面表示したり、ＱＲコードの画像データ（コード画像データ）をメモリカード２６、２８に出力したりすることもできない。コピー許可フラグおよび送信許可フラグは、キャラクタの作成者の指示に従って設定（オンまたはオフ）される。
【０１１８】
ＮＧワードチェック結果フラグは、キャラクタ名や作成者名に、ＮＧワードが含まれているかどうかを判別するためのフラグである。詳細な説明は省略するが、ＮＧワードは、予めゲーム装置１０の保存用データメモリ５６やメモリカード２６、２８に記憶されている。したがって、たとえば、キャラクタ名や作成者名が、ＮＧワードと一致する場合またはＮＧワードを含む場合に、ＮＧワードチェック結果フラグがオンされる。一方、キャラクタ名や作成者名が、ＮＧワードと不一致である場合またはＮＧワードを含まない場合には、ＮＧワードチェック結果フラグがオフされる。ＮＧワードチェック結果フラグがオンである場合には、当該キャラクタについてのキャラクタ情報データ（暗号化されている場合も含む）を他のゲーム装置１０などに送信できないようにしたり、キャラクタ名や作者名を非表示したり、他の表記（ＮＧワード以外で予め設定された表記）に変更したりする。
【０１１９】
使用フォントのリージョンは、キャラクタを表示したりするアプリケーションプログラム（この実施例では、似顔絵ゲームのプログラム）が、どのリージョンのフォントを使用すれば良いかを判別可能にした情報である。たとえば、リージョンが「０」であれば、日本、アメリカ、ヨーロッパのそれぞれの言語についてのフォントを使用可能である。また、リージョンが「１」であれば、中国語のフォントを使用可能である。さらに、リージョンが「２」であれば、韓国語のフォントを使用可能である。さらにまた、リージョンが「３」であれば、台湾語のフォントを使用可能である。
【０１２０】
また、ゲーム装置１０は、他のゲーム装置１０との間でキャラクタを送受信することにより、キャラクタを交換する。これによって、ゲーム装置１０は、他のゲーム装置１０からの新規なキャラクタを取得する。ただし、キャラクタを交換する方法としては、特定された他のプレイヤ（ゲーム装置１０）との間で、プレイヤの操作に従って、送信するキャラクタの選択およびキャラクタを交換する方法（１）と、プレイヤの操作に従って、送信するキャラクタの選択のみを行い、特定されていない他のプレイヤ（ゲーム装置１０）との間で、プレイヤの操作によらないでキャラクタを交換する方法（２）とがある。方法（１）または方法（２）のいずれを実行するかは、プレイヤの操作によって、図示しないメニュー画面が表示され、当該メニュー画面で選択される。
【０１２１】
方法（１）が選択されると、つまり、ゲーム装置１０で、キャラクタを交換することが指示されると、通信処理を開始して、キャラクタを交換する他のゲーム装置１０との間で通信状態を確立する。詳細な説明は省略するが、通信相手のゲーム装置１０をサーチする処理は、上述したすれ違い通信処理の場合と同様である。ただし、この場合、通信相手のゲーム装置１０のプレイヤは近傍に存在するため、当該プレイヤは特定されているのである。
【０１２２】
ゲーム装置１０が他のゲーム装置１０との間で通信状態を確立すると、プレイヤは、他のゲーム装置１０（プレイヤ）に送信するキャラクタを選択する。このとき、図５（Ａ）に示すようなキャラクタ選択画面１００が第２ＬＣＤ１８に表示される。図５（Ａ）に示すキャラクタ選択画面１００には、プレイヤが所有するすべてのキャラクタ１０２、１０２、１０２、…が表示される。ここで、プレイヤが所有するキャラクタとは、ゲーム装置１０の保存用データメモリ５６に記憶されたすべてのキャラクタ情報データのそれぞれに対応するキャラクタを意味する。したがって、プレイヤが所有するキャラクタは、後述するように、本登録されたキャラクタと本登録されていないキャラクタとを含む。
【０１２３】
ただし、キャラクタ選択画面１００には、キャラクタの顔画像のみが表示される。ここで、顔画像は、キャラクタ情報データが示すキャラクタ情報に含まれ、各パーツとその関連情報とに基づいて生成される。つまり、各パーツとその関連情報に基づいて、パーツ画像が選択されるとともに、その大きさ（形状）、配置位置、傾斜および比率の変化が決定され、キャラクタの顔画像についてのデータが生成される。以下、キャラクタの顔画像を生成する場合について同様である。
【０１２４】
なお、本登録されたキャラクタのみを送信可能にする場合には、キャラクタ選択画面１００には、本登録されたキャラクタのみが表示される。
【０１２５】
また、図５（Ａ）には、ボタン画像１１０およびボタン画像１１２が設けられる。したがって、プレイヤが多数のキャラクタを所有しており、一度にすべてのキャラクタの顔画像を表示することができない場合には、ボタン画像１１０またはボタン画像１１２をオンすることにより、画面を左または右にスクロールすることにより、他のキャラクタの顔画像を表示することができる。
【０１２６】
このキャラクタ選択画面１００において、プレイヤによって選択されたキャラクタについてのキャラクタ情報データの複製が送受信データバッファ５２４ｂ（図７参照）に記憶（一時記憶）される。ただし、送信許可フラグが送信不可の状態に設定されているキャラクタについては、他のゲーム装置１０に送信することができない。したがって、送信するキャラクタとして選択することができない。図示は省略するが、送信するキャラクタとして選択することができないキャラクタが指示された場合には、送信することができない旨と他のキャラクタを選択すべき旨のメッセージが表示される。他の実施例としては、送信許可フラグが送信不可の状態に設定されているキャラクタについては、キャラクタ選択画面１００に表示しないようにしてもよい。以下、キャラクタ選択画面１００を表示する場合について同じ。
【０１２７】
そして、送受信データバッファ５２４ｂに記憶されたキャラクタ情報データが通信相手のゲーム装置１０（他のゲーム装置１０）に送信される。
【０１２８】
なお、方法（１）では、ゲーム装置１０と他のゲーム装置１０との通信状態を確立した後に、キャラクタを選択するようにしてあるが、通信処理を開始する前に、キャラクタを選択しておいてもよい。
【０１２９】
また、プレイヤの操作に従って他のゲーム装置１０と通信状態を確立したときに、通信相手となる他のゲーム装置１０から送信されたキャラクタ情報データを受信し、送受信データバッファ５２４ｂに一旦記憶した後、受信したキャラクタ情報データに基づいてキャラクタを生成し、図５（Ｂ）に示すような、受信キャラクタ表示画面２００を第２ＬＣＤ１８に表示する。具体的には、キャラクタ情報データが示すキャラクタ情報に含まれる、好きな色と、身長および体型と、各パーツとその関連情報とに基づいて、キャラクタの画像データ（キャラクタ画像データ）が生成される。まず、上述したように、キャラクタの顔画像が生成される。また、身長および体型に基づいて、キャラクタの胴体の長さおよび太さが設定される。さらに、衣服の色が好きな色で表現される。したがって、キャラクタ画像データが生成される。以下、キャラクタを生成する場合について同様である。そして、生成されたキャラクタ画像データに対応するキャラクタ２０２が、ゲーム装置１０の第２ＬＣＤ１８に表示される。
【０１３０】
また、図５（Ｂ）に示すように、受信キャラクタ表示画面２００には、ボタン画像２１０およびボタン画像２１２が表示される。たとえば、ボタン画像２１０がオンされると、受信したキャラクタ２０２が保存（本登録）される。一方、ボタン画像２１２がオンされると、受信したキャラクタ２０２が保存されない。したがって、プレイヤが、ボタン画像２１０をオンすると、つまり受信したキャラクタ２０２を保存することが決定されると、当該キャラクタ２０２に対応するキャラクタ画像データは、保存用データメモリ５６のキャラクタ本登録記憶領域５６４０に記憶される。一方、プレイヤが、ボタン画像２１２をオンすると、つまり受信したキャラクタ２０２を保存しないことが決定されると、当該キャラクタ２０２に対応するキャラクタ情報データは消去される。
【０１３１】
なお、この実施例では、受信したキャラクタを保存しない場合には、当該キャラクタ２０２に対応するキャラクタ情報データを消去するようにしたが、保存用データメモリ５６のキャラクタ一時記憶領域５６４２に記憶するようにしてもよい。
【０１３２】
たとえば、この方法（１）では、ゲーム装置１０のローカル通信モジュール６６を用いて、同種のゲーム装置１０との間で通信処理を実行する。ただし、通信相手となる他のゲーム装置１０をサーチする方法は、上述したすれ違い通信の場合と同様である。
【０１３３】
また、この方法（１）では、近距離無線によって他のゲーム装置１０との間で通信処理を開始し、キャラクタ情報データを送受信するようにしてあるが、無線通信モジュール６４を用いることにより、インターネットを介して他のゲーム装置１０との間でキャラクタ情報データを送受信するようにしてもよい。つまり、近距離無線通信限定される必要はない。
【０１３４】
ただし、通信処理では、２つのゲーム装置１０のうちの一方が親機として機能し、他方が子機として機能するため、親機が先にデータ送信を実行する場合と、子機が先にデータ送信を実行する場合とで、上記のキャラクタ情報データを送信する処理と、キャラクタ情報データを受信する処理とが入れ替わる。
【０１３５】
図示は省略するが、第１ＬＣＤ１６には、ゲーム装置１０に本登録されているキャラクタがすべて表示される。したがって、受信したキャラクタ２０２が本登録されると、つまり当該キャラクタ２０２のキャラクタ情報データがキャラクタ本登録記憶領域５６４０に記憶されると、当該キャラクタ２０２は、既に表示されたキャラクタに追加されるように、表示される。
【０１３６】
方法（２）が選択された場合には、ゲーム装置１０がスリープモードに設定されると、すれ違い通信処理が間欠的に実行され、ゲーム装置１０は通信可能な他のゲーム装置１０を探索する。通信可能な他のゲーム装置１０を検出すると、当該他のゲーム装置１０との間でキャラクタ情報データを送受信し、キャラクタ情報データ（キャラクタ）を交換する。ここでは、ゲーム装置１０は、予め保存用データメモリ５６の送信データ記憶領域５６４４（図８参照）に記憶されているキャラクタ情報データを、当該他のゲーム装置１０に送信する。つまり、ゲーム装置１０では、予めキャラクタが選択され、選択されたキャラクタに対応するキャラクタ情報データが、保存用データメモリ５６の送信データ記憶領域５６４４に記憶されているのである。ただし、選択されたキャラクタに対応するキャラクタ情報データの複製が、送信記憶領域５６４４に記憶される。つまり、キャラクタ情報データが複写される。
【０１３７】
ただし、キャラクタを選択する場合には、図５（Ａ）に示したようなキャラクタ選択画面１００が第２ＬＣＤ１８に表示される点は、方法（１）の場合と同じである。
【０１３８】
また、この実施例では、すれ違い通信の場合には、プレイヤが作成したキャラクタに対応するキャラクタ情報データのみが送信可能である。したがって、すれ違い通信では、キャラクタ情報データを送信するとき、送信許可フラグが送信許可を示すとともに、キャラクタ情報データに含まれる作成者のＩＤとして設定されたＭＡＣアドレスと、ゲーム装置１０についてのＭＡＣアドレスとが比較され、一致する場合にのみ、当該キャラクタ情報データが送信される。
【０１３９】
また、すれ違い通信処理によって受信されたキャラクタ情報データに基づくキャラクタは、スリープモードから通常モードに移行されたときに、第２ＬＣＤ１８に表示される。ここでは、図示は省略するが、図５（Ｂ）に示したような受信キャラクタ表示画面２００と同様の画面（登録画面）が第２ＬＣＤ１８に表示される。ただし、すれ違い通信では、受信したキャラクタ情報データは、保存用データメモリ５６のキャラクタ一時記憶領域５６４２に記憶される。したがって、この実施例では、登録画面では、すれ違い通信により受信したキャラクタ（キャラクタ情報データ）を本登録するか否かが決定される。
【０１４０】
ここで、登録画面（図示せず）には、キャラクタを本登録することを決定するためのボタン画像と本登録しないことを決定するためのボタン画像とが表示される。ただし、すれ違い通信では、複数のキャラクタ（キャラクタ情報データ）を受信している場合があるため、かかる場合には、複数のキャラクタが表示されるとともに、複数のキャラクタのそれぞれについて本登録するか否かが決定可能にされている。
【０１４１】
ここで、すれ違い通信より受信したキャラクタを本登録することが決定されると、当該キャラクタに対応するキャラクタ情報データがキャラクタ本登録記憶領域５６４０に記憶される。一方、すれ違い通信より受信したキャラクタを本登録しないことが決定されると、当該キャラクタに対応するキャラクタ情報データはキャラクタ一時記憶領域５６４２に記憶されたままである。これらの決定は、今回のすれ違い通信により受信されたすべてのキャラクタ（キャラクタ情報データ）について実行される。
【０１４２】
詳細な説明は省略するが、たとえば、すれ違い通信処理においては、受信されたキャラクタ情報データには、受信したときにタイムスタンプされる。また、スリープモードを開始するときと終了（通常モードに移行）するときとの日時がそれぞれ記憶されている。したがって、日時を参照することにより、登録画面を表示する際に、直前のスリープモードにおいて受信されたキャラクタ情報データに基づくキャラクタが生成および表示される。
【０１４３】
また、詳細な説明は省略するが、キャラクタ本登録記憶領域５６４０に記憶されたキャラクタ情報データに従うキャラクタを使用して、或るゲームについてのゲーム処理を実行することができる。たとえば、プレイヤキャラクタやノンプレイヤキャラクタとして使用することができる。
【０１４４】
さらに、この実施例では、キャラクタ本登録記憶領域５６４０に記憶可能なキャラクタ情報データ（キャラクタ）の数（最大数）と、キャラクタ一時記憶領域５６４２に記憶されるキャラクタ情報データ（キャラクタ）の最大数とは予め決定されている。キャラクタ本登録記憶領域５６４０では、たとえば、最大で１００体のキャラクタについてのキャラクタ情報データを記憶することができ、その登録および削除は、プレイヤによって操作される。一方、キャラクタ一時記憶領域５６４２では、たとえば、最大で１０００体のキャラクタについてのキャラクタ情報データを記憶することができ、すれ違い通信よって、受信したキャラクタ情報データが自動的に記憶され、その最大数を超えると、古い順にキャラクタ情報データがキャラクタ一時記憶領域５６４２から自動的に削除（消去）される。
【０１４５】
このように、ゲーム装置１０では、他のゲーム装置１０などと通信することにより、キャラクタ情報データを交換することにより、受信したキャラクタ情報データに基づいて新しいキャラクタを取得することができる。しかし、通信環境に置くことができないゲーム装置１０では、新しいキャラクタを取得することができない。そこで、この実施例では、通信以外の方法によって、新規のキャラクタを取得できるようにしてある。
【０１４６】
たとえば、ゲーム装置１０のカメラ３４（または３２）を用いて、ＱＲコード（株式会社デンソーウェーブの登録商標）を撮像することにより、キャラクタを取得できるようにしてある。
【０１４７】
図６（Ａ）−図６（Ｅ）には、ＱＲコードの例（例１−例５）が示される。ただし、これらは単なる例示であり、実際に何らかの情報（ここでは、キャラクタ）が得られるものではない。
【０１４８】
図６（Ａ）に示すＱＲコードの例１では、その中央部に、キャラクタの総称が記載されるとともに、ＱＲコードの下側（外側）にキャラクタ名が記載される。。したがって、このＱＲコードの例１を見たプレイヤは、ゲーム装置１０で使用されるキャラクタについてのキャラクタ情報データを取得できることを知ることができるとともに、取得できるキャラクタの種類を知ることもできる。このように、キャラクタの総称およびキャラク名を提示（教示）することにより、プレイヤが所望のキャラクタを取得できるようにしてある。
【０１４９】
図６（Ｂ）に示すＱＲコードの例２では、その中央部に、キャラクタの顔画像が表示される。したがって、このＱＲコードの例２を見たプレイヤは、ゲーム装置１０で使用されるキャラクタを取得できることを知ることができるとともに、取得できるキャラクタの種類も知ることができる。たとえば、キャラクタの数が相当数存在するような場合には、このように、顔画像を表示して、キャラクタの種類を提示（教示）することにより、プレイヤが同種類のキャラクタを重複的に取得することを防止することができる。
【０１５０】
図６（Ｃ）のＱＲコードの例３は、図６（Ａ）のＱＲコードの例１と同様に、キャラクタの総称を記載するものであるが、その総称は、ＱＲコードの外側に記載される。ただし、図６（Ｃ）では、キャラクタ名が表示されておらず、具体的なキャラクタの内容（種類）が不明であるため、どのようなキャラクタを得ることができるのかという期待感と楽しさとがある。
【０１５１】
図６（Ｄ）のＱＲコードの例４は、図６（Ｂ）のＱＲコードの例２と同様に、キャラクタの種類を提示するものであるが、キャラクタ名が、ＱＲコードの外側に記載される。ただし、キャラクタ名に代えて、キャラクタの顔画像をＱＲコードの外側に表示するようにしてもよい。
【０１５２】
図６（Ｅ）に示すＱＲコードの例５では、図６（Ｃ）とは異なり、その中央部に、キャラクタの総称が記載される。したがって、このＱＲコードの例５を見たプレイヤは、ゲーム装置１０で使用されるキャラクタについてのキャラクタ情報データを取得できることを知ることができる。
【０１５３】
なお、図６（Ａ）、図６（Ｃ）および図６（Ｅ）では、キャラクタの総称を記載するようにしてあるが、キャラクタの総称を示すロゴ、アニメのタイトルやゲームタイトル（ゲームソフト）の名称を記載するようにしてもよい。
【０１５４】
たとえば、このようなＱＲコードは、上述したようなキャラクタ情報についてのキャラクタ情報データを暗号化するとともに、暗号化されたキャラクタ情報データを２次元の情報にコード化したものである。
【０１５５】
なお、キャラクタ情報データを暗号化する方式は、任意の方式を採用することができる。採用した暗号化の方式に応じて、後述する復号プログラム５２２ｇおよび暗号プログラム５２２ｈが決定される。
【０１５６】
上述したようなＱＲコードは、雑誌やカードに印刷されたり、所定のホームページやインターネットサイトの画面に表示されたりする。したがって、プレイヤが、ＱＲコードの読み取りを指示すると、ゲーム装置１０では、外側カメラ３４が起動され、ＱＲコードの読み取りが開始される。このとき、外側カメラ３４は、オートフォーカスを実行するとともに、スルー画像を第１ＬＣＤ１６に表示する。そして、合焦状態になったときに、外側カメラ３４で撮像している静止画像（ＱＲコードの画像）が取り込まれる。その後、ゲーム装置１０では、ＱＲコードの画像データから暗号化されたキャラクタ情報データが算出（復号）される。さらに、ゲーム装置１０では、暗号化されたキャラクタ情報データを復号する。そして、上述したように、キャラクタ情報データに基づいてキャラクタを生成し、図５（Ｂ）に示した受信したキャラクタ表示画面２００と同様の画面（図示せず）を表示する。プレイヤが、ＱＲコードから得たキャラクタを記憶するかどうかを決定する点は、方法（１）において受信したキャラクタを記憶するかどうかを決定する場合と同じである。プレイヤが、ＱＲコードから得たキャラクタを記憶することを決定すると、当該キャラクタに対応するキャラクタ情報データがキャラクタ本登録記憶領域５６４０に記憶される。一方、プレイヤが、ＱＲコードから得たキャラクタを記憶しないことを決定すると、当該キャラクタに対応するキャラクタ情報データは削除される。ただし、削除せずに、キャラクタ一時記憶領域５６４２に記憶するようにしてもよい。
【０１５７】
また、ゲーム装置１０では、キャラクタデータからＱＲコードについての画像データ（コード画像データ）を生成し、ＱＲコードを画面表示したり、コード画像データをメモリカード２６またはメモリカード２８に出力したりすることもできる。
【０１５８】
前者の場合には、プレイヤがＱＲコードの画面表示を指示すると、図５（Ａ）に示したようなキャラクタ選択画面１００が第２ＬＣＤ１８に表示される。プレイヤは、キャラクタ選択画面１００を用いて、所望のキャラクタを選択する。すると、当該キャラクタについてのキャラクタ情報データが読み出され、暗号化される。次に、暗号化されたキャラクタ情報データがＱＲコードの画像データ（コード画像データ）に変換される。このコード画像データは、保存用データメモリ５６のコード画像データ記憶領域５６４６（図８参照）に記憶される。その後、コード画像データに対応するＱＲコードが、たとえば、第１ＬＣＤ１６に表示される。かかる場合には、画像データが第１ＬＣＤ１６に出力されるのである。
【０１５９】
この場合、第１ＬＣＤ１６に表示されたＱＲコードを撮像させることにより、他のゲーム装置１０にキャラクタを提供することができる。逆に、他のゲーム装置１０の第１ＬＣＤ１６に表示されたＱＲコードを撮像することにより、上述したように、キャラクタの提供を受けることができる。したがって、たとえば、無線通信が禁止されているような場所においても、キャラクタを交換することができ、新しいキャラクタを取得することができる。
【０１６０】
後者の場合には、プレイヤが、ＱＲコードのメモリカードへの出力を指示すると、図５（Ａ）に示したようなキャラクタ選択画面１００が第２ＬＣＤ１８に表示される。プレイヤは、キャラクタ選択画面１００を用いて、所望のキャラクタを選択する。すると、前者の場合と同様に、当該キャラクタについてのキャラクタ情報データが読み出され、暗号化される。次に、暗号化されたキャラクタ情報データがコード画像データに変換される。このコード画像データは、保存用データメモリ５６のコード画像データ記憶領域５６４６に記憶される。その後、コード画像データは、指定されたメモリカード２６またはメモリカード２８に出力される。
【０１６１】
この場合には、たとえば、郵送するなどにより、メモリカード２６、２８をプレイヤ間で交換し、各プレイヤが、メモリカード２６、２８に記憶された画像データに対応するＱＲコードをコンピュータの画面に表示し、それをゲーム装置１０で撮像することにより、キャラクタを交換することができる。
【０１６２】
なお、この実施例では、コード画像データをメモリカード２６、２８に出力するようにしてあるが、これに限定される必要はない。たとえば、コード画像データを添付ファイルとして、電子メールやメッセージデータを、所定の宛先に送信したり、ネットワーク上の所定のサーバにアップロードしたりすることも可能である。たとえば、所定のサーバにアップロードするような場合には、新しいキャラクタ（キャラクタ情報データ）をその所定のサーバからダウンロードすることも可能である。
【０１６３】
また、アプリケーションプログラムが実行されることにより、メモリカード２６およびメモリカード２８に記憶されているキャラクタ情報データの複製を記憶することにより、新しいキャラクタを取得することも可能である。かかる場合には、ゲーム装置１０の保存用データメモリ５６に記憶されたアプリケーションプログラムが実行され、または、ゲーム装置１０に装着されたメモリカード２６およびメモリカード２８に記憶されたアプリケーションプログラムが実行される。実行中のアプリケーションからの指示に従って表示されたキャラクタについてのキャラクタ情報データの複製が、プレイヤの指示に従って、メモリカード２６およびメモリカード２８から取得され、保存用データメモリ５６のキャラクタ本登録記憶領域５６４０に記憶される。
【０１６４】
たとえば、新しいゲームソフトを販売する際に、特典（おまけ）として、或るキャラクタについてのキャラクタ画像データを、そのゲームプログラムとともに、メモリカード２６、２８に記憶しておき、これを購入したプレイヤに提供する場合などが該当する。
【０１６５】
図７は図３に示したメインメモリ５２のメモリマップ５２０の例を示す図解図である。図７に示すように、メインメモリ５２は、プログラム記憶領域５２２およびデータ記憶領域５２４を含む。プログラム記憶領域５２２には、ゲームプログラムが記憶され、ゲームプログラムは、メイン処理プログラム５２２ａ、画像生成プログラム５２２ｂ、画像表示プログラム５２２ｃ、通信プログラム５２２ｄ、撮像プログラム５２２ｅ、送信設定プログラム５２２ｆ、復号プログラム５２２ｇ、暗号化プログラム５２２ｈ、およびコード出力プログラム５２２ｉなどによって構成される。
【０１６６】
メイン処理プログラム５２２ａは、この実施例の仮想ゲーム（似顔絵作成ゲーム）のメインルーチンを処理するためのプログラムである。画像生成プログラム５２２ｂは、後述する画像データ５２４ｃを用いて、画面（１００、２００など）を表示するためのゲーム画像データを生成する。画像表示プログラム５２２ｃは、画像生成プログラム５２２ｂに従って生成されたゲーム画像データを、画面として第１ＬＣＤ１６または第２ＬＣＤ１８あるいはそれらの両方に表示する。
【０１６７】
通信プログラム５２２ｄは、他のゲーム装置１０またはコンピュータ或いはアクセスポイントと通信するためのプログラムである。撮像プログラム５２２ｅは、撮像処理（通常の撮像処理とＱＲコードの撮像処理）を実行するためのプログラムである。
【０１６８】
具体的には、通常の撮像処理が選択（指示）されると、撮像プログラム５２２ｅが実行され、内側カメラ３２または外側カメラ３４が起動され、第１ＬＣＤ１６（または第２ＬＣＤ１８）にスルー画像が表示される。そして、プレイヤがシャッターボタン（Ｌボタン２０ｉまたはＲボタン２０ｊ）をオンすると、シャッターボタンがオンされたときの静止画像が取り込まれ、この静止画像に対応する撮像画像データ５２４ｅが一旦メインメモリ５２のデータ記憶領域５２４に記憶される。この撮像画像データ５２４ｅは、その後、プレイヤの操作によって、似顔絵作成ゲームの処理に使用されたり、メモリカード２６、２８や保存用データメモリ５６に記憶されたり、削除（消去）されたりする。
【０１６９】
また、ＱＲコードの撮像処理が指示されると、撮像プログラム５２２ｅが実行され、外側カメラ３４が起動され、オートフォーカス処理が実行されるとともに、第１ＬＣＤ１８（第１ＬＣＤ１６でも可）にスルー画像が表示される。そして、合焦状態になると、そのときの静止画像（ＱＲコードの画像）が取り込まれ、この静止画像に対応する撮像画像データ５２４ｅが一旦メインメモリ５２のデータ記憶領域５２４に記憶される。この撮像画像データ５２４ｅから暗号化キャラクタ情報データが算出される。その後、後述する復号プログラム５２２ｇに従って、暗号化キャラクタ情報データが復号され、キャラクタ情報データが取得される。
【０１７０】
送信設定プログラム５２２ｆは、プレイヤの指示に従って選択されたキャラクタを送信可能に設定するためのプログラムである。具体的には、プレイヤが選択したキャラクタについてのキャラクタ情報データを、保存用データメモリ５６の送信データ記憶領域５６４４（図８参照）に記憶する。復号プログラム５２２ｇは、暗号化されたキャラクタ情報データを復号するためのプログラムである。暗号化プログラムは、キャラクタ情報データを暗号化するためのプログラムである。コード出力プログラムは、暗号化されたキャラクタ情報データを含むキャラクタデータをＱＲコードに変換し、変換したＱＲコードについての画像データ（コード画像データ）を出力するためのプログラムである。上述したように、コード画像データが、ゲーム装置１０の第１ＬＣＤ１６（または第２ＬＣＤ１８）に出力される。したがって、ＱＲコードが画面表示される。また、コード画像データが、ゲーム装置１０に装着されたメモリカード２６、２８に出力（送信）される。
【０１７１】
図示は省略するが、ゲームプログラムには、音出力プログラムおよびバックアッププログラムなども含まれる。音出力プログラムは、図示しない音データを用いて、キャラクタの音声ないし擬声音、効果音、音楽（ＢＧＭ）のような、ゲームに必要な音を出力するためのプログラムである。バックアッププログラムは、プレイヤの指示や所定のイベントに従って、ゲームデータ（途中データ、結果データ）をメモリカード２６、２８や保存用データメモリ５６に記憶（セーブ）するためのプログラムである。
【０１７２】
データ記憶領域５２４には、操作情報バッファ５２４ａおよび送受信データバッファ５２４ｂが設けられる。操作情報バッファ５２４ａは、操作ボタン２０からの操作データやタッチパネル２２からのタッチ位置データを時系列に従って記憶（一時記憶）する。操作データやタッチ位置データは、ＣＰＵ５０の処理で使用された後に消去される。送受信データバッファ５２４ｂは、すれ違い通信以外の通信でデータを送受信する際に、送信するデータや受信したデータを記憶（一時記憶）する。たとえば、送信するデータは、他のゲーム装置１０等で受信されたことが確認された場合や一定時間が経過した場合に消去される。また、受信したデータは、メモリカード２６、２８または保存用データメモリ５６に移動された場合やＣＰＵ５０の処理に使用された場合に消去される。
【０１７３】
また、データ記憶領域５２４には、画像データ５２４ｃ、キャラクタ画像データ５２４ｄ、撮像画像データ５２４ｅおよびコード画像データ５２４ｆが記憶される。画像データ５２４ｃは、ゲーム画像データを生成するためのポリゴンデータやテクスチャデータなどのデータおよび上述した各パーツについての複数種類のパーツ画像のデータである。キャラクタ画像データ５２４ｄは、キャラクタ情報データに従って生成されたキャラクタの画像データである。撮像画像データ５２４ｅは、撮像プログラム５２２ｅに従って撮像された静止画像（ＱＲコードの画像）についての画像データである。コード画像データ５２４ｆは、上述したＱＲコードについての画像データである。
【０１７４】
図示は省略するが、データ記憶領域には、音データなどの他のデータが記憶され、また、ゲーム装置１０の処理に必要なタイマ（カウンタ）やレジスタも設けられる。
【０１７５】
図８は図３に示した保存用データメモリ５６のメモリマップ５６０を示す図解図である。保存用データメモリ５６は、プログラム記憶領域５６２およびデータ記憶領域５６４を含む。プログラム記憶領域５６２は、プログラム記憶領域５６２には、ゲームプログラムなどのアプリケーションプログラムがインストール（記憶）される。データ記憶領域５６４は、さらに、キャラクタ本登録記憶領域５６４０、キャラクタ一時記憶領域５６４２、送信データ記憶領域５６４４、コード画像データ記憶領域５６４６および暗号化キャラクタ情報データ記憶領域５６４８などを含む。
【０１７６】
キャラクタ本登録記憶領域５６４０は、ゲーム装置１０に本登録されたキャラクタについてのキャラクタ情報データを記憶する。たとえば、キャラクタ本登録記憶領域５６４０に記憶可能なキャラクタ情報データの数は予め決定されている。この実施例では、最大で１００体のキャラクタについてのキャラクタ情報データを記憶することができる。このキャラクタ本登録記憶領域５６４０に記憶されているキャラクタ情報データは、プレイヤの操作のみによって、削除（消去）される。
【０１７７】
キャラクタ一時記憶領域５６４２は、ゲーム装置１０に一時的（仮に）登録されたキャラクタについてのキャラクタ情報データを記憶する。つまり、プレイヤによって本登録することや削除することが決定されていないキャラクタについてのキャラクタ情報データが記憶されているのである。ただし、このキャラクタ情報データは、他のゲーム装置１０等から受信したものである。このキャラクタ一時記憶領域５６４２に記憶可能なキャラクタ情報データの数も予め決定されている。この実施例では、最大で１０００体のキャラクタについてのキャラクタ情報データを記憶することができる。このキャラクタ一時記憶領域５６４２に記憶されているキャラクタ情報データは、プレイヤの操作のみによって、本登録記憶領域５６４０に移動されるが、新しいキャラクタ情報データを記憶する際に、最大数を超える場合には、最も古いキャラクタ情報データが自動的に削除される。ただし、プレイヤの操作によって削除されることもある。
【０１７８】
送信データ記憶領域５６４４は、すれ違い通信処理において、他のゲーム装置１０に送信することが設定されたキャラクタのキャラクタ情報データを記憶する。この実施例では、プレイヤが選択したキャラクタについてのキャラクタ情報データの複製が、送信データ記憶領域５６４４に記憶される。また、送信データ記憶領域５６４４に記憶されたキャラクタ情報データの複製が他のゲーム装置１０等に送信されるため、複数のゲーム装置１０等との間でキャラクタ情報データを交換することができる。
【０１７９】
コード画像データ記憶領域５６４６は、ＱＲコードを画面表示したり、コード画像データをメモリカード２６、２８に出力したりする際に生成されるコード画像データを記憶する。暗号化キャラクタ情報データ記憶領域５４６８は、コード出力処理において、暗号化されたキャラクタ情報データを記憶する。
【０１８０】
なお、上述したように、交換することにより得たキャラクタ画像データは、キャラクタ一時記憶領域５６４２に記憶される。
【０１８１】
図９は、方法（１）が選択された場合に、２つのゲーム装置１０の間でキャラクタ情報データが送受信される処理（キャラクタ送受信処理（１））を示す。ただし、説明の便宜上、キャラクタ情報データを送信する側のゲーム装置１０をゲーム装置Ａとし、キャラクタ情報データを受信する側のゲーム装置１０をゲーム装置Ｂとする。また、この実施例では、キャラクタ情報データを交換するため、一方のゲーム装置１０がゲーム装置Ａとなり、他方のゲーム装置１０がゲーム装置Ｂとなり、キャラクタ送受信処理（１）が実行された後に、一方のゲーム装置１０がゲーム装置Ｂとなり、他方のゲーム装置１０がゲーム装置Ａとなり、キャラクタ送受信処理（１）が実行される。ただし、通信相手をサーチする処理については、この送受信処理（１）が開始される前に実行されているもとする。これらのことは、後述する方法（２）の場合についても同じである。
【０１８２】
なお、キャラクタ情報データを交換しない場合には、送信側のゲーム装置１０をゲーム装置Ａとし、受信側のゲーム装置１０をゲーム装置Ｂとすることにより、キャラクタ送受信処理（１）を一度実行すればよい。
【０１８３】
図９に示すように、キャラクタ送受信処理（１）を開始すると、ゲーム装置ＡのＣＰＵ５０は、ステップＳ１で、所有するキャラクタを生成する。つまり、キャラクタ本登録記憶領域５６４０およびキャラクタ一時記憶領域５６４２に記憶されるすべてのキャラクタ情報データの各々についてのキャラクタを生成する。以下、所有するキャラクタを生成する場合について同じ。
【０１８４】
次のステップＳ３では、図５（Ａ）に示したようなキャラクタ選択画面１００を第２ＬＣＤ１８に表示する。続くステップＳ５では、キャラクタが選択されたかどうかを判断する。
【０１８５】
ステップＳ５で“ＮＯ”であれば、つまりキャラクタが選択されていなければ、同じステップＳ５に戻る。一方、ステップＳ５で“ＹＥＳ”であれば、つまりキャラクタが選択されれば、ステップＳ７で、送信可能かどうかを判断する。ここでは、ＣＰＵ５０は、選択されたキャラクタのキャラクタ情報データを参照して、送信許可フラグが送信可能な状態を示すかどうかを判断する。
【０１８６】
なお、ステップＳ７では、送信許可フラグのみに基づいて送信可能かどうかを判断するようにしてあるが、さらに、ＮＧワードチェック結果フラグに基づいて送信可能かどうかを判断するようにしてもよい。また、すれ違い通信（方法（２））の場合と同様に、自分が作成したキャラクタのみを送信可能にする場合には、作成者のＩＤ（ＭＡＣアドレス）とゲーム装置１０についてのＭＡＣアドレスとが一致するかどうかを判断するようにしてもよい。これらのことは、後述するコード出力処理（１）およびコード出力処理（２）についても同じである（図１３、図１４参照）。
【０１８７】
ステップＳ７で“ＮＯ”であれば、つまり送信不能であれば、ステップＳ５に戻る。ただし、このとき、キャラクタを選択できない旨と別のキャラクタを選択するべき旨のメッセージが画面表示される。一方、ステップＳ７で“ＹＥＳ”であれば、つまり送信可能であれば、ステップＳ９で、選択されたキャラクタについてのキャラクタ情報データを通信相手の他のゲーム装置１０（ここでは、ゲーム装置Ｂ）に送信する。
【０１８８】
すると、ゲーム装置ＢのＣＰＵ５０は、ステップＳ１１で、キャラクタ情報データを受信し、ステップＳ１３で、当該キャラクタ情報データからキャラクタを生成し、つまりキャラクタの画像を描画し、ステップＳ１５で、生成したキャラクタを表示する。つまり、図５（Ｂ）に示した受信キャラクタ表示画面２００が第２ＬＣＤ１８に表示される。
【０１８９】
次のステップＳ１７では、保存するかどうかを判断する。つまり、ＣＰＵ５０は、ボタン画像２１０がオンされたか、またはボタン画像２１２がオンされたかを判断する。ステップＳ１７で“ＮＯ”であれば、つまり保存しない場合には、ステップＳ１９で、当該キャラクタ情報データを削除して、キャラクタ送受信処理（１）を終了する。一方、ステップＳ１７で“ＹＥＳ”であれば、つまり保存する場合には、ステップＳ２１で、当該キャラクタ情報データを本登録記憶領域５６４０に記憶して、キャラクタ送受信処理（１）を終了する。厳密に言うと、受信されたキャラクタ情報データは、送受信データバッファ５２４ｂに一時記憶されているため、ステップＳ２１では、この一時記憶されているキャラクタ情報データが、キャラクタ本登録記憶領域５６４０に移動（記憶）される。
【０１９０】
図示は省略するが、受信したキャラクタ情報データが保存された場合には、その後、既にゲーム装置１０に本登録され、第１ＬＣＤ１６に表示されているキャラクタに追加されるように、受信したキャラクタ情報データについてのキャラクタが表示される。このことは、後述するキャラクタ取得処理（１）およびキャラクタ取得処理（２）についても同様である。
【０１９１】
なお、図９に示すキャラクタ送受信処理（１）では、キャラクタ情報データを送信する際に、当該キャラクタ情報データ（キャラクタ）を送信可能かどうかを判断するようにしたが、ステップＳ１で、所有するキャラクタを生成する際に、送信可能かどうかを判断し、送信不可のキャラクタについては、ステップＳ３で、キャラクタ選択画面に表示しないようにしてもよい。
【０１９２】
図１０は、上述した方法（２）が選択された場合に、２つのゲーム装置１０間で実行されるキャラクタ送受信処理（２）を示すフロー図である。図１０に示すように、キャラクタ送受信処理（２）を開始すると、ゲーム装置ＡのＣＰＵ５０は、ステップＳ３１で、送信データ記憶領域５６４に記憶されたキャラクタ情報データが送信可能かどうかを判断する。ここでは、ＣＰＵ５０は、キャラクタ情報データが示すキャラクタ情報に含まれる送信許可フラグを参照して、送信可能な状態であるかどうかを判断する。また、ＣＰＵ５０は、作成者のＩＤを参照して、ゲーム装置１０のＭＡＣアドレスと一致するかどうかに基づいて、このゲーム装置１０で作成されたキャラクタであるかどうかを判断する。
【０１９３】
なお、上述したように、さらにＮＧワードチェック結果フラグを参照して、送信可能かどうかを判断するようにしてもよい。
【０１９４】
また、図１０に示す例では、キャラクタ情報データを送信する際に、送信可能かどうかを判断するようにしたが、送信対象を選択するためのキャラクタ選択画面１００を表示する際に、送信可能でないキャラクタを表示しないようにしてもよい。
【０１９５】
ステップＳ３１で“ＮＯ”であれば、つまり送信可能でなければ、そのまま送受信処理（２）を終了する。一方、ステップＳ３１で“ＹＥＳ”であれば、つまり送信可能であれば、ステップＳ３３で、送信データ記憶領域５６４４に記憶されたキャラクタ情報データをゲーム装置Ｂに送信する。すると、ゲーム装置ＢのＣＰＵ５０は、ステップＳ３４で、キャラクタ情報データを受信し、ステップＳ３７で、当該キャラクタ情報データをキャラクタ一時記憶領域５６４２に記憶して、キャラクタ送受信処理を終了する。
【０１９６】
なお、上述したように、方法（２）の場合に、送受信されたキャラクタ情報データに基づくキャラクタは、スリープモードから通常モードに移行したときに、生成および表示される。
【０１９７】
図１１は、すれ違い通信処理によって受信されたキャラクタ情報データを本登録するための登録処理のフロー図である。この登録処理は、スリープモードから通常モードに移行したときに、スリープ中にキャラクタ情報データを受信していた場合に実行される。
【０１９８】
図１１に示すように、ＣＰＵ５０は、登録処理を開始すると、ステップＳ４１で、キャラクタ一時記憶領域５６４２に記憶されたキャラクタ情報データからキャラクタを生成する。ここでは、直前のスリープモードにおいて受信されたすべてのキャラクタ情報データに基づくキャラクタが生成される。次のステップＳ４３では、ステップＳ４１で生成したキャラクタを表示する。
【０１９９】
続いて、ステップＳ４５では、キャラクタ本登録記憶領域５６４０への移動が指示されたかどうかを判断する。ステップＳ４５で“ＮＯ”であれば、つまりキャラクタ本登録記憶領域５６４０への移動が指示されていなければ、そのままステップＳ４９に進む。一方、ステップＳ４５で“ＹＥＳ”であれば、つまりキャラクタ本登録記憶領域５６４０への移動が指示されれば、ステップＳ４７で、当該キャラクタ情報データをキャラクタ一時記憶領域５６４２からキャラクタ本登録記憶領域５６４０に移動して、ステップＳ４９に進む。つまり、ステップＳ４７では、ＣＰＵ５０は、当該キャラクタ情報データの複製をキャラクタ本登録記憶領域５６４０に記憶した後、当該キャラクタ情報データをキャラクタ一時記憶領域５６４２から消去する。
【０２００】
ステップＳ４９では、終了かどうかを判断する。つまり、ＣＰＵ５０は、直前のスリープモードにおけるすれ違い通信より受信したすべてのキャラクタ情報データについて登録処理（Ｓ４５およびＳ４７）を終了したり、プレイヤによって登録終了の指示が入力されたりしたかどうかを判断する。ステップＳ４９で“ＮＯ”であれば、つまり終了でなければ、ステップＳ４５に戻る。一方、ステップＳ４９で“ＹＥＳ”であれば、つまり終了であれば、登録処理を終了する。
【０２０１】
なお、この実施例では、図１１に示す登録処理では、直前のスリープモードにおいて受信されたキャラクタ情報データのみを本登録するかどうかの対象にしたが、キャラクタ一時記憶領域５６４２に記憶されているすべてのキャラクタ情報データを本登録するかどうかの対象にしてもよい。このようにすれば、一旦本登録しないことが選択されたキャラクタ情報データについても、後に本登録することができる。ただし、かかる場合には、登録処理を、スリープモードから通常モードに移行したときだけでなく、プレイヤの指示に従って実行するようにしてもよい。
【０２０２】
図１２は、キャラクタ取得処理（１）を示すフロー図である。図１２に示すように、ＣＰＵ５０は、キャラクタ取得処理（１）を開始すると、ステップＳ６１で、ＱＲコードを撮像する。ＱＲコードの撮像処理については上述したとおりである。次のステップＳ６３では、撮像したＱＲコードから、暗号化されたキャラクタ情報データを抽出する。つまり、ＣＰＵ５０は、ＱＲコードを撮像した撮像画像を解読して、暗号化されたキャラクタ情報データに変換する。続いて、ステップＳ６５では、暗号化されたキャラクタ情報データを復号し、ステップＳ６７で、復号したキャラクタ情報データからキャラクタを生成し、ステップＳ６９で、キャラクタを表示する。つまり、図５（Ｂ）に示したような受信キャラタ表示画面２００と同様の登録画面（図示せず）が第２ＬＣＤ１８に表示される。
【０２０３】
続くステップＳ７１では、ＱＲコードから取得したキャラクタ情報データを保存するかどうかを判断する。つまり、プレイヤによって保存することが指示（決定）されたか、保存しないことが指示されたかを判断する。ステップＳ７１で“ＮＯ”であれば、つまりＱＲコードから取得したキャラクタ情報データを保存しない場合には、ステップＳ７３で、当該キャラクタ情報データをキャラクタ本登録記憶領域５６４０に記憶して、キャラクタ取得処理（１）を終了する。
【０２０４】
図１３はコード出力処理（１）を示すフロー図である。図１３に示すように、ＣＰＵ５０は、コード出力処理（１）を開始すると、ステップＳ８１で、所有するキャラクタを生成する。次のステップＳ８３では、図５（Ａ）に示したようなキャラクタ選択画面１００を第２ＬＣＤ１８に表示する。続くステップＳ８５では、キャラクタが選択されたかどうかを判断する。
【０２０５】
ステップＳ８５で“ＮＯ”であれば、同じステップＳ８５に戻る。一方、ステップＳ８５で“ＹＥＳ”であれば、ステップＳ８７で、送信可能（出力可能）かどうか判断する。つまり、ＣＰＵ５０は、選択されたキャラクタについてのキャラクタ情報データを参照し、送信許可フラグが送信可能な状態であるかどうかを判断する。
【０２０６】
ただし、上述したように、さらに、作成者のＩＤやＮＧワードチェック結果フラグに基づいて、送信可能（出力可能）かどうかを判断してもよい。
【０２０７】
ステップＳ８７で“ＮＯ”であれば、つまり送信不能であれば、そのままステップＳ８５に戻る。図示は省略するが、このとき、キャラクタを選択できない旨と他のキャラクタを選択すべき旨のメッセージが画面表示される。これは、後述するコード出力処理（２）についても同じである。一方、ステップＳ８７で“ＹＥＳ”であれば、つまり送信可能であれば、ステップＳ８９で、選択されたキャラクタについてのキャラクタ情報データを暗号化する。図示は省略するが、このとき、暗号化されたキャラクタ情報データは、暗号化キャラクタ情報データ記憶領域５６４８に記憶される。
【０２０８】
次のステップＳ９１では、暗号化されたキャラクタ情報データを用いて、ＱＲコードの画像データ（コード画像データ）を生成する。続くステップＳ９３では、生成したコード画像データをコード画像データ記憶領域５６４６に記憶する。そして、ステップＳ９５で、ＱＲコードを表示して、コード出力処理（１）を終了する。たとえば、ステップＳ９５では、コード画像データ記憶領域５６４６に記憶されたコード画像データを用いて、ゲーム装置１０の第１ＬＣＤ１６にＱＲコードが表示される。
【０２０９】
なお、図１３では、キャラクタを選択した際に、送信可能（出力可能）かどうかを判断するようにしたが、所有するキャラクタを生成する際に、出力可能かどうかを判断して、出力不可のキャラクタについてはキャラクタ選択画面に表示せずに、選択できないようにしておいてもよい。このことは、コード出力処理（２）についても同じである。
【０２１０】
図１４はコード出力処理（２）を示すフロー図である。図１４に示すように、ＣＰＵ５０は、コード出力処理（２）を開始すると、ステップＳ１０１で、所有するキャラクタを生成する。次のステップＳ１０３では、図５（Ａ）に示したようなキャラクタ選択画面１００を第２ＬＣＤ１８に表示する。続くステップＳ１０５では、キャラクタが選択されたかどうかを判断する。
【０２１１】
ステップＳ１０５で“ＮＯ”であれば、同じステップＳ１０５に戻る。一方、ステップＳ１０５で“ＹＥＳ”であれば、ステップＳ１０７で、送信可能（出力可能）かどうかを判断する。ステップＳ１０７で“ＮＯ”であれば、そのままステップＳ１０５に戻る。一方、ステップＳ１０７で“ＹＥＳ”であれば、ステップＳ１０９で、選択されたキャラクタについてのキャラクタ情報データを暗号化する。このとき、暗号化されたキャラクタ情報データは、暗号化キャラクタ情報データ記憶領域５４６８に記憶される。
【０２１２】
次のステップＳ１１１では、暗号化されたキャラクタ情報データを用いてＱＲコードのコード画像データを生成する。続くステップＳ１１３では、生成したコード画像データをコード画像データ記憶領域５６４６に記憶する。そして、ステップＳ１１５で、ＱＲコードの画像データを出力して、コード出力処理（２）を終了する。たとえば、ステップＳ１１５では、ゲーム装置１０に装着されたメモリカード２６、２８にＱＲコードのコード画像データが出力される（書き込まれる）。
【０２１３】
なお、この実施例では、ＱＲコードの出力方法ないし出力先の違いに応じて異なる出力処理を実行するようにしてあるが、コード画像データを生成するまでは同じ処理であるため、コード画像データを生成した後に、ＱＲコードを表示するか、または、そのコード画像データをメモリカード２６、２８に出力するかを選択するようにして、コード出力処理を１つにまとめることも可能である。
【０２１４】
図１５はキャラクタ取得処理（２）を示すフロー図である。図１５に示すように、ＣＰＵ５０は、キャラクタ取得処理（２）を開始すると、ステップＳ１２１で、アプリケーションの指示により、キャラクタ情報データからキャラクタを生成する。詳細な説明は省略するが、ここでは、ＣＰＵ５０は、メモリカード２６、２８に記憶されているキャラクタ情報データからキャラクタを生成する。次のステップＳ１２３では、生成したキャラクタを表示する。ここでは、図５（Ｂ）に示した受信キャラクタ表示画面２００と同様の登録画面（図示せず）が表示される。この登録画面は、ＱＲコードからキャラクタを取得する場合と同様の画面である。したがって、重複した説明は省略する。
【０２１５】
続いて、ステップＳ１２５では、保存するかどうかを判断する。ステップＳ１２５で“ＮＯ”であれば、つまり保存しない場合には、そのままキャラクタ取得処理（２）を終了する。一方、ステップＳ１２５で“ＹＥＳ”であれば、つまり保存する場合には、ステップＳ１２７で、キャラクタ情報データの複製をメモリカード２６、２８から読み出して、キャラクタ本登録記憶領域５６４０に記憶して、キャラクタ取得処理（２）を終了する。
【０２１６】
この実施例によれば、通信によらないで、キャラクタを取得することができるため、通信環境を整えることができないプレイヤであっても、たとえば、ＱＲコードが印刷された書籍やカードなどの印刷物或いはＱＲコードの画像データが記憶されたメモリカードを入手することにより、キャラクタを収集することができる。つまり、より多くのユーザが新規のキャラクタを取得することができる。
【０２１７】
なお、この実施例では、ＱＲコードを用いるようにしてあるが、バーコードなどの他の情報を用いるようにしてもよい。
【０２１８】
また、この実施例では、スリープモードが設定されているときに、すれ違い通信処理を実行するようにしたが、電源をオンしている状態で、プレイヤがゲーム装置を使用していないときに、すれ違い通信処理を実行するようにしてもよい。
【０２１９】
さらに、この実施例では、キャラクタ画像データをメインメモリに記憶するようにしたが、対応するキャラクタ情報データに関連付けて同じ記憶領域（５６４０、５６４２）に記憶するようにしてもよい。かかる場合には、一度生成したキャラクタ（キャラクタ画像データ）を用いることにより、次回以降のキャラクタの生成や表示の処理負荷を軽減することができる。
【０２２０】
さらにまた、ゲーム装置の構成は実施例のものに限定される必要はない。たとえば、カメラは、１つでもよく、無くてもよい。また、タッチパネルを２つのＬＣＤ上に設けてもよい。
【０２２１】
また、この実施例では、携帯ゲーム装置同士が通信する場合について説明したが、この実施例の似顔絵ゲームのプログラムを記憶するものであれば、携帯電話機、ＰＤＡなど、持ち運びが容易な他の携帯情報端末にも適用可能である。同様に、この実施例の似顔絵ゲームのプログラムを記憶する、据置型のゲーム装置や汎用のコンピュータにも適用可能である。つまり、通信相手は、所定の電子機器ないし所定のコンピュータである。
【符号の説明】
【０２２２】
１０  …ゲーム装置
１２，１４  …ハウジング
１６，１８  …ＬＣＤ
２０  …操作ボタン
２２  …タッチパネル
２４  …タッチペン
２６，２８  …メモリカード
３２，３４  …カメラ
５０  …ＣＰＵ
５２  …メインメモリ
５４  …メモリ制御回路
５６  …保存用データメモリ
５８  …プリセットデータ用メモリ
６０，６２  …メモリカードＩ／Ｆ
６４  …無線通信モジュール
６６  …ローカル通信モジュール
６８  …マイコン
６８ａ  …メモリ
６８ｂ  …ＲＴＣ
７０  …電源回路
７２  …Ｉ／Ｆ回路
７４，７６  …ＧＰＵ
７８，８０  …ＶＲＡＭ
８２  …ＬＣＤコントローラ
８４  …マイク
８８  …加速度センサ
【図１】
2011255111.tif 000003
【図２】
2011255111.tif 000004
【図３】
2011255111.tif 000005
【図４】
2011255111.tif 000006
【図５】
2011255111.tif 000007
【図６】
2011255111.tif 000008
【図７】
2011255111.tif 000009
【図８】
2011255111.tif 000010
【図９】
2011255111.tif 000011
【図１０】
2011255111.tif 000012
【図１１】
2011255111.tif 000013
【図１２】
2011255111.tif 000014
【図１３】
2011255111.tif 000015
【図１４】
2011255111.tif 000016
【図１５】
2011255111.tif 000017