JP5883962B2 - COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM - Google Patents

COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM Download PDF

Info

Publication number
JP5883962B2
JP5883962B2 JP2015040354A JP2015040354A JP5883962B2 JP 5883962 B2 JP5883962 B2 JP 5883962B2 JP 2015040354 A JP2015040354 A JP 2015040354A JP 2015040354 A JP2015040354 A JP 2015040354A JP 5883962 B2 JP5883962 B2 JP 5883962B2
Authority
JP
Japan
Prior art keywords
data
transmission
master
transmission data
stored
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015040354A
Other languages
Japanese (ja)
Other versions
JP2015133735A (en
Inventor
学 岡島
学 岡島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nintendo Co Ltd
Original Assignee
Nintendo Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nintendo Co Ltd filed Critical Nintendo Co Ltd
Priority to JP2015040354A priority Critical patent/JP5883962B2/en
Publication of JP2015133735A publication Critical patent/JP2015133735A/en
Application granted granted Critical
Publication of JP5883962B2 publication Critical patent/JP5883962B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、複数のデータを効率よく送信する通信制御装置、通信制御プログラム、通信制御方法、および、情報処理システムに関する。   The present invention relates to a communication control device, a communication control program, a communication control method, and an information processing system that efficiently transmit a plurality of data.

従来、複数のデータを1つのフレームに含めて送信する装置が存在する。例えば、特許文献1では、送信側は1つのフレームに1つの受信側において用いられる複数のデータを含めて送信し、受信側は当該フレームを受信する。   2. Description of the Related Art Conventionally, there are apparatuses that transmit a plurality of pieces of data in one frame. For example, in Patent Document 1, the transmitting side transmits a single frame including a plurality of data used on one receiving side, and the receiving side receives the frame.

特開2003−256246号公報JP 2003-256246 A

しかしながら、特許文献1に記載の装置では、上記複数のデータの送信先は単一の受信側に限られる。   However, in the apparatus described in Patent Document 1, the transmission destination of the plurality of data is limited to a single reception side.

それ故、本発明の目的は、送信先の異なる複数のデータを効率よく送信することが可能な通信制御装置、通信制御プログラム、通信制御方法、および、情報処理システムを提供することである。   SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide a communication control device, a communication control program, a communication control method, and an information processing system that can efficiently transmit a plurality of data with different transmission destinations.

本発明は、上記の課題を解決するために、以下の構成を採用した。   The present invention employs the following configuration in order to solve the above problems.

本発明は、通信機能を有する情報処理装置のコンピュータにおいて実行される通信制御プログラムである。通信制御プログラムは、上記コンピュータを、送信データ生成手段と、送信手段として機能させる。送信データ生成手段は、送信先の異なる複数のデータを含む送信データを生成する。送信手段は、上記送信データをブロードキャストまたはマルチキャストで送信する。   The present invention is a communication control program executed in a computer of an information processing apparatus having a communication function. The communication control program causes the computer to function as transmission data generation means and transmission means. The transmission data generation means generates transmission data including a plurality of data with different transmission destinations. The transmission means transmits the transmission data by broadcast or multicast.

上記によれば、送信先の異なる複数のデータをまとめて送信することができる。これにより、個々のデータを別々に送信するよりも、効率よく複数のデータを複数の機器に対して送信することができる。   According to the above, a plurality of data with different transmission destinations can be transmitted together. Thereby, it is possible to efficiently transmit a plurality of data to a plurality of devices, rather than transmitting individual data separately.

本発明の他の構成では、上記送信データ生成手段は、各データごとの送信先情報を上記送信データに含ませてもよい。   In another configuration of the present invention, the transmission data generation means may include transmission destination information for each data in the transmission data.

上記によれば、各データに加えて当該各データの送信先情報を送信することができる。   According to the above, transmission destination information of each data can be transmitted in addition to each data.

本発明の他の構成では、通信制御プログラムは、取得手段と、格納制御手段としてさらに機能させてもよい。取得手段は、上記複数のデータを順次取得する。格納制御手段は、上記取得手段が取得したデータを記憶手段に順次格納する。上記送信データ生成手段は、上記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む上記送信データを生成する。   In another configuration of the present invention, the communication control program may further function as an acquisition unit and a storage control unit. The acquisition unit sequentially acquires the plurality of data. The storage control means sequentially stores the data acquired by the acquisition means in the storage means. The transmission data generation unit generates the transmission data including at least two data stored in the storage unit and transmission destination information of each of the at least two data.

上記によれば、順次取得されたデータを一時的に記憶手段に格納し、格納した複数のデータをまとめて送信することができる。   According to the above, sequentially acquired data can be temporarily stored in the storage means, and a plurality of stored data can be transmitted together.

本発明の他の構成では、上記通信制御プログラムは、上記記憶手段に格納されたデータを送信するための所定の条件が満たされたか否かを判定する第1判定手段として、上記コンピュータを機能させてもよい。上記送信データ生成手段は、上記第1判定手段によって上記所定の条件が満たされたと判定された場合、上記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む上記送信データを生成する。上記送信手段は、上記送信データ生成手段が生成した送信データを送信する。   In another configuration of the present invention, the communication control program causes the computer to function as a first determination unit that determines whether or not a predetermined condition for transmitting data stored in the storage unit is satisfied. May be. The transmission data generation means, when it is determined that the predetermined condition is satisfied by the first determination means, at least two data stored in the storage means and respective transmission destination information of the at least two data The transmission data including is generated. The transmission means transmits the transmission data generated by the transmission data generation means.

上記によれば、所定の条件が満たされた場合、記憶手段に格納されたデータを送信することができる。これにより、例えば、データが遅延することを防止することができる。   According to the above, when a predetermined condition is satisfied, the data stored in the storage unit can be transmitted. Thereby, for example, it is possible to prevent data from being delayed.

本発明の他の構成では、上記通信制御プログラムは、上記記憶手段に格納されてから所定時間が経過したデータが存在するか否かを判定する第2判定手段として、上記コンピュータをさらに機能させてもよい。上記送信データ生成手段は、上記第2判定手段によって上記所定時間が経過したデータが存在すると判定された場合、上記所定時間が経過したデータを少なくとも含む上記送信データを生成する。上記送信手段は、上記送信データ生成手段が生成した送信データを送信する。   In another configuration of the present invention, the communication control program causes the computer to further function as second determination means for determining whether or not there is data for which a predetermined time has elapsed since storage in the storage means. Also good. The transmission data generation unit generates the transmission data including at least the data for which the predetermined time has elapsed when the second determination unit determines that there is data for which the predetermined time has elapsed. The transmission means transmits the transmission data generated by the transmission data generation means.

上記によれば、データが格納されてから所定時間が経過すると当該データは送信される。これにより、データの遅延を防止することができる。   According to the above, when a predetermined time has elapsed since the data was stored, the data is transmitted. As a result, data delay can be prevented.

本発明の他の構成では、上記記憶手段は、所定のサイズを有し、上記格納制御手段は、上記取得手段が取得したデータを上記記憶手段に格納可能か否かを判定する。上記送信データ生成手段は、上記格納制御手段によって上記データを格納不可能と判定された場合、上記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む上記送信データを生成する。上記送信手段は、上記送信データ生成手段が生成した送信データを送信する。   In another configuration of the invention, the storage means has a predetermined size, and the storage control means determines whether or not the data acquired by the acquisition means can be stored in the storage means. The transmission data generation means includes at least two data stored in the storage means and each destination information of the at least two data when the storage control means determines that the data cannot be stored. The transmission data is generated. The transmission means transmits the transmission data generated by the transmission data generation means.

上記によれば、例えば、記憶手段の空き容量が小さくデータを記憶することができない場合、記憶手段に格納したデータを送信することができる。ある程度まとまった複数のデータをまとめて送信することができ、データを効率的に送信することができる。   According to the above, for example, when the free space of the storage unit is small and data cannot be stored, the data stored in the storage unit can be transmitted. A plurality of pieces of data collected to some extent can be transmitted together, and the data can be transmitted efficiently.

本発明の他の構成では、上記通信制御プログラムは、上記取得手段によって取得されたデータを即時送信するか否かを判定する第3判定手段として、上記コンピュータをさらに機能させてもよい。上記送信データ生成手段は、上記第3判定手段によって上記データを即時送信すると判定された場合、当該データを含む上記送信データを生成する。上記送信手段は、上記送信データ生成手段が生成した送信データを送信する。   In another configuration of the present invention, the communication control program may cause the computer to further function as a third determination unit that determines whether to immediately transmit the data acquired by the acquisition unit. The transmission data generation unit generates the transmission data including the data when the third determination unit determines to transmit the data immediately. The transmission means transmits the transmission data generated by the transmission data generation means.

上記によれば、取得したデータを即時に送信することができる。これにより、例えば、遅延させたくないデータを即時に送信することができる。   According to the above, the acquired data can be transmitted immediately. Thereby, for example, data that is not desired to be delayed can be transmitted immediately.

本発明の他の構成では、上記取得手段は、他の情報処理装置から送られたデータを取得してもよい。上記送信データ生成手段は、上記複数のデータのそれぞれの送信元情報を上記送信データにさらに含める。   In another configuration of the present invention, the acquisition unit may acquire data sent from another information processing apparatus. The transmission data generation means further includes transmission source information of each of the plurality of data in the transmission data.

上記によれば、他の装置から送信されたデータに送信元情報を含めて送信することができる。   According to the above, it is possible to transmit the data transmitted from another device by including the transmission source information.

本発明の他の構成では、上記通信制御プログラムは、他の情報処理装置から送られた上記送信データを受信し、当該送信データに含まれる上記送信先情報に基づいて、少なくとも自機宛のデータを取り出すデータ取り出し手段として、上記コンピュータをさらに機能させてもよい。   In another configuration of the present invention, the communication control program receives the transmission data transmitted from another information processing apparatus, and based on the transmission destination information included in the transmission data, at least data addressed to itself The computer may further function as data fetching means for fetching the data.

上記によれば、他の装置から送信された送信データに含まれる複数のデータのうち、少なくとも自機宛のデータを取り出すことができる。   According to the above, at least data destined for the own device can be extracted from among a plurality of data included in transmission data transmitted from another device.

本発明の他の構成では、上記格納制御手段は、上記取得手段が取得したデータを第1記憶領域または第2記憶領域に格納してもよい。上記送信データ生成手段は、上記第1記憶領域および上記第2記憶領域の何れか一方に格納された少なくとも2つのデータを含む上記送信データを生成する。   In another configuration of the present invention, the storage control means may store the data acquired by the acquisition means in the first storage area or the second storage area. The transmission data generation means generates the transmission data including at least two data stored in any one of the first storage area and the second storage area.

上記によれば、取得したデータを異なる2つの記憶領域に格納することができる。   According to the above, the acquired data can be stored in two different storage areas.

本発明の他の構成では、上記取得手段が取得する各データは、送信先で処理可能なひとまとまりのデータであってもよい。   In another configuration of the present invention, each piece of data acquired by the acquisition unit may be a group of data that can be processed at a transmission destination.

上記によれば、送信先で処理可能なひとまとまりのデータを複数取得して、当該複数のデータをまとめて送信することができる。これにより、効率よくデータを送信することができる。   Based on the above, it is possible to acquire a plurality of pieces of data that can be processed at the transmission destination and transmit the plurality of data collectively. Thereby, data can be transmitted efficiently.

本発明の他の構成では、上記送信データ生成手段は、上記送信先情報をフレームのデータ部分に含て上記送信データを生成してもよい。   In another configuration of the present invention, the transmission data generation means may generate the transmission data by including the transmission destination information in a data portion of a frame.

上記によれば、上記送信先情報をフレームのデータ部分に含めることができる。   According to the above, the transmission destination information can be included in the data portion of the frame.

本発明の他の構成では、上記送信データ生成手段は、上記送信元情報をフレームのデータ部分に含めて上記送信データを生成してもよい。   In another configuration of the present invention, the transmission data generation means may generate the transmission data by including the transmission source information in a data portion of a frame.

上記によれば、上記送信元情報をフレームのデータ部分に含めることができる。   According to the above, the transmission source information can be included in the data portion of the frame.

また、本発明は、上記通信制御プログラムを実行する通信制御装置の形態で実施されてもよい。また、本発明は、通信制御方法であってもよい。   The present invention may also be implemented in the form of a communication control device that executes the communication control program. Further, the present invention may be a communication control method.

本発明の他の構成は、通信機能を有する第1情報処理装置と第2情報処理装置とを含む情報処理システムである。上記第1情報処理装置は、送信データ生成手段と、送信手段とを含む。送信データ生成手段は、送信先の異なる複数のデータを含む送信データを生成する。送信手段は、上記送信データをブロードキャストまたはマルチキャストで送信する。また、上記第2情報処理装置は、上記送信データを受信し、少なくとも当該送信データに含まれる自機宛のデータを取り出すデータ取り出し手段を含む。   Another configuration of the present invention is an information processing system including a first information processing apparatus and a second information processing apparatus having a communication function. The first information processing apparatus includes transmission data generation means and transmission means. The transmission data generation means generates transmission data including a plurality of data with different transmission destinations. The transmission means transmits the transmission data by broadcast or multicast. In addition, the second information processing apparatus includes a data extracting unit that receives the transmission data and extracts at least data addressed to the own device included in the transmission data.

上記によれば、第1情報処理装置は、送信先の異なる複数のデータをまとめて複数の機器に送信することができ、効率よく複数のデータを送信することができる。また、第2情報処理装置は、上記送信データを受信して自機宛のデータを取り出すことができる。   Based on the above, the first information processing apparatus can collectively transmit a plurality of data with different transmission destinations to a plurality of devices, and can efficiently transmit the plurality of data. Further, the second information processing apparatus can receive the transmission data and take out data destined for the own apparatus.

本発明の他の構成は、通信機能を有する情報処理装置のコンピュータにおいて実行される通信制御プログラムである。当該通信制御プログラムは、前記コンピュータを、送信データ生成手段と、送信手段として機能させる。送信データ生成手段は、送信先の異なる複数のデータを含む送信データを生成する。送信手段は、所定の宛先アドレスを指定して前記送信データを送信する。   Another configuration of the present invention is a communication control program executed in a computer of an information processing apparatus having a communication function. The communication control program causes the computer to function as transmission data generation means and transmission means. The transmission data generation means generates transmission data including a plurality of data with different transmission destinations. The transmission means transmits the transmission data by designating a predetermined destination address.

上記によれば、例えば、所定の宛先アドレスとしてブロードキャストアドレスが指定された場合、上記複数のデータをネットワーク全体に送信することができる。また、例えば、所定の宛先アドレスとしてユニキャストアドレスが指定された場合、上記複数のデータを1つの機器に送信することができる。   According to the above, for example, when a broadcast address is designated as a predetermined destination address, the plurality of data can be transmitted to the entire network. For example, when a unicast address is designated as a predetermined destination address, the plurality of data can be transmitted to one device.

本発明によれば、送信先の異なる複数のデータを効率よく送信することができる。   According to the present invention, it is possible to efficiently transmit a plurality of data having different transmission destinations.

開状態におけるゲーム装置10の正面図Front view of game device 10 in the open state 閉状態におけるゲーム装置10の左側面図、正面図、右側面図および背面図Left side view, front view, right side view, and rear view of game device 10 in the closed state ゲーム装置10の内部構成を示すブロック図Block diagram showing the internal configuration of the game apparatus 10 本実施形態に係るゲームが実行される際に複数のゲーム装置10によって構成されるネットワークを示す図The figure which shows the network comprised by the some game device 10 when the game which concerns on this embodiment is performed. 本実施形態に係るゲームが実行された場合にゲーム装置の上側LCD22に表示される画像の一例を示す図The figure which shows an example of the image displayed on upper LCD22 of a game device when the game which concerns on this embodiment is performed. マスターにおいて生成されるクライアントの登録テーブル80を示す図The figure which shows the registration table 80 of the client produced | generated in a master 各ゲーム装置10のメモリ(メインメモリ32や無線通信モジュール36内のメモリ等)のメモリマップを示す図The figure which shows the memory map of the memory (The memory in the main memory 32, the wireless communication module 36, etc.) of each game device 10. 各ゲーム装置10において実行される設定処理の流れを示すフローチャートA flowchart showing a flow of setting processing executed in each game device 10 マスターによって定期的に送信されるビーコンのフレームフォーマットを示す図Diagram showing the frame format of beacons periodically transmitted by the master ステップS5において画面に表示される画像の一例を示す図The figure which shows an example of the image displayed on a screen in step S5 マスターとして機能するゲーム装置10の処理(マスター処理)の詳細を示すフローチャートA flowchart showing details of processing (master processing) of game device 10 functioning as a master クライアントとして機能するゲーム装置10の処理(クライアント処理)の詳細を示すフローチャートA flowchart showing details of processing (client processing) of the game apparatus 10 functioning as a client オーディエンスとして機能するゲーム装置10の処理(オーディエンス処理)の詳細を示すフローチャートThe flowchart which shows the detail of the process (audience process) of the game device 10 which functions as an audience 各ゲーム装置10の状態の遷移を示す図The figure which shows the transition of the state of each game device 10 マスターのデータ送信処理の概要を示す図Diagram showing the master data transmission process マスターから送信されたフレームをクライアントが受信した場合、クライアントで行われる受信処理の概要を示す図The figure which shows the outline of the reception processing performed by the client when the client receives the frame transmitted from the master. マスターにおいて行われるデータ送信処理(マスター)の詳細を示すフローチャートFlow chart showing details of data transmission processing (master) performed in master クライアントにおいて行われるデータ送信処理(クライアント)の詳細を示すフローチャートThe flowchart which shows the detail of the data transmission process (client) performed in a client クライアントにおいて行われるデータ受信処理の詳細を示すフローチャートThe flowchart which shows the detail of the data reception process performed in a client オーディエンスにおいて行われるデータ受信処理(オーディエンス)の詳細を示すフローチャートFlow chart showing details of data reception processing (audience) performed in audience マスターにおいて行われるデータ受信処理(マスター)の詳細を示すフローチャートFlow chart showing details of data reception processing (master) performed in master マスターを経由してクライアントC1から全端末にデータが送信される様子を示す図The figure which shows a mode that data are transmitted to all the terminals from the client C1 via a master. クライアントC1から直接全端末にデータを送信する様子を示す図The figure which shows a mode that data are transmitted to all the terminals directly from the client C1.

(ゲーム装置の構成)
以下、本発明の一実施形態に係るゲーム装置について説明する。図1は、開状態におけるゲーム装置10の外観を示す正面図である。図2(a)は閉状態におけるゲーム装置10の左側面図であり、図2(b)は閉状態におけるゲーム装置10の正面図であり、図2(c)は閉状態におけるゲーム装置10の右側面図であり、図2(d)は閉状態におけるゲーム装置10の背面図である。ゲーム装置10は携帯型のゲーム装置であり、図1および図2に示すように折り畳み可能に構成されている。図1は、開いた状態(開状態)におけるゲーム装置10を示し、図2は、閉じた状態(閉状態)におけるゲーム装置10を示している。ゲーム装置10は、撮像部によって画像を撮像し、撮像した画像を画面に表示したり、撮像した画像のデータを保存したりすることが可能である。また、ゲーム装置10は、交換可能なメモリカード内に記憶され、または、サーバや他のゲーム装置から受信したゲームプログラムを実行可能であり、仮想空間に設定された仮想カメラで撮像した画像などのコンピュータグラフィックス処理により生成された画像を画面に表示したりすることができる。
(Configuration of game device)
Hereinafter, a game device according to an embodiment of the present invention will be described. FIG. 1 is a front view showing the appearance of the game apparatus 10 in the open state. 2A is a left side view of the game apparatus 10 in the closed state, FIG. 2B is a front view of the game apparatus 10 in the closed state, and FIG. 2C is a view of the game apparatus 10 in the closed state. FIG. 2D is a right side view, and FIG. 2D is a rear view of the game apparatus 10 in the closed state. The game apparatus 10 is a portable game apparatus, and is configured to be foldable as shown in FIGS. 1 and 2. FIG. 1 shows the game apparatus 10 in an open state (open state), and FIG. 2 shows the game apparatus 10 in a closed state (closed state). The game apparatus 10 can capture an image with an imaging unit, display the captured image on a screen, and store data of the captured image. In addition, the game apparatus 10 is capable of executing a game program stored in a replaceable memory card or received from a server or another game apparatus, such as an image captured by a virtual camera set in a virtual space. An image generated by computer graphics processing can be displayed on the screen.

まず、図1および図2を参照して、ゲーム装置10の外観構成について説明する。図1および図2に示されるように、ゲーム装置10は、下側ハウジング11および上側ハウジング21を有する。下側ハウジング11と上側ハウジング21とは、開閉可能(折り畳み可能)に接続されている。   First, an external configuration of the game apparatus 10 will be described with reference to FIGS. 1 and 2. As shown in FIGS. 1 and 2, the game apparatus 10 includes a lower housing 11 and an upper housing 21. The lower housing 11 and the upper housing 21 are connected so as to be openable and closable (foldable).

(下側ハウジングの説明)
まず、下側ハウジング11の構成について説明する。図1および図2に示すように、下側ハウジング11には、下側LCD(Liquid Crystal Display:液晶表示装置)12、タッチパネル13、各操作ボタン14A〜14L、アナログスティック15、LED16A〜16B、挿入口17、および、マイクロフォン用孔18が設けられる。以下、これらの詳細について説明する。
(Description of lower housing)
First, the configuration of the lower housing 11 will be described. As shown in FIGS. 1 and 2, the lower housing 11 has a lower LCD (Liquid Crystal Display) 12, a touch panel 13, operation buttons 14A to 14L, an analog stick 15, LEDs 16A to 16B, and an insert. A mouth 17 and a microphone hole 18 are provided. Details of these will be described below.

図1に示すように、下側LCD12は下側ハウジング11に収納される。下側LCD12の画素数は、例えば、320dot×240dot(横×縦)であってもよい。下側LCD12は、後述する上側LCD22とは異なり、画像を(立体視可能ではなく)平面的に表示する表示装置である。なお、本実施形態では表示装置としてLCDを用いているが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置など、他の任意の表示装置を利用してもよい。また、下側LCD12として、任意の解像度の表示装置を利用することができる。   As shown in FIG. 1, the lower LCD 12 is housed in the lower housing 11. The number of pixels of the lower LCD 12 may be, for example, 320 dots × 240 dots (horizontal × vertical). Unlike the upper LCD 22 described later, the lower LCD 12 is a display device that displays an image in a planar manner (not stereoscopically viewable). In the present embodiment, an LCD is used as the display device, but other arbitrary display devices such as a display device using EL (Electro Luminescence) may be used. Further, as the lower LCD 12, a display device having an arbitrary resolution can be used.

図1に示されるように、ゲーム装置10は、入力装置として、タッチパネル13を備えている。タッチパネル13は、下側LCD12の画面上に装着されている。なお、本実施形態では、タッチパネル13は抵抗膜方式のタッチパネルである。ただし、タッチパネルは抵抗膜方式に限らず、例えば静電容量方式等、任意の方式のタッチパネルを用いることができる。本実施形態では、タッチパネル13として、下側LCD12の解像度と同解像度(検出精度)のものを利用する。ただし、必ずしもタッチパネル13の解像度と下側LCD12の解像度が一致している必要はない。また、下側ハウジング11の上側面には挿入口17(図1および図2(d)に示す点線)が設けられている。挿入口17は、タッチパネル13に対する操作を行うために用いられるタッチペン28を収納することができる。なお、タッチパネル13に対する入力は通常タッチペン28を用いて行われるが、タッチペン28に限らずユーザの指でタッチパネル13に対する入力をすることも可能である。   As shown in FIG. 1, the game apparatus 10 includes a touch panel 13 as an input device. The touch panel 13 is mounted on the screen of the lower LCD 12. In the present embodiment, the touch panel 13 is a resistive film type touch panel. However, the touch panel is not limited to the resistive film type, and any type of touch panel such as a capacitance type can be used. In the present embodiment, the touch panel 13 having the same resolution (detection accuracy) as that of the lower LCD 12 is used. However, the resolution of the touch panel 13 and the resolution of the lower LCD 12 do not necessarily match. An insertion port 17 (dotted line shown in FIGS. 1 and 2D) is provided on the upper side surface of the lower housing 11. The insertion slot 17 can accommodate a touch pen 28 used for performing an operation on the touch panel 13. In addition, although the input with respect to the touchscreen 13 is normally performed using the touch pen 28, it is also possible to input with respect to the touchscreen 13 not only with the touch pen 28 but with a user's finger | toe.

各操作ボタン14A〜14Lは、所定の入力を行うための入力装置である。図1に示されるように、下側ハウジング11の内側面(主面)には、各操作ボタン14A〜14Lのうち、十字ボタン14A(方向入力ボタン14A)、ボタン14B、ボタン14C、ボタン14D、ボタン14E、電源ボタン14F、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lが、設けられる。十字ボタン14Aは、十字の形状を有しており、上下左右の方向を指示するボタンを有している。ボタン14A〜14E、セレクトボタン14J、HOMEボタン14K、およびスタートボタン14Lには、ゲーム装置10が実行するプログラムに応じた機能が適宜割り当てられる。例えば、十字ボタン14Aは選択操作等に用いられ、各操作ボタン14B〜14Eは例えば決定操作やキャンセル操作等に用いられる。また、電源ボタン14Fは、ゲーム装置10の電源をオン/オフするために用いられる。   Each operation button 14A-14L is an input device for performing a predetermined input. As shown in FIG. 1, on the inner surface (main surface) of the lower housing 11, among the operation buttons 14A to 14L, a cross button 14A (direction input button 14A), a button 14B, a button 14C, a button 14D, A button 14E, a power button 14F, a select button 14J, a HOME button 14K, and a start button 14L are provided. The cross button 14 </ b> A has a cross shape, and has buttons for instructing up, down, left, and right directions. Functions according to a program executed by the game apparatus 10 are appropriately assigned to the buttons 14A to 14E, the select button 14J, the HOME button 14K, and the start button 14L. For example, the cross button 14A is used for a selection operation or the like, and the operation buttons 14B to 14E are used for a determination operation or a cancel operation, for example. The power button 14F is used to turn on / off the power of the game apparatus 10.

アナログスティック15は、方向を指示するデバイスである。アナログスティック15は、そのキートップが、下側ハウジング11の内側面に平行にスライドするように構成されている。アナログスティック15は、ゲーム装置10が実行するプログラムに応じて機能する。例えば、3次元仮想空間に所定のオブジェクトが登場するゲームがゲーム装置10によって実行される場合、アナログスティック15は、当該所定のオブジェクトを3次元仮想空間内で移動させるための入力装置として機能する。この場合において、所定のオブジェクトはアナログスティック15のキートップがスライドした方向に移動される。なお、アナログスティック15として、上下左右および斜め方向の任意の方向に所定量だけ傾倒することでアナログ入力を可能としたものを用いても良い。   The analog stick 15 is a device that indicates a direction. The analog stick 15 is configured such that its key top slides parallel to the inner surface of the lower housing 11. The analog stick 15 functions according to a program executed by the game apparatus 10. For example, when a game in which a predetermined object appears in the three-dimensional virtual space is executed by the game apparatus 10, the analog stick 15 functions as an input device for moving the predetermined object in the three-dimensional virtual space. In this case, the predetermined object is moved in the direction in which the key top of the analog stick 15 slides. In addition, as the analog stick 15, an analog stick that allows analog input by being tilted by a predetermined amount in any direction of up / down / left / right and oblique directions may be used.

また、下側ハウジング11の内側面には、マイクロフォン用孔18が設けられる。マイクロフォン用孔18の下部には後述する音声入力装置としてのマイク42(図3参照)が設けられ、当該マイク42がゲーム装置10の外部の音を検出する。   A microphone hole 18 is provided on the inner surface of the lower housing 11. A microphone 42 (see FIG. 3), which will be described later, is provided below the microphone hole 18, and the microphone 42 detects sound outside the game apparatus 10.

図2(b)および(d)に示されるように、下側ハウジング11の上側面には、Lボタン14GおよびRボタン14Hが設けられている。Lボタン14GおよびRボタン14Hは、例えば、撮像部のシャッターボタン(撮影指示ボタン)として機能することができる。また、図2(a)に示されるように、下側ハウジング11の左側面には、音量ボタン14Iが設けられる。音量ボタン14Iは、ゲーム装置10が備えるスピーカの音量を調整するために用いられる。   As shown in FIGS. 2B and 2D, an L button 14 </ b> G and an R button 14 </ b> H are provided on the upper side surface of the lower housing 11. The L button 14G and the R button 14H can function as, for example, a shutter button (shooting instruction button) of the imaging unit. Further, as shown in FIG. 2A, a volume button 14 </ b> I is provided on the left side surface of the lower housing 11. The volume button 14I is used to adjust the volume of a speaker provided in the game apparatus 10.

図2(a)に示されるように、下側ハウジング11の左側面には開閉可能なカバー部11Cが設けられる。このカバー部11Cの内側には、ゲーム装置10とデータ保存用外部メモリ45とを電気的に接続するためのコネクタ(図示せず)が設けられる。データ保存用外部メモリ45は、コネクタに着脱自在に装着される。データ保存用外部メモリ45は、例えば、ゲーム装置10によって撮像された画像のデータを記憶(保存)するために用いられる。   As shown in FIG. 2A, a cover portion 11 </ b> C that can be opened and closed is provided on the left side surface of the lower housing 11. A connector (not shown) for electrically connecting the game apparatus 10 and the data storage external memory 45 is provided inside the cover portion 11C. The data storage external memory 45 is detachably attached to the connector. The data storage external memory 45 is used, for example, for storing (saving) data of an image captured by the game apparatus 10.

また、図2(d)に示されるように、下側ハウジング11の上側面には、ゲーム装置10とゲームプログラムを記録した外部メモリ44を挿入するための挿入口11Dが設けられ、その挿入口11Dの内部には、外部メモリ44と電気的に着脱自在に接続するためのコネクタ(図示せず)が設けられる。当該外部メモリ44がゲーム装置10に接続されることにより、所定のゲームプログラムが実行される。   As shown in FIG. 2D, an insertion port 11D for inserting the game apparatus 10 and an external memory 44 in which a game program is recorded is provided on the upper side surface of the lower housing 11, and the insertion port Inside the 11D, a connector (not shown) for electrically detachably connecting to the external memory 44 is provided. When the external memory 44 is connected to the game apparatus 10, a predetermined game program is executed.

また、図1および図2(c)に示されるように、下側ハウジング11の下側面にはゲーム装置10の電源のON/OFF状況をユーザに通知する第1LED16A、下側ハウジング11の右側面にはゲーム装置10の無線通信の確立状況をユーザに通知する第2LED16Bが設けられる。ゲーム装置10は他の機器との間で無線通信を行うことが可能であり、第2LED16Bは、無線通信の機能が有効である場合に点灯する。ゲーム装置10は、例えば、IEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。下側ハウジング11の右側面には、この無線通信の機能を有効/無効にする無線スイッチ19が設けられる(図2(c)参照)。   Further, as shown in FIG. 1 and FIG. 2 (c), on the lower side surface of the lower housing 11, the first LED 16 </ b> A that notifies the user of the power ON / OFF status of the game apparatus 10, the right side surface of the lower housing 11. Is provided with a second LED 16B for notifying the user of the wireless communication establishment status of the game apparatus 10. The game apparatus 10 can perform wireless communication with other devices, and the second LED 16B is lit when the wireless communication function is valid. The game apparatus 10 has a function of connecting to a wireless LAN, for example, by a method compliant with the IEEE 802.11b / g standard. A wireless switch 19 for enabling / disabling this wireless communication function is provided on the right side surface of the lower housing 11 (see FIG. 2C).

なお、図示は省略するが、下側ハウジング11には、ゲーム装置10の電源となる充電式電池が収納され、下側ハウジング11の側面(例えば、上側面)に設けられた端子を介して当該電池を充電することができる。   Although not shown, the lower housing 11 stores a rechargeable battery that serves as a power source for the game apparatus 10, and the terminal is provided via a terminal provided on a side surface (for example, the upper side surface) of the lower housing 11. The battery can be charged.

(上側ハウジングの説明)
次に、上側ハウジング21の構成について説明する。図1および図2に示すように、上側ハウジング21には、上側LCD(Liquid Crystal Display:液晶表示装置)22、外側撮像部23(外側撮像部(左)23aおよび外側撮像部(右)23b)、内側撮像部24、3D調整スイッチ25、および、3Dインジケータ26が設けられる。以下、これらの詳細について説明する。
(Description of upper housing)
Next, the configuration of the upper housing 21 will be described. As shown in FIGS. 1 and 2, the upper housing 21 includes an upper LCD (Liquid Crystal Display) 22, an outer imaging unit 23 (an outer imaging unit (left) 23a and an outer imaging unit (right) 23b). , An inner imaging unit 24, a 3D adjustment switch 25, and a 3D indicator 26 are provided. Details of these will be described below.

図1に示すように、上側LCD22は上側ハウジング21に収納される。上側LCD22の画素数は、例えば、800dot×240dot(横×縦)であってもよい。なお、本実施形態では上側LCD22は液晶表示装置であるとしたが、例えばEL(Electro Luminescence:電界発光)を利用した表示装置などが利用されてもよい。また、上側LCD22として、任意の解像度の表示装置を利用することができる。   As shown in FIG. 1, the upper LCD 22 is accommodated in the upper housing 21. The number of pixels of the upper LCD 22 may be, for example, 800 dots × 240 dots (horizontal × vertical). In the present embodiment, the upper LCD 22 is a liquid crystal display device. However, for example, a display device using EL (Electro Luminescence) may be used. In addition, a display device having an arbitrary resolution can be used as the upper LCD 22.

上側LCD22は、立体視可能な画像を表示することが可能な表示装置である。また、本実施例では、実質的に同一の表示領域を用いて左目用画像と右目用画像が表示される。具体的には、左目用画像と右目用画像が所定単位で(例えば、1列ずつ)横方向に交互に表示される方式の表示装置である。または、左目用画像と右目用画像とが時間的に交互に表示され、メガネを用いてユーザの左目に左目用画像が右目に右目用画像が視認される方式の表示装置であってもよい。本実施例では、裸眼立体視可能な表示装置である。そして、横方向に交互に表示される左目用画像と右目用画像とを左目および右目のそれぞれに分解して見えるようにレンチキュラー方式やパララックスバリア方式(視差バリア方式)のものが用いられる。本実施形態では、上側LCD22はパララックスバリア方式のものとする。上側LCD22は、右目用画像と左目用画像とを用いて、裸眼で立体視可能な画像(立体画像)を表示する。すなわち、上側LCD22は、視差バリアを用いてユーザの左目に左目用画像をユーザの右目に右目用画像を視認させることにより、ユーザにとって立体感のある立体画像(立体視可能な画像)を表示することができる。また、上側LCD22は、上記視差バリアを無効にすることが可能であり、視差バリアを無効にした場合は、画像を平面的に表示することができる(上述した立体視とは反対の意味で平面視の画像を表示することができる。すなわち、表示された同一の画像が右目にも左目にも見えるような表示モードである)。このように、上側LCD22は、立体視可能な画像を表示する立体表示モードと、画像を平面的に表示する(平面視画像を表示する)平面表示モードとを切り替えることが可能な表示装置である。この表示モードの切り替えは、後述する3D調整スイッチ25によって行われる。   The upper LCD 22 is a display device capable of displaying a stereoscopically visible image. In the present embodiment, the left-eye image and the right-eye image are displayed using substantially the same display area. Specifically, the display device uses a method in which a left-eye image and a right-eye image are alternately displayed in a horizontal direction in a predetermined unit (for example, one column at a time). Alternatively, the display device may be a display device in which the left-eye image and the right-eye image are alternately displayed in time, and the left-eye image and the right-eye image are visually recognized by the user using glasses. In this embodiment, the display device is capable of autostereoscopic viewing. A lenticular method or a parallax barrier method (parallax barrier method) is used so that the left-eye image and the right-eye image that are alternately displayed in the horizontal direction appear to be decomposed into the left eye and the right eye, respectively. In the present embodiment, the upper LCD 22 is a parallax barrier type. The upper LCD 22 uses the right-eye image and the left-eye image to display an image (stereoscopic image) that can be stereoscopically viewed with the naked eye. In other words, the upper LCD 22 displays a stereoscopic image (stereoscopically viewable) having a stereoscopic effect for the user by using the parallax barrier to visually recognize the left-eye image for the user's left eye and the right-eye image for the user's right eye. be able to. Further, the upper LCD 22 can invalidate the parallax barrier. When the parallax barrier is invalidated, the upper LCD 22 can display an image in a planar manner (in the sense opposite to the above-described stereoscopic view, the planar LCD is planar). (This is a display mode in which the same displayed image can be seen by both the right eye and the left eye). As described above, the upper LCD 22 is a display device capable of switching between a stereoscopic display mode for displaying a stereoscopically viewable image and a planar display mode for displaying an image in a planar manner (displaying a planar view image). . This display mode switching is performed by a 3D adjustment switch 25 described later.

外側撮像部23は、上側ハウジング21の外側面(上側LCD22が設けられた主面と反対側の背面)21Dに設けられた2つの撮像部(23aおよび23b)の総称である。外側撮像部(左)23aと外側撮像部(右)23bの撮像方向は、いずれも当該外側面21Dの外向きの法線方向である。外側撮像部(左)23aと外側撮像部(右)23bとは、ゲーム装置10が実行するプログラムによって、ステレオカメラとして使用することが可能である。外側撮像部(左)23aおよび外側撮像部(右)23bは、それぞれ所定の共通の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。   The outer imaging unit 23 is a general term for two imaging units (23 a and 23 b) provided on the outer surface (back surface opposite to the main surface on which the upper LCD 22 is provided) 21 D of the upper housing 21. The imaging directions of the outer imaging unit (left) 23a and the outer imaging unit (right) 23b are both normal directions of the outer surface 21D. The outer imaging unit (left) 23a and the outer imaging unit (right) 23b can be used as a stereo camera by a program executed by the game apparatus 10. The outer imaging unit (left) 23a and the outer imaging unit (right) 23b each include an imaging element (for example, a CCD image sensor or a CMOS image sensor) having a predetermined common resolution and a lens. The lens may have a zoom mechanism.

内側撮像部24は、上側ハウジング21の内側面(主面)21Bに設けられ、当該内側面の内向きの法線方向を撮像方向とする撮像部である。内側撮像部24は、所定の解像度を有する撮像素子(例えば、CCDイメージセンサやCMOSイメージセンサ等)と、レンズとを含む。レンズは、ズーム機構を有するものでもよい。   The inner imaging unit 24 is an imaging unit that is provided on the inner side surface (main surface) 21B of the upper housing 21 and has an inward normal direction of the inner side surface as an imaging direction. The inner imaging unit 24 includes an imaging element (for example, a CCD image sensor or a CMOS image sensor) having a predetermined resolution, and a lens. The lens may have a zoom mechanism.

3D調整スイッチ25は、スライドスイッチであり、上述のように上側LCD22の表示モードを切り替えるために用いられるスイッチである。また、3D調整スイッチ25は、上側LCD22に表示された立体視可能な画像(立体画像)の立体感を調整するために用いられる。3D調整スイッチ25のスライダ25aは、所定方向(上下方向)の任意の位置にスライド可能であり、当該スライダ25aの位置に応じて上側LCD22の表示モードが設定される。また、スライダ25aの位置に応じて、立体画像の見え方が調整される。具体的には、スライダ25aの位置に応じて、右目用画像および左目用画像の横方向の位置のずれ量が調整される。   The 3D adjustment switch 25 is a slide switch, and is a switch used to switch the display mode of the upper LCD 22 as described above. The 3D adjustment switch 25 is used to adjust the stereoscopic effect of a stereoscopically viewable image (stereoscopic image) displayed on the upper LCD 22. The slider 25a of the 3D adjustment switch 25 can be slid to an arbitrary position in a predetermined direction (vertical direction), and the display mode of the upper LCD 22 is set according to the position of the slider 25a. Further, the appearance of the stereoscopic image is adjusted according to the position of the slider 25a. Specifically, the shift amount of the horizontal position of the right-eye image and the left-eye image is adjusted according to the position of the slider 25a.

3Dインジケータ26は、上側LCD22が立体表示モードか否かを示す。3Dインジケータ26は、LEDであり、上側LCD22の立体表示モードが有効の場合に点灯する。なお、3Dインジケータ26は、上側LCD22が立体表示モードになっており、かつ、立体視画像を表示するプログラム処理が実行されているときに限り、点灯するようにしてもよい。   The 3D indicator 26 indicates whether or not the upper LCD 22 is in the stereoscopic display mode. The 3D indicator 26 is an LED, and lights up when the stereoscopic display mode of the upper LCD 22 is valid. Note that the 3D indicator 26 may be lit only when the upper LCD 22 is in the stereoscopic display mode and a program process for displaying a stereoscopic image is being executed.

また、上側ハウジング21の内側面には、スピーカ孔21Eが設けられる。後述するスピーカ43からの音声がこのスピーカ孔21Eから出力される。   A speaker hole 21 </ b> E is provided on the inner surface of the upper housing 21. Sound from a speaker 43 described later is output from the speaker hole 21E.

(ゲーム装置10の内部構成)
次に、図3を参照して、ゲーム装置10の内部の電気的構成について説明する。図3は、ゲーム装置10の内部構成を示すブロック図である。図3に示すように、ゲーム装置10は、上述した各部に加えて、情報処理部31、メインメモリ32、外部メモリインターフェイス(外部メモリI/F)33、データ保存用外部メモリI/F34、データ保存用内部メモリ35、無線通信モジュール36、リアルタイムクロック(RTC)38、加速度センサ39、電源回路40、およびインターフェイス回路(I/F回路)41等の電子部品を備えている。これらの電子部品は、電子回路基板上に実装されて下側ハウジング11(または上側ハウジング21でもよい)内に収納される。
(Internal configuration of game device 10)
Next, with reference to FIG. 3, an internal electrical configuration of the game apparatus 10 will be described. FIG. 3 is a block diagram showing an internal configuration of the game apparatus 10. As shown in FIG. 3, in addition to the above-described units, the game apparatus 10 includes an information processing unit 31, a main memory 32, an external memory interface (external memory I / F) 33, an external memory I / F 34 for data storage, data Electronic components such as an internal memory 35 for storage, a wireless communication module 36, a real-time clock (RTC) 38, an acceleration sensor 39, a power supply circuit 40, and an interface circuit (I / F circuit) 41 are provided. These electronic components are mounted on an electronic circuit board and accommodated in the lower housing 11 (or the upper housing 21).

情報処理部31は、所定のプログラムを実行するためのCPU(Central Processing Unit)311、画像処理を行うGPU(Graphics Processing Unit)312等を含む情報処理手段である。情報処理部31のCPU311は、ゲーム装置10内のメモリ(例えば外部メモリI/F33に接続された外部メモリ44やデータ保存用内部メモリ35)に記憶されているプログラムを実行することによって、当該プログラムに応じた処理を実行する。なお、情報処理部31のCPU311によって実行されるプログラムは、他の機器との通信によって他の機器から取得されてもよい。また、情報処理部31は、VRAM(Video RAM)313を含む。情報処理部31のGPU312は、情報処理部31のCPU311からの命令に応じて画像を生成し、VRAM313に描画する。そして、情報処理部31のGPU312は、VRAM313に描画された画像を上側LCD22及び/又は下側LCD12に出力し、上側LCD22及び/又は下側LCD12に当該画像が表示される。   The information processing unit 31 is information processing means including a CPU (Central Processing Unit) 311 for executing a predetermined program, a GPU (Graphics Processing Unit) 312 for performing image processing, and the like. The CPU 311 of the information processing unit 31 executes the program stored in a memory (for example, the external memory 44 connected to the external memory I / F 33 or the data storage internal memory 35) in the game apparatus 10, thereby executing the program. The process according to is executed. Note that the program executed by the CPU 311 of the information processing unit 31 may be acquired from another device through communication with the other device. The information processing unit 31 includes a VRAM (Video RAM) 313. The GPU 312 of the information processing unit 31 generates an image in response to a command from the CPU 311 of the information processing unit 31 and draws it on the VRAM 313. Then, the GPU 312 of the information processing unit 31 outputs the image drawn in the VRAM 313 to the upper LCD 22 and / or the lower LCD 12, and the image is displayed on the upper LCD 22 and / or the lower LCD 12.

情報処理部31には、メインメモリ32、外部メモリI/F33、データ保存用外部メモリI/F34、および、データ保存用内部メモリ35が接続される。外部メモリI/F33は、外部メモリ44を着脱自在に接続するためのインターフェイスである。また、データ保存用外部メモリI/F34は、データ保存用外部メモリ45を着脱自在に接続するためのインターフェイスである。   A main memory 32, an external memory I / F 33, a data storage external memory I / F 34, and a data storage internal memory 35 are connected to the information processing section 31. The external memory I / F 33 is an interface for detachably connecting the external memory 44. The data storage external memory I / F 34 is an interface for detachably connecting the data storage external memory 45.

メインメモリ32は、情報処理部31(のCPU311)のワーク領域やバッファ領域として用いられる揮発性の記憶手段である。すなわち、メインメモリ32は、上記プログラムに基づく処理に用いられる各種データを一時的に記憶したり、外部(外部メモリ44や他の機器等)から取得されるプログラムを一時的に記憶したりする。本実施形態では、メインメモリ32として例えばPSRAM(Pseudo−SRAM)を用いる。   The main memory 32 is a volatile storage unit used as a work area or a buffer area of the information processing unit 31 (the CPU 311). That is, the main memory 32 temporarily stores various data used for the processing based on the program, or temporarily stores a program acquired from the outside (such as the external memory 44 or another device). In the present embodiment, for example, a PSRAM (Pseudo-SRAM) is used as the main memory 32.

外部メモリ44は、情報処理部31によって実行されるプログラムを記憶するための不揮発性の記憶手段である。外部メモリ44は、例えば読み取り専用の半導体メモリで構成される。外部メモリ44が外部メモリI/F33に接続されると、情報処理部31は外部メモリ44に記憶されたプログラムを読み込むことができる。情報処理部31が読み込んだプログラムを実行することにより、所定の処理が行われる。データ保存用外部メモリ45は、不揮発性の読み書き可能なメモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用外部メモリ45には、外側撮像部23で撮像された画像や他の機器で撮像された画像が記憶される。データ保存用外部メモリ45がデータ保存用外部メモリI/F34に接続されると、情報処理部31はデータ保存用外部メモリ45に記憶された画像を読み込み、上側LCD22及び/又は下側LCD12に当該画像を表示することができる。   The external memory 44 is a nonvolatile storage unit for storing a program executed by the information processing unit 31. The external memory 44 is composed of, for example, a read-only semiconductor memory. When the external memory 44 is connected to the external memory I / F 33, the information processing section 31 can read a program stored in the external memory 44. A predetermined process is performed by executing the program read by the information processing unit 31. The data storage external memory 45 is composed of a non-volatile readable / writable memory (for example, a NAND flash memory), and is used for storing predetermined data. For example, the data storage external memory 45 stores an image captured by the outer imaging unit 23 or an image captured by another device. When the data storage external memory 45 is connected to the data storage external memory I / F 34, the information processing section 31 reads an image stored in the data storage external memory 45 and applies the image to the upper LCD 22 and / or the lower LCD 12. An image can be displayed.

データ保存用内部メモリ35は、読み書き可能な不揮発性メモリ(例えばNAND型フラッシュメモリ)で構成され、所定のデータを格納するために用いられる。例えば、データ保存用内部メモリ35には、無線通信モジュール36を介した無線通信によってダウンロードされたデータやプログラムが格納される。   The data storage internal memory 35 is configured by a readable / writable nonvolatile memory (for example, a NAND flash memory), and is used for storing predetermined data. For example, the data storage internal memory 35 stores data and programs downloaded by wireless communication via the wireless communication module 36.

無線通信モジュール36は、例えばIEEE802.11b/gの規格に準拠した方式により、無線LANに接続する機能を有する。無線通信モジュール36は情報処理部31に接続される。情報処理部31は、無線通信モジュール36を用いてインターネットを介して他の機器との間でデータを送受信したりすることができる。なお、無線通信モジュール36は、IEEE802.11b/g規格以外の独自の通信方式をサポートしてもよい。   The wireless communication module 36 has a function of connecting to a wireless LAN by a method compliant with, for example, the IEEE 802.11b / g standard. The wireless communication module 36 is connected to the information processing unit 31. The information processing unit 31 can transmit and receive data to and from other devices via the Internet using the wireless communication module 36. The wireless communication module 36 may support a unique communication method other than the IEEE802.11b / g standard.

また、情報処理部31には、加速度センサ39が接続される。加速度センサ39は、3軸(xyz軸)方向に沿った直線方向の加速度(直線加速度)の大きさを検出する。加速度センサ39は、下側ハウジング11の内部に設けられる。加速度センサ39は、図1に示すように、下側ハウジング11の長辺方向をx軸、下側ハウジング11の短辺方向をy軸、下側ハウジング11の内側面(主面)に対して垂直な方向をz軸として、各軸の直線加速度の大きさを検出する。なお、加速度センサ39は、例えば静電容量式の加速度センサであるとするが、他の方式の加速度センサを用いるようにしてもよい。また、加速度センサ39は1軸又は2軸方向を検出する加速度センサであってもよい。情報処理部31は、加速度センサ39が検出した加速度を示すデータ(加速度データ)を受信して、ゲーム装置10の姿勢や動きを検出することができる。   An acceleration sensor 39 is connected to the information processing unit 31. The acceleration sensor 39 detects the magnitude of linear acceleration (linear acceleration) along the three-axis (xyz-axis) direction. The acceleration sensor 39 is provided inside the lower housing 11. As shown in FIG. 1, the acceleration sensor 39 is configured such that the long side direction of the lower housing 11 is the x axis, the short side direction of the lower housing 11 is the y axis, and the inner side surface (main surface) of the lower housing 11. With the vertical direction as the z axis, the magnitude of linear acceleration on each axis is detected. The acceleration sensor 39 is, for example, an electrostatic capacitance type acceleration sensor, but other types of acceleration sensors may be used. The acceleration sensor 39 may be an acceleration sensor that detects a uniaxial or biaxial direction. The information processing unit 31 can detect data indicating the acceleration detected by the acceleration sensor 39 (acceleration data) and detect the attitude and movement of the game apparatus 10.

また、情報処理部31には、RTC38および電源回路40が接続される。RTC38は、時間をカウントして情報処理部31に出力する。情報処理部31は、RTC38によって計時された時間に基づき現在時刻(日付)を計算する。電源回路40は、ゲーム装置10が有する電源(下側ハウジング11に収納される上記充電式電池)からの電力を制御し、ゲーム装置10の各部品に電力を供給する。   Further, the RTC 38 and the power supply circuit 40 are connected to the information processing unit 31. The RTC 38 counts the time and outputs it to the information processing unit 31. The information processing unit 31 calculates the current time (date) based on the time counted by the RTC 38. The power supply circuit 40 controls power from a power source (the rechargeable battery housed in the lower housing 11) of the game apparatus 10 and supplies power to each component of the game apparatus 10.

また、情報処理部31には、I/F回路41が接続される。I/F回路41には、マイク42およびスピーカ43が接続される。具体的には、I/F回路41には、図示しないアンプを介してスピーカ43が接続される。マイク42は、ユーザの音声を検知して音声信号をI/F回路41に出力する。アンプは、I/F回路41からの音声信号を増幅し、音声をスピーカ43から出力させる。また、タッチパネル13はI/F回路41に接続される。I/F回路41は、マイク42およびスピーカ43(アンプ)の制御を行う音声制御回路と、タッチパネルの制御を行うタッチパネル制御回路とを含む。音声制御回路は、音声信号に対するA/D変換およびD/A変換を行ったり、音声信号を所定の形式の音声データに変換したりする。タッチパネル制御回路は、タッチパネル13からの信号に基づいて所定の形式のタッチ位置データを生成して情報処理部31に出力する。タッチ位置データは、タッチパネル13の入力面において入力が行われた位置の座標を示す。なお、タッチパネル制御回路は、タッチパネル13からの信号の読み込み、および、タッチ位置データの生成を所定時間に1回の割合で行う。情報処理部31は、タッチ位置データを取得することにより、タッチパネル13に対して入力が行われた位置を知ることができる。   In addition, an I / F circuit 41 is connected to the information processing unit 31. A microphone 42 and a speaker 43 are connected to the I / F circuit 41. Specifically, a speaker 43 is connected to the I / F circuit 41 via an amplifier (not shown). The microphone 42 detects the user's voice and outputs a voice signal to the I / F circuit 41. The amplifier amplifies the audio signal from the I / F circuit 41 and outputs the audio from the speaker 43. The touch panel 13 is connected to the I / F circuit 41. The I / F circuit 41 includes a voice control circuit that controls the microphone 42 and the speaker 43 (amplifier), and a touch panel control circuit that controls the touch panel. The voice control circuit performs A / D conversion and D / A conversion on the voice signal, or converts the voice signal into voice data of a predetermined format. The touch panel control circuit generates touch position data in a predetermined format based on a signal from the touch panel 13 and outputs it to the information processing unit 31. The touch position data indicates the coordinates of the position where the input is performed on the input surface of the touch panel 13. The touch panel control circuit reads signals from the touch panel 13 and generates touch position data at a rate of once per predetermined time. The information processing unit 31 can know the position where the input is performed on the touch panel 13 by acquiring the touch position data.

操作ボタン14は、上記各操作ボタン14A〜14Lからなり、情報処理部31に接続される。操作ボタン14から情報処理部31へは、各操作ボタン14A〜14Iに対する入力状況(押下されたか否か)を示す操作データが出力される。情報処理部31は、操作ボタン14から操作データを取得することによって、操作ボタン14に対する入力に従った処理を実行する。   The operation button 14 includes the operation buttons 14 </ b> A to 14 </ b> L and is connected to the information processing unit 31. From the operation button 14 to the information processing section 31, operation data indicating the input status (whether or not the button is pressed) for each of the operation buttons 14A to 14I is output. The information processing unit 31 acquires the operation data from the operation button 14 to execute processing according to the input to the operation button 14.

下側LCD12および上側LCD22は情報処理部31に接続される。下側LCD12および上側LCD22は、情報処理部31(のGPU312)の指示に従って画像を表示する。本実施形態では、情報処理部31は、上側LCD22に立体画像(立体視可能な画像)を表示させる。   The lower LCD 12 and the upper LCD 22 are connected to the information processing unit 31. The lower LCD 12 and the upper LCD 22 display images according to instructions from the information processing unit 31 (the GPU 312). In the present embodiment, the information processing unit 31 causes the upper LCD 22 to display a stereoscopic image (a stereoscopically viewable image).

具体的には、情報処理部31は、上側LCD22のLCDコントローラ(図示せず)と接続され、当該LCDコントローラに対して視差バリアのON/OFFを制御する。上側LCD22の視差バリアがONになっている場合、情報処理部31のVRAM313に格納された右目用画像と左目用画像とが、上側LCD22に出力される。より具体的には、LCDコントローラは、右目用画像について縦方向に1ライン分の画素データを読み出す処理と、左目用画像について縦方向に1ライン分の画素データを読み出す処理とを交互に繰り返すことによって、VRAM313から右目用画像と左目用画像とを読み出す。これにより、右目用画像および左目用画像が、画素を縦に1ライン毎に並んだ短冊状画像に分割され、分割された右目用画像の短冊状画像と左目用画像の短冊状画像とが交互に配置された画像が、上側LCD22の画面に表示される。そして、上側LCD22の視差バリアを介して当該画像がユーザに視認されることによって、ユーザの右目に右目用画像が、ユーザの左目に左目用画像が視認される。以上により、上側LCD22の画面には立体視可能な画像が表示される。   Specifically, the information processing section 31 is connected to an LCD controller (not shown) of the upper LCD 22 and controls ON / OFF of the parallax barrier for the LCD controller. When the parallax barrier of the upper LCD 22 is ON, the right-eye image and the left-eye image stored in the VRAM 313 of the information processing unit 31 are output to the upper LCD 22. More specifically, the LCD controller alternately repeats the process of reading pixel data for one line in the vertical direction for the image for the right eye and the process of reading pixel data for one line in the vertical direction for the image for the left eye. Thus, the right-eye image and the left-eye image are read from the VRAM 313. As a result, the image for the right eye and the image for the left eye are divided into strip-like images in which pixels are arranged vertically for each line, and the strip-like images for the right-eye image and the strip-like images for the left-eye image are alternately arranged. The image arranged on the upper LCD 22 is displayed on the screen. Then, when the user visually recognizes the image through the parallax barrier of the upper LCD 22, the right eye image is visually recognized by the user's right eye and the left eye image is visually recognized by the user's left eye. As a result, a stereoscopically viewable image is displayed on the screen of the upper LCD 22.

外側撮像部23および内側撮像部24は、情報処理部31に接続される。外側撮像部23および内側撮像部24は、情報処理部31の指示に従って画像を撮像し、撮像した画像データを情報処理部31に出力する。   The outer imaging unit 23 and the inner imaging unit 24 are connected to the information processing unit 31. The outer imaging unit 23 and the inner imaging unit 24 capture an image in accordance with an instruction from the information processing unit 31, and output the captured image data to the information processing unit 31.

3D調整スイッチ25は、情報処理部31に接続される。3D調整スイッチ25は、スライダ25aの位置に応じた電気信号を情報処理部31に送信する。   The 3D adjustment switch 25 is connected to the information processing unit 31. The 3D adjustment switch 25 transmits an electrical signal corresponding to the position of the slider 25 a to the information processing unit 31.

また、3Dインジケータ26は、情報処理部31に接続される。情報処理部31は、3Dインジケータ26の点灯を制御する。例えば、情報処理部31は、上側LCD22が立体表示モードである場合、3Dインジケータ26を点灯させる。   The 3D indicator 26 is connected to the information processing unit 31. The information processing unit 31 controls lighting of the 3D indicator 26. For example, the information processing section 31 turns on the 3D indicator 26 when the upper LCD 22 is in the stereoscopic display mode.

また、情報処理部31には、角速度センサ46が接続される。角速度センサ46は、各軸(x軸、y軸、z軸)周りの角速度を検出する。ゲーム装置10は、角速度センサ46が逐次検出する角速度に基づいて、実空間におけるゲーム装置10の姿勢を算出することができる。具体的には、ゲーム装置10は、角速度センサ46によって検出された各軸周りの角速度を時間で積分することによって、各軸周りのゲーム装置10の回転角を算出することができる。以上がゲーム装置10の内部構成の説明である。   In addition, an angular velocity sensor 46 is connected to the information processing unit 31. The angular velocity sensor 46 detects an angular velocity around each axis (x axis, y axis, z axis). The game apparatus 10 can calculate the attitude of the game apparatus 10 in real space based on the angular velocities sequentially detected by the angular velocity sensor 46. Specifically, the game device 10 can calculate the rotation angle of the game device 10 around each axis by integrating the angular velocity around each axis detected by the angular velocity sensor 46 with time. The above is the description of the internal configuration of the game apparatus 10.

(通信処理の概要)
次に、図面を参照して、本発明の一実施形態に係る通信処理の概要について説明する。ゲーム装置10は、無線通信モジュール36によって例えばIEEE802.11.b/gの規格に準拠した方式により、他のゲーム装置と通信可能である。本実施形態では、複数のゲーム装置10が、IEEE802.11.b/gの規格に一部準拠した方式により互いに接続されることによって、ゲームが進行する。
(Outline of communication processing)
Next, an overview of communication processing according to an embodiment of the present invention will be described with reference to the drawings. The game apparatus 10 is connected to the wireless communication module 36 by, for example, IEEE 802.11. It is possible to communicate with other game devices by a method compliant with the b / g standard. In the present embodiment, the plurality of game apparatuses 10 are configured to have IEEE 802.11. The game progresses by being connected to each other by a method partially compliant with the b / g standard.

図4は、本実施形態に係るゲームが実行される際に複数のゲーム装置10によって構成されるネットワークを示す図である。図4に示すように、本実施形態では、複数のゲーム装置10のうち、1台のゲーム装置10aがマスターとして機能し、ゲーム装置10bおよびゲーム装置10cがクライアントC1およびクライアントC2として機能する(ゲーム装置10a〜10cは参加モードで動作する)。また、本実施形態では、マスター、クライアントC1およびクライアントC2とは別のゲーム装置10dが、オーディエンス(観戦者)として機能する(ゲーム装置10dは非参加モードで動作する)。オーディエンスは、マスターおよびクライアント間で進行するゲームの観戦のみを行う。なお、クライアントとしてゲームに参加可能なゲーム装置10の台数は、例えば最大で15に設定される。また、オーディエンスとしてゲームに参加可能なゲーム装置10の台数には制限は設けられない。   FIG. 4 is a diagram illustrating a network configured by a plurality of game apparatuses 10 when the game according to the present embodiment is executed. As shown in FIG. 4, in the present embodiment, one game device 10a among the plurality of game devices 10 functions as a master, and the game device 10b and the game device 10c function as a client C1 and a client C2 (games). The devices 10a to 10c operate in the participation mode). In the present embodiment, the game device 10d different from the master, the client C1, and the client C2 functions as an audience (watcher) (the game device 10d operates in the non-participation mode). The audience will only watch games that progress between the master and the client. Note that the maximum number of game apparatuses 10 that can participate in the game as a client is set to 15, for example. Further, there is no restriction on the number of game devices 10 that can participate in the game as an audience.

