(57)【要約】【課題】データの再送による遅延の累積を抑えて操作情報をゲーム機本体へ遅滞なく送信することのできるゲームコントローラを提供する。【解決手段】操作入力部１１で受けた操作内容を周期的に取り込んで操作情報を作成する操作情報作成部２３と、作成された操作情報を一時記憶する送信バッファ２６と、送信バッファ２６から取り出した操作情報をゲーム機本体へ無線送信する無線通信部１３と、送信成功時のみ送信バッファ２６を先頭側へシフトさせるシフト制御部２５と、再送により操作情報が送信バッファに溜まっているとき、前回および今回の操作情報が共に無操作の操作情報であれば、今回の操作情報を送信バッファ２６に書き込まずに廃棄して送信バッファ２６の蓄積データ量を削減する遅延軽減処理部２４を有する。【選択図】図３
2014124289.tif 000002
【特許請求の範囲】
【請求項１】
ユーザからゲームの操作を受ける操作部と、
前記操作部が受けている操作の内容を示す操作情報を、周期的に作成する操作情報作成部と、
前記操作情報作成部によって作成された操作情報を一時記憶する送信バッファと、
前記送信バッファに一時記憶されている前記操作情報をゲーム機本体へ無線送信する無線通信部と、
前記無線通信部による前記操作情報の送信において再送が生じた場合に、前記送信バッファに一時記憶される操作情報の削減処理を行って前記再送による遅延を軽減する遅延軽減処理部と、
を有する
ことを特徴とするゲームコントローラ。
【請求項２】
前記遅延軽減処理部は、前記送信バッファに同一内容の操作情報が連続する場合に、その連続する操作情報のうちの少なくとも１つを残して１つ以上を削除する
ことを特徴とする請求項１に記載のゲームコントローラ。
【請求項３】
前記遅延軽減処理部は、前記連続する操作情報が無操作を示す操作情報の場合にのみ前記削除を行う
ことを特徴とする請求項２に記載のゲームコントローラ。
【請求項４】
前記遅延軽減処理部は、前記無線通信部に前記送信バッファに蓄積されている操作情報を所定の送信周期を待たずに連続的に送信させることで前記再送による遅延を軽減する
ことを特徴とする請求項１に記載のゲームコントローラ。
【請求項５】
送信速度を優先する第１動作モードと、送信の確実性を優先する第２動作モードとを有し、これらを所定の切り替え条件に従って切り替える
ことを特徴とする請求項１乃至４のいずれか１つに記載のゲームコントローラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザからゲームの操作を受けてその操作情報を本体へ送信するゲームコントローラに関する。
【背景技術】
【０００２】
テレビゲームやコンピュータゲームなどのゲームが実行されるゲーム機本体と、遊技者から操作入力を受け付けるゲームコントローラとを近距離無線通信で接続する技術が各種提案されている（たとえば、特許文献１、２参照）。
【０００３】
また、近年、汎用の携帯端末にゲームのアプリケーションプログラムをロードして実行することで、携帯端末をゲーム機とする利用形態がある。この場合、携帯端末のタッチスクリーンがゲームの操作入力に使用されるが、操作性が好ましくなく、また操作ボタンの表示により有効な画面領域が狭くなる。そこで、別体のゲームコントローラから近距離無線通信で操作情報を携帯端末に送信するといったことも行われる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−２２４４３１号公報
【特許文献２】特開２００５−２１１６６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ゲームコントローラからゲーム機本体への操作情報の送信は、遊技者からの操作に対してゲームが違和感なく反応するように、通常、少なくとも１６．７ｍｓの周期で行われる。
【０００６】
ゲームコントローラとゲーム機本体とを近距離無線通信で接続すると通信エラーの生じる場合があり、その通信エラーの生じたデータを再送すると１０ｍｓ〜１６ｍｓの遅れが生じる。このため、通信エラーによる再送が数回発生すると、上記の遅れが蓄積され、遊技者の操作に対してゲームの応答が遅れて遊技者に違和感を与えてしまう。この問題は携帯端末をゲーム機本体とする場合に限らず、専用のゲーム機本体とゲームコントローラとの間で近距離無線通信する場合にも生じる。
【０００７】
なお、ゲーム機本体とゲームコントローラとの通信間隔を２〜３ｍｓにできれば、１６．７ｍｓの間に５回ほどの通信が可能になるため、上記の通信エラーによる再送が数回発生しても対応可能であるが、通信間隔を常時短くすると、処理負担が不必要に増加してしまう。
【０００８】
本発明は、上記の問題を解決しようとするものであり、データの再送による遅延の累積を抑えて操作情報をゲーム機本体へ遅滞なく送信することのできるゲームコントローラを提供することを目的としている。
【課題を解決するための手段】
【０００９】
かかる目的を達成するための本発明の要旨とするところは、次の各項の発明に存する。
【００１０】
［１］ユーザからゲームの操作を受ける操作部と、
前記操作部が受けている操作の内容を示す操作情報を、周期的に作成する操作情報作成部と、
前記操作情報作成部によって作成された操作情報を一時記憶する送信バッファと、
前記送信バッファに一時記憶されている前記操作情報をゲーム機本体へ無線送信する無線通信部と、
前記無線通信部による前記操作情報の送信において再送が生じた場合に、前記送信バッファに一時記憶される操作情報の削減処理を行って前記再送による遅延を軽減する遅延軽減処理部と、
を有する
ことを特徴とするゲームコントローラ。
【００１１】
上記発明では、操作情報の送信において再送が生じた場合に、送信バッファに一時記憶される操作情報の削減処理を行って再送による遅延が軽減される。
【００１２】
［２］前記遅延軽減処理部は、前記送信バッファに同一内容の操作情報が連続する場合に、その連続する操作情報のうちの少なくとも１つを残して１つ以上を削除する
ことを特徴とする［１］に記載のゲームコントローラ。
【００１３】
上記発明では、同一内容の操作情報が連続する場合に、その連続する操作情報のうち、少なくとも１つを残して残りを削除する。削除する数は１つでもよい。また、Ｍ（Ｍは３以上の整数）個連続する場合には最大で（Ｍ−１）個まで削除してもよい。削除には、送信バッファに次に書き込むべきものを書き込まずに廃棄することも含まれる。
【００１４】
［３］前記遅延軽減処理部は、前記連続する操作情報が無操作を示す操作情報の場合にのみ前記削除を行う
ことを特徴とする［２］に記載のゲームコントローラ。
【００１５】
上記発明では、無操作が連続する場合に削除する。無操作の操作情報は廃棄されてもゲームの進行に影響を与えない。また、ゲーム中に多々発生する。
【００１６】
［４］前記遅延軽減処理部は、前記無線通信部に前記送信バッファに蓄積されている操作情報を所定の送信周期を待たずに連続的に送信させることで前記再送による遅延を軽減する
ことを特徴とする［１］に記載のゲームコントローラ。
【００１７】
上記発明では、１回の送信周期の中で複数の操作情報を送信することで、送信バッファに溜まっているデータ量が減少する。
【００１８】
［５］送信速度を優先する第１動作モードと、送信の確実性を優先する第２動作モードとを有し、これらを所定の切り替え条件に従って切り替える
ことを特徴とする［１］乃至［４］のいずれか１つに記載のゲームコントローラ。
【発明の効果】
【００１９】
本発明に係るゲームコントローラによれば、通信エラーによるデータの再送が生じても、再送による遅延の累積を抑えて操作情報を本体へ遅れなく送信することができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の各実施の形態に係るゲームコントローラおよびゲーム機本体の外観を示す図である。
【図２】本発明の各実施の形態に係るゲームコントローラおよびゲーム機本体の概略構成を示す図である。
【図３】第１の実施の形態に係るゲームコントローラの詳細構成およびデータフローを示す図である。
【図４】第１の実施の形態に係るゲームコントローラによる操作情報の送信制御を示す流れ図である。
【図５】送信バッファに操作情報を保存する処理の詳細（図４のステップＳ１０５）を示す流れ図である。
【図６】第１の実施の形態のゲームコントローラの送信バッファに蓄積される操作情報の蓄積パターンを例示した図である。
【図７】第２の実施の形態に係るゲームコントローラの詳細構成およびデータフローを示す図である。
【発明を実施するための形態】
【００２１】
以下、図面に基づき本発明の実施の形態を説明する。
【００２２】
図１は、本発明の実施の形態に係るゲームコントローラ１０とゲーム機本体２の一例を示している。ゲーム機本体２は、汎用の携帯端末やスマートフォンなどの情報処理装置であり、ネットワーク上のサーバから提供されるゲーム用のアプリケーションプログラム（ソフトウェア）を実行することでゲーム機としての機能を果たす。ゲーム機本体２では、ゲームの操作を当該ゲーム機が有するタッチパネルなどで受けることができるが、より快適な操作を可能とするために、ゲームの操作の受け付けにゲームコントローラ１０を使用可能になっている。ゲームコントローラ１０とゲーム機本体２とは近距離無線通信で接続される。
【００２３】
ゲームコントローラ１０は、薄型で中空の横長直方体の形状を有する筐体を有し、該筐体の天面に多数の操作ボタン１１ａや十字型方向パッド１１ｂ、任意の方向に傾斜可能であってその傾斜方向が検出されるアナログスティック１１ｃなどが操作入力部１１として配設されている。さらに一の側面にも操作ボタン１１ｄが設けられている。ゲームコントローラ１０は、操作入力部１１で受けている操作の内容を示す操作情報を近距離無線通信でゲーム機本体２に対して周期的に送信する。
【００２４】
図２は、ゲーム機本体２におけるソフトウェア構成およびゲームコントローラ１０の概略構成を示している。ゲーム機本体２は、ハードウェア的には、図示省略のＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）などを主要部として構成される。さらにゲームコントローラ１０と近距離無線通信するための物理デバイスとして無線通信部３を備えている。無線通信部３は、Bluetooth（登録商標）、赤外線通信などの近距離無線通信によりゲームコントローラ１０と通信する。
【００２５】
無線通信部３やその他のハードウェア資源はＯＳ（Operating System）プログラム４が管理・制御する。ゲームコントローラ１０をゲームの操作入力に使用する場合には、ゲーム用のアプリケーションプログラム６とＯＳプログラム４の間に、ゲームコントローラ１０から受信する操作情報を上位のゲーム用のアプリケーションプログラム６に引き渡して通知するための専用のミドルウェア５が介挿される。
【００２６】
ゲームコントローラ１０は、操作入力部１１と、制御部１２と、無線通信部１３とを備えて構成される。制御部１２は、ＣＰＵ、ＲＯＭ、ＲＡＭなどを主要部として構成される。ＲＯＭにはプログラムや各種の固定データが記憶される。ＣＰＵはＲＯＭに格納されているプログラムに従って動作する。ＲＡＭはＣＰＵがプログラムを実行する際に各種のデータを一時的に格納するワークメモリや送信すべき操作情報を一時的に記憶する送信バッファなどとして使用される。無線通信部１３は、ゲーム機本体２との間で、Bluetooth（登録商標）あるいは赤外線通信などの近距離無線通信する機能を果たす。
【００２７】
図３は、第１の実施の形態に係るゲームコントローラ１０の詳細構成およびデータフローを示している。ゲームコントローラ１０は、操作入力部１１による操作の受け付け状態を取り込む第１取込みレジスタ２１と、第１取込みレジスタ２１の内容をコピーして保持する第２取込みレジスタ２２を備えている。第１取込みレジスタ２１には、操作入力部１１が受けている操作内容（Ｋｅｙデータ）が常時、短い周期（ここでは、２ｍｓ周期）で、周期的に取り込まれる。第２取込みレジスタ２２には、第１取込みレジスタ２１の内容（Ｋｅｙデータ）が送信周期毎にコピーされて保存される。送信周期は、ゲームコントローラ１０からゲーム機本体２へ操作情報を送信する周期である。
【００２８】
制御部１２は、操作情報作成部２３、遅延軽減処理部２４、シフト制御部２５などの機能を果たす。
【００２９】
操作情報作成部２３は、第２取込みレジスタ２２に保持されているＫｅｙデータを取り込み、該Ｋｅｙデータをゲーム機本体２へ送信すべきデータ形式に変換した操作情報を作成する機能を果たす。操作情報は、各操作ボタン１１ａ、１１ｄや十字型方向パッド１１ｂのＯＮ／ＯＦＦ、左右のアナログスティック１１ｃの位置情報（Ｘ、Ｙ座標）を表した、たとえば、６バイト程度のデータのパケットである。操作情報作成部２３は、操作情報を送信周期毎に作成する。
【００３０】
遅延軽減処理部２４は、操作情報作成部２３の作成した操作情報を送信バッファ２６に書き込むか廃棄するかを判断し、該判断結果に従って操作情報の送信バッファ２６への書き込みまたは廃棄を行う処理（書き込み廃棄処理とする）を行う。遅延軽減処理部２４は、無線通信部１３からゲーム機本体２への操作情報の送信に失敗して再送が生じた場合の遅延を、送信不要な（省略可能な）操作情報を廃棄することで軽減するようになっている。
【００３１】
送信バッファ２６は、複数段分が用意されている。ここでは、送信バッファ（１）を先頭として、送信バッファ（１）〜（５）までの５段が用意されている。操作情報は、空いている中で最も先頭の段の送信バッファに書き込まれる。
【００３２】
制御部１２は、送信周期毎に、先頭の送信バッファ（１）に格納されている操作情報を無線通信部１３へ送信（転送）し、無線通信部１３からゲーム機本体２へ送信させる。無線通信部１３は、操作情報の送信に成功すると、送信の成功を示すＡＣＫ信号を制御部１２に対して出力する。制御部１２のシフト制御部２５は、このＡＣＫ信号を受けると、送信バッファ２６の記憶内容全体を先頭側へ１段分シフトさせる制御を行う。
【００３３】
制御部１２は、無線通信部１３からのＡＣＫ信号の受信の有無により、無線通信部１３からゲーム機本体２への各操作情報の送信が成功したか否かを認識することができる。
【００３４】
ここでは、無線通信部１３と制御部１２との間の情報の授受は所定の内部通信周期（インターバル）で行われると共に、操作情報の送信とＡＣＫ信号の送信は交互に行われる。すなわち、一のインターバルで操作情報を制御部１２から無線通信部１３へ送信し、次のインターバルで無線通信部１３から制御部１２へＡＣＫ信号を送信するというように行われる。従って、操作情報の送信周期はインターバルの２倍であり、２インターバルに１回の割合で操作情報はゲーム機本体２へ送信される。
【００３５】
図４は、ゲームコントローラ１０の制御部１２が行う処理の流れを示している。制御部１２は、操作入力部１１の操作状態を第１取込みレジスタ２１に取り込む処理を２ｍｓなどの短い周期で常時繰り返し行う（ステップＳ１０１、Ｓ１０２；Ｎｏ）。制御部１２は、送信周期が到来すると（ステップＳ１０２；Ｙｅｓ）、以下の処理を行う。
【００３６】
まず、第１取込みレジスタ２１の内容を第２取込みレジスタ２２にコピーして保存し（ステップＳ１０３）、第２取込みレジスタ２２の内容に対応する操作情報のパケットを作成する（ステップＳ１０４）。そして、今回準備したこの操作情報を送信バッファ２６に書き込むか廃棄するかを判断し、その判断結果に従って該操作情報の送信バッファ２６への書き込みまたは廃棄を行う書き込み廃棄処理を行う（ステップＳ１０５）。書き込み廃棄処理の詳細は図５に示して後述する。
【００３７】
次に、制御部１２は先頭の段の送信バッファ（１）の内容を無線通信部１３へ送信し（ステップＳ１０６）、次のインターバルでＡＣＫ信号が無線通信部１３から送信されて来るのを待つ。なお、操作情報を受信した無線通信部１３は、該操作情報をゲーム機本体２に向けて送信し、送信に成功したら、ＡＣＫ信号を次のインターバルで制御部１２へ送信する。
【００３８】
制御部１２は、ＡＣＫ信号を受信した場合は（ステップＳ１０７；Ｙｅｓ）、送信バッファ２６をその先頭の段に向けて１段ずつシフトさせた後（ステップＳ１０８）、ステップＳ１０１に戻って処理を継続する。上記シフトにより送信バッファ（２）の内容が送信バッファ（１）へ、送信バッファ（３）の内容が送信バッファ（２）へ、送信バッファ（４）の内容が送信バッファ（３）へ、送信バッファ（５）の内容が送信バッファ（４）へ、それぞれ移動する。
【００３９】
送信成功でない場合（ＡＣＫ信号を受信しない場合）は（ステップＳ１０７；Ｎｏ）、上記のシフトを行わずに、すなわち、送信バッファ（１）の内容をそのまま保持して（ステップＳ１０９）、ステップＳ１０１に戻る。このように、操作情報の送信に成功すれば送信バッファ２６のシフトが行われ、送信に失敗した場合はシフトが行われずに送信バッファ（１）の内容がそのまま保持される。このため、送信の成功が続けば、次の送信周期の開始時点で送信バッファ２６は空の状態にあり、送信エラーが生じると空でない状態になる。
【００４０】
図５は、書き込み廃棄処理（図４のステップＳ１０５）の詳細を示している。送信バッファ２６にデータが保存されているか否かを調べ（ステップＳ１４１）、すべての段にデータが保存されていなければ（ステップＳ１４１；Ｎｏ）、以前の送信は成功しているので、今回準備した操作情報を送信バッファ（１）に保存して処理を終了する（リターン）。
【００４１】
送信バッファ２６のいずれかの段にデータが保存されている場合は（ステップＳ１４１；Ｙｅｓ）、以前の送信で送信エラーが生じている。そこで、今回準備した操作情報が、無操作を示すデータか否かを判断する（ステップＳ１４３）。なお、無操作とは、すべての操作ボタン１１ａ、１１ｄおよび十字型方向パッド１１ｂがＯＦＦ、かつ、アナログスティック１１ｃが中立の位置にある状態である。
【００４２】
今回準備した操作情報が無操作を示すものでなければ（ステップＳ１４３；Ｎｏ）、送信バッファの中で最も先頭側の空いている段に今回準備した操作情報を保存して（ステップＳ１４６）、処理を終了する（リターン）。たとえば、送信バッファ（１）に前回のデータが残っている場合で、送信バッファ（２）以降が空いている場合には、送信バッファ（２）に今回準備した操作情報を保存する。
【００４３】
今回準備した操作情報が無操作を示すものである場合は（ステップＳ１４３；Ｙｅｓ）、送信バッファに保存されているデータの中で最も末尾寄りの段に保存されているデータ（直前データとする）が無操作を示す操作情報か否かを調べる（ステップＳ１４４）。
【００４４】
直前データが無操作を示す操作情報でない場合は（ステップＳ１４５；Ｎｏ）、送信バッファの中で最も先頭側の空いている段に今回準備した操作情報を保存して（ステップＳ１４６）、処理を終了する（リターン）。
【００４５】
直前データが無操作を示す操作情報である場合は（ステップＳ１４５；Ｙｅｓ）、今回準備した無操作の操作情報を廃棄して（ステップＳ１４７）、本処理を終了する（リターン）。
【００４６】
すなわち、直前データと今回準備した操作情報とが共に無操作で、無操作が連続する場合には、今回準備した無操作の操作情報を廃棄する。これにより、送信バッファ２６に蓄積されるデータ量を削減し、再送による遅延を軽減する。
【００４７】
たとえば、前回の送信を失敗し、送信バッファ（１）に無操作の操作情報が保持されている場合に、今回準備した操作情報が無操作を示すものであれば、今回準備した操作情報は送信バッファ２６に保存されずに廃棄される。その結果、送信バッファ（１）に保持されている無操作の操作情報が今回の送信周期で再送され、この送信に成功すれば、送信バッファ２６のシフトが行われ、次の送信周期では送信バッファ２６は空の状態になる。
【００４８】
このように、再送が生じて送信バッファにデータが溜まっている場合に、不要な操作情報（連続する無操作の操作情報）の新たな保存を止めることで、送信バッファ２６に蓄積されるデータ量の削減を図るので、データの再送による遅延の累積を抑えて操作情報をゲーム機本体２へ遅滞なく送信することができ、データ送信の遅延が軽減される。
【００４９】
特に、無操作の操作情報が連続する場合にのみ操作情報を廃棄するようにしたので、何らかの操作を含む操作情報は間引きされずにゲーム機本体２へ送信される。そのため、廃棄によりゲーム機本体２が誤動作するといった事態は一切起こらない。なお、無操作の操作情報は廃棄されてもゲームの進行に影響を与えない。また、ゲーム中に多々発生する。
【００５０】
図６は、上記のような処理を行う場合に送信バッファ２６に蓄積されるデータの各種パターンを示している。図６では、すべての段に操作情報が蓄積された場合を示している。複数のデータが送信バッファ２６に蓄積される場合、無操作でない操作情報（操作あり）は連続する場合があるものの、無操作の操作情報が連続することはない。蓄積される操作情報の数が少ない場合も同様である。
【００５１】
次に、本発明の第２の実施の形態について説明する。
【００５２】
図７は、本発明の第２の実施の形態に係るゲームコントローラ１０Ｂの詳細構成およびデータフローを示している。図３と同一構成の部分には同一の符号を付してある。ゲームコントローラ１０Ｂでは、送信バッファ２６Ｂは、無線通信部１３Ｂの内部（管理下）にあり、再送が生じた場合に、送信バッファ２６Ｂに蓄積されるデータを削減する処理は無線通信部１３Ｂの遅延軽減処理部２４Ｂが行うようになっている。
【００５３】
ゲームコントローラ１０Ｂでは、無線通信部１３Ｂから制御部１２ＢへのＡＣＫ信号の送信はなく、制御部１２Ｂは、無線通信部１３Ｂへ転送した操作情報が無線通信部１３Ｂによってゲーム機本体２へ正しく送信されたか送信に失敗したかを認識しないで動作するようになっている。
【００５４】
ゲームコントローラ１０Ｂは、第１の実施の形態と同様に、第１取込みレジスタ２１には操作入力部１１が受けている操作内容（Ｋｅｙデータ）が常時、短い周期（ここでは２ｍｓ周期）で周期的に取り込まれ、第２取込みレジスタ２２には、第１取込みレジスタ２１の内容（Ｋｅｙデータ）が送信周期毎に取り込まれる。
【００５５】
送信周期毎に、操作情報作成部２３は、操作情報のパケットを作成し、制御部１２Ｂは、この操作情報を無線通信部１３Ｂへ送信（転送）する。ＡＣＫ信号の受信がないため、送信周期は１インターバルである。
【００５６】
無線通信部１３Ｂの管理下にある送信バッファ２６Ｂは複数段分（たとえば、３０段分）が用意されている。遅延軽減処理部２４Ｂは、送信バッファ２６Ｂに格納されているデータを送信バッファ２６Ｂの先頭から順にゲーム機本体２に対して送信する。そして、送信に成功したら、送信バッファ２６Ｂの内容を先頭方向へ１段ずつシフトさせる処理を行う。送信に失敗した場合は、次の送信周期で再送を行う。この再送に成功すると該送信周期内でさらに次の操作情報を連続して送信する。
【００５７】
このように、送信エラーの生じた次の送信周期で再送に成功すると、その送信周期内で複数の操作情報を連続的に送信するので、送信バッファ２６Ｂ内のデータ量が削減され、操作入力部１１で取り込んだ操作情報の送信が再送によって遅延することが防止、あるいは軽減される。
【００５８】
次に、本発明の第３の実施の形態について説明する。
【００５９】
第３の実施の形態では、第１の実施の形態で示したＡＣＫ信号を確認する通信方法（ＡＣＫ方式とする）と、第２の実施の形態で示したＡＣＫ信号を使用しない通信方法（ＡＣＫ不使用方式とする）とを所定の条件で切り替えて使用するようになっている。
【００６０】
ＡＣＫ不使用方式では、データをゲーム機本体２へ送信した後、無線通信部１３Ｂは通信の成否を認識できるが、制御部１２Ｂはそれを認識できない。但し、制御部１２Ｂは、無線通信部１３ＢからのＡＣＫ信号の受信を待つことが無いため、設定されたインターバルに１回の割合でデータ（操作情報）を送信することができる。したがって、ＡＣＫ不使用方式は送信速度を優先する通信方法である。
【００６１】
ＡＣＫ方式では、制御部１２は、送信するデータ毎に無線通信部１３からＡＣＫ信号を受信するので、送信が成功したか、失敗したかを把握することができる。但し、無線通信部１３からＡＣＫ信号が返ってこないと、次のデータを送信できない。そのため、１インターバルに１回の割合でデータ（操作情報）を送信することはできない。ＡＣＫ方式は送信の確実性を優先する通信方法である。
【００６２】
本例の場合、制御部１２から無線通信部１３への操作情報の送信と、無線通信部１３から制御部１２へのＡＣＫ信号の送信がインターバル毎の交互に発生するので、データ自体は２インターバルに１回の割合で送信されることになる。
【００６３】
このように、ＡＣＫ方式はＡＣＫ不使用方式に比べて送信速度は遅いが、データの送信の成否を認識した確実な送信が可能になる。たとえば、通信環境が悪くなり、通信できなくなった場合に、制御部１２はどのデータまで送信できたかを管理できるので、通信状況が改善した後に、続きのデータを正確に送信する等により、誤動作を防ぐことができる。
【００６４】
一方、ＡＣＫ不使用方式は、送信速度はＡＣＫ方式に比べて速いが、送信の確実性は不十分となる。たとえば、通信環境が悪くなり、通信できなくなった場合に、制御部１２はどのデータまで送信できたのかを管理できない。
【００６５】
そこで、第３の実施の形態では、重要なデータを送信する場合は送信の確実性を優先したＡＣＫ方式を採用し、そうでないデータを送信する場合は送信速度を優先したＡＣＫ不使用方式を採用するように、通信方法を切り替える。
【００６６】
たとえば、ゲーム機本体２とゲームコントローラ１０との間で課金に関するデータのやり取りを行う場合はＡＣＫ方式に切り替える。課金に関しては、非常に重要な項目で、スピードもさる事ながら、確実性が求められるので、ＡＣＫ方式が適している。
【００６７】
なお、ＡＣＫ方式とＡＣＫ不使用方式の切り替えは、課金情報か否かに限定されるものではなく、たとえば、ユーザからの指定に基づいて通信方法を切り替えてもかまわない。
【００６８】
以上、本発明の実施の形態を図面によって説明してきたが、具体的な構成は実施の形態に示したものに限られるものではなく、本発明の要旨を逸脱しない範囲における変更や追加があっても本発明に含まれる。
【００６９】
実施の形態では、ゲーム機本体２として、携帯端末にてゲーム用のアプリケーションプログラム６やミドルウェア５を実行する構成のものを例示したが、専用のゲーム機であってもかまわない。
【００７０】
送信周期やインターバルは実施の形態に例示した長さに限定されない。無線通信部１３からゲーム機本体２への送信周期は１６ｍｓ程度もしくはそれ以下にされることが望ましい。また、無線通信部１３からゲーム機本体２へ操作情報を送信する周期は、制御部１２が無線通信部１３へ操作情報を送信する周期と同じでもよいが、前者を後者よりある程度短くしておけば、再送があっても、送信バッファ２６、２６Ｂにデータが溜まり難くなり、遅延が軽減される。
【００７１】
第１の実施の形態では、無操作の操作情報が連続した場合に操作情報を廃棄して送信バッファ２６に蓄積されるデータ量を削減するようにしたが、「操作あり」を示す同一内容の操作情報が連続した場合に廃棄する、もしくは、操作の有無に係らず、同一内容の操作情報が連続した場合の操作情報を廃棄するように構成されてもよい。また、今回準備した操作情報を送信バッファ２６へ書き込まないことで１つの操作情報を削除するようにしたが、同一内容の操作情報が３以上のＭ個連続する場合に最大で（Ｍ−１）個までの複数の操作情報を削除するように構成されてもかまわない。すなわち、同一内容の操作情報が連続する場合に、その連続する操作情報のうちの少なくとも１つを残して、１つ以上を削除するようにすればよい。
【００７２】
第１の実施の形態や第２の実施の形態で示した送信バッファ２６、２６Ｂの段数は例示であり、これに限定されるものではなく、対応すべき通信エラーの程度等に応じて適宜に設定すればよい。
【００７３】
第３の実施の形態では、送信の確実性を優先する通信方法をＡＣＫ方式とし、送信速度を優先する方式をＡＣＫ不使用方式とした例を示したが、送信の確実性を優先する通信方法および送信速度を優先する通信方法はこれらに限定されるものではない。
【符号の説明】
【００７４】
２…ゲーム機本体
３…無線通信部
４…ＯＳプログラム
５…ミドルウェア
６…アプリケーションプログラム
１０…ゲームコントローラ
１０Ｂ…ゲームコントローラ
１１…操作入力部
１１ａ…操作ボタン
１１ｂ…十字型方向パッド
１１ｃ…アナログスティック
１１ｄ…操作ボタン
１２…制御部
１２Ｂ…制御部
１３…無線通信部
１３Ｂ…無線通信部
２１…第１取込みレジスタ
２２…第２取込みレジスタ
２３…操作情報作成部
２４…遅延軽減処理部
２４Ｂ…遅延軽減処理部
２５…シフト制御部
２６…送信バッファ
２６Ｂ…送信バッファ
【図１】
2014124289.tif 000003
【図２】
2014124289.tif 000004
【図３】
2014124289.tif 000005
【図４】
2014124289.tif 000006
【図５】
2014124289.tif 000007
【図６】
2014124289.tif 000008
【図７】
2014124289.tif 000009