図5は、本実施形態に係るゲームが実行された場合にゲーム装置の上側LCD22に表示される画像の一例を示す図である。図5に示すように、例えば、ゲーム装置10a〜10dの上側LCD22には複数のゲームキャラクタが表示され、複数のゲームキャラクタがカートに乗ってコース上を走行するレースゲームが行われる。具体的には、ゲーム装置10a〜10cの上側LCD22には、マスター(ゲーム装置10a)のユーザによって操作されるゲームキャラクタ101、クライアントC1(ゲーム装置10b)のユーザによって操作されるゲームキャラクタ102、および、クライアントC2(ゲーム装置10c)のユーザによって操作されるゲームキャラクタ103が表示される。また、図5に示す画像は、オーディエンス(ゲーム装置10d)の上側LCD22にも表示される。オーディエンスは、レースゲームには当事者として参加しないが、ゲーム装置10a〜10cの間で進行するレースゲームの観戦者として参加して、当該レースゲームを見ることができる。なお、各ゲーム装置10の画面に表示される画像は異なっていてもよく、例えば、視点が異なる画像がそれぞれのゲーム装置10において表示されてもよい。例えば、マスターの画面には、マスターにおいて操作されるゲームキャラクタ101を中心とした画像が表示され、クライアントC1の画面にはクライアントC1で操作されるゲームキャラクタ102を中心とした画像が表示されてもよい。また、オーディエンスの画面には、マスターおよび各クライアントとは視点が異なる画像が表示されてもよい。また、オーディエンスにおいて、仮想空間の画像を表示せずに、ゲーム状況を認識可能な情報(例えば、コースマップの画像、数値や文字等)が画面に表示されてもよい。   FIG. 5 is a diagram illustrating an example of an image displayed on the upper LCD 22 of the game device when the game according to the present embodiment is executed. As shown in FIG. 5, for example, a plurality of game characters are displayed on the upper LCD 22 of the game apparatuses 10a to 10d, and a race game in which a plurality of game characters ride on a cart and run on a course is performed. Specifically, on the upper LCD 22 of the game devices 10a to 10c, a game character 101 operated by a user of the master (game device 10a), a game character 102 operated by a user of the client C1 (game device 10b), and The game character 103 operated by the user of the client C2 (game device 10c) is displayed. The image shown in FIG. 5 is also displayed on the upper LCD 22 of the audience (game device 10d). Although the audience does not participate in the race game as a party, the audience can participate as a spectator of the race game progressing between the game apparatuses 10a to 10c and watch the race game. The images displayed on the screens of the game devices 10 may be different. For example, images with different viewpoints may be displayed on the game devices 10. For example, an image centered on the game character 101 operated on the master is displayed on the master screen, and an image centered on the game character 102 operated on the client C1 is displayed on the client C1 screen. Good. In addition, an image with a different viewpoint from the master and each client may be displayed on the audience screen. In the audience, information (for example, an image of a course map, numerical values, characters, and the like) that can recognize the game situation may be displayed on the screen without displaying an image of the virtual space.

図4に示すように、マスター(ゲーム装置10a)と、クライアントC1(ゲーム装置10b)との間では、まず、認証が行われる。同様に、マスター(ゲーム装置10a)と、クライアントC2(ゲーム装置10c)との間も、認証が行われる。マスターとクライアントCとの間で認証が行われると、マスターは認証したクライアントCの識別情報(MACアドレス)を自機に登録し、登録したクライアントCとの間で、操作データ(例えば操作ボタン14等に対する操作データ)等を送受信する。同様に、クライアントは、マスターとの間で認証が行われると、マスターの識別情報(MACアドレス)を自機に登録する。これによって、マスターとクライアントCとの間でデータがやり取りされて、ゲームが進行する。一方、マスター(ゲーム装置10a)と、オーディエンス(ゲーム装置10d)との間では、認証は行われず、マスターにはオーディエンスの識別情報(MACアドレス)は登録されない。オーディエンスは、マスターの識別情報(MACアドレス)を自機に登録する。オーディエンスは、マスターおよびクライアントCから送信されるデータの受信のみを行い、マスターおよびクライアントCから送信されるデータに基づいてゲーム画像を生成して、自機の上側LCD22に当該ゲーム画像を表示する。マスターと、オーディエンスとの間では、認証のための通信は一切行われないため、オーディエンスはマスターおよびクライアントCに認識されない。   As shown in FIG. 4, authentication is first performed between the master (game device 10a) and the client C1 (game device 10b). Similarly, authentication is performed between the master (game device 10a) and the client C2 (game device 10c). When authentication is performed between the master and the client C, the master registers the identification information (MAC address) of the authenticated client C in its own device, and operation data (for example, the operation button 14) is registered with the registered client C. Etc.). Similarly, when authentication is performed with the master, the client registers the identification information (MAC address) of the master in its own device. As a result, data is exchanged between the master and the client C, and the game progresses. On the other hand, authentication is not performed between the master (game device 10a) and the audience (game device 10d), and the identification information (MAC address) of the audience is not registered in the master. The audience registers the identification information (MAC address) of the master in its own device. The audience only receives data transmitted from the master and the client C, generates a game image based on the data transmitted from the master and the client C, and displays the game image on the upper LCD 22 of the own device. Since no communication for authentication is performed between the master and the audience, the audience is not recognized by the master and the client C.

図6は、マスターにおいて生成されるクライアントの登録テーブル80を示す図である。図6に示すように、マスターには、認証が完了したクライアントのMACアドレス、ユーザ名、および、IDが記憶される。ユーザ名は、各ゲーム装置のユーザによって割り当てられた名前である。IDは、マスターが各クライアントを登録する際に、各クライアントに割り当てる番号であり、例えば、1〜15までの整数値である。マスターは、認証が完了したクライアントを図6に示すテーブルに、例えば最大で15台まで登録する。一方、オーディエンスはマスターの登録テーブル80には登録されない。   FIG. 6 is a diagram showing a client registration table 80 generated in the master. As shown in FIG. 6, the master stores the MAC address, user name, and ID of the client that has been authenticated. The user name is a name assigned by the user of each game device. The ID is a number assigned to each client when the master registers each client, and is an integer value from 1 to 15, for example. The master registers up to 15 clients, for example, in the table shown in FIG. On the other hand, the audience is not registered in the master registration table 80.

各ゲーム装置では、ゲームが実行される前に設定処理が行われる。当該設定処理が行われることによって、ゲーム装置が上記マスター、クライアント、および、オーディエンスの何れかで動作するかが決定される。本実施形態では、各ゲーム装置10のユーザが、自身が使用するゲーム装置をマスター、クライアント、および、オーディエンスの何れで動作させるかを選択する。   In each game device, setting processing is performed before the game is executed. By performing the setting process, it is determined whether the game apparatus operates as the master, the client, or the audience. In the present embodiment, the user of each game device 10 selects whether the game device used by the user is operated as a master, a client, or an audience.

(設定処理)
次に、ゲーム装置10において行われる設定処理について説明する。図7は、各ゲーム装置10のメモリ(メインメモリ32や無線通信モジュール36内のメモリ等)のメモリマップを示す図である。
(Setting process)
Next, the setting process performed in the game device 10 will be described. FIG. 7 is a diagram illustrating a memory map of a memory (such as the main memory 32 or the memory in the wireless communication module 36) of each game apparatus 10.

図7に示すように、ゲーム装置10のメモリには、通信プログラム71、モードデータ72、および、識別情報73が記憶される。通信プログラム71は、通信を制御するプログラムとゲームプログラムとを含む。具体的には、通信プログラム71は、後述する各処理(設定処理、マスター処理、クライアント処理、オーディエンス処理、データ送信処理、および、データ受信処理)を実行するためのプログラムである。モードデータ72は、ゲーム装置10を、マスター、クライアント、および、オーディエンスの何れのモードで動作させるかを示すデータである。識別情報73は、自機がどのマスターに接続しているかを識別するための識別情報であり、具体的には、マスターのMACアドレスである。ゲーム装置10がマスターとして機能する場合、識別情報73には自機のMACアドレスが記憶される。図7に示すデータの他、各ゲーム装置10のメモリには、それぞれのモードに応じて、種々のデータが記憶される。例えば、マスターには、図6に示す登録テーブル80を示すデータ等が記憶される。また、マスターおよびクライアントのメモリには、後述する個別送信データを格納するための領域である個別送信箱110、および、全送信データを格納するための領域である全送信箱120が設けられる。また、例えば、各ゲーム装置のメモリには、ゲーム処理に用いられる各種のデータが記憶される。   As shown in FIG. 7, a communication program 71, mode data 72, and identification information 73 are stored in the memory of the game apparatus 10. The communication program 71 includes a program for controlling communication and a game program. Specifically, the communication program 71 is a program for executing each process (setting process, master process, client process, audience process, data transmission process, and data reception process) described later. The mode data 72 is data indicating whether the game apparatus 10 is operated in a master, client, or audience mode. The identification information 73 is identification information for identifying to which master the own device is connected, and is specifically the MAC address of the master. When the game apparatus 10 functions as a master, the identification information 73 stores its own MAC address. In addition to the data shown in FIG. 7, various data are stored in the memory of each game apparatus 10 according to each mode. For example, the master stores data indicating the registration table 80 shown in FIG. Further, the master and client memories are provided with an individual transmission box 110 that is an area for storing individual transmission data, which will be described later, and an entire transmission box 120 that is an area for storing all transmission data. Further, for example, various data used for the game process are stored in the memory of each game device.

図8は、各ゲーム装置10において実行される設定処理の流れを示すフローチャートである。ゲーム装置10の電源が投入されると、ゲーム装置10の情報処理部31(CPU311)は、ROM(図示せず)に記憶されている起動プログラムを実行し、これによってメインメモリ32等の各ユニットが初期化される。次に、ROMに記憶されたプログラムがメモリ(具体的には、メインメモリ32)に読み込まれ、情報処理部31のCPU311によって当該プログラムの実行が開始される。図8のフローチャートに示す処理は、以上の処理が完了した後に情報処理部31によって行われる。   FIG. 8 is a flowchart showing the flow of setting processing executed in each game apparatus 10. When the power of the game apparatus 10 is turned on, the information processing unit 31 (CPU 311) of the game apparatus 10 executes a startup program stored in a ROM (not shown), whereby each unit such as the main memory 32 is executed. Is initialized. Next, the program stored in the ROM is read into the memory (specifically, the main memory 32), and the CPU 311 of the information processing unit 31 starts executing the program. The processing shown in the flowchart of FIG. 8 is performed by the information processing unit 31 after the above processing is completed.

まず、ステップS1において、情報処理部31は、マスターになるか否かの選択画面を上側LCD22または下側LCD12に表示する。例えば、下側LCD12には、自機をマスターとして機能させるか否かをユーザに選択させるためのアイコンが表示される。次に、情報処理部31は、ステップS2の処理を実行する。   First, in step S <b> 1, the information processing section 31 displays a selection screen as to whether or not to become a master on the upper LCD 22 or the lower LCD 12. For example, the lower LCD 12 displays an icon for allowing the user to select whether or not the own device functions as a master. Next, the information processing section 31 performs the process of step S2.

ステップS2において、情報処理部31は、マスターが選択されたか否かを判定する。例えば、情報処理部31は、タッチパネル13が検出したタッチ位置に基づいて、マスターを選択するためのアイコンがタッチされたか否かを判定する。マスターが選択された場合、情報処理部31は、次にステップS3の処理を実行する。一方、マスターが選択されなかった場合、情報処理部31は、次にステップS4の処理を実行する。   In step S2, the information processing section 31 determines whether a master has been selected. For example, the information processing unit 31 determines whether an icon for selecting a master has been touched based on the touch position detected by the touch panel 13. When the master is selected, the information processing section 31 next executes the process of step S3. On the other hand, when the master is not selected, the information processing section 31 next executes the process of step S4.

ステップS3において、情報処理部31は、自機をマスターモードに設定する。具体的には、情報処理部31は、モードデータ72にマスターであることを示す値を格納するとともに、識別情報73に自機のMACアドレスを設定する。次に情報処理部31は、図8に示す設定処理を終了する。   In step S3, the information processing section 31 sets itself to the master mode. Specifically, the information processing unit 31 stores a value indicating the master in the mode data 72 and sets the MAC address of the own device in the identification information 73. Next, the information processing section 31 ends the setting process illustrated in FIG.

一方、ステップS4において、情報処理部31は、ビーコンを受信したか否かを判定する。ここで、ビーコンは、マスターによってブロードキャストで定期的(例えば、100msec毎)に送信される管理(マネジメント)フレームである。マスターとして機能するゲーム装置10が自機の近くに存在する場合、情報処理部31は、マスターから定期的に送信されるビーコンを受信する。   On the other hand, in step S4, the information processing section 31 determines whether or not a beacon has been received. Here, the beacon is a management frame that is transmitted by the master on a regular basis (for example, every 100 msec). When the game apparatus 10 that functions as a master is present near the player, the information processing unit 31 receives a beacon that is periodically transmitted from the master.

図9は、マスターによって定期的に送信されるビーコンのフレームフォーマットを示す図である。図9に示すように、ビーコンには、送信元アドレス(マスターのMACアドレス)、BSSID(マスターのMACアドレスと一致する)、ゲームID、接続数、最大接続数、接続済みリスト、および、観戦許可フラグが含まれる。送信元アドレスおよびBSSIDは、当該フレームのヘッダ部分に埋め込まれている。また、ゲームID、接続数、最大接続数、接続済みリスト、および、観戦許可フラグは、ベンダー固有の情報要素としてフレームのボディ部分に含められる情報である。ゲームIDは、各ゲーム装置10で行われるゲームを識別するためのIDである。また、接続数は、現在マスターの登録テーブル80に登録されているクライアント(認証済みのクライアント)の数である。最大接続数は、マスターが許容するクライアントの最大接続数(15)にマスター自身を加えた数であり、例えば、16に設定されている。接続済みリストは、現在マスターに登録されているクライアント(登録テーブル80に登録されたクライアント)を示す情報のリストであり、例えば、登録されているクライアントのユーザ名のリストである。観戦許可フラグは、オーディエンスによる観戦を許可するか否かを示す情報である。   FIG. 9 is a diagram showing a frame format of a beacon periodically transmitted by the master. As shown in FIG. 9, the beacon includes a source address (master MAC address), BSSID (matches the master MAC address), game ID, number of connections, maximum number of connections, connected list, and watching permission. Contains a flag. The transmission source address and BSSID are embedded in the header portion of the frame. The game ID, the number of connections, the maximum number of connections, the connected list, and the watching permission flag are information included in the body portion of the frame as vendor-specific information elements. The game ID is an ID for identifying a game played on each game device 10. The number of connections is the number of clients (authenticated clients) currently registered in the master registration table 80. The maximum number of connections is a number obtained by adding the master itself to the maximum number of client connections (15) allowed by the master, and is set to 16, for example. The connected list is a list of information indicating clients currently registered in the master (clients registered in the registration table 80), for example, a list of registered client user names. The watching permission flag is information indicating whether or not to allow watching by the audience.

ステップS4において、情報処理部31は、ビーコンを受信した場合、次にステップS5の処理を実行する。一方、情報処理部31は、ビーコンを受信しなかった場合、次にステップS6の処理を実行する。   In step S4, when the information processing section 31 receives a beacon, the information processing section 31 next executes the process of step S5. On the other hand, if the information processing section 31 has not received a beacon, the information processing section 31 next executes the process of step S6.

ステップS5において、情報処理部31は、マスターおよびクライアントのリストの表示、および、選択画面の表示をする。ここでは、情報処理部31は、ステップS4で受信したビーコンに含まれる接続済みリストに基づいて、現在マスターに登録されているクライアントのリストを上側LCD22または下側LCD12に表示する。例えば、図4に示すゲーム装置10aがマスターとして機能しており、ゲーム装置10cがクライアントとしてマスターに登録されている場合、情報処理部31は、ゲーム装置10aおよびゲーム装置10cを示すアイコンを下側LCD12に表示する。なお、ステップS4において、送信元が異なる複数のビーコンを受信した場合(すなわち、自機の近くにマスターとして機能するゲーム装置10が複数存在する場合)、情報処理部31は、各マスターとそれに登録されているクライアントとを表示する。これにより、ユーザは、どのマスターに接続するか(どのマスターによって構成されるネットワークに接続するか)を選択する。また、情報処理部31は、自機をクライアントとして動作させるか、オーディエンスとして動作させるかをユーザに選択させるためのアイコンを上側LCD22または下側LCD12に表示する。例えば、下側LCD12には、ゲームに参加することを示すアイコンと、ゲームを観戦することを示すアイコンとが表示され、ユーザにどちらか一方のアイコンを選択させる。図10は、ステップS5において画面に表示される画像の一例を示す図である。図10に示すように、自機の近くにマスターM10およびマスターM20の2台のマスターが検出された場合(すなわち、異なる2つの端末からビーコンを受信した場合)、例えば下側LCD12の画面にはマスターによって構成されるグループ(ネットワーク)毎にリストが表示される。例えば、マスターM10、クライアントC11およびクライアントC12によって構成されるグループ1と、マスターM20、クライアントC21およびクライアントC22によって構成されるグループ2とが、表示される。例えば、ユーザは、表示されたグループの何れかを選択する。そして、ユーザは、その選択したグループに対して、ゲームに参加するか(クライアントとして動作させるか)、ゲームを観戦するか(オーディエンスとして動作させるか)を選択する。情報処理部31は、次にステップS7の処理を実行する。   In step S5, the information processing section 31 displays a list of masters and clients, and a selection screen. Here, the information processing section 31 displays the list of clients currently registered in the master on the upper LCD 22 or the lower LCD 12 based on the connected list included in the beacon received in step S4. For example, when the game apparatus 10a illustrated in FIG. 4 functions as a master and the game apparatus 10c is registered as a client in the master, the information processing unit 31 displays the icons indicating the game apparatus 10a and the game apparatus 10c below. Displayed on the LCD 12. In step S4, when a plurality of beacons having different transmission sources are received (that is, when there are a plurality of game devices 10 functioning as masters near the own device), the information processing section 31 registers each master and the master device. Displays the clients that are being used. As a result, the user selects which master to connect to (which network to connect to which master). In addition, the information processing unit 31 displays an icon on the upper LCD 22 or the lower LCD 12 for allowing the user to select whether to operate the own apparatus as a client or an audience. For example, the lower LCD 12 displays an icon indicating participation in the game and an icon indicating watching the game, and allows the user to select one of the icons. FIG. 10 is a diagram illustrating an example of an image displayed on the screen in step S5. As shown in FIG. 10, when two masters of master M10 and master M20 are detected near the own device (that is, when a beacon is received from two different terminals), for example, the screen of lower LCD 12 A list is displayed for each group (network) configured by the master. For example, the group 1 composed of the master M10, the client C11, and the client C12 and the group 2 composed of the master M20, the client C21, and the client C22 are displayed. For example, the user selects one of the displayed groups. Then, the user selects whether to participate in the game (operate as a client) or watch the game (operate as an audience) for the selected group. Next, the information processing section 31 executes the process of step S7.

一方、ステップS6において、情報処理部31は、所定時間経過したか否かを判定する。所定時間が経過した場合、自機の近くにマスターとして機能するゲーム装置10を見つけることが出来なかったため、情報処理部31は、ステップS1の処理を再び実行する。一方、所定時間が経過していない場合、情報処理部31は、ステップS4の処理を再び実行する。   On the other hand, in step S6, the information processing section 31 determines whether or not a predetermined time has elapsed. When the predetermined time has elapsed, the information processing unit 31 executes the process of step S1 again because the game apparatus 10 functioning as a master could not be found near the own machine. On the other hand, when the predetermined time has not elapsed, the information processing section 31 performs the process of step S4 again.

ステップS7において、情報処理部31は、ゲームに参加することを示すアイコンが選択されたか否かを判定する。具体的には、情報処理部31は、タッチパネル13が検出したタッチ位置に基づいて、ゲームに参加することを示すアイコン(すなわち、自機をクライアントとして動作させることを示すアイコン)が選択されたか否かを判定する。判定結果が肯定の場合、情報処理部31は、次にステップS8の処理を実行する。判定結果が否定の場合、情報処理部31は、次にステップS9の処理を実行する。   In step S7, the information processing section 31 determines whether or not an icon indicating participation in the game has been selected. Specifically, based on the touch position detected by the touch panel 13, the information processing unit 31 determines whether an icon indicating participation in the game (that is, an icon indicating that the own device operates as a client) is selected. Determine whether. If the determination result is affirmative, the information processing section 31 next executes a process of step S8. If the determination result is negative, the information processing section 31 next executes a process of step S9.

ステップS8において、情報処理部31は、自機をクライアントモードに設定する。具体的には、情報処理部31は、モードデータ72にクライアントであることを示す値を格納する。その後、情報処理部31は、図8に示す設定処理を終了する。   In step S8, the information processing section 31 sets the own apparatus to the client mode. Specifically, the information processing section 31 stores a value indicating that the client is a client in the mode data 72. Thereafter, the information processing section 31 ends the setting process illustrated in FIG.

ステップS9において、情報処理部31は、自機をオーディエンスモードに設定する。具体的には、情報処理部31は、モードデータ72にオーディエンスであることを示す値を格納する。その後、情報処理部31は、図8に示す設定処理を終了する。   In step S9, the information processing section 31 sets the own apparatus to the audience mode. Specifically, the information processing section 31 stores a value indicating the audience in the mode data 72. Thereafter, the information processing section 31 ends the setting process illustrated in FIG.

以上のようにして、各ゲーム装置10は、マスターモード、クライアントモード、および、オーディエンスモードの何れかに設定される。このようにして各ゲーム装置のモードが設定されると、各ゲーム装置は、設定されたモードに応じてそれぞれ異なる処理を実行する。   As described above, each game apparatus 10 is set to any one of the master mode, the client mode, and the audience mode. When the mode of each game device is set in this way, each game device executes different processes depending on the set mode.

(マスター処理)
次に、マスターで行われる処理の詳細について説明する。図11は、マスターとして機能するゲーム装置10の処理(マスター処理)の詳細を示すフローチャートである。
(Master processing)
Next, details of processing performed by the master will be described. FIG. 11 is a flowchart showing details of processing (master processing) of the game apparatus 10 functioning as a master.

図8に示す設定処理が行われて、ゲーム装置10がマスターに設定されると図11に示すマスター処理が、マスターの情報処理部31および無線通信モジュール36によって実行される。   When the setting process shown in FIG. 8 is performed and the game apparatus 10 is set as a master, the master process shown in FIG. 11 is executed by the master information processing unit 31 and the wireless communication module 36.

まず、ステップS10において、マスターは、ビーコンの送信を開始する。ステップS10においてビーコンの送信を開始すると、マスターは、以降のステップS11〜ステップS20の処理を行う間、定期的に(例えば、100msec毎に)ビーコンを送信する。次に、マスターは、ステップS11の処理を実行する。   First, in step S10, the master starts transmitting a beacon. When transmission of a beacon is started in step S10, the master transmits a beacon periodically (for example, every 100 msec) while performing the processes of subsequent steps S11 to S20. Next, the master executes the process of step S11.

ステップS11において、マスターは、クライアントから接続要求(登録フレーム)があったか否かを判定する。具体的には、マスターは、クライアントから接続要求を示すフレーム(オーセンティケーションフレーム)を受信したか否かを判定する。判定結果が肯定の場合、マスターは、次にステップS12の処理を実行する。一方、判定結果が否定の場合、マスターは、次にステップS16の処理を実行する。   In step S11, the master determines whether or not there is a connection request (registered frame) from the client. Specifically, the master determines whether or not a frame (authentication frame) indicating a connection request is received from the client. If the determination result is affirmative, the master next executes a process of step S12. On the other hand, if the determination result is negative, the master next executes the process of step S16.

ステップS12において、マスターは、認証処理を開始して、ステップS13の処理を実行する。   In step S12, the master starts an authentication process and executes the process of step S13.

ステップS13において、マスターは、接続を許可するか否かを判定する。マスターは、接続を許可すると判定した場合、次にステップS14の処理を実行する。一方、マスターは、マスターは、接続を拒否すると判定した場合、次にステップS15の処理を実行する。例えば、マスターは、ステップS13において、所定の認証方式による認証処理を行うことによって、接続要求を送信した端末の接続を許可するか否かを判定する。また、ステップS13において、マスターは、登録テーブル80を参照して、現在登録されているクライアントの数が最大接続数(例えば、15)より小さいか否かを判定する。本実施形態では、オープンシステム認証による認証が行われるものとする。すなわち、マスターは、ステップS13において、現在登録されているクライアントの数が最大接続数より小さければ、接続要求を送信したクライアントの接続を許可し、現在接続されているクライアントの数が最大接続数以上であれば、当該クライアントの接続を拒否する。   In step S13, the master determines whether or not to permit the connection. If it is determined that the connection is permitted, the master next executes the process of step S14. On the other hand, if the master determines that the master refuses the connection, the master next executes the process of step S15. For example, in step S13, the master determines whether or not to permit connection of the terminal that transmitted the connection request by performing authentication processing using a predetermined authentication method. In step S13, the master refers to the registration table 80 and determines whether the number of currently registered clients is smaller than the maximum number of connections (for example, 15). In this embodiment, it is assumed that authentication by open system authentication is performed. That is, in step S13, if the number of currently registered clients is smaller than the maximum number of connections, the master permits connection of the client that transmitted the connection request, and the number of currently connected clients is equal to or greater than the maximum number of connections. If so, the client connection is rejected.

ステップS14において、マスターは、接続要求を送信したクライアントとの接続を確立した後、当該クライアントを自機に登録する。具体的には、マスターは、当該クライアントに対して接続許可を示すフレーム(オーセンティケーションフレーム)を送信するとともに、当該クライアントとの間でアソシエーションフレームをやり取りすることでアソシエーション処理を実行する。アソシエーション処理の後、マスターとクライアントとはアプリケーションレベルでの登録処理を行う。具体的には、クライアントが、マスターに対して、ユーザ名を含む登録要求のためのフレームを送信する。登録要求のためのフレームを受信したマスターは、当該ユーザ名を含む情報を取得して、当該クライアントのためのIDを付与する。次に、マスターは、当該クライアントに対して登録許可のフレームを送信する。当該登録許可のフレームには、当該クライアントのユーザ名やID等の情報に加えて、マスターおよび他の全ての登録済みのクライアントのユーザ名やID等の情報が含まれる。これにより、マスターとクライアントとの間でアプリケーションレベルでの登録処理が行われる。そして、当該登録処理が完了すると、マスターは、当該クライアントを登録テーブル80に登録する。このとき、マスターは、当該クライアントのMACアドレス、ユーザ名、および、IDを登録テーブル80に登録する。これにより、マスターは、当該クライアントを自機に登録する。   In step S14, the master establishes a connection with the client that transmitted the connection request, and then registers the client in its own device. Specifically, the master transmits a frame (authentication frame) indicating connection permission to the client and performs association processing by exchanging an association frame with the client. After the association processing, the master and the client perform registration processing at the application level. Specifically, the client transmits a registration request frame including the user name to the master. The master that has received the frame for the registration request acquires information including the user name and assigns an ID for the client. Next, the master transmits a registration permission frame to the client. In addition to information such as the user name and ID of the client, the registration permission frame includes information such as the user name and ID of the master and all other registered clients. As a result, registration processing at the application level is performed between the master and the client. When the registration process is completed, the master registers the client in the registration table 80. At this time, the master registers the MAC address, user name, and ID of the client in the registration table 80. As a result, the master registers the client in its own device.

なお、上記アプリケーションレベルでの登録処理は必ずしも行われなくてもよい。すなわち、クライアントとマスターとの間でオーセンティケーションフレームおよびアソシエーションフレームのやり取りが行われた後、マスターおよびクライアントは、相互に登録してもよい。ステップS14の処理の後、マスターは、次にステップS16の処理を実行する。   The registration process at the application level is not necessarily performed. That is, after the authentication frame and the association frame are exchanged between the client and the master, the master and the client may register with each other. After the process of step S14, the master next executes the process of step S16.

一方、ステップS15において、マスターは、接続要求を送信したクライアントに対して、接続拒否を示すフレームを送信する。ここでは、マスターは、接続要求を送信したクライアントを登録テーブル80に登録しない。マスターは、次にステップS16の処理を実行する。   On the other hand, in step S15, the master transmits a frame indicating connection rejection to the client that transmitted the connection request. Here, the master does not register the client that transmitted the connection request in the registration table 80. Next, the master executes the process of step S16.

ステップS16において、マスターは、ゲームを開始するか否かの判定を行う。判定結果が肯定の場合、マスターは、各クライアントにゲームを開始することを示すコマンドを送信し、次にステップS17の処理を実行する。判定結果が否定の場合、マスターは、ステップS11の処理を再び実行する。例えば、マスターは、登録されたクライアントの数が最大接続数に達した場合、ゲームを開始すると判定してもよいし、ステップS11の処理の実行を開始してから所定時間が経過した場合に、ゲームを開始すると判定してもよい。ステップS11〜S16の処理が繰り返し行われることによって、マスターに1以上のクライアントが登録され、ゲームが開始される。   In step S16, the master determines whether to start the game. If the determination result is affirmative, the master transmits a command indicating that the game is started to each client, and then executes the process of step S17. If the determination result is negative, the master executes the process of step S11 again. For example, the master may determine to start the game when the number of registered clients reaches the maximum number of connections, or when a predetermined time has elapsed after starting the execution of the process of step S11, You may determine with starting a game. By repeating the processes of steps S11 to S16, one or more clients are registered in the master, and the game is started.

ステップS17において、マスターは、プローブリクエスト(探索フレーム)を受信したか否かを判定する。具体的には、マスターは、オーディエンスから送信されるプローブリクエストを受信したか否かを判定する。後述するように、オーディエンスは、基本的にはデータの受信のみを行うが、プローブリクエストをマスターに対して送信することにより、マスターに対して情報を送信することができる。オーディエンスが送信するプローブリクエストについては、後述する。判定結果が肯定の場合、マスターは、次にステップS18の処理を実行する。判定結果が否定の場合、マスターは、次にステップS19の処理を実行する。   In step S17, the master determines whether a probe request (search frame) has been received. Specifically, the master determines whether or not a probe request transmitted from the audience has been received. As will be described later, the audience basically only receives data, but can send information to the master by sending a probe request to the master. The probe request transmitted by the audience will be described later. If the determination result is affirmative, the master next executes a process of step S18. If the determination result is negative, the master next executes a process of step S19.

ステップS18において、マスターは、受信したプローブリクエストに応じた処理を行い、当該処理の結果をプローブレスポンス(探索応答フレーム)として、オーディエンスに送信する。マスターは、次にステップS19の処理を実行する。   In step S18, the master performs processing according to the received probe request, and transmits the result of the processing as a probe response (search response frame) to the audience. Next, the master executes the process of step S19.

ステップS19において、マスターは、データの送受信処理を行う。ここでは、マスターが、ゲーム処理のためのデータ(自機において行われた操作を示す操作情報や自機で操作されるゲームキャラクタに関する情報等を示すデータ)をクライアントに対して送信したり、クライアントから送信される、ゲーム処理のためのデータを受信したりする。マスターにおいて行われるデータ送受信処理の詳細については後述する。次に、マスターは、ステップS20の処理を実行する。   In step S19, the master performs data transmission / reception processing. Here, the master transmits data for game processing (operation information indicating an operation performed on the player's own machine or data indicating information on a game character operated on the player's own machine) to the client, Receive data for game processing sent from. Details of the data transmission / reception processing performed in the master will be described later. Next, the master executes the process of step S20.

ステップS20において、マスターは、ゲーム処理を実行する。ここでは、マスターは、ステップS19で受信したデータ、および、自機において行われた操作(操作ボタン14やアナログスティック15、タッチパネル13等に対して行われた操作)に応じて、ゲーム処理を行う。例えば、マスターは、自機において行われた操作に基づいて、自機で操作されるゲームキャラクタ101の動作を決定したり当該ゲームキャラクタ101の位置情報を更新したりする。また、マスターは、ステップS19において、例えば、クライアントC1から受信した操作情報、または、クライアントC1から受信したゲームキャラクタ102の位置情報に基づいて、当該ゲームキャラクタ102の位置を更新する。また、マスターは、仮想空間内の仮想カメラの位置や視線方向を決定して、各ゲームキャラクタを当該仮想カメラで撮像することにより、画像を生成する。そして、マスターは、上側LCD22に生成した画像を表示する。ステップS20の処理の後、マスターは、ステップS17の処理を再び実行する。   In step S20, the master executes a game process. Here, the master performs the game process according to the data received in step S19 and the operation performed on the own device (operation performed on the operation button 14, the analog stick 15, the touch panel 13, etc.). . For example, the master determines the action of the game character 101 operated on the own machine or updates the position information of the game character 101 based on the operation performed on the own machine. In step S19, for example, the master updates the position of the game character 102 based on the operation information received from the client C1 or the position information of the game character 102 received from the client C1. In addition, the master generates an image by determining the position and the line-of-sight direction of the virtual camera in the virtual space and capturing each game character with the virtual camera. Then, the master displays the generated image on the upper LCD 22. After the process of step S20, the master executes the process of step S17 again.

以上のように、ステップS17〜ステップS20の処理が繰り返し実行されることによって、ゲームが進行する。なお、ユーザによってゲームが終了された場合や、レースゲームが終了した場合は、図11に示すマスター処理は終了する。   As described above, the game progresses by repeatedly executing the processing from step S17 to step S20. Note that when the game is finished by the user or when the race game is finished, the master process shown in FIG. 11 is finished.

(クライアント処理)
次に、クライアントで行われる処理の詳細について説明する。図12は、クライアントとして機能するゲーム装置10の処理(クライアント処理)の詳細を示すフローチャートである。
(Client processing)
Next, details of processing performed in the client will be described. FIG. 12 is a flowchart showing details of processing (client processing) of the game apparatus 10 functioning as a client.

図8に示す設定処理が行われて、ゲーム装置10がクライアントに設定されると図12に示すクライアント処理が、クライアントの情報処理部31および無線通信モジュール36によって実行される。   When the setting process shown in FIG. 8 is performed and the game apparatus 10 is set as a client, the client process shown in FIG. 12 is executed by the information processing unit 31 and the wireless communication module 36 of the client.

まず、ステップS30において、クライアントは、JOIN処理を実行する。具体的には、クライアントは、上記設定処理のステップS5で選択されたマスターから送信されたビーコンを受信して、マスターとの同期を行う(JOINする)。クライアントは、次にステップS31の処理を実行する。   First, in step S30, the client executes a JOIN process. Specifically, the client receives the beacon transmitted from the master selected in step S5 of the setting process, and synchronizes (JOIN) with the master. Next, the client executes the process of step S31.

ステップS31において、クライアントは、接続要求を送信する。具体的には、クライアントは、マスターに対して接続要求を示すフレーム(オーセンティケーションフレーム)を送信する。次に、クライアントは、ステップS32の処理を実行する。   In step S31, the client transmits a connection request. Specifically, the client transmits a frame (authentication frame) indicating a connection request to the master. Next, the client executes the process of step S32.

ステップS32において、クライアントは、マスターとの間で認証処理を行う。本実施形態では、オープンシステム認証による認証処理が行われるため、クライアントは、次にステップS33の処理を行う。   In step S32, the client performs an authentication process with the master. In this embodiment, since authentication processing by open system authentication is performed, the client next performs the process of step S33.

ステップS33において、クライアントは、マスターから接続が許可されたか否かを判定する。具体的には、クライアントは、接続許可を示すフレーム(ステップS14で送信されたフレーム)を受信した場合、次にステップS34の処理を実行する。一方、クライアントは、接続拒否を示すフレーム(ステップS15で送信されたフレーム)を受信した場合、図12に示すクライアント処理を終了する。   In step S33, the client determines whether or not the connection is permitted from the master. Specifically, when the client receives a frame indicating connection permission (the frame transmitted in step S14), the client next executes the process of step S34. On the other hand, when the client receives a frame indicating connection rejection (the frame transmitted in step S15), the client processing illustrated in FIG.

ステップS34において、クライアントは、マスターとの間で接続を確立する。具体的には、クライアントは、マスターとの間でアソシエーションフレームをやり取りすることでアソシエーション処理を実行する。アソシエーション処理の後、マスターとクライアントとの間で、上記アプリケーションレベルでの登録処理が行われる。具体的には、クライアントは、マスターに対して自機のユーザ名と上記所定の情報とを含む上記登録要求のためのフレームを送信し、当該マスターから上記登録許可のフレームを受信する。そして、当該登録処理が完了した後、クライアントは、当該マスターのMACアドレスを識別情報73としてメモリに記憶することにより、マスターを自機に登録する。クライアントは、次にステップS35の処理を行う。   In step S34, the client establishes a connection with the master. Specifically, the client executes an association process by exchanging an association frame with the master. After the association processing, registration processing at the application level is performed between the master and the client. Specifically, the client transmits a frame for the registration request including the user name of the own device and the predetermined information to the master, and receives the registration permission frame from the master. Then, after the registration process is completed, the client registers the master in its own device by storing the MAC address of the master in the memory as the identification information 73. Next, the client performs the process of step S35.

ステップS35において、クライアントは、ゲームを開始する。具体的には、クライアントは、マスターからゲームの開始を示すコマンドが送られた場合、ゲームを開始する。クライアントは、次にステップS36の処理を行う。   In step S35, the client starts a game. Specifically, the client starts the game when a command indicating the start of the game is sent from the master. Next, the client performs the process of step S36.

ステップS36において、クライアントは、データの送受信処理を行う。ここでは、ゲーム処理のためのデータ(自機において行われた操作を示す操作情報や自機で操作されるゲームキャラクタに関する情報等を示すデータ)をマスターあるいは他のクライアントに対して送信したり、マスターあるいは他のクライアントから送信される、ゲーム処理のためのデータを受信したりする。クライアントにおいて行われるデータ送受信処理の詳細については、後述する。次に、クライアントは、ステップS37の処理を実行する。   In step S36, the client performs data transmission / reception processing. Here, data for game processing (operation information indicating an operation performed on the own device, data indicating information on a game character operated on the own device, etc.) is transmitted to the master or another client, Receive data for game processing sent from the master or other clients. Details of the data transmission / reception processing performed in the client will be described later. Next, the client executes the process of step S37.

ステップS37において、クライアントは、ゲーム処理を実行する。ここでは、クライアントは、ステップS36で受信したデータ、および、自機において行われた操作(操作ボタン14やアナログスティック15、タッチパネル13等に対して行われた操作)に応じて、ゲーム処理を行う。例えば、クライアントは、自機において行われた操作に基づいて、自機で操作されるゲームキャラクタ102の動作を決定したり当該ゲームキャラクタ102の位置情報を更新したりする。また、クライアントは、ステップS36において、他のゲーム装置10から受信した操作情報、または、他のゲーム装置10から受信した当該他のゲーム装置10で操作されるゲームキャラクタの位置情報に基づいて、当該ゲームキャラクタの位置を更新する。また、クライアントは、仮想空間内の仮想カメラの位置や視線方向を決定して、各ゲームキャラクタを当該仮想カメラで撮像することにより、画像を生成する。そして、クライアントは、上側LCD22に生成した画像を表示する。ステップS37の処理の後、クライアントは、ステップS36の処理を再び実行する。   In step S37, the client executes a game process. Here, the client performs a game process according to the data received in step S36 and the operation performed on the own device (operation performed on the operation button 14, the analog stick 15, the touch panel 13, etc.). . For example, the client determines an action of the game character 102 operated by the own machine or updates position information of the game character 102 based on an operation performed on the own machine. Further, in step S36, the client, based on the operation information received from the other game device 10 or the position information of the game character operated on the other game device 10 received from the other game device 10, Update the position of the game character. In addition, the client determines the position of the virtual camera and the line-of-sight direction in the virtual space, and images each game character with the virtual camera to generate an image. Then, the client displays the generated image on the upper LCD 22. After the process of step S37, the client executes the process of step S36 again.

ステップS36およびステップS37の処理が繰り返し実行されることでゲームが進行する。なお、ユーザによってゲームが終了された場合(ユーザが自機のゲームを終了した場合やマスターのユーザによってゲームが終了された場合)や、レースゲームが終了した場合は、図12に示すクライアント処理は終了する。   The game progresses by repeatedly executing the processes of step S36 and step S37. When the game is finished by the user (when the user finishes his game or when the master user finishes the game), or when the race game is finished, the client process shown in FIG. finish.

(オーディエンス処理)
次に、オーディエンスで行われる処理の詳細について説明する。図13は、オーディエンスとして機能するゲーム装置10の処理(オーディエンス処理)の詳細を示すフローチャートである。
(Audience processing)
Next, details of processing performed in the audience will be described. FIG. 13 is a flowchart showing details of processing (audience processing) of the game apparatus 10 functioning as an audience.

図8に示す設定処理が行われて、ゲーム装置10がオーディエンスに設定されると図13に示すオーディエンス処理が、オーディエンスの情報処理部31および無線通信モジュール36によって実行される。   When the setting process shown in FIG. 8 is performed and the game apparatus 10 is set to the audience, the audience process shown in FIG. 13 is executed by the information processing unit 31 and the wireless communication module 36 of the audience.

まず、ステップS40において、オーディエンスは、JOIN処理を実行する。ステップS40の処理は、クライアントにおいて行われるステップS30の処理と同じである。具体的には、オーディエンスは、上記設定処理のステップS5で選択されたマスターから送信されたビーコンを受信して、当該マスターとの同期を行う(JOINする)。オーディエンスは、次にステップS41の処理を実行する。なお、所定時間以内にビーコンを受信しない場合、オーディエンスは、オーディエンス処理を終了する。   First, in step S40, the audience executes a JOIN process. The process of step S40 is the same as the process of step S30 performed at the client. Specifically, the audience receives the beacon transmitted from the master selected in step S5 of the setting process, and synchronizes with the master (JOIN). The audience next executes a process of step S41. If the beacon is not received within the predetermined time, the audience ends the audience process.

ステップS41において、オーディエンスは、観戦許可フラグがONか否かを判定する。具体的には、オーディエンスは、ステップS40で受信したビーコンに含まれる観戦許可フラグ(図9参照)がONか否かを判定する。判定結果が肯定の場合、オーディエンスは、次にステップS42の処理を実行する。判定結果が否定の場合、オーディエンスは、図13に示すオーディエンス処理を終了する。   In step S41, the audience determines whether or not the watching permission flag is ON. Specifically, the audience determines whether or not the watching permission flag (see FIG. 9) included in the beacon received in step S40 is ON. If the determination result is affirmative, the audience next executes a process of step S42. If the determination result is negative, the audience ends the audience process shown in FIG.

ステップS42において、オーディエンスは、オーディエンス動作を開始する。具体的には、オーディエンスは、ステップS40で受信したビーコンに含まれるマスターのMACアドレスを識別情報73としてメモリに記憶することにより、自機にマスターを登録する。オーディエンスは、次にステップS43の処理を実行する。   In step S42, the audience starts an audience operation. Specifically, the audience registers the master in its own device by storing the MAC address of the master included in the beacon received in step S40 in the memory as identification information 73. The audience next executes a process of step S43.

ステップS43において、オーディエンスは、ビーコンを受信する。具体的には、オーディエンスは、登録したマスターからのビーコンを受信する。オーディエンスは、次にステップS44の処理を実行する。   In step S43, the audience receives a beacon. Specifically, the audience receives a beacon from a registered master. The audience next executes a process of step S44.

ステップS44において、オーディエンスは、観戦許可フラグがONか否かを判定する。ステップS44の処理はステップS41の処理と同じである。オーディエンスは、定期的にマスターから送られるビーコンを受信して、当該ビーコンに含まれる観戦許可フラグがONか否かを判定する。判定結果が肯定の場合、オーディエンスは、次にステップS45の処理を実行する。判定結果が否定の場合、オーディエンスは、識別情報73をクリアして、図13に示すオーディエンス処理を終了する。   In step S44, the audience determines whether or not the watching permission flag is ON. The process of step S44 is the same as the process of step S41. The audience periodically receives a beacon sent from the master, and determines whether or not the watching permission flag included in the beacon is ON. If the determination result is affirmative, the audience next executes a process of step S45. If the determination result is negative, the audience clears the identification information 73 and ends the audience process shown in FIG.

ステップS45において、オーディエンスは、プローブリクエストを送信するか否かを判定する。ステップS45においては、第1の判定、および、第2の判定が行われる。   In step S45, the audience determines whether or not to send a probe request. In step S45, a first determination and a second determination are performed.

具体的には、オーディエンスは、第1の判定として、例えば所定のボタンが押されたか否かを判定する。上述のように、オーディエンスとして機能するゲーム装置10のユーザは、自機の画面を見ることによって、マスターおよびクライアントの間で行われるゲームを観戦することができる。この場合において、オーディエンスのユーザは、例えば、オーディエンスとして機能するゲーム装置10において所定の操作(例えば、ボタン14B等)を行うことで、マスターに対して所定の情報を送信することができる。マスターは所定の情報をオーディエンスから受け取ると、それに応じたゲーム処理を行う。例えば、オーディエンスとして機能するゲーム装置10の所定の操作が行われた場合、オーディエンスは、マスターに対してプローブリクエストフレームを送信する。当該プローブリクエストフレームのヘッダ部分には、マスターのMACアドレスが含まれる。また、当該プローブリクエストフレームのボディ部分には、ベンダー固有の情報要素が含まれ、当該情報要素には所定の操作に応じたゲーム処理に用いられるデータが含まれる。マスターは、プローブリクエストフレームを受信することによって、当該所定の操作に応じたデータを取得する。そして、マスターは、当該データに基づいて、所定の処理を実行する。具体的には、例えば、マスターは、予めゲーム装置10に記憶された歓声を示す音声データを再生する。これにより、オーディエンスからの歓声をゲームに反映することができる。また、マスターは、オーディエンスからプローブリクエストを受信した場合、当該プローブリクエストのボディ部分に含まれる上記所定の操作に応じたデータを取り出して、当該データを含むフレームを他のクライアントに対して送信する。各クライアントは、マスターからのフレームを受信し、上記所定の操作に応じたデータに基づいて、マスターと同様の処理を行う。なお、マスターは、プローブリクエストを受信しても当該プローブリクエストを送信したオーディエンスを自機に登録しない。   Specifically, the audience determines, for example, whether or not a predetermined button is pressed as the first determination. As described above, the user of the game apparatus 10 functioning as an audience can watch a game played between the master and the client by looking at the screen of the own device. In this case, the audience user can transmit predetermined information to the master, for example, by performing a predetermined operation (for example, button 14B etc.) in the game apparatus 10 functioning as the audience. When the master receives predetermined information from the audience, the master performs a game process accordingly. For example, when a predetermined operation of the game apparatus 10 functioning as an audience is performed, the audience transmits a probe request frame to the master. The header portion of the probe request frame includes the master MAC address. The body portion of the probe request frame includes a vendor-specific information element, and the information element includes data used for game processing corresponding to a predetermined operation. The master acquires data corresponding to the predetermined operation by receiving the probe request frame. Then, the master executes a predetermined process based on the data. Specifically, for example, the master reproduces audio data indicating cheers stored in advance in the game apparatus 10. Thereby, cheers from the audience can be reflected in the game. When the master receives a probe request from the audience, the master extracts data corresponding to the predetermined operation included in the body part of the probe request and transmits a frame including the data to another client. Each client receives a frame from the master and performs the same processing as the master based on the data corresponding to the predetermined operation. Note that even if the master receives the probe request, the master does not register the audience that has transmitted the probe request in its own device.

また、オーディエンスは、第2の判定として、プローブリクエストを送信可能か否かを判定する。具体的には、オーディエンスは、自機が所定のモード(ROPSモードと呼ぶ)か否かを判定する。オーディエンスが所定のモードの場合、プローブリクエストの送信は禁止され、オーディエンスは、受信のみ可能となる。   In addition, as a second determination, the audience determines whether or not a probe request can be transmitted. Specifically, the audience determines whether or not the own device is in a predetermined mode (referred to as ROPS mode). When the audience is in the predetermined mode, transmission of the probe request is prohibited, and the audience can only receive.

図14は、各ゲーム装置10の状態の遷移を示す図である。図14に示すように、マスターは、定期的にビーコンをブロードキャストで送信する。当該ビーコンには、アウェイク状態を維持する期間Tを示す情報等が含まれる。ビーコンを受信してからの期間Tは、マスター、各クライアント、および、オーディエンスは、アウェイク状態を維持し、通信が可能となる。例えば、図14に示すように、アウェイク状態においてマスターは、各端末(クライアントおよびオーディエンス)に対してブロードキャストでデータBC1を送信することが可能であり、各端末は当該データを受信可能である。一方、マスターがビーコンを送信してから期間Tが経過すると、マスター及び各端末は仮眠状態(省電力状態)に移行する。仮眠状態では、マスター及び各端末は、データの送受信機能が制限されるため、データは送信されない。その後、さらに時間が経過すると、マスターは再びビーコンを送信して、マスター及び各端末は再びアウェイク状態に移行する(ビーコンが送信される直前にマスター及び各端末はデータの送受信が可能な状態になる)。このように、マスターおよび各端末は、それぞれ同期して電力モードの切り替えを繰り返す。   FIG. 14 is a diagram illustrating a state transition of each game apparatus 10. As shown in FIG. 14, the master periodically transmits a beacon by broadcasting. The beacon includes information indicating a period T for maintaining the awake state. During the period T after receiving the beacon, the master, each client, and the audience maintain the awake state and can communicate. For example, as shown in FIG. 14, in the awake state, the master can broadcast data BC1 to each terminal (client and audience), and each terminal can receive the data. On the other hand, when the period T elapses after the master transmits a beacon, the master and each terminal shift to a nap state (power saving state). In the nap state, since the data transmission / reception function of the master and each terminal is limited, no data is transmitted. Thereafter, when further time elapses, the master transmits a beacon again, and the master and each terminal again shift to an awake state (just before the beacon is transmitted, the master and each terminal can transmit and receive data). ). Thus, the master and each terminal repeat switching of the power mode in synchronization with each other.

オーディエンスは、所定のモード(ROPSモード)に設定されている場合において、上記ビーコンによる電力モードの切り替えに加えて、マスターから送信されるデータに基づいて、仮眠状態に切り替えられる。例えば、マスターは、送信するデータBC2に、所定のフラグMを含めることができる。オーディエンスは、M=1がセットされたデータBC2を受信すると、アウェイク状態を維持する。一方、オーディエンスは、ROPSモードが有効になっている状態で、M=0がセットされたデータBC3を受信すると、自機を仮眠状態に切り替える。ROPSモードが無効になっている場合は、オーディエンスは、所定のフラグMの値に応じて仮眠状態に移行しない。ROPSモードでは、オーディエンスは、上記プローブリクエストの送信を禁止し、マスターおよびクライアントから送られたデータの受信のみを行う。ROPSモードの有効/無効の設定は、例えば、オーディエンスとして機能するゲーム装置において、オーディエンスのユーザによって設定されてもよい。   When the audience is set to a predetermined mode (ROPS mode), in addition to the power mode switching by the beacon, the audience is switched to the nap state based on the data transmitted from the master. For example, the master can include a predetermined flag M in the data BC2 to be transmitted. When the audience receives the data BC2 in which M = 1 is set, the audience maintains the awake state. On the other hand, when the audience receives the data BC3 in which M = 0 is set in the state in which the ROPS mode is enabled, the audience switches to its nap state. If the ROPS mode is disabled, the audience does not enter the nap state according to the value of the predetermined flag M. In the ROPS mode, the audience prohibits the transmission of the probe request and only receives data sent from the master and the client. The valid / invalid setting of the ROPS mode may be set, for example, by an audience user in a game device that functions as an audience.

なお、第1の判定として所定の操作が行われたか否かを判定したが、例えば、第1の判定として、所定のタイミングになったか否かを判定してもよい。すなわち、例えば、オーディエンスは自動で上記ゲーム処理に用いられるデータを含むプローブリクエストを送信してもよい。   Although it is determined whether or not a predetermined operation has been performed as the first determination, for example, it may be determined whether or not a predetermined timing has been reached as the first determination. That is, for example, the audience may automatically transmit a probe request including data used for the game process.

以上のように、ステップS45において、オーディエンスは、第1の判定(所定の操作が行われたか否か等の判定)、および、第2の判定(プローブリクエストを送信可能か否かの判定)を行う。何れの判定結果も肯定である場合、オーディエンスは、次にステップS46の処理を実行する。一方、オーディエンスは、第1の判定および第2の判定の判定結果が何れか一方でも否定である場合、次にステップS48の処理を実行する。   As described above, in step S45, the audience performs the first determination (determination as to whether or not a predetermined operation has been performed) and the second determination (determination as to whether a probe request can be transmitted). Do. If any determination result is affirmative, the audience next executes a process of step S46. On the other hand, if either one of the determination results of the first determination and the second determination is negative, the audience next executes the process of step S48.

ステップS46において、オーディエンスは、プローブリクエストを送信する。具体的には、オーディエンスは、上記ゲーム処理に用いられるデータを含むプローブリクエストを、マスターに対して送信する。オーディエンスは、次にステップS47の処理を実行する。   In step S46, the audience transmits a probe request. Specifically, the audience transmits a probe request including data used for the game process to the master. The audience next executes a process of step S47.

ステップS47において、オーディエンスは、プローブレスポンスを受信する。具体的には、オーディエンスは、マスターから送信されるプローブレスポンスを受信する。オーディエンスは、次にステップS48の処理を実行する。   In step S47, the audience receives the probe response. Specifically, the audience receives a probe response transmitted from the master. The audience next executes a process of step S48.

ステップS48において、オーディエンスは、データ受信処理を行う。ここでは、オーディエンスは、マスターから送信されるブロードキャストデータおよびクライアントから送信されるブロードキャストデータを受信する。なお、オーディエンスにおいて行われるデータ受信処理の詳細については、後述する。オーディエンスは、次にステップS49の処理を実行する。   In step S48, the audience performs data reception processing. Here, the audience receives broadcast data transmitted from the master and broadcast data transmitted from the client. Details of the data reception process performed in the audience will be described later. The audience next executes a process of step S49.

ステップS49において、オーディエンスは、ゲーム処理を実行する。具体的には、オーディエンスは、ステップS48で受信したブロードキャストデータに基づいて、マスターおよびクライアントで操作されるゲームキャラクタの動作を決定したり、ゲームキャラクタの位置情報を更新したりする。また、オーディエンスは、仮想空間内の仮想カメラの位置や視線方向を決定して、各ゲームキャラクタを当該仮想カメラで撮像することにより、画像を生成する。そして、オーディエンスは、上側LCD22に生成した画像を表示する。これにより、マスターおよびクライアントの上側LCD22に表示される画像と同じ画像が、オーディエンスの上側LCD22に表示される。なお、オーディエンスにおいて決定される仮想カメラの位置や視線方向は、マスターおよびクライアントにおけるそれと異なっていてもよい。この場合、オーディエンスの画面には、マスターおよびクライアントにおいて表示される画像とは異なる画像が表示される。ステップS49の処理の後、オーディエンスは、ステップS43の処理を再び実行する。   In step S49, the audience executes a game process. Specifically, the audience determines the action of the game character operated by the master and the client, or updates the position information of the game character based on the broadcast data received in step S48. The audience also determines the position and line-of-sight direction of the virtual camera in the virtual space, and images each game character with the virtual camera to generate an image. Then, the audience displays the generated image on the upper LCD 22. As a result, the same image as that displayed on the upper LCD 22 of the master and the client is displayed on the upper LCD 22 of the audience. Note that the position and line-of-sight direction of the virtual camera determined in the audience may be different from those in the master and the client. In this case, an image different from the images displayed on the master and the client is displayed on the audience screen. After the process of step S49, the audience executes the process of step S43 again.

ステップS43からステップS49の処理が繰り返し実行されることによって、オーディエンスの上側LCD22にはゲームが進行する様子が表示される。   By repeatedly executing the processing from step S43 to step S49, a state in which the game progresses is displayed on the upper LCD 22 of the audience.

以上のようにして、本実施形態に係るゲームでは、複数(または単数)のクライアントがマスターと接続されて、1つのゲームが進行する。オーディエンスは、マスターおよびクライアントから送信されるブロードキャストデータを受信することによって、マスターおよびクライアント間で進行するゲームを観戦することができる。   As described above, in the game according to the present embodiment, a plurality of (or singular) clients are connected to the master, and one game progresses. An audience can watch a game progressing between the master and the client by receiving broadcast data transmitted from the master and the client.

(データ送信処理の概要)
次に、データの送受信処理について、説明する。まず、図15を参照して、マスターにおいて行われるデータ送信処理の概要について説明する。
(Outline of data transmission process)
Next, data transmission / reception processing will be described. First, an overview of data transmission processing performed in the master will be described with reference to FIG.

図15は、マスターのデータ送信処理の概要を示す図である。図15に示すように、マスターには、個別送信データを格納する個別送信箱110、および、全送信データを格納する全送信箱120が用意される。   FIG. 15 is a diagram showing an outline of the master data transmission processing. As shown in FIG. 15, the master is provided with an individual transmission box 110 for storing individual transmission data and an all transmission box 120 for storing all transmission data.

個別送信データは、ある端末(マスターまたはクライアント)から、個別に他の端末に送信するデータである。個別送信データは、例えば、マスターからクライアントC1に送信するデータUD10、または、クライアントC1からクライアントC2に送信するデータUD11である。マスターからクライアントC1に送信するデータUD10は、クライアントC1において処理可能なひとまとまりのデータ(ゲーム処理に用いられるデータ)であり、例えば、マスターにおいて行われた操作に応じたデータである。当該データUD10をクライアントC1が受信すると、クライアントC1は、当該データUD10を用いて所定の処理を行う。同様に、クライアントC1からクライアントC2に送信するデータUD11は、クライアントC2において処理可能なひとまとまりのデータであり、例えば、クライアントC1において行われた操作に応じたデータである。   The individual transmission data is data transmitted individually from one terminal (master or client) to another terminal. The individual transmission data is, for example, data UD10 transmitted from the master to the client C1, or data UD11 transmitted from the client C1 to the client C2. The data UD10 transmitted from the master to the client C1 is a group of data (data used for game processing) that can be processed by the client C1, for example, data according to an operation performed in the master. When the client C1 receives the data UD10, the client C1 performs a predetermined process using the data UD10. Similarly, the data UD11 transmitted from the client C1 to the client C2 is a set of data that can be processed by the client C2, for example, data according to an operation performed in the client C1.

全送信データは、マスターから全てのクライアントに送信するデータである。全送信データは、例えば、マスターから全クライアントに送信するデータBD20、または、マスターから全クライアントに送信するデータBD21である。個別送信データと同様に、データBD20およびデータBD21は、送信先で処理可能なひとまとまりのデータである。例えば、データBD20およびデータBD21は、送信元(この場合マスター)において行われた操作に応じたデータであり、これらのデータを受信した端末は、各データに基づいて所定の処理を行う。   All transmission data is data transmitted from the master to all clients. The total transmission data is, for example, data BD20 transmitted from the master to all clients, or data BD21 transmitted from the master to all clients. Similar to the individual transmission data, the data BD20 and the data BD21 are a group of data that can be processed at the transmission destination. For example, the data BD20 and the data BD21 are data corresponding to operations performed at the transmission source (in this case, the master), and a terminal that receives these data performs a predetermined process based on each data.

マスターは、クライアントに個別に送信する複数の個別送信データを一時的に個別送信箱110に格納する。また、マスターは、全てのクライアントに送信する複数の全送信データを一時的に全送信箱120に格納する。   The master temporarily stores a plurality of individual transmission data to be individually transmitted to the client in the individual transmission box 110. In addition, the master temporarily stores a plurality of transmission data to be transmitted to all clients in all transmission boxes 120.

具体的には、図15に示すように、マスターがアプリケーションを実行することによって、マスターからクライアントC1に送信するデータUD10を生成した場合、当該データUD10を即時にクライアントC1に送信せず、個別送信箱110に一時的に格納する。データUD10は、比較的小さいサイズのデータ(例えば、100Byte程度)である。また、マスターは、クライアントC1からクライアントC2に送信するデータUD11をクライアントC1から受け取った場合、当該データUD11を即時にクライアントC2に送信せず、個別送信箱110に一時的に格納する。データUD11は、クライアントC1からクライアントC2に送信されるデータであり、マスターを経由して送信されるデータである。データUD11は、比較的小さいサイズのデータ(例えば、100Byte程度)である。同様に、マスターがアプリケーションを実行することによって、マスターから全クライアントに送信するデータBD20を生成した場合、当該データBD20を即時にブロードキャストで送信せず、全送信箱120に一時的に格納する。また、マスターから全クライアントに送信するデータBD21をアプリケーションが生成した場合、当該データBD21を即時にブロードキャストで送信せず、全送信箱120に一時的に格納する。データBD20およびデータBD21は、比較的小さいサイズのデータ(例えば、100Byte程度)である。   Specifically, as shown in FIG. 15, when data UD10 to be transmitted from the master to the client C1 is generated by executing the application by the master, the data UD10 is not immediately transmitted to the client C1, but individually transmitted. Temporarily store in the trust box 110. The data UD10 is relatively small size data (for example, about 100 bytes). When the master receives data UD11 to be transmitted from the client C1 to the client C2 from the client C1, the master does not immediately transmit the data UD11 to the client C2, but temporarily stores it in the individual transmission box 110. The data UD11 is data transmitted from the client C1 to the client C2, and is transmitted via the master. The data UD11 is relatively small size data (for example, about 100 bytes). Similarly, when the master executes the application to generate the data BD 20 to be transmitted from the master to all clients, the data BD 20 is not immediately transmitted by broadcast, but temporarily stored in all the transmission boxes 120. When the application generates data BD21 to be transmitted from the master to all clients, the data BD21 is temporarily transmitted to all the transmission boxes 120 without being broadcast immediately. The data BD20 and the data BD21 are relatively small size data (for example, about 100 bytes).

より具体的には、マスターがデータUD10を個別送信箱110に格納する場合、マスターは、当該データUD10に付加情報130を付加する。付加情報130には、データUD10の送信元および送信先に関する情報が含まれる。また、付加情報130には、付加情報130とデータUD10とを含めたデータのサイズに関する情報が含まれる。例えば、データUD10の送信元および送信先に関する情報は、マスターおよびクライアントC1のID(またはMACアドレスでもよい)である。例えば、データUD10の送信元に関する情報は、マスターのID(またはMACアドレス)である。また、データUD10の送信先に関する情報は、クライアントC1のID(またはMACアドレス)である。同様に、マスターがデータUD11を個別送信箱110に格納する場合、マスターは、当該データUD11に付加情報131を付加する。付加情報131には、データUD11の送信元および送信先に関する情報が含まれる。また、付加情報131には、付加情報131とデータUD11とを含めたデータのサイズに関する情報が含まれる。例えば、データUD11の送信元および送信先に関する情報は、それぞれクライアントC1およびクライアントC2のID(またはMACアドレス)である。   More specifically, when the master stores the data UD10 in the individual transmission box 110, the master adds the additional information 130 to the data UD10. The additional information 130 includes information regarding the transmission source and transmission destination of the data UD10. Further, the additional information 130 includes information regarding the size of data including the additional information 130 and the data UD10. For example, the information regarding the transmission source and transmission destination of the data UD10 is the ID (or may be a MAC address) of the master and the client C1. For example, the information regarding the transmission source of the data UD10 is the master ID (or MAC address). Further, the information regarding the transmission destination of the data UD10 is the ID (or MAC address) of the client C1. Similarly, when the master stores the data UD11 in the individual transmission box 110, the master adds the additional information 131 to the data UD11. The additional information 131 includes information regarding the transmission source and transmission destination of the data UD11. Further, the additional information 131 includes information regarding the size of data including the additional information 131 and the data UD11. For example, the information on the transmission source and transmission destination of the data UD11 is the ID (or MAC address) of the client C1 and the client C2, respectively.

また、同様に、マスターがデータBD20を全送信箱120に格納する場合、マスターは、当該データBD20に付加情報132を付加する。付加情報132には、データBD20の送信元および送信先に関する情報が含まれる。また、付加情報132には、付加情報132とデータBD20とを含めたデータのサイズに関する情報が含まれる。例えば、データBD20の送信元および送信先に関する情報は、それぞれマスターおよび全端末(マスターやクライアント、オーディエンスを含めたネットワーク全体)であることを示すID(またはブロードキャストアドレスでもよい)である。同様に、マスターがデータBD21を全送信箱120に格納する場合、マスターは、当該データBD21に付加情報133を付加する。付加情報133には、データBD21の送信元および送信先に関する情報が含まれる。また、付加情報133には、付加情報133とデータBD21とを含めたデータのサイズに関する情報が含まれる。例えば、データBD21の送信元および送信先に関する情報は、それぞれマスターおよび全端末であることを示すID(またはブロードキャストアドレスでもよい)である。   Similarly, when the master stores the data BD 20 in all the transmission boxes 120, the master adds the additional information 132 to the data BD 20. The additional information 132 includes information regarding the transmission source and transmission destination of the data BD20. Further, the additional information 132 includes information on the size of data including the additional information 132 and the data BD20. For example, the information regarding the transmission source and the transmission destination of the data BD 20 is an ID (or may be a broadcast address) indicating the master and all terminals (the entire network including the master, client, and audience), respectively. Similarly, when the master stores the data BD21 in all the transmission boxes 120, the master adds the additional information 133 to the data BD21. The additional information 133 includes information regarding the transmission source and transmission destination of the data BD21. Further, the additional information 133 includes information regarding the size of data including the additional information 133 and the data BD21. For example, the information regarding the transmission source and the transmission destination of the data BD21 is an ID (or may be a broadcast address) indicating the master and all terminals, respectively.

個別送信箱110は、所定のサイズ(例えば、1500Byte)を有する。マスターは、個別送信箱110にデータを格納する際に、個別送信箱110の空きサイズに基づいて、データを格納することができるか否かを判定する。マスターは、これ以上個別送信箱110にデータを格納することができないと判定した場合、個別送信箱110に格納された全てのデータを取り出して、当該全てのデータを含む1つのフレームを生成する。例えば、マスターは、これ以上個別送信箱110にデータを格納することができないと判定した場合、UD10およびUD11を含む1つのフレーム150を生成し、当該フレーム150を送信する。図15に示すように、フレーム150のヘッダ部分には、送信先MACアドレスとしてブロードキャストアドレスが指定される。また、フレーム150のデータ部分には、付加情報130が付加されたデータUD10、および、付加情報131が付加されたデータUD11が含まれる。さらに、フレーム150のデータ部分には、当該データ部分に含まれるデータの数(図15に示す例では、2)が含まれる。このように、マスターは、マスターからクライアントC1へ送信するデータUD10、および、クライアントC1からクライアントC2へ送信するデータUD11を1つのフレーム150に含ませて、ブロードキャストで送信する。   The individual transmission box 110 has a predetermined size (for example, 1500 bytes). When the master stores data in the individual transmission box 110, the master determines whether or not the data can be stored based on the empty size of the individual transmission box 110. When the master determines that data cannot be stored in the individual transmission box 110 any more, the master extracts all the data stored in the individual transmission box 110 and generates one frame including all the data. For example, when the master determines that data cannot be stored in the individual transmission box 110 any more, the master generates one frame 150 including the UD 10 and the UD 11 and transmits the frame 150. As shown in FIG. 15, a broadcast address is designated as a transmission destination MAC address in the header portion of the frame 150. The data portion of the frame 150 includes data UD10 to which additional information 130 is added and data UD11 to which additional information 131 is added. Further, the data portion of the frame 150 includes the number of data included in the data portion (2 in the example shown in FIG. 15). Thus, the master includes data UD10 transmitted from the master to the client C1 and data UD11 transmitted from the client C1 to the client C2 in one frame 150, and transmits by broadcast.

同様に、全送信箱120は、所定のサイズ(例えば、1500Byte)を有し、マスターは、全送信箱120にデータを格納する際に、全送信箱120の空きサイズに基づいて、データを格納することができるか否かを判定する。マスターは、これ以上全送信箱120にデータを格納することができないと判定した場合、全送信箱120に格納された全てのデータを取り出して、当該全てのデータを含む1つのフレーム160を生成する。図15に示すように、フレーム160のヘッダ部分には、送信先MACアドレスとしてブロードキャストアドレスが指定される。また、フレーム160のデータ部分には、付加情報132が付加されたデータBD20、および、付加情報133が付加されたデータBD21が含まれる。さらに、フレーム160のデータ部分には、当該データ部分に含まれるデータの数(図15に示す例では、2)が含まれる。このように、マスターは、サイズの小さいデータBD20、および、データBD21を1つのフレーム160に含ませて、ブロードキャストで送信する。   Similarly, all the transmission boxes 120 have a predetermined size (for example, 1500 bytes), and the master stores data based on the free size of all the transmission boxes 120 when storing data in all the transmission boxes 120. It is determined whether or not it can be performed. If the master determines that no more data can be stored in all the transmission boxes 120, the master extracts all the data stored in all the transmission boxes 120 and generates one frame 160 including all the data. . As shown in FIG. 15, a broadcast address is specified as a transmission destination MAC address in the header portion of the frame 160. The data portion of the frame 160 includes data BD20 to which additional information 132 is added and data BD21 to which additional information 133 is added. Further, the data portion of the frame 160 includes the number of data included in the data portion (2 in the example shown in FIG. 15). As described above, the master includes the data BD20 and the data BD21 with a small size in one frame 160 and transmits them by broadcast.

なお、クライアントにおいても、マスターと同様、上記個別送信データを格納する個別送信箱110、上記全送信データを格納する全送信箱120が用意される。しかしながら、クライアントにおいては、他のクライアントから送信されたデータを、別のクライアントに送信することはない。従って、クライアントの個別送信箱110には、自機から他のクライアントに送信するデータのみが、複数格納される。   In the client, similar to the master, an individual transmission box 110 for storing the individual transmission data and an all transmission box 120 for storing the total transmission data are prepared. However, in a client, data transmitted from another client is not transmitted to another client. Accordingly, a plurality of pieces of data to be transmitted from the own device to other clients are stored in the individual transmission box 110 of the client.

(データ受信処理の概要)
次に、データ受信処理の概要について説明する。上記のようにしてマスターから送信されたフレームを各クライアントが受信した場合、各クライアントは、受信したフレームに含まれる、自機宛のデータのみを取得する。図16は、マスターから送信されたフレームをクライアントが受信した場合、クライアントで行われる受信処理の概要を示す図である。
(Outline of data reception processing)
Next, an outline of the data reception process will be described. When each client receives the frame transmitted from the master as described above, each client acquires only the data addressed to the own device included in the received frame. FIG. 16 is a diagram illustrating an outline of reception processing performed by the client when the client receives a frame transmitted from the master.

図16に示すように、フレーム150をマスターが送信した場合、クライアントC1およびクライアントC2は、フレーム150を受信する。フレーム150を受信したクライアントC1は、当該フレーム150に含まれる1番目のデータ(付加情報130とデータUD10とを含むデータ)の付加情報130を参照し、当該データが自機宛のデータか否かを判定する。1番目のデータはマスターからクライアントC1へ送信されたデータであるため、クライアントC1は、データUD10を含む1番目のデータのみを取り出す。次に、クライアントC1は、2番目のデータ(付加情報131とデータUD11とを含むデータ)の付加情報131を参照して、当該2番目のデータが自機宛のデータか否かを判定する。2番目のデータの始まりは、1番目のデータの付加情報130が示す当該データのサイズに基づいて決定できる。2番目のデータはクライアントC1からクライアントC2へ送信されたデータであるため、クライアントC1は、2番目のデータを破棄する。   As shown in FIG. 16, when the master transmits the frame 150, the client C1 and the client C2 receive the frame 150. The client C1 that has received the frame 150 refers to the additional information 130 of the first data (data including the additional information 130 and the data UD10) included in the frame 150, and determines whether the data is data addressed to itself. Determine. Since the first data is data transmitted from the master to the client C1, the client C1 takes out only the first data including the data UD10. Next, the client C1 refers to the additional information 131 of the second data (data including the additional information 131 and the data UD11) and determines whether or not the second data is data addressed to the own device. The start of the second data can be determined based on the size of the data indicated by the additional information 130 of the first data. Since the second data is data transmitted from the client C1 to the client C2, the client C1 discards the second data.

また、フレーム150を受信したクライアントC2は、当該フレーム150に含まれる1番目のデータ(付加情報130とデータUD10とを含むデータ)の付加情報130を参照し、当該データが自機宛のデータか否かを判定する。1番目のデータはマスターからクライアントC1へ送信されたデータであるため、クライアントC2は、当該1番目のデータを破棄する。次に、クライアントC2は、2番目のデータ(付加情報131とデータUD11とを含むデータ)の付加情報131を参照して、当該2番目のデータが自機宛のデータか否かを判定する。2番目のデータはクライアントC1からクライアントC2へ送信されたデータであるため、クライアントC2は、データUD11を含む2番目のデータのみを取り出す。   In addition, the client C2 that has received the frame 150 refers to the additional information 130 of the first data (data including the additional information 130 and the data UD10) included in the frame 150, and determines whether the data is data addressed to itself. Determine whether or not. Since the first data is data transmitted from the master to the client C1, the client C2 discards the first data. Next, the client C2 refers to the additional information 131 of the second data (data including the additional information 131 and the data UD11) and determines whether or not the second data is data addressed to the own device. Since the second data is data transmitted from the client C1 to the client C2, the client C2 extracts only the second data including the data UD11.

また、フレーム160についても、各クライアントで上記と同様の処理が行われて、各データが取り出される。この場合、各クライアントは、フレーム160に含まれる全てのデータ(データBD20およびデータBD21)を取り出す。具体的には、フレーム160の1番目のデータ(付加情報132とデータBD20とを含むデータ)の付加情報132には、宛先が全端末に指定されている。このため、クライアントC1およびクライアントC2は、データBD20を含む1番目のデータを取り出す。同様に、フレーム160の2番目のデータ(付加情報133とデータBD21とを含むデータ)の付加情報133には、宛先が全端末に指定されているため、クライアントC1およびクライアントC2は、データBD21を含む2番目のデータを取り出す。   For the frame 160, each client performs the same processing as described above, and each piece of data is extracted. In this case, each client extracts all data (data BD20 and data BD21) included in the frame 160. Specifically, the destination is specified for all terminals in the additional information 132 of the first data of the frame 160 (data including the additional information 132 and the data BD20). Therefore, the client C1 and the client C2 take out the first data including the data BD20. Similarly, since the destination is specified for all terminals in the additional information 133 of the second data (data including the additional information 133 and the data BD21) of the frame 160, the client C1 and the client C2 store the data BD21. Retrieve the second data that contains it.

このようにして、各クライアントは、マスターから送信されたフレームの中から、自機宛および全クライアント宛のデータのみを取り出し、それ以外のデータは全て破棄する。   In this way, each client extracts only data addressed to itself and all clients from the frame transmitted from the master, and discards all other data.

(データ送信処理の詳細)
次に、データ送信処理の詳細について、説明する。まず、図17を参照して、マスターにおいて行われるデータ送信処理の詳細について、説明する。
(Details of data transmission processing)
Next, details of the data transmission process will be described. First, the details of the data transmission process performed in the master will be described with reference to FIG.

(マスターのデータ送信処理)
図17は、マスターにおいて行われるデータ送信処理(マスター)の詳細を示すフローチャートである。なお、図17に示すステップS50〜ステップS61の処理は、所定の時間間隔で繰り返し実行される。
(Master data transmission process)
FIG. 17 is a flowchart showing details of data transmission processing (master) performed in the master. Note that the processing of step S50 to step S61 shown in FIG. 17 is repeatedly executed at predetermined time intervals.

まず、ステップS50において、マスターは、個別送信箱110および全送信箱120にデータを格納してから所定時間が経過している場合、格納されているデータを全て送信する。個別送信箱110および全送信箱120にデータを格納してから所定時間が経過していない場合、マスターは、格納されているデータを送信しない。具体的には、マスターは、個別送信箱110にデータが格納されている場合、当該個別送信箱110に格納されたデータのうち、最も古いデータが格納されてから所定時間が経過したか否かを判定する。判定結果が肯定の場合、マスターは、個別送信箱110に格納された全てのデータを取り出し、当該全てのデータを含む1つのフレームを生成して、当該フレームをブロードキャストで送信する。生成されるフレームのヘッダ部分には、マスターのMACアドレスが含まれる。   First, in step S50, the master transmits all stored data when a predetermined time has elapsed since the data was stored in the individual transmission box 110 and all the transmission boxes 120. If the predetermined time has not elapsed since the data was stored in the individual transmission box 110 and all the transmission boxes 120, the master does not transmit the stored data. Specifically, when data is stored in the individual transmission box 110, the master determines whether or not a predetermined time has elapsed since the oldest data among the data stored in the individual transmission box 110 is stored. Determine. If the determination result is affirmative, the master retrieves all data stored in the individual transmission box 110, generates one frame including all the data, and transmits the frame by broadcast. The header portion of the generated frame includes the master MAC address.

同様に、マスターは、全送信箱120にデータが格納されている場合、当該全送信箱120に格納されたデータのうち、最も古いデータが格納されてから所定時間が経過したか否かを判定する。判定結果が肯定の場合、マスターは、全送信箱120に格納された全てのデータを取り出し、当該全てのデータを含む1つのフレームを生成して、当該フレームをブロードキャストで送信する。生成されるフレームのヘッダ部分には、マスターのMACアドレスが含まれる。ステップS50の処理の後、マスターは、次にステップS51の処理を実行する。   Similarly, when data is stored in all the transmission boxes 120, the master determines whether or not a predetermined time has elapsed since the oldest data among the data stored in all the transmission boxes 120 has been stored. To do. If the determination result is affirmative, the master retrieves all data stored in all the transmission boxes 120, generates one frame including all the data, and transmits the frame by broadcast. The header portion of the generated frame includes the master MAC address. After the process of step S50, the master next executes the process of step S51.

ステップS51において、マスターは、送信すべきデータを取得する。ここで取得される送信すべきデータは、例えば、マスター自身(アプリケーション層)が生成したデータ(マスターにおいて行われた操作に応じたデータ等、ゲーム処理の過程で生成したデータ)である。また、ここで取得される送信すべきデータは、例えば、あるクライアントから受信した、マスターを経由して他のクライアントに送信されるデータである。また、ここで取得される送信すべきデータは、例えば、あるクライアントから受信した、マスターを経由して全端末に送信されるデータである。より具体的には、送信すべきデータは、例えば、図15に示すUD10、UD11、BD20、BD21である。例えば、マスターは、自機の操作ボタン14に対する操作が行われた場合、当該操作に応じたデータを生成する。マスターは、ステップS51において、当該生成したデータを取得する。また、例えば、クライアントC1からマスターを経由してクライアントC2にデータが送信される場合、マスターは、クライアントC1からのデータを受信する(マスターのデータ受信処理については後述する)。マスターは、ステップS51において、当該受信したデータを取得する。マスターは、次にステップS52の処理を実行する。   In step S51, the master acquires data to be transmitted. The data to be transmitted acquired here is, for example, data generated by the master itself (application layer) (data generated in the course of game processing, such as data corresponding to an operation performed in the master). The data to be transmitted acquired here is, for example, data received from one client and transmitted to another client via the master. The data to be transmitted acquired here is, for example, data received from a client and transmitted to all terminals via the master. More specifically, the data to be transmitted are, for example, UD10, UD11, BD20, and BD21 shown in FIG. For example, when an operation is performed on the operation button 14 of the own device, the master generates data corresponding to the operation. In step S51, the master acquires the generated data. For example, when data is transmitted from the client C1 to the client C2 via the master, the master receives data from the client C1 (master data reception processing will be described later). In step S51, the master acquires the received data. Next, the master executes the process of step S52.

ステップS52において、マスターは、取得したデータが個別送信データか否かを判定する。具体的には、マスターは、ステップS51で取得したデータが、各クライアントに個別に送信するデータ(上記UD10やUD11)か否かを判定する。例えば、マスターから他のクライアントに個別のデータを送信するための操作が行われた場合、マスターは、取得したデータが、クライアントに個別に送信するデータであると判定する。判定結果が肯定の場合、マスターは、次にステップS53の処理を実行する。一方、判定結果が否定の場合、マスターは、次にステップS57の処理を実行する。   In step S52, the master determines whether the acquired data is individual transmission data. Specifically, the master determines whether or not the data acquired in step S51 is data to be individually transmitted to each client (above UD10 and UD11). For example, when an operation for transmitting individual data from the master to another client is performed, the master determines that the acquired data is data to be individually transmitted to the client. If the determination result is affirmative, the master next executes a process of step S53. On the other hand, if the determination result is negative, the master next executes a process of step S57.

ステップS53において、マスターは、取得したデータを個別送信箱110に格納可能か否かを判定する。具体的には、マスターは、ステップS51で取得したデータと、個別送信箱110に格納されたデータのサイズとに基づいて、ステップS51で取得したデータを個別送信箱110に格納可能か否かを判定する。判定結果が肯定の場合、マスターは、次にステップS54の処理を実行する。一方、判定結果が否定の場合、マスターは、次にステップS56の処理を実行する。   In step S <b> 53, the master determines whether the acquired data can be stored in the individual transmission box 110. Specifically, the master determines whether the data acquired in step S51 can be stored in the individual transmission box 110 based on the data acquired in step S51 and the size of the data stored in the individual transmission box 110. judge. If the determination result is affirmative, the master next executes a process of step S54. On the other hand, if the determination result is negative, the master next executes the process of step S56.

ステップS54において、マスターは、ステップS51で取得したデータを個別送信箱110に格納する。具体的には、マスターは、ステップS51で取得したデータに付加情報を付加して、個別送信箱110に格納する。より具体的には、マスターは、付加情報として、当該データの送信元および送信先に関する情報、および、サイズに関する情報を付加する。マスターは、次にステップS55の処理を実行する。   In step S54, the master stores the data acquired in step S51 in the individual transmission box 110. Specifically, the master adds additional information to the data acquired in step S51 and stores it in the individual transmission box 110. More specifically, the master adds, as additional information, information on the transmission source and transmission destination of the data and information on the size. Next, the master executes the process of step S55.

ステップS55において、マスターは、取得したデータを即時送信すべきか否かを判定する。例えば、マスターは、ステップS51でデータを取得した際に、アプリケーション層から指定されるパラメータに基づいて、取得したデータを即時送信すべきか否かを判定する。判定結果が肯定の場合、マスターは、次にステップS56の処理を実行する。一方、判定結果が否定の場合、マスターは、次にステップS57の処理を実行する。   In step S55, the master determines whether the acquired data should be transmitted immediately. For example, when acquiring data in step S51, the master determines whether the acquired data should be immediately transmitted based on parameters specified from the application layer. If the determination result is affirmative, the master next executes a process of step S56. On the other hand, if the determination result is negative, the master next executes a process of step S57.

一方、ステップS56において、マスターは、個別送信箱110に格納された全てのデータを取り出し、当該全てのデータを含む1つのフレームを生成して、当該フレームをブロードキャストで送信する(ブロードキャストフレームを送信する)。生成されるフレームのヘッダ部分には、マスターのMACアドレスが含まれる。ステップS56の処理が行われることによって、個別送信箱110に格納された全てのデータ(上記UD10およびUD11)がブロードキャストで送信されて、個別送信箱110は空になる。そして、マスターは、フレームを送信した後、ステップS53で個別送信箱110に格納されなかったデータに付加情報を付加して、空になった個別送信箱110に当該データを格納する。なお、ステップS51で取得したデータのサイズが個別送信箱110のサイズよりも大きい場合、マスターは、当該データを個別送信箱110に格納できないため、当該データを複数のフレームに分割して送信する。   On the other hand, in step S56, the master extracts all the data stored in the individual transmission box 110, generates one frame including all the data, and transmits the frame by broadcast (transmits the broadcast frame). ). The header portion of the generated frame includes the master MAC address. By performing the process of step S56, all the data (UD10 and UD11) stored in the individual transmission box 110 are transmitted by broadcast, and the individual transmission box 110 becomes empty. Then, after transmitting the frame, the master adds additional information to the data that was not stored in the individual transmission box 110 in step S53, and stores the data in the empty individual transmission box 110. When the size of the data acquired in step S51 is larger than the size of the individual transmission box 110, the master cannot store the data in the individual transmission box 110, and therefore transmits the data divided into a plurality of frames.

また、取得したデータを個別送信箱110に格納不可能(ステップS53の判定結果が否定)であり、かつ、取得したデータを即時送信すべきである場合、マスターは、個別送信箱110に格納された全てのデータを含む1つのフレームを生成して送信する。その後、マスターは、ステップS51で取得した、即時送信すべきデータと当該データの付加情報(送信先および送信元に関する情報)とを含む1つのフレームをさらに生成して、当該フレームを送信する。これにより、個別送信箱110に格納された全てのデータが送信されるとともに、ステップS51で取得した即時送信すべきデータが送信される。   If the acquired data cannot be stored in the individual transmission box 110 (determination result in step S53 is negative) and the acquired data should be transmitted immediately, the master is stored in the individual transmission box 110. One frame including all the data is generated and transmitted. Thereafter, the master further generates one frame including the data to be transmitted immediately and the additional information (information regarding the transmission destination and the transmission source) acquired in step S51 and transmits the frame. As a result, all the data stored in the individual transmission box 110 is transmitted, and the data to be transmitted immediately acquired in step S51 is transmitted.

また、マスターは、ステップS56において、自機の状態が仮眠状態である場合、生成したフレームをメモリに一時的に保存し、自機の状態がアウェイク状態に移行した後で、当該フレームを送信する。すなわち、仮眠状態ではデータの送信が制限されるため、マスターは、仮眠状態からアウェイク状態に移行した後にフレームを送信する。マスターは、仮眠状態のときにフレームを生成してメモリに一時的に保存する場合、当該フレームに含まれる上記所定のフラグMに1を設定する。また、マスターは、アウェイク状態のときにフレームを生成した場合、当該フレームに含まれる上記所定のフラグMに0を設定し、当該フレームを送信する。フレームを受信したオーディエンスは、上述のようにROPSモードが有効である場合、上記所定のフラグMの値に応じてアウェイク状態を維持したり、仮眠状態に移行したりする。ステップS56の処理の後、マスターは、図17に示す送信処理を終了する。   In step S56, if the state of the own device is a nap state, the master temporarily stores the generated frame in the memory, and transmits the frame after the state of the own device shifts to the awake state. . That is, since transmission of data is restricted in the nap state, the master transmits a frame after transitioning from the nap state to the awake state. When the master generates a frame in the nap state and temporarily stores it in the memory, the master sets 1 to the predetermined flag M included in the frame. When the master generates a frame in the awake state, the master sets the predetermined flag M included in the frame to 0 and transmits the frame. When the ROPS mode is valid as described above, the audience who has received the frame maintains an awake state or shifts to a nap state according to the value of the predetermined flag M. After the process of step S56, the master ends the transmission process shown in FIG.

ステップS57において、マスターは、ステップS51で取得したデータが全送信データか否かを判定する。具体的には、マスターは、ステップS51で取得したデータが、全クライアントに送信するデータ(上記BD20やBD21)か否かを判定する。例えば、マスターにおいて操作されるゲームキャラクタ101に対する操作(操作ボタン14等に対する操作)が行われた場合、マスターは、取得したデータが、全クライアントに送信するデータであると判定する。判定結果が肯定の場合、マスターは、次にステップS58の処理を実行する。一方、判定結果が否定の場合、マスターは、図17に示す処理を終了する。   In step S57, the master determines whether the data acquired in step S51 is all transmission data. Specifically, the master determines whether the data acquired in step S51 is data to be transmitted to all clients (the BD20 or BD21). For example, when an operation is performed on the game character 101 operated on the master (operation on the operation button 14 or the like), the master determines that the acquired data is data to be transmitted to all clients. If the determination result is affirmative, the master next executes a process of step S58. On the other hand, if the determination result is negative, the master ends the process shown in FIG.

ステップS58において、マスターは、全送信箱120にデータを格納可能か否かを判定する。具体的には、マスターは、ステップS51で取得したデータと、全送信箱120の空きサイズとに基づいて、ステップS51で取得したデータを全送信箱120に格納可能か否かを判定する。判定結果が肯定の場合、マスターは、次にステップS59の処理を実行する。一方、判定結果が否定の場合、マスターは、次にステップS61の処理を実行する。   In step S <b> 58, the master determines whether data can be stored in all the transmission boxes 120. Specifically, the master determines whether the data acquired in step S51 can be stored in all the transmission boxes 120 based on the data acquired in step S51 and the empty size of all the transmission boxes 120. If the determination result is affirmative, the master next executes a process of step S59. On the other hand, if the determination result is negative, the master next executes the process of step S61.

ステップS59において、マスターは、ステップS51で取得したデータを全送信箱120に格納する。具体的には、マスターは、ステップS51で取得したデータに付加情報を付加して、全送信箱120に格納する。より具体的には、マスターは、付加情報として、当該データの送信元および送信先に関する情報、および、サイズに関する情報を付加する。ここで、送信先の情報として、全端末であることを示す情報が付加される。ステップS59の処理の後、マスターは、次にステップS60の処理を実行する。   In step S59, the master stores the data acquired in step S51 in all the transmission boxes 120. Specifically, the master adds additional information to the data acquired in step S51 and stores it in all the transmission boxes 120. More specifically, the master adds, as additional information, information on the transmission source and transmission destination of the data and information on the size. Here, information indicating all terminals is added as transmission destination information. After the process of step S59, the master next executes a process of step S60.

ステップS60において、マスターは、データを即時送信すべきか否かを判定する。例えば、マスターは、ステップS51でデータを取得した際に、アプリケーション層から指定されるパラメータに基づいて、データを即時送信すべきか否かを判定する。データを即時送信すべきと判定した場合、マスターは、ステップS51で取得したデータを全送信箱120に格納して、次にステップS61の処理を実行する。一方、判定結果が否定の場合、マスターは、図17に示す送信処理を終了する。   In step S60, the master determines whether data should be transmitted immediately. For example, when acquiring data in step S51, the master determines whether or not the data should be transmitted immediately based on parameters specified from the application layer. When it is determined that the data should be transmitted immediately, the master stores the data acquired in step S51 in all the transmission boxes 120, and then executes the process of step S61. On the other hand, if the determination result is negative, the master ends the transmission process shown in FIG.

一方、ステップS61において、マスターは、全送信箱120に格納された全てのデータを取り出し、当該データを含む1つのフレームを生成して、当該フレームをブロードキャストで送信する。生成されるフレームのヘッダ部分には、マスターのMACアドレスが含まれる。ステップS61の処理が行われることによって、全送信箱120に格納された全てのデータ(上記BD20およびBD21)が、ブロードキャストで送信される。そして、マスターは、フレームを送信した後、ステップS59で全送信箱120に格納されなかったデータに付加情報を付加して、空になった全送信箱120に当該データを格納する。なお、ステップS51で取得したデータのサイズが全送信箱120のサイズよりも大きい場合、マスターは、当該データを全送信箱120に格納できないため、当該データを複数のフレームに分割して送信する。また、ステップS58において全送信箱120にステップS51で取得したデータを格納することができないと判定され、かつ、当該ステップS51で取得したデータが即時送信すべきデータである場合、マスターは、全送信箱120に格納された全てのデータを含む1つのフレームを送信した後、ステップS51で取得したデータを含む1つのフレームをさらに送信する。ステップS61の処理の後、マスターは、図17に示す送信処理を終了する。   On the other hand, in step S61, the master extracts all data stored in all the transmission boxes 120, generates one frame including the data, and transmits the frame by broadcast. The header portion of the generated frame includes the master MAC address. By performing the process of step S61, all the data (BD20 and BD21) stored in all the transmission boxes 120 are transmitted by broadcast. Then, after transmitting the frame, the master adds additional information to the data that has not been stored in all the transmission boxes 120 in step S59, and stores the data in all the transmission boxes 120 that are emptied. When the size of the data acquired in step S51 is larger than the size of all the transmission boxes 120, the master cannot store the data in all the transmission boxes 120, and transmits the data divided into a plurality of frames. If it is determined in step S58 that the data acquired in step S51 cannot be stored in all the transmission boxes 120, and the data acquired in step S51 is data to be transmitted immediately, the master After transmitting one frame including all the data stored in the trust box 120, one frame including the data acquired in step S51 is further transmitted. After the process of step S61, the master ends the transmission process shown in FIG.

(クライアントのデータ送信処理)
次に、図18を参照して、クライアントにおいて行われるデータ送信処理の詳細について、説明する。図18は、クライアントにおいて行われるデータ送信処理(クライアント)の詳細を示すフローチャートである。図18において、図17と同じ処理については同一の符号を付して説明を省略する。
(Client data transmission process)
Next, the details of the data transmission processing performed in the client will be described with reference to FIG. FIG. 18 is a flowchart showing details of data transmission processing (client) performed in the client. 18, the same processes as those in FIG. 17 are denoted by the same reference numerals, and the description thereof is omitted.

クライアントにおいて行われるデータ送信処理では、個別送信箱110に格納されたデータは、ブロードキャストではなく、ユニキャストでマスターに送信される。   In the data transmission process performed at the client, the data stored in the individual transmission box 110 is transmitted to the master by unicast, not by broadcast.

まず、クライアントは、図17におけるステップS50の処理の替わりに、ステップS65の処理を行う。ステップS65において、クライアントは、個別送信箱110および全送信箱120にデータを格納してから所定時間が経過している場合、格納されているデータを全て送信する。個別送信箱110および全送信箱120にデータを格納してから所定時間が経過していない場合、クライアントは、格納されているデータを送信しない。この場合において、クライアントは、個別送信箱110に格納されたデータをブロードキャストで送信する替わりに、当該データをユニキャストでマスターに送信する。具体的には、クライアントは、個別送信箱110にデータが格納されている場合、当該個別送信箱110に格納されたデータのうち、最も古いデータが格納されてから所定時間が経過したか否かを判定する。判定結果が肯定の場合、クライアントは、個別送信箱110に格納された全てのデータを取り出し、当該全てデータを含む1つのフレームを生成して、当該フレームをユニキャストでマスターに送信する。   First, the client performs the process of step S65 instead of the process of step S50 in FIG. In step S <b> 65, when a predetermined time has passed since the client stored data in the individual transmission box 110 and all the transmission boxes 120, the client transmits all the stored data. If the predetermined time has not elapsed since the data was stored in the individual transmission box 110 and all the transmission boxes 120, the client does not transmit the stored data. In this case, the client transmits the data stored in the individual transmission box 110 to the master by unicast instead of transmitting the data by broadcast. Specifically, when data is stored in the individual transmission box 110, the client determines whether or not a predetermined time has elapsed since the oldest data among the data stored in the individual transmission box 110 has been stored. Determine. If the determination result is affirmative, the client extracts all the data stored in the individual transmission box 110, generates one frame including all the data, and transmits the frame to the master by unicast.

同様に、クライアントは、全送信箱120にデータが格納されている場合、当該全送信箱120に格納されたデータのうち、最も古いデータが格納されてから所定時間が経過したか否かを判定する。判定結果が肯定の場合、クライアントは、全送信箱120に格納された全てのデータを取り出し、当該全てデータを含む1つのフレームを生成して、当該フレームをブロードキャストで送信する。この場合において、生成されるフレームのヘッダ部分には、送信元アドレスとして自機(クライアント)のMACアドレスとともに、BSSIDとしてマスターのMACアドレスが含まれる。ステップS65の処理の後、クライアントは、次にステップS66の処理を実行する。   Similarly, when data is stored in all the transmission boxes 120, the client determines whether or not a predetermined time has elapsed since the oldest data among the data stored in all the transmission boxes 120 has been stored. To do. If the determination result is affirmative, the client extracts all data stored in all the transmission boxes 120, generates one frame including all the data, and transmits the frame by broadcast. In this case, the header portion of the generated frame includes the MAC address of the own device (client) as the transmission source address and the master MAC address as the BSSID. After the process of step S65, the client next executes a process of step S66.

ステップS66において、クライアントは、送信すべきデータを取得する。ここで、送信すべきデータは、クライアント自身が生成したデータ(自機において行われた操作に応じたデータ等、ゲーム処理の過程で生成したデータ)である。クライアントは、マスターのように他の端末から送信されたデータを別の端末に転送することはないため、ステップS66においては、クライアントは、クライアント自身が生成したデータを取得する。次に、クライアントは、ステップS67の処理を実行する。   In step S66, the client acquires data to be transmitted. Here, the data to be transmitted is data generated by the client itself (data generated in the course of game processing, such as data corresponding to an operation performed on the own device). Since the client does not transfer data transmitted from another terminal to another terminal unlike the master, in step S66, the client acquires data generated by the client itself. Next, the client executes the process of step S67.

ステップS67において、クライアントは、ステップS66で取得したデータがマスターを経由して送信するデータか否かを判定する。具体的には、クライアントは、取得したデータが個別送信データ(他のクライアントに個別に送信するデータ)である場合、マスターを経由して送信するデータであると判定する。また、クライアントは、取得したデータが全送信データ(全端末に送信するデータ)であっても、所定の条件を満たす場合、マスターを経由して送信するデータであると判定する。例えば、取得したデータの種類が所定の種類(例えば、自機で行われた操作に応じたデータであって全端末と共有すべきデータ)である場合、または、アプリケーション層から指定された場合、クライアントは、取得したデータが全送信データであっても、当該データはマスターを経由して送信するデータであると判定する。   In step S67, the client determines whether the data acquired in step S66 is data to be transmitted via the master. Specifically, when the acquired data is individual transmission data (data to be individually transmitted to another client), the client determines that the data is to be transmitted via the master. In addition, even if the acquired data is all transmission data (data to be transmitted to all terminals), the client determines that the acquired data is data to be transmitted via the master if a predetermined condition is satisfied. For example, when the type of acquired data is a predetermined type (for example, data corresponding to an operation performed on the own device and should be shared with all terminals), or when specified from the application layer, Even if the acquired data is all transmission data, the client determines that the data is data to be transmitted via the master.

図22は、マスターを経由してクライアントC1から全端末にデータが送信される様子を示す図である。図22に示すように、クライアントC1は、自機で生成したデータD1を含むフレーム200を生成して、当該フレーム200をマスターに対して送信する。フレーム200のヘッダ部分には、宛先MACアドレスとしてマスターのMACアドレスが指定される。また、フレーム200には、データD1と付加情報201とが含まれる。付加情報201は、データD1の送信元および送信先を示す情報である。具体的には、送信元の情報はクライアントC1を示す情報であり、送信先の情報は全端末(マスター、クライアントC2、および、オーディエンスを含む全端末)を示す情報である。フレーム200を受信したマスターは、データD1とその付加情報201とを取り出し、これらデータD1および付加情報201を全送信箱120に格納し、データD1および付加情報201を含むフレームをブロードキャストで送信する。   FIG. 22 is a diagram illustrating a state in which data is transmitted from the client C1 to all terminals via the master. As shown in FIG. 22, the client C1 generates a frame 200 including the data D1 generated by itself and transmits the frame 200 to the master. In the header portion of the frame 200, the master MAC address is designated as the destination MAC address. The frame 200 includes data D1 and additional information 201. The additional information 201 is information indicating a transmission source and a transmission destination of the data D1. Specifically, the transmission source information is information indicating the client C1, and the transmission destination information is information indicating all terminals (the master, the client C2, and all terminals including the audience). The master that has received the frame 200 extracts the data D1 and the additional information 201, stores the data D1 and the additional information 201 in all the transmission boxes 120, and transmits a frame including the data D1 and the additional information 201 by broadcast.

ステップS67において判定結果が肯定の場合、クライアントは、次にステップS53の処理を実行する。一方、判定結果が否定の場合、クライアントは、次にステップS68の処理を実行する。   If the determination result is affirmative in step S67, the client next executes a process of step S53. On the other hand, if the determination result is negative, the client next executes a process of step S68.

クライアントは、ステップS53からステップS55の処理を行った後、ステップS68の処理を実行する。   The client performs the process of step S68 after performing the processes of step S53 to step S55.

ステップS68において、クライアントは、ステップS66で取得したデータが各端末に直接全送信するデータか否かを判定する。ここで、直接全送信するデータとは、クライアントから直接他のすべての端末に対してブロードキャストするデータである。クライアントは、マスターを経由せずに全ての端末に対してブロードキャストでデータを送信することが可能である。   In step S68, the client determines whether the data acquired in step S66 is data that is directly transmitted to each terminal. Here, the data to be directly all transmitted is data broadcast directly from the client to all other terminals. The client can transmit data to all terminals by broadcast without going through the master.

図23は、クライアントC1から直接全端末にデータを送信する様子を示す図である。図23に示すように、クライアントC1は、例えば自機で生成したデータD2を含むフレーム210を生成して、当該フレーム210を全端末にブロードキャストで送信する。フレーム210のヘッダ部分には、宛先MACアドレスとしてブロードキャストアドレスが指定される。また、フレーム210には、データD2と付加情報211とが含まれる。付加情報211は、データD2の送信元(クライアントC1)および送信先(全端末)を示す情報である。各端末(マスター、クライアントC2、および、オーディエンス)は、フレーム210を受信して、データD2を取得する。このように、クライアントは、マスターを経由せずに直接全端末に対してデータを送信することが可能である。   FIG. 23 is a diagram illustrating a state in which data is directly transmitted from the client C1 to all terminals. As shown in FIG. 23, for example, the client C1 generates a frame 210 including data D2 generated by itself, and transmits the frame 210 to all terminals by broadcast. In the header portion of the frame 210, a broadcast address is specified as a destination MAC address. The frame 210 includes data D2 and additional information 211. The additional information 211 is information indicating the transmission source (client C1) and transmission destination (all terminals) of the data D2. Each terminal (master, client C2, and audience) receives the frame 210 and acquires data D2. In this way, the client can directly transmit data to all terminals without going through the master.

ステップS68において判定結果が肯定の場合、クライアントは、次にステップS58の処理を実行する。一方、判定結果が否定の場合、クライアントは、図18に示す処理を終了する。   If the determination result is affirmative in step S68, the client next executes the process of step S58. On the other hand, if the determination result is negative, the client ends the process shown in FIG.

また、クライアントは、図17のステップS56の処理の替わりに、ステップS69の処理を実行する。   Further, the client executes the process of step S69 instead of the process of step S56 of FIG.

ステップS69において、クライアントは、個別送信箱110に格納された全てのデータを取り出し、当該全てのデータを含む1つのフレームを生成して、当該フレームをユニキャストでマスターに送信する(ユニキャストフレームを送信する)。ステップS69の処理は、生成したフレームをブロードキャストではなくユニキャストでマスターに送信することを除いて、図17のステップS56の処理と同様である。以上で図18の説明を終了する。   In step S69, the client retrieves all data stored in the individual transmission box 110, generates one frame including all the data, and transmits the frame to the master by unicast (unicast frame is transmitted). Send). The process of step S69 is the same as the process of step S56 of FIG. 17 except that the generated frame is transmitted to the master by unicast instead of broadcast. This is the end of the description of FIG.

このようにして、クライアントにおいては、個別送信箱110に格納したデータをユニキャストでマスターに送信する。   In this way, the client transmits the data stored in the individual transmission box 110 to the master by unicast.

(データ受信処理の詳細)
次に、データ受信処理の詳細について、説明する。まず、図19を参照して、クライアントにおいて行われるデータ受信処理の詳細について、説明する。
(Details of data reception processing)
Next, details of the data reception process will be described. First, with reference to FIG. 19, the details of the data reception process performed in the client will be described.

(クライアントのデータ受信処理)
図19は、クライアントにおいて行われるデータ受信処理の詳細を示すフローチャートである。
(Client data reception processing)
FIG. 19 is a flowchart showing details of data reception processing performed in the client.

まず、ステップS70において、クライアントは、フレームを受信する。具体的には、クライアントは、自機宛のフレーム、または、ブロードキャストで送信されたフレームのみを受信する。より具体的には、クライアントは、送信先アドレスが自機のMACアドレスと一致するフレームを受信する。また、クライアントは、送信先アドレスがブロードキャストアドレスであるフレームであって、かつ、自機のメモリに記憶した識別情報73(マスターのMACアドレス)と一致する情報を含むフレームを受信する。マスターあるいは他のクライアントが送信したブロードキャストフレームには、BSSID(マスターのMACアドレスと一致する)が含まれるため、クライアントは、当該BSSIDが識別情報73と一致する場合、当該ブロードキャストフレームを受信する。クライアントは、次にステップS71の処理を実行する。   First, in step S70, the client receives a frame. Specifically, the client receives only a frame addressed to itself or a frame transmitted by broadcast. More specifically, the client receives a frame whose destination address matches the MAC address of its own device. Further, the client receives a frame including a frame whose destination address is a broadcast address and including information matching the identification information 73 (master MAC address) stored in its own memory. Since the broadcast frame transmitted by the master or another client includes the BSSID (which matches the master's MAC address), the client receives the broadcast frame when the BSSID matches the identification information 73. Next, the client executes the process of step S71.

ステップS71において、クライアントは、ステップS70で取得したフレームのデータ部分を参照して、当該フレームに含まれるデータの数(図15参照)を取得する。クライアントは、次にステップS72の処理を実行する。   In step S71, the client refers to the data portion of the frame acquired in step S70, and acquires the number of data included in the frame (see FIG. 15). Next, the client executes the process of step S72.

ステップS72において、クライアントは、変数iに1をセットし、次にステップS73の処理を実行する。   In step S72, the client sets 1 to the variable i, and then executes the process of step S73.

ステップS73において、クライアントは、i番目のデータの付加情報を取得する。すなわち、クライアントは、ステップS70で取得したフレームのデータ部分のうち、i番目のデータの付加情報(送信元および送信先に関する情報、サイズに関する情報)を取得する。クライアントは、次にステップS74の処理を実行する。   In step S73, the client acquires additional information of the i-th data. That is, the client acquires additional information (information on the transmission source and transmission destination, information on the size) of the i-th data in the data portion of the frame acquired in step S70. Next, the client executes the process of step S74.

ステップS74において、クライアントは、i番目のデータが自機または全端末宛か否かを判定する。ここで、全端末とは、ネットワーク内の全ての端末であり、マスター、クライアント、および、オーディエンスを含む。具体的には、クライアントは、ステップS73で取得した付加情報のうち、送信先に関する情報を参照して、i番目のデータが自機または全端末宛のデータか否かを判定する。より具体的には、クライアントは、送信先に関する情報が、自機のIDと一致するか否か(または自機のMACアドレスと一致するか否か)を判定する。また、クライアントは、送信先に関する情報が、全端末であることを示す値か否か(またはブロードキャストアドレスか否か)を判定する。判定結果が肯定の場合、クライアントは、次にステップS75の処理を実行する。一方、判定結果が否定の場合、クライアントは、次にステップS76の処理を実行する。   In step S74, the client determines whether or not the i-th data is destined for the own device or all terminals. Here, all terminals are all terminals in the network, and include a master, a client, and an audience. Specifically, the client determines whether or not the i-th data is data addressed to the own device or all terminals by referring to the information related to the transmission destination among the additional information acquired in step S73. More specifically, the client determines whether the information regarding the transmission destination matches the ID of the own device (or whether the information matches the MAC address of the own device). Further, the client determines whether or not the information regarding the transmission destination is a value indicating that all terminals are included (or whether or not it is a broadcast address). If the determination result is affirmative, the client next executes a process of step S75. On the other hand, if the determination result is negative, the client next executes a process of step S76.

ステップS75において、クライアントは、i番目のデータ(図16参照)を取り出す。なお、取り出されたi番目のデータは、メモリに格納される。そして、上述したゲーム処理(ステップS37)において、メモリに格納されたi番目のデータを用いたゲーム処理が行われる。例えば、i番目のデータに含まれる付加情報が示す送信元の情報(例えば、送信元がマスターであることを示す情報)と当該i番目のデータに含まれるデータ本体(例えば、データUD10)とを用いて、ゲーム処理が行われる。クライアントは、次にステップS76の処理を実行する。   In step S75, the client takes out the i-th data (see FIG. 16). The extracted i-th data is stored in the memory. Then, in the above-described game process (step S37), a game process using the i-th data stored in the memory is performed. For example, information on the transmission source indicated by the additional information included in the i-th data (for example, information indicating that the transmission source is a master) and a data body (for example, data UD10) included in the i-th data. The game process is performed by using this. Next, the client executes the process of step S76.

ステップS76において、クライアントは、変数iに1を加算して、次にステップS77の処理を実行する。   In step S76, the client adds 1 to the variable i, and then executes the process of step S77.

ステップS77において、クライアントは、変数iがステップS71で取得したデータの数よりも大きいか否かを判定し、判定結果が肯定の場合、図19に示す受信処理を終了する。一方、判定結果が否定の場合、クライアントは、ステップS73の処理を再び実行する。   In step S77, the client determines whether or not the variable i is larger than the number of data acquired in step S71. If the determination result is affirmative, the client ends the reception process illustrated in FIG. On the other hand, if the determination result is negative, the client executes the process of step S73 again.

ステップS73〜ステップS77の処理が繰り返し行われることによって、受信したフレームに含まれるデータのうち、自機または全クライアント宛のデータのみが取り出される。   By repeatedly performing the processing of step S73 to step S77, only data destined for the own device or all clients is extracted from the data included in the received frame.

(オーディエンスのデータ受信処理)
次に、図20を参照して、オーディエンスにおいて行われるデータ受信処理の詳細について、説明する。図20は、オーディエンスにおいて行われるデータ受信処理(オーディエンス)の詳細を示すフローチャートである。なお、図20において、図19と同じ処理については同一の符号を付して説明を省略する。
(Audience data reception processing)
Next, the details of the data reception process performed in the audience will be described with reference to FIG. FIG. 20 is a flowchart showing details of data reception processing (audience) performed in the audience. In FIG. 20, the same processes as those in FIG. 19 are denoted by the same reference numerals and description thereof is omitted.

まず、ステップS80において、オーディエンスは、フレームを受信する。具体的には、オーディエンスは、ブロードキャストで送信されたフレームを受信する。より具体的には、オーディエンスは、送信先アドレスがブロードキャストアドレスであるフレームであって、かつ、自機のメモリに記憶した識別情報73(マスターのMACアドレス)と一致する情報を含むフレームを受信する。マスターあるいはクライアントが送信したブロードキャストフレームには、BSSIDが含まれるため、オーディエンスは、当該BSSIDが識別情報73と一致する場合、当該ブロードキャストフレームを受信する。オーディエンスは、次にステップS71からステップS73の処理を実行する。   First, in step S80, the audience receives a frame. Specifically, the audience receives a frame transmitted by broadcast. More specifically, the audience receives a frame whose destination address is a broadcast address and includes information that matches the identification information 73 (master's MAC address) stored in its own memory. . Since the BSSID is included in the broadcast frame transmitted by the master or the client, the audience receives the broadcast frame when the BSSID matches the identification information 73. Next, the audience executes the processing from step S71 to step S73.

ステップS73の処理の後、オーディエンスは、ステップS81の処理を実行する。   After the process of step S73, the audience executes the process of step S81.

ステップS81において、オーディエンスは、ステップS73で取得したi番目のデータが全端末宛か否かを判定する。具体的には、オーディエンスは、ステップS73で取得した付加情報のうち、送信先に関する情報を参照して、i番目のデータが全端末宛のデータか否かを判定する。より具体的には、オーディエンスは、送信先に関する情報が、全端末であることを示す値か否か(またはブロードキャストアドレスか否か)を判定する。判定結果が肯定の場合、オーディエンスは、次にステップS82の処理を実行する。一方、判定結果が否定の場合、オーディエンスは、次にステップS76の処理を実行する。   In step S81, the audience determines whether or not the i-th data acquired in step S73 is addressed to all terminals. Specifically, the audience refers to information related to the transmission destination among the additional information acquired in step S73, and determines whether or not the i-th data is data addressed to all terminals. More specifically, the audience determines whether or not the information related to the transmission destination is a value indicating that all terminals (or a broadcast address). If the determination result is affirmative, the audience next executes a process of step S82. On the other hand, if the determination result is negative, the audience next executes a process of step S76.

ステップS82において、オーディエンスは、i番目のデータを取り出す。取り出されたi番目のデータは、メモリに格納される。そして、上述したゲーム処理(ステップS49)において、メモリに格納されたi番目のデータを用いたゲーム処理が行われる。例えば、i番目のデータに含まれる付加情報が示す送信元および送信先の情報と、当該i番目のデータに含まれるデータ本体とを用いて、ゲーム処理が行われる。このように、オーディエンスは受信したフレームに含まれる全端末宛のデータを用いてゲーム処理を行うことにより、マスターおよび各クライアントで行われた操作に応じたゲーム処理の結果を得ることができる。オーディエンスは、次にステップS76およびステップS77の処理を実行する。   In step S82, the audience extracts the i-th data. The extracted i-th data is stored in the memory. Then, in the above-described game process (step S49), the game process using the i-th data stored in the memory is performed. For example, the game process is performed using information on the transmission source and the transmission destination indicated by the additional information included in the i-th data and the data body included in the i-th data. Thus, the audience can obtain the result of the game process corresponding to the operation performed by the master and each client by performing the game process using the data addressed to all terminals included in the received frame. The audience next executes the processes of steps S76 and S77.

このようにして、オーディエンスでは、フレームに含まれる全てのデータが個別に取り出され、当該個別に取り出されたデータに基づいて、ゲーム処理が行われる。   In this way, in the audience, all data included in the frame is individually extracted, and game processing is performed based on the individually extracted data.

(マスターのデータ受信処理)
次に、図21を参照して、マスターにおいて行われるデータ受信処理の詳細について、説明する。図21は、マスターにおいて行われるデータ受信処理(マスター)の詳細を示すフローチャートである。なお、図21において、図19と同じ処理については同一の符号を付して説明を省略する。
(Master data reception processing)
Next, the details of the data reception process performed in the master will be described with reference to FIG. FIG. 21 is a flowchart showing details of data reception processing (master) performed in the master. In FIG. 21, the same processes as those in FIG. 19 are denoted by the same reference numerals and description thereof is omitted.

まず、マスターは、ステップS90の処理を行う。具体的には、マスターは、自機宛のフレーム、または、ブロードキャストで送信されたフレームを受信する。より具体的には、マスターは、送信先アドレスが自機(マスター)のMACアドレスと一致するフレームを受信する。また、マスターは、送信先アドレスがブロードキャストアドレスであるフレームであって、かつ、マスターのMACアドレスと一致する情報(BSSID)を含むフレームを受信する。ステップS90の処理の後、マスターは、次にステップS71およびステップS72の処理を実行する。ステップS72の処理の後、マスターは、ステップS91の処理を行う。   First, the master performs the process of step S90. Specifically, the master receives a frame addressed to itself or a frame transmitted by broadcast. More specifically, the master receives a frame whose destination address matches the MAC address of the own device (master). In addition, the master receives a frame that has a transmission destination address that is a broadcast address and includes information (BSSID) that matches the MAC address of the master. After the process of step S90, the master next executes the processes of step S71 and step S72. After the process of step S72, the master performs the process of step S91.

ステップS91において、マスターは、i番目のデータを取り出す。マスターは、取り出したi番目のデータについて、当該データの付加情報が示す送信先に応じた処理を行う。例えば、マスターは、取り出したi番目のデータが自機宛のデータである場合、当該i番目のデータをメモリに記憶する。そして、上述したゲーム処理(ステップS20)において、メモリに記憶されたi番目のデータが用いられる。また、マスターは、取り出したi番目のデータが他のクライアント宛のデータである場合、メモリに当該他のクライアント宛のデータ(取り出したi番目のデータ)を記憶する。そして、上述したデータ送信処理のステップS51において、当該他のクライアント宛のデータが取得され、当該他のクライアント宛のデータが上記個別送信箱110に格納され、他のクライアントに送信される。また、マスターは、取り出したi番目のデータが全端末宛のデータである場合、メモリに当該全端末宛のデータ(取り出したi番目のデータ)を記憶する。そして、上述したデータ送信処理のステップS51において、当該全端末宛のデータが取得され、当該全端末宛のデータが全送信箱120に格納され、全端末に送信される。   In step S91, the master extracts the i-th data. The master performs processing on the extracted i-th data according to the transmission destination indicated by the additional information of the data. For example, when the extracted i-th data is data addressed to itself, the master stores the i-th data in the memory. In the game process (step S20) described above, the i-th data stored in the memory is used. When the extracted i-th data is data addressed to another client, the master stores the data addressed to the other client (extracted i-th data) in the memory. In step S51 of the data transmission process described above, data destined for the other client is acquired, and the data destined for the other client is stored in the individual transmission box 110 and transmitted to the other client. Further, when the extracted i-th data is data destined for all terminals, the master stores the data destined for all terminals (the extracted i-th data) in the memory. In step S51 of the data transmission process described above, data addressed to all terminals is acquired, and data addressed to all terminals is stored in all transmission boxes 120 and transmitted to all terminals.

ステップS91の処理の後、マスターは、次にステップS76およびステップS77の処理を実行する。   After the process of step S91, the master next executes the processes of step S76 and step S77.

このようにして、マスターでは、フレームに含まれる全てのデータが個別に取り出され、当該個別に取り出されたデータがゲーム処理に用いられたり、クライアントに送信されたりする。   In this way, in the master, all data included in the frame is individually extracted, and the individually extracted data is used for game processing or transmitted to the client.

以上のように、本実施形態では、マスターおよびクライアントは、相互に登録して互いに通信する。これにより、マスターおよびクライアント間でゲームが進行する。具体的には、ゲームが開始される前に、クライアントは、自機をマスターに登録させるために接続要求をマスターに送信する。マスターは当該接続要求を受信して、当該接続要求に対する応答をクライアントに送信するとともに、当該クライアントの識別情報(MACアドレス)を自機に登録する。クライアントは、接続要求に対する応答を受信したことに応じて、自機にマスターの識別情報(MACアドレス)を登録する。これにより、マスターおよびクライアントは、相互に登録する。一方、オーディエンスは、マスターには登録されずに、マスターを一方的に自機に登録する。すなわち、オーディエンスは、マスターに対して接続要求を送信することなく、マスターからのビーコンを受信して、当該ビーコンに含まれるマスターの識別情報(MACアドレス)を自機に登録する。そして、オーディエンスは、マスターおよびクライアントが送信したデータを受信して、マスターおよびクライアント間で進行するゲームを観戦する。   As described above, in this embodiment, the master and the client register with each other and communicate with each other. Thereby, a game advances between a master and a client. Specifically, before the game is started, the client transmits a connection request to the master in order to register the own device with the master. The master receives the connection request, transmits a response to the connection request to the client, and registers the identification information (MAC address) of the client in its own device. In response to receiving the response to the connection request, the client registers the master identification information (MAC address) in its own device. Thereby, the master and the client register with each other. On the other hand, the audience does not register with the master, but unilaterally registers the master with itself. That is, the audience receives a beacon from the master without transmitting a connection request to the master, and registers the identification information (MAC address) of the master included in the beacon in its own device. Then, the audience receives data transmitted by the master and the client, and watches a game that progresses between the master and the client.

このように、オーディエンスはマスターには登録されないため、マスターはオーディエンスを管理する必要がない。従って、マスターおよびクライアント間で進行するゲームを観戦するオーディエンスの数には制限はなく、より多くのゲーム装置10がオーディエンスとしてゲームに参加してもマスターの管理負荷が増大することはない。このため、例えば、複数人が参加して進行するゲームを、大多数のユーザが観戦することができる。   Thus, since the audience is not registered with the master, the master does not need to manage the audience. Therefore, there is no limit to the number of audiences watching a game that progresses between the master and the client, and even if more game apparatuses 10 participate in the game as an audience, the management load of the master does not increase. For this reason, for example, the majority of users can watch a game in which a plurality of people participate and proceed.

また、本実施形態では、クライアントは、他のクライアントへのデータをマスターを経由して送信する。このため、クライアント間の距離が離れていたり、クライアント間に電波を妨害するものが存在したりすることによってクライアント間で直接通信ができない場合でも、クライアントは他のクライアントへデータを送信することができる。   In this embodiment, the client transmits data to other clients via the master. For this reason, clients can send data to other clients even if direct communication between the clients is not possible due to the distance between the clients or the presence of interference between the clients. .

また、本実施形態では、マスター(あるいはクライアント)は、送信すべき比較的小さいサイズのデータを取得した場合、即時に当該データを送信せず、一時的にメモリに蓄積する。そして、マスターは、蓄積した複数のデータをまとめて1つのフレームで送信する。この場合において、マスターは、複数のデータのそれぞれについて、送信先および送信元に関する情報を付加する。   In this embodiment, when the master (or client) acquires relatively small data to be transmitted, the master (or client) does not immediately transmit the data but temporarily stores it in the memory. Then, the master collectively transmits the accumulated data in one frame. In this case, the master adds information regarding the transmission destination and the transmission source for each of the plurality of data.

このように、複数の比較的小さいサイズのデータを1つのフレームにまとめて送信することにより、各データを個々に送信する場合と比較して、データを送信する速度が速くなる。すなわち、フレームには送信すべきデータ本体にヘッダ等の情報が付加されるため、1つのデータを1つのフレームに含めて複数のフレームを送信するよりも、複数のデータを1つのフレームに含めて送信する方が、効率がよい。上記実施形態のような複数のゲーム装置が無線通信で接続されて進行するゲームの場合、各ゲーム装置間では比較的小さいサイズのデータが頻繁にやり取りされることが多い。このような場合、各データを各フレームに含めてそれぞれ送信すると、データを送受信する速度が遅くなり、ゲームの進行の障害となることがある。しかしながら、本実施形態では、複数のデータを1つのフレームにまとめて送信するため、効率的にデータを送受信することができる。   In this manner, by transmitting a plurality of relatively small data in a single frame, the data transmission speed is increased compared to the case where each data is transmitted individually. That is, since information such as a header is added to the data body to be transmitted in a frame, a plurality of data is included in one frame rather than a plurality of frames including one data in one frame. It is more efficient to send. In the case of a game in which a plurality of game devices are connected by wireless communication as in the above embodiment, data of a relatively small size is frequently exchanged between the game devices. In such a case, if each data is included in each frame and transmitted, the data transmission / reception speed becomes slow, which may hinder the progress of the game. However, in this embodiment, since a plurality of data are transmitted together in one frame, data can be efficiently transmitted and received.

(変形例)
なお、上記実施形態では、クライアントおよびオーディエンスはマスターのMACアドレスを登録し、マスターはクライアントのMACアドレスを登録した。他の実施形態では、各端末を識別可能な識別情報であれば、どのような情報を登録してもよい。
(Modification)
In the above embodiment, the client and the audience register the master MAC address, and the master registers the client MAC address. In other embodiments, any information may be registered as long as the identification information can identify each terminal.

また、上記実施形態では、マスターはビーコンを送信し、クライアントは当該ビーコンを受信(パッシブスキャン)したことに応じて、接続要求を当該ビーコンを送信したマスターに対して送信することにより、マスターとクライアントとは相互に接続(登録)した。他の実施形態では、アクティブスキャンにより、マスターとクライアントとが相互に接続されてもよい。すなわち、クライアントがプローブリクエストを送信し、当該プローブリクエストに応じて、マスターがプローブレスポンス(管理フレームの一種)を送信してもよい。そして、クライアントがマスターからのプローブレスポンスを受信したことに応じて、クライアントが接続要求を送信してもよい。   In the above embodiment, the master transmits a beacon, and the client transmits a connection request to the master that transmitted the beacon in response to receiving the beacon (passive scan). Connected (registered) to each other. In other embodiments, the master and client may be interconnected by active scanning. That is, the client may transmit a probe request, and the master may transmit a probe response (a type of management frame) in response to the probe request. Then, in response to the client receiving the probe response from the master, the client may transmit a connection request.

また、上記実施形態では、マスターとクライアントとの間での認証はオープンシステム認証であるとしたが、他の実施形態では、他の認証方式でマスターとクライアントとが認証されてもよい。   In the above embodiment, the authentication between the master and the client is the open system authentication. However, in another embodiment, the master and the client may be authenticated by another authentication method.

また、上記実施形態では、各ゲーム装置がIEEE802.11の規格に従って通信を行うこととしたが、他の実施形態では、どのような規格によって通信が行われてもよい。   In the above embodiment, each game device performs communication according to the IEEE 802.11 standard. However, in other embodiments, communication may be performed according to any standard.

また、上記実施形態では、順次取得したデータを個別送信箱110等に順次格納した。他の実施形態では、各データは順次取得される必要はなく、個別送信箱110等に格納される必要はない。例えば、アプリケーションが同時に宛先の異なる複数のデータを生成した場合、個別送信箱110等に当該複数のデータを格納せずに、当該複数のデータと宛先の情報とを含む1つのフレームを生成して、送信してもよい。   Moreover, in the said embodiment, the data acquired sequentially were stored in the separate transmission box 110 grade | etc., One by one. In other embodiments, each data need not be acquired sequentially and need not be stored in the individual transmission box 110 or the like. For example, when an application generates a plurality of data having different destinations at the same time, a single frame including the plurality of data and destination information is generated without storing the plurality of data in the individual transmission box 110 or the like. , You may send.

また、上記実施形態では、取得したデータを個別送信箱110等に格納することができない場合、すなわち、個別送信箱110等に空き領域がない場合、個別送信箱110等のデータを送信した。また、個別送信箱110等にデータを格納してから所定時間経過した場合、格納された全てのデータを送信した。さらに、取得したデータが即時送信すべきデータである場合、当該即時送信すべきデータとともに個別送信箱110等に格納されたデータを送信した。他の実施形態では、これら3つの条件に限らず、格納されたデータを送信するための所定の条件が満たされた場合に、格納されたデータを送信してもよい。例えば、所定の時間間隔で自動的に格納されたデータを送信するようにしてもよいし、各ゲーム装置10においてゲームの状態が所定の状態になった場合に、格納されたデータを送信してもよい。   In the above embodiment, when the acquired data cannot be stored in the individual transmission box 110 or the like, that is, when there is no free space in the individual transmission box 110 or the like, the data in the individual transmission box 110 or the like is transmitted. Further, when a predetermined time has elapsed since the data was stored in the individual transmission box 110 or the like, all the stored data was transmitted. Furthermore, when the acquired data is data to be transmitted immediately, the data stored in the individual transmission box 110 and the like are transmitted together with the data to be transmitted immediately. In another embodiment, the stored data may be transmitted when a predetermined condition for transmitting the stored data is satisfied, not limited to these three conditions. For example, the stored data may be automatically transmitted at a predetermined time interval, or the stored data may be transmitted when the game state in each game device 10 becomes a predetermined state. Also good.

また、上記実施形態では、個別送信箱110等に格納された全てのデータを1つのフレームに含めて送信した。他の実施形態では、個別送信箱110等に格納された全てのデータを送信せずに、個別送信箱110等に格納されたデータのうちの少なくとも2つのデータを1つのフレームに含めて送信してもよい。例えば、最も古いデータから数えてN個目までのデータが1つのフレームで送信されてもよい。   Moreover, in the said embodiment, all the data stored in the separate transmission box 110 grade | etc., Were transmitted by including in one frame. In another embodiment, all the data stored in the individual transmission box 110 or the like is transmitted without including at least two of the data stored in the individual transmission box 110 or the like in one frame. May be. For example, data up to the Nth data from the oldest data may be transmitted in one frame.

また、上記実施形態では、マスターはブロードキャストでデータを送信したが、他の実施形態では、マルチキャストでデータを送信してもよい。   Moreover, in the said embodiment, although the master transmitted data by broadcast, you may transmit data by multicast in other embodiment.

また、上記実施形態では、携帯型ゲーム装置を想定して各ゲーム装置が無線通信を行うこととしたが、他の実施形態では、バッテリで動作する情報処理装置であってもよいし、常時電力供給を受ける情報処理装置であってもよい。また、情報処理装置は、有線で通信を行うものであってもよい。この場合、各情報処理装置は、HUB等で接続され、データ通信を行う。   In the above embodiment, each game device performs wireless communication assuming a portable game device. However, in other embodiments, an information processing device that operates on a battery may be used. It may be an information processing apparatus that receives supply. Further, the information processing apparatus may perform communication by wire. In this case, each information processing apparatus is connected by HUB etc. and performs data communication.

また、他の実施形態においては、上述した処理の一部又は全部は、1又は複数の専用回路によって行われてもよい。また、上記処理は、ゲーム装置10が備える複数のコンピュータ(CPU311や無線通信モジュール36内の処理部等)によって行われてもよい。   In other embodiments, some or all of the above-described processing may be performed by one or more dedicated circuits. Further, the above process may be performed by a plurality of computers (CPU 311, processing units in the wireless communication module 36) provided in the game apparatus 10.

また、上述した通信方法は、ゲーム装置10以外の携帯型情報処理装置、例えば、PDA(Personal Digital Assistant)や無線LAN機能を有する高機能携帯電話、独自の通信方式により他の機器と通信可能に構成された携帯型情報処理装置等において適用されてもよい。   In addition, the above-described communication method enables communication with other devices using a portable information processing device other than the game device 10, such as a PDA (Personal Digital Assistant), a high-function mobile phone having a wireless LAN function, or an original communication method. You may apply in the portable information processing apparatus etc. which were comprised.

10 ゲーム装置
14 操作ボタン
15 アナログスティック
31 情報処理部
32 メインメモリ
36 無線通信モジュール
311 CPU
80 登録テーブル
101、102、103 ゲームキャラクタ
110 個別送信箱
120 全送信箱
130、131、132、133 付加情報
DESCRIPTION OF SYMBOLS 10 Game device 14 Operation button 15 Analog stick 31 Information processing part 32 Main memory 36 Wireless communication module 311 CPU
80 Registration table 101, 102, 103 Game character 110 Individual transmission box 120 All transmission boxes 130, 131, 132, 133 Additional information

Claims (18)

通信機能を有する情報処理装置のコンピュータにおいて実行される通信制御プログラムであって、
送信先の異なる複数のデータを順次取得する取得手段、
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段、
前記送信データをブロードキャストまたはマルチキャストで送信する送信手段として、前記コンピュータを機能させ
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、通信制御プログラム。
A communication control program executed in a computer of an information processing apparatus having a communication function,
Acquisition means for sequentially acquiring a plurality of data with different destinations;
Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
Transmission data generating means for generating transmission data including a plurality of data stored in the storage means;
As a transmission means for transmitting the transmission data by broadcast or multicast, the computer is caused to function ,
The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
The communication control program , wherein the transmission unit transmits the transmission data generated by the transmission data generation unit .
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納不可能と判定した場合、前記送信手段によって送信されたデータを前記記憶手段から消去するとともに、当該取得手段が取得したデータを前記記憶手段に格納する、請求項1に記載の通信制御プログラム。When the storage control unit determines that the data acquired by the acquisition unit cannot be stored in the storage unit, the storage control unit erases the data transmitted by the transmission unit from the storage unit, and the data acquired by the acquisition unit The communication control program according to claim 1, wherein: is stored in the storage unit. 前記記憶手段に格納されたデータを送信するための所定の条件が満たされたか否かを判定する第1判定手段として、前記コンピュータを機能させ、
前記送信データ生成手段は、前記第1判定手段によって前記所定の条件が満たされたと判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、請求項1又は2に記載の通信制御プログラム。
Causing the computer to function as first determination means for determining whether or not a predetermined condition for transmitting the data stored in the storage means is satisfied;
The transmission data generation means, when it is determined by the first determination means that the predetermined condition is satisfied, at least two data stored in the storage means and respective transmission destination information of the at least two data Generating the transmission data including:
The transmission means transmits the transmission data to which the transmission data generating unit has generated, the communication control program according to claim 1 or 2.
前記記憶手段に格納されてから所定時間が経過したデータが存在するか否かを判定する第2判定手段として、前記コンピュータをさらに機能させ、
前記送信データ生成手段は、前記第2判定手段によって前記所定時間が経過したデータが存在すると判定された場合、前記所定時間が経過したデータを少なくとも含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、請求項1から3の何れかに記載の通信制御プログラム。
As a second determination means for determining whether or not there is data for which a predetermined time has elapsed since being stored in the storage means, the computer is further functioned,
The transmission data generation means generates the transmission data including at least the data after the predetermined time when the second determination means determines that there is data for which the predetermined time has elapsed,
The communication control program according to claim 1, wherein the transmission unit transmits the transmission data generated by the transmission data generation unit.
前記取得手段によって取得されたデータを即時送信するか否かを判定する第3判定手段として、前記コンピュータをさらに機能させ、
前記送信データ生成手段は、前記第3判定手段によって前記データを即時送信すると判定された場合、当該データを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、請求項からの何れかに記載の通信制御プログラム。
As a third determination unit for determining whether to immediately transmit the data acquired by the acquisition unit, the computer is further functioned,
The transmission data generation unit generates the transmission data including the data when the third determination unit determines to transmit the data immediately,
The communication control program according to any one of claims 1 to 4 , wherein the transmission unit transmits the transmission data generated by the transmission data generation unit.
前記取得手段は、他の情報処理装置から送られたデータを取得し、
前記送信データ生成手段は、前記複数のデータのそれぞれの送信元情報を前記送信データにさらに含める、請求項からの何れかに記載の通信制御プログラム。
The acquisition means acquires data sent from another information processing apparatus,
The communication control program according to any one of claims 1 to 5 , wherein the transmission data generation unit further includes transmission source information of each of the plurality of data in the transmission data.
他の情報処理装置から送られた前記送信データを受信し、当該送信データに含まれる前記送信先情報に基づいて、少なくとも自機宛のデータを取り出すデータ取り出し手段として、前記コンピュータをさらに機能させる、請求項からの何れかに記載の通信制御プログラム。 Receiving the transmission data sent from another information processing apparatus, and based on the transmission destination information included in the transmission data, causing the computer to further function as data extraction means for extracting at least data addressed to the own device; The communication control program according to any one of claims 1 to 6 . 前記格納制御手段は、前記取得手段が取得したデータを第1記憶領域または第2記憶領域に格納し、
前記送信データ生成手段は、前記第1記憶領域および前記第2記憶領域の何れか一方に格納された少なくとも2つのデータを含む前記送信データを生成する、請求項からの何れかに記載の通信制御プログラム。
The storage control means stores the data acquired by the acquisition means in the first storage area or the second storage area,
The transmission data generation means generates the transmission data including at least two data stored either one of the first storage area and the second storage area, according to any one of claims 1 to 7 Communication control program.
前記取得手段が取得する各データは、送信先で処理可能なひとまとまりのデータである、請求項1からの何れかに記載の通信制御プログラム。 The communication control program according to any one of claims 1 to 8 , wherein each piece of data acquired by the acquisition unit is a group of data that can be processed at a transmission destination. 前記送信データ生成手段は、前記送信先情報をフレームのデータ部分に含て前記送信データを生成する、請求項1からの何れかに記載の通信制御プログラム。 The transmission data generation means generates said transmission data Te including Me the destination information to the data portion of the frame, the communication control program according to any one of claims 1 to 9. 前記送信データ生成手段は、前記送信元情報をフレームのデータ部分に含めて前記送信データを生成する、請求項に記載の通信制御プログラム。 The communication control program according to claim 6 , wherein the transmission data generation unit generates the transmission data by including the transmission source information in a data portion of a frame. 送信先の異なる複数のデータを順次取得する取得手段と、
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段と、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段と、
前記送信データをブロードキャストまたはマルチキャストで送信する送信手段とを備え
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、通信制御装置。
Acquisition means for sequentially acquiring a plurality of data with different destinations;
Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
Transmission data generating means for generating transmission data including a plurality of data stored in the storage means ;
Transmission means for transmitting the transmission data by broadcast or multicast ,
The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
The communication control device , wherein the transmission unit transmits the transmission data generated by the transmission data generation unit .
送信先の異なる複数のデータを順次取得する取得ステップと、
前記取得ステップで取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御ステップと、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成ステップと、
前記送信データをブロードキャストまたはマルチキャストで送信する送信ステップとを含み、
前記格納制御ステップは、前記取得ステップで取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成ステップは、前記格納制御ステップで前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信ステップは、前記送信データ生成ステップが生成した送信データを送信する、通信制御方法。
An acquisition step of sequentially acquiring a plurality of data with different destinations;
A storage control step of sequentially storing the data acquired in the acquisition step in a storage means having a predetermined size;
A transmission data generation step of generating transmission data including a plurality of data stored in the storage means ;
Look including a transmission step of transmitting the transmission data in a broadcast or multicast,
The storage control step determines whether the data acquired in the acquisition step can be stored in the storage means,
The transmission data generation step includes at least two data stored in the storage means and transmission destination information of each of the at least two data when the storage control step determines that the data cannot be stored. Generating the transmission data;
The communication control method , wherein the transmission step transmits the transmission data generated by the transmission data generation step .
通信機能を有する第1情報処理装置と第2情報処理装置とを含む情報処理システムであって、
前記第1情報処理装置は、
送信先の異なる複数のデータを順次取得する取得手段と、
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段と、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段と、
前記送信データをブロードキャストまたはマルチキャストで送信する送信手段とを含み、
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信し、
前記第2情報処理装置は、
前記送信データを受信し、少なくとも当該送信データに含まれる自機宛のデータを取り出すデータ取り出し手段を含む、情報処理システム。
An information processing system including a first information processing apparatus and a second information processing apparatus having a communication function,
The first information processing apparatus
Acquisition means for sequentially acquiring a plurality of data with different destinations;
Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
Transmission data generating means for generating transmission data including a plurality of data stored in the storage means ;
Transmission means for transmitting the transmission data by broadcast or multicast,
The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
The transmission means transmits the transmission data generated by the transmission data generation means,
The second information processing apparatus
An information processing system comprising: a data extracting unit that receives the transmission data and extracts at least data addressed to the own device included in the transmission data.
通信機能を有する情報処理装置のコンピュータにおいて実行される通信制御プログラムであって、
送信先の異なる複数のデータを順次取得する取得手段、
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段、
所定の宛先アドレスを指定して前記送信データを送信する送信手段として、前記コンピュータを機能させ
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、通信制御プログラム。
A communication control program executed in a computer of an information processing apparatus having a communication function,
Acquisition means for sequentially acquiring a plurality of data with different destinations;
Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
Transmission data generating means for generating transmission data including a plurality of data stored in the storage means;
As a transmission means for transmitting the transmission data by designating a predetermined destination address, the computer is caused to function ,
The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
The communication control program , wherein the transmission unit transmits the transmission data generated by the transmission data generation unit .
送信先の異なる複数のデータを順次取得する取得手段と、
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段と、
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段と、
所定の宛先アドレスを指定して前記送信データを送信する送信手段とを備え
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、
前記送信手段は、前記送信データ生成手段が生成した送信データを送信する、通信制御装置。
Acquisition means for sequentially acquiring a plurality of data with different destinations;
Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
Transmission data generating means for generating transmission data including a plurality of data stored in the storage means ;
A transmission means for transmitting the transmission data by designating a predetermined destination address ,
The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
The communication control device , wherein the transmission unit transmits the transmission data generated by the transmission data generation unit .
送信先の異なる複数のデータを順次取得する取得ステップと、An acquisition step of sequentially acquiring a plurality of data with different destinations;
前記取得ステップで取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御ステップと、A storage control step of sequentially storing the data acquired in the acquisition step in a storage means having a predetermined size;
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成ステップと、A transmission data generation step of generating transmission data including a plurality of data stored in the storage means;
所定の宛先アドレスを指定して前記送信データを送信する送信ステップとを備え、A transmission step of designating a predetermined destination address and transmitting the transmission data,
前記格納制御ステップは、前記取得ステップで取得したデータを前記記憶手段に格納可能か否かを判定し、The storage control step determines whether the data acquired in the acquisition step can be stored in the storage means,
前記送信データ生成ステップは、前記格納制御ステップで前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、The transmission data generation step includes at least two data stored in the storage means and transmission destination information of each of the at least two data when the storage control step determines that the data cannot be stored. Generating the transmission data;
前記送信ステップは、前記送信データ生成手段が生成した送信データを送信する、通信制御方法。The transmission control method, wherein the transmission step transmits the transmission data generated by the transmission data generation means.
通信機能を有する第1情報処理装置と第2情報処理装置とを含む情報処理システムであって、An information processing system including a first information processing apparatus and a second information processing apparatus having a communication function,
前記第1情報処理装置は、The first information processing apparatus
送信先の異なる複数のデータを順次取得する取得手段と、Acquisition means for sequentially acquiring a plurality of data with different destinations;
前記取得手段が取得したデータを、所定のサイズを有する記憶手段に順次格納する格納制御手段と、Storage control means for sequentially storing the data acquired by the acquisition means in a storage means having a predetermined size;
前記記憶手段に格納された複数のデータを含む送信データを生成する送信データ生成手段と、Transmission data generating means for generating transmission data including a plurality of data stored in the storage means;
所定の宛先アドレスを指定して前記送信データを送信する送信手段とを含み、Transmitting means for transmitting the transmission data by designating a predetermined destination address,
前記格納制御手段は、前記取得手段が取得したデータを前記記憶手段に格納可能か否かを判定し、The storage control means determines whether the data acquired by the acquisition means can be stored in the storage means;
前記送信データ生成手段は、前記格納制御手段によって前記データを格納不可能と判定された場合、前記記憶手段に格納された少なくとも2つのデータと当該少なくとも2つのデータのそれぞれの送信先情報とを含む前記送信データを生成し、The transmission data generation unit includes at least two data stored in the storage unit and transmission destination information of each of the at least two data when the storage control unit determines that the data cannot be stored. Generating the transmission data;
前記送信手段は、前記送信データ生成手段が生成した送信データを送信し、The transmission means transmits the transmission data generated by the transmission data generation means,
前記第2情報処理装置は、The second information processing apparatus
前記送信データを受信し、少なくとも当該送信データに含まれる自機宛のデータを取り出すデータ取り出し手段を含む、情報処理システム。An information processing system comprising: a data extracting unit that receives the transmission data and extracts at least data addressed to the own device included in the transmission data.
JP2015040354A 2015-03-02 2015-03-02 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM Active JP5883962B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015040354A JP5883962B2 (en) 2015-03-02 2015-03-02 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015040354A JP5883962B2 (en) 2015-03-02 2015-03-02 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011040936A Division JP5707171B2 (en) 2011-02-25 2011-02-25 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM

Publications (2)

Publication Number Publication Date
JP2015133735A JP2015133735A (en) 2015-07-23
JP5883962B2 true JP5883962B2 (en) 2016-03-15

Family

ID=53900580

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015040354A Active JP5883962B2 (en) 2015-03-02 2015-03-02 COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM

Country Status (1)

Country Link
JP (1) JP5883962B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6895273B2 (en) * 2017-03-02 2021-06-30 任天堂株式会社 Information processing equipment, information processing programs, wireless communication systems, and communication methods

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4357540B2 (en) * 2007-03-29 2009-11-04 株式会社野村総合研究所 Data transmission system and method
JP2009141507A (en) * 2007-12-04 2009-06-25 Fujitsu Ltd Communication system, transmitter, and receiver

Also Published As

Publication number Publication date
JP2015133735A (en) 2015-07-23

Similar Documents

Publication Publication Date Title
JP5728249B2 (en) Information processing system, information processing apparatus, information processing program, and information processing method
JP5688297B2 (en) Communication system, information processing apparatus, communication program, and communication method
US9186581B2 (en) Communication system, information processing apparatus, computer-readable storage medium, and communication method
JP5808985B2 (en) Information processing program, information processing apparatus, information processing system, and information processing method
US20120306868A1 (en) Storage medium having stored therein an image generation program, image generation method, image generation apparatus and image generation system
CN113509720A (en) Playback method, device, terminal, server and storage medium for virtual battle
JP5941620B2 (en) Information processing program, information processing apparatus, information processing method, and information processing system
JP5707171B2 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM
CN112774185B (en) Virtual card control method, device and equipment in card virtual scene
JP5883962B2 (en) COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL METHOD, AND INFORMATION PROCESSING SYSTEM
JP2012108728A (en) Reception state display program, information processing device, information processing system and reception state display method
JP5858626B2 (en) Wireless communication program, information processing apparatus, and communication control method
JP5695936B2 (en) Information processing program, information processing apparatus, information processing system, and information processing method
JP5759797B2 (en) Image generation program, image generation method, image generation apparatus, and image generation system

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160112

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160115

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160208

R150 Certificate of patent or registration of utility model

Ref document number: 5883962

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250