説明

移動玩具、プログラム、情報記憶媒体、移動玩具制御システム及び移動玩具制御方法

【課題】これまでにない移動玩具の動作制御手法を提供し、多様な遊び方を可能にするプログラム、情報記憶媒体、ゲーム装置及び移動玩具を提供すること。
【解決手段】移動玩具であって、ボディ12と、前記ボディに搭載され、移動玩具10,1000を移動させるための原動機30と、制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の制御を行う制御部310と、前記動作制御情報を、外部の情報処理装置から受け取る外部インターフェース部370と、を含み、前記制御部370は、前記制御主となる外部の情報処理装置を所与のタイミングで切り替える制御主切り替え処理部を含み、制御主の切り替えが行われた場合には、切り替え後の制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の動作制御を行うことを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、移動玩具、プログラム、情報記憶媒体、移動玩具制御システム及び移動玩具制御方法に関する。
【背景技術】
【0002】
従来より、複数のコースパーツを連結することで構成されるコース上を走行させて楽しむ車両玩具(移動玩具)が知られている。このような車両玩具の従来例としては例えば特許文献1、2がある。
【0003】
特許文献1には、コース状態に応じて、所定のプログラムに基づく自動操縦と、遠隔コントローラによる手動操縦とを切り替えることができる車両玩具走行装置が開示されている。この車両玩具走行装置では、自動操縦用プログラムは、外部端末において事前に設定されて、人形を模した記憶装置に書き込まれる。そして、この記憶装置を車両玩具に接続することで、自動操縦用プログラムを車両玩具に転送する。
【0004】
また特許文献2には、ゲーム装置でゲームプレイすることで得られた制御情報を車両玩具に転送し、この制御情報に基づいて車両玩具の走行を制御する技術が開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平6−269574号公報
【特許文献2】特開2000−210476号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1、2の従来技術では、画一的な制御情報により車両玩具の走行が制御されるだけであった。このため、車両玩具を用いたプレイが単調になってしまうという課題があった。
【0007】
また、複数のプレーヤでゲームする場合にも、競争を行うことができるだけであったため、遊び方が単調でプレーヤに飽きられやすいという課題があった。
【0008】
本発明の幾つかの態様によれば、複数のプレーヤでゲームする場合に、これまでにない移動玩具の動作制御手法を提供し、多様な遊び方を可能にするプログラム、情報記憶媒体、ゲーム装置及び移動玩具を提供できる。
【課題を解決するための手段】
【0009】
(1)本発明は、
移動玩具であって、
ボディと、
前記ボディに搭載され、移動玩具を移動させるための原動機と、
制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の制御を行う制御部と、
前記動作制御情報を、外部の情報処理装置から受け取る外部インターフェース部と、
を含み、
前記制御部は、
前記制御主となる外部の情報処理装置を所与のタイミングで切り替える制御主切り替え処理部を含み、
制御主の切り替えが行われた場合には、切り替え後の制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の動作制御を行うことを特徴とする移動玩具に関する。
【0010】
前記外部インターフェース部は、前記動作制御情報を、外部の情報処理装置から通信で受け取る構成でもよいし、所与の媒体(例えばUSBメモリ等)を介して受け取る構成でもよい。
【0011】
例えば移動玩具は、現在の制御主を記憶する制御主情報(例えば制御主となる情報処理装置の識別情報等)を記憶し、制御主が切り替えられる度に、制御主情報を新たな制御主情報に更新するようにしてもよい。そして制御主情報に対応する情報処理装置で生成された動作制御情報に基づき移動玩具の動作制御を行うようにしてもよい。なお複数の情報処理装置で生成された動作制御情報を、当該情報処理装置の識別情報に対応づけて記憶させ、あるいは動作制御情報に当該動作制御情報の生成主である情報処理装置の識別情報を含むように構成し、生成主の識別情報が制御主情報と一致する動作制御情報を用いて移動玩具の動作制御を行うようにしてもよい。この様にすると制御主が切り替わる度に、制御主情報も更新され、あらた制御主情報に対応づけられた動作制御情報に基づき移動玩具の移動玩具の移動動作が制御される。
【0012】
なお動作制御情報は動作開始前に外部の情報処理装置から受け取って記憶部に記憶させておき、動作時に記憶部から読み出して動作制御を行う構成でもよいし、動作中にリアルタイムに外部の情報処理装置から動作制御情報を受け取り、受け取った動作制御情報(記憶部に一時的に記憶される)に基づき動作制御を行う構成でもよい。
【0013】
また動作制御情報とは移動玩具の動作を制御するために用いられる情報であればよく、例えば加速や減速を指示するコマンドでもよいし、速度や加速度等のデータそのものでもよいし、データとコマンドの組み合わせでもよい。
【0014】
(2)この移動玩具は、
前記動作制御情報を記憶する記憶部を、を含み、
前記制御部は、
記憶部に記憶された前記動作制御情報に基づき、移動玩具の動作制御を行ってもよい。
【0015】
例えば動作中には動作制御情報の受け渡しを行わずに、動作開始前に、動作制御情報を記憶部に記憶させておく構成でもよい。
【0016】
(3)この移動玩具は、
時間の経過又は時刻を検出する時間/時刻検出部をさらに含み、
前記制御主切り替え処理部は、
検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0017】
時間/時刻検出部は、時間の経過を検出するタイマや時刻を検出する時計等により実現してもよい。
【0018】
この様にすると所与の時間の経過又は所与の時刻の到来のタイミングで自動的に制御主を切り替えることができる。
【0019】
(4)この移動玩具は、
前記移動玩具の位置を検出する位置検出部をさらに含み、
前記制御主切り替え処理部は、
検出された位置の情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0020】
検出する位置は例えば現在位置でもよし、通過位置でもよい。
【0021】
位置検出部は、例えば移動玩具の移動面に設けられたマーカを検出するセンサや、GPSや赤外線やレーザ等で位置を検出するセンサ等で実現してもよい。
【0022】
この様にすると移動玩具が所与の位置に来たとき又は所与の位置を通過するタイミングで自動的に制御主を切り替えることができる。
【0023】
(5)この移動玩具において、
前記外部インターフェース部は、
制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信し、
前記制御主切り替え処理部は、
前記切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0024】
制御主の切り替えを指示する動作制御情報は、制御主の切り替えタイミングをリアルタイムに指示する情報であり、移動玩具は、この動作制御情報を受信すると制御主の切り替えを行うことになる。
【0025】
(6)この移動玩具において、
前記制御主切り替え処理部は、
予め設定された所定の規則に従って制御主に切り替える処理を行ってもよい。
【0026】
例えば所定の規則として、制御主となる情報処理装置の順番を予め設定しておいて、当該順番に従って制御主を切り替えてもよいし、所定の条件(移動玩具の属性や車種や性能や成績や得点やダメージポイント等の条件等)を定めておき、所定の条件を満たす移動玩具を次の制御主として決定してもよい。
【0027】
(7)この移動玩具において、
前記制御主切り替え処理部は、
ランダムに次の制御主を決定し、決定した制御主に切り替える処理を行ってもよい。
【0028】
例えば制御主になる可能性のある複数の情報処理装置を登録しておき、その中からランダムに制御主を選択してもよし、ランダムな順番で制御主を切り替えてもよい。
【0029】
(8)この移動玩具において、
前記外部インターフェース部は、
前記制御主の切り替えが行われた場合に、前記制御主の切り替えが行われたことを示す制御主切り替え情報を無線通信で送信してもよい。
【0030】
送信された制御主切り替え情報を、外部の情報処理装置が受信することで、外部の情報処理装置は、制御主の切り替えを自動検出することができる。
【0031】
(9)この移動玩具は、
前記制御主の切り替えが行われた場合に、前記制御主の切り替えが行われたことを外部に告知するための出力を行う制御主切り替え告知部を、さらに含んでもよい。
【0032】
制御主切り替え告知部は、例えば光、音、音声、画像等の出力部等で構成し、これらから制御主の切り替えが行われたことを告知するための光、音、音声、画像等の出力を行うようにしてもよい。
【0033】
なお切り替えられた制御主に応じて、光、音、音声、画像等の出力態様を変化させてもよい。この様にすることで、新たな制御主を識別可能に告知することができる。
【0034】
(10)本発明は、
移動玩具に動作制御情報を送信する情報処理装置を制御するためのプログラムであって、
前記移動玩具の制御主を所与のタイミングで切り替える制御主切り替え処理部と、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記移動玩具に送信するための処理を行う通信部として、コンピュータを機能させ、
前記制御主切り替え処理部は、
前記制御主となった情報処理装置に、送信主を示す情報として所定の制御主用のIDの使用を許可し、制御主でない情報処理装置には、前記所定の制御主用のIDを使用できないように制御するプログラムに関する。
【0035】
移動玩具は、動作中に動作制御情報を受信して、受信した動作制御情報に基づきリアルタイムに動作が制御される構成であって、送信主を示す情報として所定の制御主用のIDが使用されている動作制御情報に基づき動作制御が行われる構成でもよい。この様な場合、移動玩具は、制御主でない情報処理装置からの動作制御情報も受信するが、動作制御には用いない。
【0036】
本発明によれば情報処理装置は制御主である期間しか前記所定の制御主用のIDを使用できないように構成されている。従って制御主が切り替わる毎に、前記所定の制御主用のIDを使用できる情報処理装置も切り替わるため、情報処理装置側の制御のみで制御主の切り替えを実現することができる。
【0037】
(11)このプログラムは、
時間の経過又は時刻を検出する時間/時刻検出部としてコンピュータを機能させ、 前記制御主切り替え処理部は、
検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0038】
(12)このプログラムにより、
前記制御主切り替え処理部は、
移動玩具の位置情報を取得し、取得した位置情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0039】
移動玩具の位置自体は移動玩具において検出し、情報処理装置は移動玩具が検出した位置情報を通信等で受信することにより取得してもよい。
【0040】
(13)このプログラムにより、
前記通信部は、
制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信し、 前記制御主切り替え処理は、
前記切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0041】
(14)本発明は、
移動玩具に動作制御情報を送信する情報処理装置を制御するためのプログラムであって、
前記移動玩具の制御主を所与のタイミングで切り替える制御主切り替え処理部と、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記移動玩具に送信するための処理を行う通信部として、コンピュータを機能させ、
前記制御主切り替え処理部は、
移動玩具の移動区間を複数に分割して、分割された区間毎に制御主を決定し、各区間に決定された制御主にたいして当該区間の動作制御情報の生成を許可し、それ以外の制御主に対しては当該区間の動作制御情報の生成ができないように制御することを特徴とするプログラムに関する。
【0042】
動作制御情報は移動玩具の動作前に予め生成して移動玩具の記憶部に記憶させておく構成でもよいし、移動玩具の動作中にリアルタイムに生成して移動玩具に無線で送信する構成でもよい。
【0043】
この様にすると、動作制御情報生成部は、自機が制御主となる区間の動作制御情報を精製し、それ以外の区間の動作制御情報は生成しない。従って、各情報処理装置は自機が制御主となる区間の動作制御情報しか生成できないので、区間が変わる毎に制御主が切り替わる構成を実現することができる。
【0044】
(15)このプログラムにより、
前記制御主切り替え処理部は、
予め設定された所定の規則に従って制御主に切り替える処理を行ってもよい。
【0045】
例えば所定の規則として、制御主となる情報処理装置の順番を予め設定しておいて、当該順番に従って制御主を切り替えてもよいし、所定の条件(移動玩具の属性や車種や性能や成績や得点やダメージポイント等の条件等)を定めておき、所定の条件を満たす移動玩具を次の制御主として決定してもよい。
【0046】
(16)このプログラムにより、
前記制御主切り替え処理部は、
ランダムに次の制御主を決定し、決定した制御主に切り替える処理を行ってもよい。
【0047】
例えば制御主になる可能性のある複数の情報処理装置を登録しておき、その中からランダムに制御主を選択してもよし、ランダムな順番で制御主を切り替えてもよい。
【0048】
(17)本発明は、
コンピュータ読み取り可能な情報記憶媒体であって、上記のいずれかに記載のプログラムが記憶されていることを特徴とする情報記憶媒体である。
【0049】
(18)本発明は、
移動玩具との間で第1の無線通信が可能な親機と、前記親機との間で第2の無線通信が可能な子機を含む複数の情報処理装置を含む移動玩具制御システムであって、
前記子機は、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記親機に第1の無線通信で送信するための処理を行う第1の無線通信部と、を含み、
前記親機は、
前記子機が送信した動作制御情報を第1の無線通信で受信する第1の無線通信部と、
前記子機から受信した前記動作制御情報を前記移動玩具に第2の無線通信で送信する第2の無線通信部を含むことを特徴とする移動玩具制御システムに関する。
【0050】
子機は移動玩具との間で第1の無線通信が行えない構成でもよい。
【0051】
第1の無線通信は、赤外線通信等の光無線通信で実現してもよい。また第2の無線通信は、ブルートゥース(Bluetooth)等を用いた電波によるワイヤレス通信で実現してもよい。
【0052】
本発明によれば子機と移動玩具の間で無線通信が行えない場合でも、子機は動作制御情報を親機に送信して、親機を介して子機に送信することができる。
【0053】
(19)本発明は、
複数の情報処理装置によって、複数の移動玩具を無線で制御する移動玩具制御システムであって、
所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出する手段と、
所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出する手段と、
所定のグループを構成する全情報処理装置が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動するコマンド発動手段と、
を含む移動玩具制御システムに関する。
【0054】
グループに属する各情報処理装置は、それぞれが自機に対応する移動玩具の動作制御を行う。所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かは、所定のグループを構成する全情報処理装置が他の情報処理装置に対して所定の信号の送信を行い、他の情報処理装置からの所定の信号の受信ができるか否かを検出することで判断してもよい。
【0055】
所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かは、所定のグループを各情報処理装置が移動玩具に対して所定の信号の送信を行い、移動玩具から所定の信号の受信ができるか否かを検出することで判断してもよい。
【0056】
また所定のコマンドとは、例えばスタートコマンド(各移動玩具にスタートの指示を行うコマンド)でもよい。また同期を取ってとは、各ゲーム装置が同時に所定のコマンドを発動する場合でもよいし、各ゲーム装置が所定の間隔をおいて所定のコマンドを発動する場合でもよい。
【0057】
(20)この移動玩具制御システムにおいて、
前記コマンド発動手段は、
少なくとも1つの情報処理装置から所定のトリガコマンドが入力されたことを検出した場合に、同期を取って所定のコマンドを発動してもよい。
【0058】
所定のトリガコマンドが入力されたことを検出した場合に、所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出し、所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出し、所定のグループを構成する全情報処理装置が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動してもよい。
【0059】
(21)本発明は、
複数の情報処理装置によって、複数の移動玩具を無線で制御する移動玩具制御方法であって、
所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出するステップと、
所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出するステップと、
所定のグループを構成する全情報処理装置が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動するステップと、
を含む移動玩具制御方法に関する。
【0060】
このようにすれば、制御主を切り替える移動玩具の動作制御が可能になり、これまでにない移動玩具の動作制御手法を提供できる。
【図面の簡単な説明】
【0061】
【図1】図1(A)、図1(B)は移動玩具が走行するコースの説明図。
【図2】本実施形態が適用される移動玩具の外観斜視図。
【図3】本実施形態が適用される移動玩具の内部構成を示す平面図。
【図4】本実施形態が適用される移動玩具の機能ブロック図。
【図5】本実施形態が適用されるゲーム装置の外観図。
【図6】本実施形態が適用されるゲーム装置の機能ブロック図。
【図7】走行制御データの設定手法を説明するための図。
【図8】走行制御データの設定手法を説明するための図。
【図9】走行制御データの設定手法を説明するための図。
【図10】ゲーム装置側の詳細な処理のフローチャート。
【図11】ゲーム装置側の詳細な処理のフローチャート。
【図12】ゲーム装置側の詳細な処理のフローチャート。
【図13】ゲーム装置側の詳細な処理のフローチャート。
【図14】ゲーム装置側の詳細な処理のフローチャート。
【図15】図15(A)〜図15(C)は走行特性データの設定手法を説明する図。
【図16】コースデータの設定手法を説明する図。
【図17】図17(A)、図17(B)は本実施形態の減速制御、加速制御の手法の説明図。
【図18】図18(A)、図18(B)は差分情報に基づく減速制御、加速制御の手法の説明図。
【図19】図19(A)〜図19(D)は差分情報に基づく減速制御、加速制御の手法の説明図。
【図20】図20(A)、図20(B)はPWM駆動を用いた減速制御、加速制御の手法の説明図。
【図21】図21(A)、図21(B)はPWM駆動を用いた減速制御、加速制御の手法の説明図。
【図22】駆動部の具体的な構成例を示す図。
【図23】駆動部での具体的な信号波形例を示す図。
【図24】移動玩具側の詳細な処理のフローチャート。
【図25】第1の実施の形態のゲームシステムについて説明するための図。
【図26】移動玩具の記憶される走行制御データについて説明するための図。
【図27】各ゲーム装置から受信した走行制御データの内容の一例を示す図。
【図28】図28(A)(B)は、制御主の切り替えと、移動玩具の制御に使用される走行制御データの関係について説明するための図。
【図29】第1の実施の形態の移動玩具の制御主切り替え処理の一実施例(走行制御データを予め移動玩具の記憶させておく例)の処理の流れについて説明するためのフローチャート。
【図30】第1の実施の形態の移動玩具の制御主切り替え処理の他の実施例(走行制御データをリアルタイムに受信する例)の処理の流れについて説明するためのフローチャート。
【図31】第2の実施の形態におけるゲーム装置の制御主の切り替え制御について説明するための図。
【図32】第2の実施の形態におけるゲーム装置の制御主の切り替え制御について説明するための図。
【図33】第2の実施の形態が適用されるゲーム装置の機能ブロック図。
【図34】第2の実施の形態のゲーム装置の制御主切り替え処理の流れを示すフローチャート。
【図35】第2の実施の形態の移動玩具の制御主切り替え処理の流れを示すフローチャート。
【図36】第3の実施の形態のゲームシステムについて説明するための図。
【図37】図37(A)(B)は第4の実施の形態のゲームシステムについて説明するための図。
【図38】図38(A)(B)は第4の実施の形態のゲームシステムについて説明するための図。
【図39】第4の実施の形態のゲームシステムを構成する各ゲーム装置の同期処理の流れを示すフローチャート。
【図40】各コース区間と制御主となるゲーム装置の識別IDが登録されたテーブルの例。
【発明を実施するための形態】
【0062】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0063】
本実施の形態では、ゲーム装置(情報処理装置の一例)の生成した走行制御データ(動作制御情報の一例)によって走行が制御される移動玩具及び移動玩具を含むゲームシステムにおいて、当該移動玩具の制御主が切り替え可能な移動玩具及び移動玩具を含むゲームシステムについて説明する。
【0064】
1.第1の実施の形態
第1の実施の形態では、移動玩具において制御主の切り替え処理を行う移動玩具及び移動玩具を含むゲームシステムについて説明する。
【0065】
1−1.コース
図1(A)に、本実施形態の移動玩具の一例である移動玩具を走行させるコースの例を斜視図で示す。なお以下では移動玩具として、車の形状を模した移動玩具を例にとり説明するが、本実施形態の移動玩具はこの移動玩具やこのようなコースを走行するものに限定されない。
【0066】
移動玩具10(広義には移動玩具)が走行するコース60は、図1(A)に示すように、直線形状、カーブ形状、スロープ形状等の各種形状の複数のコースパーツCP1〜CP16を連結することで構成される。具体的には、コース60は、第1の周回コース61と、この第1の周回コース61に後続するように配置される第2の周回コース62により構成される。第1の周回コース61は、コースパーツCP1〜CP8により構成される。第2の周回コース62は、コースパーツCP9〜CP16により構成され、第1の周回コース61と略同一のコース形状になっている。
【0067】
第1の周回コース61と第2の周回コース62を用いて、2台の移動玩具を走行させて、カーレースを行うようにしてもよい。
【0068】
第1の周回コース61は、直線コースパーツCP1、カーブコースパーツCP2、スロープコースパーツCP3、カーブコースパーツCP4、スロープコースパーツCP5、カーブコースパーツCP6、直線コースパーツCP7、カーブコースパーツCP8を順に連結することで構成される。
【0069】
直線コースパーツCP1は、直線コースパーツCP7より長い直線形状のコースパーツであり、カーブコースパーツCP2に連結される。カーブコースパーツCP2は、ループ形状のコースパーツであり、スロープコースパーツCP3に連結される。スロープコースパーツCP3は、カーブコースパーツCP2及びCP10と立体交差するように、スロープ形状の架橋となって、後続のカーブコースパーツCP4に連結される。カーブコースパーツCP4は、緩やかなカーブコースであり、カーブコースパーツCP12と立体交差するように、スロープ形状の架橋となって、後続のスロープコースパーツCP5に連結される。スロープコースパーツCP5は、直線コースパーツCP1、CP9と立体交差するように、スロープ形状の架橋となって、後続のカーブコースパーツCP6に連結される。カーブコースパーツCP6は、カーブ形状のコースパーツであり、後続の直線コースパーツCP7に連結される。直線コースパーツCP7は、直線形状のコースパーツであり、後続のカーブコースパーツCP8に連結される。カーブコースパーツCP8は、ループ形状のコースパーツであり、後続の第2の周回コース62の導入コースとなる直線コースパーツCP9に連結される。なおコースパーツCP9〜CP16で構成される第2の周回コース62は、第1の周回コース61とほぼ同様の構成・形状になっているため、その説明を省略する。
【0070】
図1(B)に、図1(A)のA−Aに示す部分の断面図を示す。図1(B)に示すように、コース60の各部では、第1の周回コース61と第2の周回コース62が並列され、各周回コース61、62に対し両サイドに、それぞれ側壁63L、63R、64L、64Rが設けられている。そして、各周回コース61、62の略中央には、黒色のセンターラインCL1、CL2が設けられている。
【0071】
また本実施形態では、図1(A)に示すように、各コースパーツCP1〜CP16の連結部付近に、白色のマーカMC1〜MC16が設けられており、そのうち、直線コースブロックCP1の一端に設けられるマーカMC1がスタートライン(スタートエリア)となる。そして、マーカMC1をスタートラインとして走行開始した移動玩具10は、ゲーム装置(外部端末)から転送される走行制御データによって走行が制御されて、コース60上を反時計回りで走行する。そして、本実施形態では、これらのマーカMC1〜MC16でコース60を区切ることによって、コース区間CS1〜CS16が設定されている。即ち、コースパーツCP1〜CP16に対応して、コース区間CS1〜CS16が設定される。なお、本実施形態のコースは、図1(A)、図1(B)の形状に限定されず、種々の変形実施が可能である。
【0072】
1−2.移動玩具
図2に、本実施形態の移動玩具の一例である移動玩具10の外観斜視図を示す。本実施形態では、図2に示すように、移動玩具10のボディ12は、スポーツカー等の外形を模した外装部14と、前輪18と後輪20(接地部)が一対ずつ設けられるシャシ16とを含む。これらの前輪18および後輪20は、シャシ16に搭載されたモータ等の原動機によって駆動されて、移動玩具10を移動させる。
【0073】
図2に示すように、ボディ12の四隅には、ガイドローラ(プレート)21、22、23、24(24について図3参照)がそれぞれ設けられている。これらのガイドローラ21〜24は、コース60を走行中に図1(B)に示す側壁63L、63R、64L、64Rにヒットすることで、移動玩具10のコース60上での進行を円滑にすると共に、移動玩具10の走行の安定性を担保するための部材である。
【0074】
なお、本実施形態では、移動玩具10は、ボディ12(外装部14)がスポーツカーを模した形状になっているが、移動玩具10は、これに限らず様々な形態の自動車(例えば、トラック等)、或いは二輪車(例えば、バイク等)の外形を有していてもよい。また、本実施形態の移動玩具は、移動玩具に限定されず、例えば、競馬の競走馬等の動物や漫画等の各キャラクタを模した人形等をコースに沿って移動させるものにも適用可能である。
【0075】
図3は、本実施形態の移動玩具10の内部構成を示す平面図であり、ボディ12の外装部14を取り外した状態を示す。本実施形態では、移動玩具10は、前輪18(18L、18R)及び後輪20(20L、20R)をそれぞれ左右に一対ずつ有し、これら前輪18、後輪20を軸支する前輪用車軸(シャフト)26、後輪用車軸28に、シャシ16
後方側に搭載されるモータ30の駆動が伝達され、前輪18及び後輪20が回転駆動される四輪駆動移動玩具である。なお、所与の動力を供給して移動玩具10を走行移動させるための機械的エネルギーに変換する原動機は、モータ30に限定されず、例えば小型エンジン等の他の原動機であってもよい。
【0076】
後輪用車軸28には、後輪20を駆動させるための後輪駆動用ギア32が設けられ、当該後輪駆動用ギア32を介して、当該後輪用車軸28にモータ30の駆動が伝達される。また、後輪用車軸28には、前輪用車軸26にモータ30の駆動を伝達するための後輪側クラウンギア34が設けられており、前輪用車軸26に駆動を伝達するための駆動伝達軸36の端部に設けられる後輪側駆動伝達ギア38と噛合している。
【0077】
一方、前輪用車軸26には、駆動伝達軸36を介してモータ30の駆動を伝達するための前輪側クラウンギア40が設けられており、駆動伝達軸36の他端に設けられる前輪側駆動伝達ギア42と噛合している。このため、モータ30が駆動すると、モータ30の駆動が後輪駆動用ギア32、後輪側駆動伝達ギア38、駆動伝達軸36、前輪側駆動伝達ギア42、および前輪側クラウンギア40を介して伝達され、本実施形態の移動玩具10が四輪駆動となる。なお、本実施形態の移動玩具10のモータ30に所与の動力を供給して移動玩具10を走行させるための機械的エネルギーに変換する動力伝達機構は、図3の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【0078】
また、前輪用車軸26は、シャシ16に対し軸部44を介して軸支される前輪軸支持部46に回転自在に支持されている。このため、前輪18は、前輪用車軸26を介して水平軸周りに回転可能とすることによって移動玩具10を走行させ、かつ軸部44で軸支される前輪軸支持部46を介して垂直軸周りに揺動可能とすることによって、移動玩具10の走行方向を変化させる。
【0079】
シャシ16の略中央には、モータ30に対して動力となる電力を供給する電源として乾電池48(動力源)が設置されている。乾電池48の設置場所は、シャシ16の略中央に限定されないが、重量を有する乾電池48をシャシ16の略中央に設置することによって、移動玩具10の重心が略中央に移動し、移動玩具10の走行動作が安定するようになるので、乾電池48の設置場所は、シャシ16の略中央に設置することが好ましい。なお、本実施形態では、電力供給源として乾電池48を設置する移動玩具10としているが、電力供給を充電式によるものとすることも可能である。
【0080】
更に、移動玩具10がコース60上に走行中にコース60と対向するボディ12の接地面側、すなわちシャシ16の裏面側の前方には、当該接地面側のコース60への対向を検知するセンサ50が設けられている。このセンサ50は、コース60に設けられた複数のマーカMC1〜MC16の各マーカを検知する。具体的には本実施形態では、センサ50は、検知対象の輝度(輝度情報)を検知する。そしてセンサ50からの検知結果(検知信号)に基づいて、シャシ16の裏面側となる接地面側が、コース60に対向しているか否かを検知する。
【0081】
具体的には、センサ50は、図1(B)に示すコース60の黒色のセンターラインCL1、CL2と対向するように配置され、検知対象(センターライン、マーカ等)の輝度(画像)を検知する。この場合に、コースの輝度であるセンターラインCL1、CLの輝度は、所与の基準輝度未満であり、白色マーカMC1〜MC16の輝度は、基準輝度以上になるように設定される。そして、移動玩具10が走行してコース60上に設けられているMC1〜MC16の各マーカを通過すると、センサ50の検知対象の輝度が基準輝度未満から基準輝度以上になったと判断されて、各マーカが検出される。一方、センサ50の検出対象の輝度が、所定判定時間以上、基準輝度未満であると判断されると、移動玩具10のジャンプ等により、シャシ16の裏面側、すなわち接地面側がコース60に対向しなくなったと判定される。このようにセンサ50がコース60のセンターラインCL1、CL2およびマーカMC1〜MC16を適宜読み取るためには、センサ50は、シャシ14の裏面側(接地面側)のうち、前輪18L、18R(広義には第1、第2の接地部)の間に配置されることが好ましい。
【0082】
本実施形態では、移動玩具10が通常通りコース60を走行している場合は、当該センサ50がコース60と対向するので、所与の間隔でコース60上に設けられている白色のマーカMC1〜MC16を読み取れる。一方、移動玩具10がジャンプしたり、コースアウト、転倒等した場合には、移動玩具10の接地面がコース60に対向しなくなるので、所定判定時間以上経過しても、マーカMC1〜MC16を読み取れなくなる。これによりジャンプ等を検出できる。
【0083】
なお、センサ50としては、例えば反射型のフォトセンサ(赤外線センサ)を用いることができる。この反射型のフォトセンサは、LED等の発光素子を有し、当該発光素子で発光した光を、検知対象で反射させて、その反射光を検知するセンサである。但しセンサ50は、反射型のフォトセンサには限定されず、距離センサ、バーコード読み取りセンサ、或いはCCD等の各種センサを用いることができる。
【0084】
また、移動玩具10のスタート後(レース開始後、原動機がオンになった後)に、常時、センサ50による検知対象の検知を実行するようにしてもよい。即ち、スタート後、常にセンサ50による検知を行い、得られた検知結果のデータを記憶部330に蓄積して行く。このとき、例えば検知結果のデータを記憶部330の図示しないリングバッファに格納するようにしてもよい。この場合には、リングバッファの全ての格納領域に検知結果データが書き込まれると、その後は検知結果が上書きされることになるため、リングバッファに格納される検知結果データが所定時間毎に更新されるようになる。
【0085】
移動玩具10のボディ12(シャシ16)の後端側には、ブレーキランプ等として機能する発光素子52L、52Rが設けられており、移動玩具10の速度変化時(例えば減速時、加速時等)に点灯する。これにより、減速時のブレーキランプの点灯等を擬似的に表現できる。
【0086】
図4に、本実施形態の移動玩具(移動玩具)10の機能ブロック図の例を示す。移動玩具10のボディ12内には、移動玩具10の各構成要素を制御するための回路部品が実装された回路基板(システム基板)300が設けられている。この回路基板300は、図4に示すように、制御部310、記憶部330、発光素子駆動部340、駆動部350、センサコントローラ360、外部インターフェース(I/F)部370を含む。
【0087】
制御部310は、移動玩具10(移動玩具)の制御を行う。具体的には、記憶部330から読み出されたデータやプログラムなどに基づいて、移動玩具10全体の制御や、回路基板300の各構成要素(駆動部等)の制御を行う。本実施形態では、制御部310は、例えばセンサ50からの検知情報や、記憶部330に記憶されるデータ(走行制御データ、動力設定データ、電力設定データ)に基づいて、モータ(広義には原動機)30を駆動するための制御を行う。この制御部310の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0088】
記憶部330は、各種プログラムやデータを記憶するものであり、その機能はRAMやROMなどにより実現できる。例えば制御部310は、記憶部330から読み出されたプログラムにより動作し、記憶部330をワーク領域として各種処理を行う。また外部のゲーム装置(外部端末)から受信した走行制御データなどの各種データは、記憶部330に保存される。なお、メモリーカードなどの携帯型情報記憶装置の装着が可能な移動玩具の場合には、当該携帯型情報記憶装置によって、記憶部330の一部の機能を実現してもよい。
【0089】
発光素子駆動部340は、LED等の発光素子52を駆動する。例えば本実施形態では、制御部310は、移動玩具10の減速制御時(ブレーキング時)に、発光素子52を発光させる制御を行う。具体的には、移動玩具10の減速時に、制御部310からの指示信号に基づいて、発光素子駆動部340が発光素子52を駆動して発光させ、ブレーキランプの点灯を疑似的に表現する。この場合の発光期間(減速期間)は、例えば後述する各コース区間の前半の第1の期間である。或いは、走行制御データに基づいて減速制御を行うと判断した場合、一定の期間だけ、発光素子52を発光させるようにしてもよい。
【0090】
なお発光素子駆動部340と発光素子52L、52Rは、制御主の切り替えが行われた場合に、ゲーム装置に対して制御主切り替えが行われたことを示す制御主切り替え情報を無線通信で送信する手段として機能させることができる。例えば制御主の切り替えが行われた場合に、発光素子52L、52Rを点滅させてもよい。この様にすると制御主の切り替えが行われたことを、ギャラリーに視覚的に告知することができる。また切り替えられた制御主に応じて点滅パターンを変化させるようにしてもよい。この様にすると、新たな制御主が誰であれるかギャラリーに視覚的に告知することができる。
【0091】
駆動部350(モータ駆動部)は、制御部310の制御の下でモータ30を駆動する。例えばモータ30(原動機)は、移動玩具10(移動玩具)のボディ12に搭載され、所与の動力(電力)が供給されて移動玩具10を走行(移動)させる。駆動部350はこのモータ30を駆動する。
【0092】
例えば移動玩具10を走行させる場合には、駆動部350はモータ30をPWM駆動する。この場合のPWM駆動のデューティは、記憶部330から読み出された走行制御データ(動力設定データ、電力設定データ)により設定される。そして、移動玩具10の走行速度は、PWM駆動のデューティにより制御できる。また移動玩具10の加速制御を行う場合には、例えば高いデューティ(例えば100パーセント)に対応する電圧をモータ30に印加する。一方、減速制御を行う場合には、例えば通常走行時とは逆極性の電圧をモータ30に印加する。
【0093】
センサコントローラ360は、センサ50の制御等を行うコントローラである。具体的には、センサ50からの検知信号を受けて、検知信号に対応するデータを制御部310に出力する。例えばセンサ50が反射型のフォトセンサである場合には、センサ50は、LED等の発光素子により実現される投光部と、検知対象からの反射光を受光する受光部を有する。この場合にセンサコントローラ360は、発光素子を発光させたり、受光部からの検知信号を検出する処理などを行う。
【0094】
外部インターフェース(I/F)部370は、外部機器とのインターフェース処理を行うものである。具体的には、外部機器であるゲーム装置から走行制御データなどのデータを受信したり、ゲーム装置に対して実走行結果データなどのデータを送信する。
【0095】
この場合の外部I/F部370によるインターフェースは、RS232CやUSBなどの有線のインターフェースにより実現してもよいし、赤外線などの無線のインターフェースにより実現してもよい。例えば赤外線通信(IRDA)により、外部I/F部370のインターフェースを実現する場合には、移動玩具10の例えば裏面側に赤外線の受光センサを設ける。そしてゲーム装置側(ゲーム装置本体やゲーム装置に装着されるICカード)の発光素子からの赤外線を、この受光センサで検知することで、ゲーム装置からの走行制御データ(動作制御データ)等のデータを、移動玩具10にダウンロードする。また移動玩具10の例えば裏面側に赤外線の発光素子を設ける。そして、この発光素子からの赤外線を、ゲーム装置側の受光センサにより検知することで、移動玩具10の走行結果データ(動作結果データ)等のデータを、ゲーム装置にアップロードする。
【0096】
そして本実施形態では、記憶部330は、コース60での移動玩具(狭義には移動玩具10)の走行(広義には移動)を制御するためのデータである走行制御データ(広義には動作制御データ)を記憶する。この走行制御データは、移動玩具の各コース区間での速度等を設定するためのデータである。
【0097】
またセンサ50は、位置検出部として機能し、コース60に設けられた複数のマーカMC1〜MC16の各マーカを検知する。例えば移動玩具が各マーカの設置位置を通過した時に、その通過を検知し、移動玩具が、どのコース区間に位置するのかを検出する。
【0098】
そして記憶部330は、走行制御データとして、コース60の各コース区間において原動機(狭義にはモータ30)に供給される動力の大きさを設定する走行制御データ(動力設定データ)を、コース60の各コース区間に対応づけて記憶する。この走行制御データは、例えばモータ30に供給される電力(実効電圧)を設定するためのデータであり、具体的にはモータ30をPWM駆動する際のデューティを設定するためのデータである。
【0099】
制御部310は、センサ50からの検知情報に基づいて、コース60の第iのコース区間(iは自然数)にいると判断した場合には、第iのコース区間に対応づけられた第iの走行制御データ(第iの電力設定データ)に基づいて、移動玩具の減速制御及び加速制御の少なくとも一方を行ってもよい。
【0100】
例えば原動機であるモータ30をPWM駆動する場合には、駆動部350は、第iのコース区間では、第iの走行制御データにより設定される第iのデューティでモータ30をPWM駆動し、第i+1のコース区間では、第i+1の走行制御データにより設定される第i+1のデューティでモータ30をPWM駆動する。
【0101】
また制御部310は、制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の制御を行うもので、制御部制御主となる外部の情報処理装置を所与のタイミングで切り替える制御主切り替え処理部として機能し、制御主の切り替えが行われた場合には、切り替え後の制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の動作制御を行う。
【0102】
また前記制御部310は、記憶部330に記憶された前記動作制御情報に基づき、移動玩具の動作制御を行ってもよい。
【0103】
また時間の経過又は時刻を検出する時間/時刻検出部をさらに含み、制御部310は、検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定してもよい。また制御部310は、センサ50により検出された位置の情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0104】
また外部インターフェース部370は、制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信し、制御部310は、前記切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。また制御部310は、予め設定された所定の規則に従って制御主に切り替える処理を行ってもよいし、ランダムに次の制御主を決定し、決定した制御主に切り替える処理を行ってもよい。
【0105】
また外部インターフェース部370は、前記制御主の切り替えが行われた場合に、前記制御主の切り替えが行われたことを示す制御主切り替え情報を無線通信で送信してもよい。
【0106】
1−3.ゲーム装置
図5に、本実施形態のゲーム装置(情報処理装置の一例)の外観図を示す。ここではゲーム装置の一例として携帯型ゲーム装置を示している。なお本実施形態のゲーム装置は、このような携帯型ゲーム装置には限定されず、例えば携帯型ゲーム装置以外のゲーム装置や、ゲームプログラムの実行が可能な携帯型情報処理装置や携帯電話機などの種々のゲーム装置に適用できる。
【0107】
図5のゲーム装置は、タッチパネル型の表示部190と、通常の表示部191を有する。また操作部として機能する方向指示キー(十字キー)400、操作ボタン402や、音出力部として機能するスピーカ404、406を有する。また情報記憶媒体として機能するICカード410(ゲームカード、ゲームカートリッジ)が着脱自在に装着されるカードスロット412を有する。このICカード410には、ゲームプログラム(ゲームデータ)が記憶される。なおスタイラスペン420は、タッチパネル型の表示部190へのタッチ操作を、プレーヤ(ユーザ)の指の代わりに行うためのものである。
【0108】
表示部190、191には種々の画像(メニュー画面、シミュレーション画像、ゲーム画像)が表示される。これらの表示部190、表示部191は、TFTなどのカラー液晶ディスプレイにより構成できる。そしてタッチパネル型の表示部190では、カラー液晶ディスプレイの上面(或いは下面)にタッチパネルが一体的に形成されており、これによりタッチ操作による操作入力が可能になる。
【0109】
例えばタッチパネル型の表示部190には、後述する走行制御データ(動作制御データ)の設定画面が表示される。また表示部191には、シミュレーション画像(ゲーム画像)が表示される。具体的には、コース60に対応する仮想コース430(コース60を模した仮想空間内のコース)が表示される。また移動玩具10に対応する仮想移動体440(移動玩具を模した移動オブジェクト)が表示され、仮想移動体440が仮想コース430で走行する様子が表示される。なお、これらの仮想移動体440、仮想コース430は、表示部に表示されるオブジェクトであってもよいし、非表示のオブジェクトであってもよい。
【0110】
図6に本実施形態のゲーム装置の機能ブロック図の例を示す。なお本実施形態のゲーム装置は図6の構成要素(各部)の一部を省略した構成としてもよい。
【0111】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、方向指示キー、操作ボタン、或いはジョイスティックなどにより実現できる。
【0112】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(DRAM、VRAM)などにより実現できる。この記憶部170は、走行特性データ記憶部172、コースデータ記憶部173、走行制御データ記憶部174、キャラクタデータ記憶部176、描画バッファ178を含む。
【0113】
走行特性データ記憶部172(広義には動作特性データ記憶部)は走行特性データ(広義には動作特性データ)を記憶する。この走行特性データ(動作特性データ)は、移動玩具の動作特性(走行特性、動き特性、モーション特性)に基づき設定されたデータである。具体的には、コース上を移動する移動玩具の走行特性(加速特性、ブレーキング特性、コーナリング特性等)に基づき設定されたデータである。
【0114】
コースデータ記憶部173はコースデータ(コース特性データ)を記憶する。このコースデータは、移動玩具が移動するコースのコース特性(コース長、コース幅、コーナー曲率等)に基づき設定されたデータである。
【0115】
走行制御データ記憶部174(広義には動作制御データ記憶部)は走行制御データ(動作制御データ)を記憶する。この走行制御データ(動作制御データ)は、移動玩具の走行(動き、モーション等の動作)を制御するためのデータである。具体的には、コースでの移動玩具の走行(速度、加速度、旋回等)を制御するためのデータである。
【0116】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、ICカード(メモリーカード)、光ディスク(CD、DVD)、HDD(ハードディスクドライブ)、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0117】
タッチパネル型の表示部190は、プレーヤ(ユーザ)が種々の操作を行ったり、本実施形態により生成された画像を表示するためのものであり、例えば、LCD、有機ELなどのディスプレイと、それに一体的に形成されたタッチパネルなどにより実現できる。タッチパネル方式としては、抵抗膜方式(4線式、5線式)、静電容量結合方式、超音波表面弾性波方式、赤外線走査方式などがある。
【0118】
表示部191は、本実施形態により生成された画像を表示するためのものであり、例えばLCD、有機ELなどのディスプレイにより実現できる。なお表示部191としてタッチパネル型のディスプレイを用いてもよい。
【0119】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォン端子などにより実現できる。
【0120】
補助記憶装置194(補助メモリ、2次メモリ)は、記憶部170の容量を補うために使用される記憶装置であり、SDメモリーカード、マルチメディアカードなどのICカードにより実現できる。この補助記憶装置194は脱着自在になっているが、内蔵されるものであってもよい。この補助記憶装置194は、ゲームの途中結果などのセーブデータや、プレーヤ(ユーザ)の個人的な画像データや音楽データなどを保存するために使用される。
【0121】
通信部196は、有線や無線の通信網(ネットワーク)を介して外部(例えば移動玩具サーバ、他のゲーム装置等)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現でき
る。
【0122】
例えばゲーム装置と移動玩具との間でデータの送受信を行う場合には、通信部196の機能は、RS232CやUSBなどの規格にしたがってデータ転送を行う転送コントローラにより実現できる。この場合に、この転送コントローラを、図5のICカード410に内蔵させてもよい。またICカード410に、カードなどの外部情報記憶媒体の情報を読み取るバーコードリーダ等のコントローラを更に内蔵させてもよい。またゲーム装置と移動玩具との間で、通信部196により無線(例えば赤外線通信)によりデータを送受信するようにしてもよい。或いは、USBメモリなどの携帯型記憶装置を用いて、ゲーム装置と移動玩具との間でデータを送受信してもよい。
【0123】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170、補助記憶装置194)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
【0124】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理(シミュレーション処理)、画像生成処理、或いは音生成処理などを行う。この場合のゲーム処理としては、ゲームの内容やゲームモードを決定する処理、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0125】
処理部100は、シミュレーション処理部102、送信処理部104、受信処理部106、認証処理部108、比較処理部110、表示制御部112、成績評価部114、アップロード処理部116、動作制御情報生成部140を含む。なおこれらの一部の構成要素(例えば認証処理部、比較処理部等)を省略する構成としてもよい。
【0126】
シミュレーション処理部102は、移動玩具に対応する仮想移動体を仮想空間内(シミュレーション空間内)で動作(走行、モーション)させるシミュレーション(走行シミュレーション、動作シミュレーション)を行う。例えばコースに対応する仮想コース上で仮想移動体を走行させるシミュレーション処理を行ったり、仮想移動体のモーション(動き)を変化させるシミュレーション処理を行う。
【0127】
具体的にはシミュレーション処理部102は、移動玩具に対応して設けられ動作特性データに基づきその動作特性が設定される仮想移動体を、仮想空間内において、動作制御データにしたがって動作(仮想動作)させるシミュレーションを行う。そして、動作シミュレーションの結果データを生成する。更に具体的にはシミュレーション処理部102は、移動玩具に対応して設けられ走行特性データに基づきその走行特性が設定される仮想移動体を、コースに対応して設けられコースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、走行制御データにしたがって走行(仮想走行)させるシミュレーション処理を行う。そして、走行シミュレーションの結果データを生成する。
【0128】
この場合のシミュレーション処理は、通常のレーシングゲーム等と同様に、仮想移動体の移動情報(位置、回転角度、速度、或いは加速度)を、1フレーム(1/60秒)毎に順次求める走行シミュレーション処理を行うことで実現してもよい。或いは、通常の格闘技ゲーム等と同様に、仮想移動体の動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム毎に順次求める動作シミュレーション処理を行うことで実現してもよい。
【0129】
例えば走行シミュレーションの場合には、仮想移動体の加速性能、最高速性能、ブレーキング性能、或いはコーナリング性能等を、走行特性データにより設定する。また、コースデータを、通常のレーシングゲームと同様の手法により設定する。例えばコースに沿って設定された複数のサンプリングポイントの各サンプリングポイントに対して、コース幅やコース方向などを対応づけたコースデータを用意する。そしてこのコースデータを用いて、移動玩具が走行する実際のコース(例えば、基本コースや店舗の特設コース等)に対応した仮想コースを、仮想空間(ゲーム空間)内に構築する。そして、レーシングゲームで一般的に使用される自動走行アルゴリズムにより、仮想移動体を仮想コース内で走行させるシミュレーション処理を行う。そして必要であれば、図5に示すように、仮想移動体440が仮想コース430上で走行する様子を、表示部191に表示する。
【0130】
或いは、このような仮想移動体のリアルタイムなシミュレーション走行処理は行わずに、動作特性データや動作制御データを入力データとし、動作シミュレーション結果データを出力データとするテーブルデータを用いて、シミュレーション処理を実現してもよい。
【0131】
具体的には、走行特性データやコースデータや走行制御データを入力データとし、ラップタイムなどの走行シミュレーション結果データを出力データとするテーブルデータを用いて、シミュレーション処理を実現する。
【0132】
このテーブルデータは、記憶部170の図示しないテーブルデータ記憶部に記憶される。そしてシミュレーション処理部102は、このテーブルデータを用いて、シミュレーション処理を実行する。この場合のテーブルデータは、例えば移動玩具のメーカが、移動玩具を実際に動作させたり、移動玩具を実際のコースで走行させることで、様々な条件のテーブルデータを用意する。例えば、同じコースで同じ種類(車種)の移動玩具であっても、移動玩具に装着されるパーツが異なる場合には、異なったシミュレーション結果データになるように、複数のテーブルデータの各テーブルデータを作成する。そして、作成したテーブルデータを、ゲームソフトのデータとして情報記憶媒体180に格納したり、ネットワーク、通信部196を介して外部からダウンロードできるようにする。
【0133】
送信処理部104は、移動玩具に対してデータを送信するための処理を行う。例えば送信するデータを記憶部170に用意したり、データの送信を通信部196に指示する。具体的には、送信処理部104は、動作制御データを移動玩具に送信するための処理を行う。例えば動作制御データとして走行制御データを送信する。更に具体的には、コースの各コース区間に対応づけられた走行制御データ(動力設定データ、電力設定データ)を送信する。或いは走行制御データとして、コースデータ取得用の走行制御データを移動玩具に送信してもよい。
【0134】
受信処理部106は、移動玩具からのデータを受信するための処理を行う。例えばデータの受信を通信部196に指示したり、受信したデータを記憶部170に保存する。具体的には、受信処理部106は、送信処理部104により送信された動作制御データに基づき移動玩具が動作することで得られた実動作結果データを、移動玩具から受信するための処理を行う。更に具体的には、送信処理部104により送信された走行制御データに基づき移動玩具がコースを走行することで得られた実走行結果データを、移動玩具から受信するための処理を行う。この場合に、コースの各コース区間での移動玩具の実走行ラップタイムデータを、実走行結果データとして受信してもよいし、コースの各コース区間での移動玩具の実加減速データを、実走行結果データとして受信してもよい。或いは、送信されたコースデータ取得用走行制御データに基づき移動玩具がコースを走行することで得られたコースデータ取得用の実走行結果データを、受信してもよい。
【0135】
認証処理部108は、移動玩具から受信したデータの認証処理を行う。例えば受信した実走行結果データ(広義には実動作結果データ)が正当なデータ(アップロード等が許可されるデータ)であるか否かを認証する。具体的には、移動玩具がコースのスタート地点からスタートしてコースのゴール地点を通過したと判定された場合に、実走行結果データが正当なデータであると判断する。例えば、スタート地点に対応するコース区間とゴール地点に対応するコース区間を移動玩具が通過したと、センサからの検知情報に基づき判断された場合に、その走行により得られた実走行結果データが正当なデータであると判断する。この場合に、コースの全てのコース区間(マーカ)を通過(検知)したことを条件に、その実走行結果データが正当なデータであると判断してもよい。或いは、移動玩具がコースでジャンプして、センサによる検出が読み飛ばされることを考慮し、100パーセントよりも小さい一定の割合(例えば90パーセント)以上のコース区間(マーカ)を通過(検知)したことを条件に、正当なデータであると判断してもよい。
【0136】
比較処理部110は、データの比較処理を行う。例えば、受信処理部106により受信された実走行結果データ(実動作結果データ)と、シミュレーション処理部102でのシミュレーション処理により得られた走行シミュレーション結果データ(動作シミュレーション結果データ)との比較処理を行う。この場合の比較処理としては、例えば各コース区間での実走行ラップタイムと、そのコース区間でのシミュレーションラップタイムを比較し、その差分を求める処理などがある。或いは、各コース区間での実加減速データと、そのコース区間でのシミュレーション加減速データの比較処理を行ってもよい。そして、このような比較処理を行うことで、実走行結果を向上させるのに必要なパーツを特定する。
【0137】
そして表示制御部112は、この比較処理での比較結果に基づいて、移動玩具のパーツ変更のアドバイス画面(変更パーツ表示画面)を表示する制御を行う。
【0138】
表示制御部112は、表示部190、191の表示制御を行う。例えば処理部100で行われる種々の処理(シミュレーション処理、ゲーム処理)の結果に基づいて、描画バッファ178への画像の描画処理を行い、これにより画像(例えば図5の走行制御データ設定画面の画像、シミュレーション画像)を生成し、生成された画像を表示部190、191に表示する。この場合に、生成する画像は、いわゆる2次元画像であってもよいし、3次元画像であってもよい。そして3次元画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を描画バッファ178(フレームバッファ、中間バッファなどのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画する。これにより、仮想空間(オブジェクト空間)内において仮想カメラ(所与の視点)から見える画像が生成される。
【0139】
そして本実施形態では表示制御部112は、実動作結果データを表示部に表示する制御を行う。具体的には、実走行結果データを、コースの各コース区間に対応づけて表示する制御を行う。更に具体的には、実走行結果データであるラップタイムデータや加減速データを、コースの各コース区間に対応づけて表示する。或いは、シミュレーション処理により得られた走行シミュレーション結果データ(動作シミュレーション結果データ)に対して、実走行結果データ(実動作結果データ)を関連づけて表示してもよい。
【0140】
成績評価部114(成績演算部)は、プレーヤのプレイ成績(走行成績、得点、ポイント、勝敗等)の評価処理(演算処理)を行う。例えば、受信した実走行結果データ(実動作結果データ)に基づいて、移動玩具についてのプレーヤのプレイ成績(ラップタイム等の実走行結果、得点等の実動作結果)を評価する。或いはプレーヤのゲームプレイのプレイ成績を評価してもよい。
【0141】
アップロード処理部116は、データのアップロード処理を行う。具体的には、通信部196及びネットワークを介して、プレーヤの実走行結果データ(実動作結果データ)などのプレイ成績を、外部のサーバ等にアップロードする処理を行う。これにより、サーバの管理の下で、プレーヤの実走行結果データのランキング表示などが可能になる。この場合に、受信した実走行結果データが正当なデータであると認証処理部108により判断された場合に、正当なデータであると判断された実走行結果データを、ネットワークを介してアップロードしてもよい。即ち正当な実走行結果データについてはアップロードを許可し、不正な実走行結果データについてはアップロードを許可しないようにする。
【0142】
動作制御情報生成部140は、入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報(走行制御データ等)を生成する。例えば図7〜図9で説明する手法により走行制御データの設定を行い動作制御情報を生成してもよい。
【0143】
1−4.走行制御データの設定
次に本実施形態の手法について説明する。まず走行制御データ(広義には動作制御データ)の設定手法について説明する。
【0144】
なお、以下では、コース上での移動玩具の走行を、走行制御データに基づいて制御する場合を主に例にとり説明するが、本実施形態の手法は、このような走行の制御には限定されない。例えば移動玩具の手足、体の動きや、パーツの動作等を制御する場合にも、本実施形態の手法は適用できる。この場合には、ゲーム装置から移動玩具に対して、移動玩具の手足、体の動きやパーツの動作を制御するための動作制御データを送信し、移動玩具側は、この動作制御データに基づいて、手足、体の動きやパーツの動作を制御することになる。
【0145】
図7に走行制御データの設定画面の例を示す。この設定画面は、図5に示すようにタッチパネル型の表示部190に表示され、プレーヤは、この設定画面において、図1(A)のコース60の各コース区間CS1〜CS16での走行制御データを設定する。
【0146】
例えば、走行制御データの雛形データ(メーカ側が用意するデフォルトの走行制御データ)が存在する場合や、過去に設定して保存した走行制御データが存在する場合には、図7のJ1に示すアイコンを、タッチパネル型表示部190へのタッチ操作により選択して、そのセッティング内容を読み出す。また走行制御データの設定が完了した場合には、J2に示すアイコンを選択して、そのセッティング内容を保存する。また走行制御データを移動玩具10に送信(ダウンロード)する場合には、J3に示すアイコンを選択する。一方、実走行結果データ(実動作結果データ)等を移動玩具10から受信(アップロード)する場合には、H1に示すアイコンを選択する。
【0147】
また、コース選択画面を表示して、コースを選択する場合には、H2に示すアイコンを選択し、コースの周回数を設定する場合には、H3に示すアイコンを選択する。また、キャラクタ選択画面を表示して、移動玩具10を仮想的に操作するキャラクタ(ドライバ)を選択する場合には、H4に示すアイコンを選択する。
【0148】
また図7のJ4では、スタート地点に対応するコース区間CS1での走行制御データとして、「61」が設定されている。この場合の走行制御データは、モータ30の動力設定データ(電力設定データ)であり、具体的には後述するPWM駆動におけるデューティである。走行制御データを「61」を設定することで、このコース区間CS1では、61パーセントのデューティでモータ30がPWM駆動される。即ちコース区間CS1は、距離の長い直線の区間であるため、プレーヤは、高いデューティを設定して、移動玩具を加速させる。
【0149】
また図7のJ5では、次のコース区間CS2での走行制御データとして、「10」が設定されている。即ちコース区間CS2は急カーブの区間であるため、コースアウトしないように、プレーヤは、低いデューティを設定して、移動玩具10を減速させる。
【0150】
また図7のJ6では、次のコース区間CS3での走行制御データとして、「29」が設定されている。即ちコース区間CS3は、直線の区間であるため、プレーヤは、コース区間CS2よりも高いデューティを設定して、移動玩具10を加速させる。同様にしてコース区間CS3〜CS7の走行制御データを設定し、J7に示すように第1の周回コース61の最終のコース区間CS8の走行制御データを設定する。またJ8、J9、J10、J11等に示すように、第2の周回コース62のコース区間CS9〜CS16の走行制御データを設定する。
【0151】
図8のJ20では、プレーヤは、スタイラスペン420を用いたドラッグ操作により、走行制御データを設定している。図8のJ20では、ドラッグ操作により走行制御データが「62」に設定され、その後にJ21に示すアイコンを選択することで、「62」の走行制御データの設定が確定する。なお、設定をキャンセルする場合にはJ22に示すアイコンを選択する。
【0152】
全てのコース区間についての走行制御データの設定が完了すると、プレーヤは図8のJ3に示すアイコンを選択する。そして、ゲーム装置から移動玩具10への全ての走行制御データの送信(ダウンロード)が完了すると、図9に示すような画面が表示される。
【0153】
以上の本実施形態の走行制御データの設定手法によれば、プレーヤは、複数のコース区間の走行制御データを、簡素な作業で効率良く入力することが可能になる。
【0154】
1−5.ゲーム装置側の詳細な処理
次にゲーム装置側の詳細な処理フローについて図10〜図14のフローチャートを用いて説明する。
【0155】
図10はメインループの処理フローである。まず、プレーヤに対してメニュー画面を表示する(ステップS21)。そしてプレーヤがセッティングモード(初期設定モード)を選択した場合には、セッティング処理に移行し(ステップS22、S23)、走行シミュレーションモードを選択した場合には、走行シミュレーション処理に移行する(ステップS24、S25)。またプレーヤが、データ送信モードを選択した場合には、データ送信処理に移行し(ステップS26、S27)、データ受信モードを選択した場合には、データ受信処理に移行する(ステップS28、S29)。
【0156】
図11はセッティング処理の詳細を示すフローチャートである。まず図15(A)〜15(C)に示すような車種選択画面やパーツ選択画面を表示する(ステップS31、S32)。そして、プレーヤにより選択された車種、パーツに基づいて、走行特性データを設定する(ステップS33)。
【0157】
次に、図16に示すようなコース選択画面を表示する(ステップS34)。そして、プレーヤにより選択されたコースに基づいてコースデータを設定する(ステップS35)。このようにして、移動玩具やコースについての初期セッティングを終了する。シミュレーション処理は、例えばこのような初期セッティングの完了後に許可する。
【0158】
図12は走行シミュレーション処理の詳細を示すフローチャートである。まず、走行特性データ記憶部から、図11のセッティング処理で設定された走行特性データを読み出す(ステップS41)。また、コースデータ記憶部から、図11のセッティング処理で設定されたコースデータを読み出す(ステップS42)。また、走行制御データ記憶部から、図7、図8で説明した手法により設定された走行制御データを読み出す(ステップS43)。
【0159】
そして、読み出された走行特性データ、コースデータ、走行制御データに基づいて、走行シミュレーション処理を実行する(ステップS44)。そして、走行シミュレーションが終了すると、その走行シミュレーション結果を表示部に表示する(ステップS45、S46)。例えば各コース区間にシミュレーションラップタイムを対応づけて表示する。
【0160】
図13はデータ送信処理の詳細を示すフローチャートである。まず、図7、図8で説明した走行制御データの設定画面を表示する(ステップS51)。そして、全てのコース区間についてのプレーヤの入力設定が完了したか否かを判断する(ステップS52)。そして、入力設定が完了した場合には、プレーヤがデータ送信を選択したか否かを判断し(ステップS53)、データ送信を選択した場合には、その走行制御データを移動玩具に送信する(ステップS54)。
【0161】
図14はデータ受信処理の詳細を示すフローチャートである。まず移動玩具がゲーム装置に適正に接続されたか否かを確認する(ステップS61)。そして、適正に接続されたことが確認されると、プレーヤがデータの受信を選択したか否かを判断し(ステップS62)、データ受信を選択した場合には、実走行結果データを移動玩具から受信する(ステップS63)。
【0162】
次に、受信した実走行結果データをコース区間に関連づけて表示する(ステップS64)。そして、走行シミュレーションを行っている場合には、受信した実走行結果データと、走行シミュレーション結果データを、コース区間に関連づけて表示する(ステップS65、S66)。また実走行結果データと走行シミュレーション結果データの比較処理を行い(ステップS67)、比較処理の結果に基づいて、お勧めのパーツのアドバイス画面を表示する(ステップS68)。
【0163】
1−6.減速制御、加速制御
次に本実施形態の減速制御、加速制御の手法について説明する。
【0164】
図17(A)に走行制御データのデータ構造の例を示す。図17(A)では、CS1〜CSNの各コース区間に対して、DS1〜DSNの各走行制御データが対応づけられて、図6の走行制御データ記憶部172に記憶される。具体的には、走行制御データとして、各コース区間においてモータに供給される動力(電力)の大きさを設定する走行制御データ(動力設定データ)が、CS1〜CSNの各コース区間に対応づけて記憶される。
【0165】
この走行制御データは、図7〜図9で説明した手法により設定できる。図7を例にとれば、コース区間CS1にはDS1=61、コース区間CS2にはDS2=10というように走行制御データDS1、DS2が設定される。そしてDS1=61と設定されたコース区間CS1では、移動玩具の速度が速くなり、DS2=10と設定されたコース区間CS2では、移動玩具の速度が遅くなる。
【0166】
また図17(B)に示すように、移動玩具MTに設けられたセンサにより、コース上のマーカMCi+1(iは自然数)が検知される。これにより、移動玩具MTが、コース区間CSiからコース区間CSi+1に進入したことが検出される。なお、マーカMCi+1は、例えばコースブロックに一体形成されて埋め込まれる樹脂部材により実現してもよいし、コースブロックにはり付けられた白色のテープにより実現してもよい。或いはICタグなどのデバイスにより実現してもよい。
【0167】
このようにセンサからの検知情報に基づいて、コースの第iのコース区間CSiから第i+1のコース区間CSi+1に移動玩具MTが移動したと判断した場合に、差分情報DFに基づいて、移動玩具MTの減速制御や加速制御が行なうようにしてもよい。
【0168】
ここで差分情報DFは、コース区間CSiに対応づけられた走行制御データDSiと、コース区間CSi+1に対応づけられた走行制御データDSi+1との差分DSi+1DSiに対応した情報である。この差分情報DFは、DSi+1とDSiの差分そのものであってもよいし、差分を引数とした関数により設定される情報であってもよい。
【0169】
例えば図18(A)では、コース区間CSiではDSi=60であり、CSi+1ではDSi+1=40になっている。この場合には、DF=DSi+1−DSi=−20であり、差分が負になるため、移動玩具MTの速度を低くする減速制御を行う。
【0170】
一方、図18(B)では、コース区間CSiではDSi=60であり、CSi+1ではDSi+1=90になっている。この場合には、DF=DSi+1−DSi=30であり、差分が正になるため、移動玩具MTの速度を高くする加速制御を行う。なお差分情報DFに基づいて、図18(A)の減速制御と図18(B)の加速制御のいずれか一方のみを行ってもよい。
【0171】
また図19(A)では、差分情報DFにより、減速制御を行うと判断されている。この場合には、コース区間CSi+1における前半の第1の期間T1において、第i+1の走行制御データDSi+1(動力設定データ)に対応する第i+1の速度Vi+1に近づくように、移動玩具MTを減速する制御を行う。即ち、第1の期間T1では、前のコース区間CSiでの速度ViからVi+1に減速するように制御が行われる。そして、コース区間CSi+1の後半の第2の期間T2では、移動玩具MTを速度Vi+1で移動させるための制御が行われる。即ち、ViからVi+1に減速した後、例えば定速の速度Vi+1で移動するように移動玩具MTが制御される。
【0172】
また図19(B)では、差分情報DFにより、加速制御を行うと判断されている。この場合には、コース区間CSi+1における前半の第1の期間T1において、速度Vi+1に近づくように、移動玩具MTを加速する制御を行う。即ち、第1の期間T1では、前のコース区間CSiでの速度ViからVi+1に加速するように制御が行われる。そして、コース区間CSi+1の後半の第2の期間T2では、移動玩具MTを速度Vi+1で移動させるための制御が行われる。即ち、ViからVi+1に加速した後、例えば定速の速度Vi+1で移動するように移動玩具MTが制御される。
【0173】
更に図19(C)、図19(D)では、図19(A)、図19(B)の減速制御又は加速制御を行う第1の期間T1の長さを、差分情報DFに応じて変化させている。
【0174】
例えば図19(C)では、DFが大きいため、期間T1の長さを長くする。このようにすれば、差分情報DFに応じて、減速期間や加速期間が長くなるため、コース区間CSiでの移動玩具MTの速度Viを、コース区間CSi+1での速度Vi+1に効率良く近づけることが可能になる。
【0175】
一方、図19(D)では、DFが小さいため、期間T1の長さを短くする。このようにすれば、減速期間や加速期間が短くなるため、減速しすぎて、速度Vi+1を下回ってしまったり、加速しすぎて速度Vi+1を上回ってしまうというような事態の発生を防止できる。
【0176】
以上の本実施形態の手法によれば、プレーヤは、各コース区間に対して走行制御データを設定するだけで、その走行制御データに応じた速度で移動玩具MTを走行させることが可能になる。例えば図18(A)や図18(B)においてプレーヤは、コース区間CSi+1において移動玩具MTの減速や加速を明示的に指定しなくても、コース区間CSi、CSi+1への走行制御データDSi、DSi+1の設定だけで、移動玩具MTが自動的に減速又は加速するようになる。従って、プレーヤは、各コース区間に対して所望の走行制御データを設定するだけという簡素な作業で、移動玩具MTの移動を制御できるようになり、プレーヤにとって利便性の高いインターフェース環境を提供できる。
【0177】
また図19(A)〜図19(D)のように、定速走行させる期間T2の前に、減速又は加速する期間T1を設定することで、そのコース区間に設定された所望の速度に、移動玩具MTの速度を効率良く近づけることが可能になる。
【0178】
例えば、このような減速又は加速用の期間T1を設けない手法によると、移動玩具MTが有する慣性等が原因で、移動玩具MTの速度を、そのコース区間に設定された所望の速度に早期に近づけることが難しくなる。このため、各コース区間に設定された走行制御データと、それによる移動玩具MTの実際の速度とが、線形関係にならなくなってしまう。
【0179】
例えば走行制御データをDSi+1=50に設定した場合の速度に対して、DSi+1=80に設定した場合の速度は、線形の関係を保って1.6倍になることが望ましい。しかしながら、期間T1を設けないと、このような線形の関係を保つことが難しくなる。
【0180】
この点、図19(A)〜図19(D)の本実施形態の手法によれば、各コース区間に設定された速度に、移動玩具MTの速度を効率良く近づけることができるため、走行制御データと、それによる移動玩具MTの実際の速度とを、ほぼ線形な関係にすることが可能になる。従って、プレーヤが所望する速度で移動玩具MTが各コース区間で走行するようになり、プレーヤの意向をより反映した移動玩具MTの走行制御が可能になる。
【0181】
1−7.PWM駆動
さて、原動機がモータである場合には、モータはPWM方式により駆動することが望ましい。即ち、走行制御データにより設定されるデューティで、原動機であるモータをPWM駆動する。
【0182】
例えば図20(A)に示すように。走行制御データが「60」に設定されていた場合には、デューティが60パーセントのPWMの駆動波形でモータを駆動する。また走行制御データが「40」に設定されていた場合には、デューティが40パーセントのPWMの駆動波形でモータを駆動する。このようにモータをPWM駆動すれば、モータはデューティに対応した実効電圧で駆動されるようになるため、デューティを変化させることで、移動玩具MTを所望の速度で移動させることが可能になる。
【0183】
例えば図20(B)において、移動玩具MTがコース区間CSiに位置している時には、コース区間CSiの走行制御データにより設定される第iのデューティDTiでモータをPWM駆動する。一方、移動玩具MTがコース区間CSiからCSi+1に進入した場合には、コース区間CSi+1の走行制御データにより設定される第i+1のデューティDTi+1でモータをPWM駆動する。例えばコース区間CSiに設定されるデューティDTi=60の場合には、図20(A)の60パーセントのデューティのPWM駆動波形でモータを駆動し、コース区間CSi+1に設定されるデューティDTi+1=40の場合には、図20(A)の40パーセントのデューティのPWM駆動波形でモータを駆動する。
【0184】
更に具体的には図21(A)に示すように、DF<0となる減速制御の場合には、コース区間CSi+1における前半の第1の期間T1において、通常走行時の電圧とは逆極性の電圧をモータに印加する。即ち通常のPWM駆動時にモータの第1、第2の端子間に正極性の電圧が印加される場合には、図21(A)の期間T1ではモータの第1、第2の端子間に負極性の電圧が印加される。これによりモータの回転にブレーキングをかけて、移動玩具MTを減速させることができる。そしてコース区間CSi+1の後半の第2の期間T2において、CSi+1に設定されたデューティDTi+1でモータをPWM駆動する。これにより減速後、例えば定速走行に移行するようになる。
【0185】
一方、図21(B)に示すように、DF>0となる加速制御の場合には、前半の第1の期間T1において、デューティDTi+1よりも高いデューティに対応する電圧をモータに印加する。例えばデューティ=100パーセントの電圧を印加する。これによりモータの回転が加速されて、移動玩具MTが加速される。後半の第2の期間T2において、CSi+1に設定されたデューティDTi+1でモータをPWM駆動する。これにより加速後、例えば定速走行に移行するようになる。
【0186】
なお図19(C)、図19(D)で説明したように、コース区間CSiに設定されたデューティDTiとコース区間CSi+1に設定されたデューティDTi+1との差分が大きくなればなるほど長くなるように、第1の期間T1の長さを設定する。そして設定された第1の期間T1において移動玩具の減速制御又は加速制御を行うようにする。このようにすれば減速期間又は加速期間となる第1の期間T1が、デューティの差分に応じて長くなったり、短くなる。これにより移動玩具MTの減速の度合いや加速の度合いが自動的に調整されるため、適正な減速又は加速制御を実現できる。
【0187】
1−8.駆動部
次に図4の駆動部350の詳細な構成及び動作について説明する。図22に駆動部350の回路構成例を示す。
【0188】
図22に示すように駆動部350は、第1〜第4のトランジスタTR1〜TR4を含む。また第5、第6のトランジスタTR6、TR7や、ダイオードDI1〜DI4や、抵抗R1〜R6を含むことができる。ここでトランジスタTR1〜TR6は例えば電界効果型のトランジスタ(FET)である。なおトランジスタTR1〜TR6は、MOS型FETであってもよいし、接合型FETであってもよい。或いはバイポーラ型のトランジスタであってもよい。また本実施形態の駆動部350は図22の構成に限定されず、その構成要素の一部(例えばトランジスタTR6、TR7、ダイオードDI1〜DI4等)を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【0189】
P型のトランジスタTR1は、第1の電源VDDのノードNDと、モータ30の第1の端子TM1のノードNT1との間に設けられる。具体的にはトランジスタTR1は、そのソース、ゲート、ドレインに、各々、ノードND、N1、NT1が接続される。またノードNDとN1の間には抵抗R1が設けられる。
【0190】
P型のトランジスタTR2は、ノードNDと、モータ30の第2の端子TM2のノードNT2との間に設けられる。具体的にはトランジスタTR2は、そのソース、ゲート、ドレインに、各々、ノードND、N2、NT2が接続される。またノードNDとN2の間には抵抗R2が設けられる。
【0191】
N型のトランジスタTR3は、ノードNT1と第2の電源VSS(GND)のノードNSとの間に設けられる。具体的にはトランジスタTR3は、そのソース、ゲート、ドレインに、各々、ノードNS、N3、NT1が接続される。またノードN3とNSの間には抵抗R3が設けられ、ノードN3には制御信号SG3が入力される。
【0192】
N型のトランジスタTR4は、ノードNT2とNSとの間に設けられる。具体的にはトランジスタTR4は、そのソース、ゲート、ドレインに、各々、ノードNS、N4、NT2が接続される。またノードN4とNSの間には抵抗R4が設けられ、ノードN4には制御信号SG4が入力される。
【0193】
N型のトランジスタTR5は、ノードN1とNSの間に設けられる。具体的にはトランジスタTR5は、そのソース、ゲート、ドレインに、各々、ノードNS、N5、N1が接続される。またノードN5とNSの間には抵抗R5が設けられ、ノードN5には制御信号SG5が入力される。
【0194】
N型のトランジスタTR6は、ノードN2とNSの間に設けられる。具体的にはトランジスタTR6は、そのソース、ゲート、ドレインに、各々、ノードNS、N6、N2が接続される。またノードN6とNSの間には抵抗R6が設けられ、ノードN6には制御信号SG6が入力される。
【0195】
また、ダイオードDI1はノードNDとNT1の間に設けられ、ダイオードDI2はノードNDとNT2の間に設けられ、ダイオードDI3はノードNT1とNSの間に設けられ、ダイオードDI4はノードNT2とNSの間に設けられる。
【0196】
図22の駆動部350では、移動玩具の通常走行時には、トランジスタTR1がオンになり、トランジスタがオフTR2、TR3がオフになる。そしてトランジスタTR4がPWM駆動のデューティにしたがってオン・オフされる。一方、移動玩具の減速制御時には、トランジスタTR1、TR4がオフになり、トランジスタTR2、TR3がオンになる。これにより、モータの第1の端子TM1と第2の端子TM2との間に、通常走行時の電圧(正電圧)とは逆極性の電圧(負電圧)が印加される。
【0197】
図23に、図22の駆動部350の詳細な動作を説明するための信号波形例を示す。図23のH1に示すように、コース区間CSiでは走行制御データが「80」に設定されるため、期間T2においてデューティDTi=80のPWM駆動が行われている。具体的には、制御信号SG6、SG3がLレベルになることで、トランジスタTR6、TR2、TR3がオフになり、制御信号SG5がHレベルになることで、トランジスタTR5、TR1がオンになる。また制御信号SG4の駆動波形のデューティが80に設定されて、デューティDTi=80のPWM駆動波形で、トランジスタTR4がオン、オフされる。なおこれらの制御信号は例えば図4の制御部310により生成される。
【0198】
図23のH2に示すように、コース区間CSi+1のマーカMCi+1が検出されると、H3に示すように走行制御データの差分情報DFが求められる。ここでは、コース区間CSi、CSi+1の走行制御データは、各々、「80」、「20」に設定されているため、DF=−60になり、減速制御が行われる。そして、コース区間CSi+1の前半の第1の期間T1の長さが、差分情報DF=−60に対応する長さに設定され、T1=60msecに設定される。これにより、T1=60msecの期間、逆極性の電圧が印加されて、移動玩具が減速(ブレーキング)される。
【0199】
具体的には、制御信号SG6、SG3がHレベルになることで、トランジスタTR6、TR2、TR3がオンになり、制御信号SG5、SG4がLレベルになることで、トランジスタTR5、TR1、TR4がオフになる。このようにトランジスタTR2、TR3がオンになり、TR1、TR4がオフになると、図22から明らかなように、モータ30の第2の端子TM2がVDDに設定され、第1の端子TM1がVSSに設定されるため、モータ30に対して逆極性の電圧が印加され、その回転にブレーキングがかかる。これにより、移動玩具を減速させることが可能になる。
【0200】
次に図23のH4に示すように、コース区間CSi+1の後半の第2の期間T2ではデューティDTi+1=20でPWM駆動が行われる。具体的には、制御信号SG6、SG3がLレベルになることで、トランジスタTR6、TR2、TR3がオフになり、制御信号SG5がHレベルになることで、トランジスタTR5、TR1がオンになる。そして制御信号SG4の駆動波形のデューティが20に設定されて、デューティDTi+1=20のPWM駆動波形で、トランジスタTR4がオン、オフされる。
【0201】
また図23のH5に示すように、次のコース区間CSi+2では、デューティDTi+2=100でのPWM駆動が行われる。なお図23では、差分情報に基づく減速制御は行っているが、差分情報に基づく加速制御については行っていない。
【0202】
以上のような構成の駆動部350を採用すれば、簡素な制御信号で、移動玩具の減速制御等を効率的に実現できる。また制御部310は、各コース区間に設定された走行制御データ(デューティ)を用いて、図23に示すような制御信号を生成するだけで済むため、制御部310の処理負荷も軽減できる。また移動玩具を減速させる場合に、図23のH4に示すようなPWM駆動信号を印加するだけでは、移動玩具が慣性を有するため、移動玩具の十分な減速を期待することが難しい。この点、本実施形態の手法によれば、H3に示すような逆極性電圧を印加しているため、移動玩具を十分に減速して、移動玩具の速度を、そのコース区間の走行制御データに対応した速度に設定することが可能になる。
【0203】
1.9.移動玩具側の詳細な処理
次に移動玩具側の詳細な処理フローについて図24のフローチャートを用いて説明する。図24は、主に図4の制御部310が行う処理を示したものである。
【0204】
まず、走行制御データをゲーム装置から受信したか否かを判断する(ステップS1)。そして走行制御データを受信した場合には、受信した走行制御データ(区間データ)を図4の記憶部330に格納する(ステップS2)。
【0205】
次に、移動玩具の動作開始を指示するセレクトボタンが押されたか否かを判断する(ステップS3)。そして、押された場合には、走行制御データの区間番号iを1に設定し(ステップS4)、移動玩具の走行をスタートする(ステップS5)。即ちモータの駆動を開始する。
【0206】
次に、i番号の走行制御データDSiの値を、モータ駆動用のPWM値に設定する(ステップS6)。そして、センサ50によりマーカが検出されたか否かを判断する(ステップS7)。マーカが検出された場合には、コース区間CSi+1の走行制御データDSi+1とコース区間CSiの走行制御データDSiとの間に、DSi+1<DSiの関係が成り立つか否かを判断する(ステップS8)。そして、DSi+1<DSiである場合には、減速制御を行うと判断し、DF=DSi+1−DSiに対応する期間T1だけ、デューティ=100の逆極性電圧をモータに印加する(ステップS9)。即ち図35のH3に示すような逆極性電圧の印加を行う。
【0207】
次に、i=Nか否かを判断する(ステップS10)。そしてi=N(Nはコース区間の最終区間を示すインデックスの値)を示すではない場合には、iを1だけインクリメントして(ステップS11)、ステップS6に戻る。一方、i=Nになった場合には、移動玩具がゴール地点に対応するコース区間CS16にゴールしたと判断して、区間番号iを初期値である1に設定する(ステップS12)。
【0208】
1−10.移動玩具による制御主の切り替え制御
第1の実施の形態における移動玩具による制御主の切り替え制御の具体例について説明する。本実施の形態では、複数のゲーム装置がグループを組んで、グループ内のゲーム装置で移動玩具の制御主をリレーのバトンタッチのように切り替える制御主切り替え処理が行われる。
【0209】
例えば移動玩具の走行区間を複数の区間に分割して、各区間毎に制御主(ゲーム装置)を切り替えることにより、複数の制御主が各区間毎にバトンタッチしながら、移動玩具の走行を制御するゲームを行うことができる。この様にすると各区間毎に異なる制御主(ゲーム装置)によって制御されるため、あたかも移動玩具を用いてリレーをしているようなゲームを楽しむことができる。
【0210】
図25に示すように、移動玩具1000は、複数のゲーム装置1010−1、1010−2、・・・、1010−Mから動作制御情報(走行制御データや移動コマンド)1020−1、1020−2、・・・、1020−Mを受信する。
【0211】
ここで走行制御データを予め移動玩具の記憶させておいて、それを読み出して移動玩具1000を制御する場合には、移動玩具1000は走行開始に先立ち、複数のゲーム装置1010−1、1010−2、・・・、1010−Mから走行制御データ1020−1、1020−2、・・・、1020−Mを受信する。そして、図26に示すように受信した走行制御データ1020−1、1020−2、・・・、1020−Mを送信元のゲーム装置の特定情報P1、P2、P3に関連づけて、移動玩具の記憶部に記憶させる。
【0212】
なお受信した走行制御データ1020−1、1020−2、・・・、1020−Mの中に、ゲーム装置の識別情報P1,P2、P3を含む場合(例えば走行制御データ1020−1、1020−2、・・・、1020−Mが、ゲーム装置の識別情報P1,P2、P3と走行制御用のデータD1、D2、・・・、DMとで構成される場合)には、受信した走行制御データ1020−1、1020−2、・・・、1020−Mをそのまま記憶させてもよい。
【0213】
そして、区間毎に切り替えられた制御主に対応するゲーム装置の識別情報に関連づけて記憶されている走行制御データを読み出して、移動玩具の走行を制御するようにしてもよい。
【0214】
またゲーム装置がリアルタイムに走行制御データや走行制御コマンド等(動作制御情報の一例)を移動玩具に送信して、移動玩具を制御する場合には、移動玩具は複数のゲーム装置からの走行制御データや走行制御コマンド等を受信して、制御主として指定されているゲーム装置からの走行制御データや走行制御コマンド等に基づいて、移動玩具の走行を制御するようにしてもよい。
【0215】
図27は、各ゲーム装置から受信した走行制御データの内容の一例を示す図である。D1〜DMは、各ゲーム装置で、例えば図7〜図9で説明した手法により設定された走行制御データであり、各コース区間に対応する制御値として与えられているとする。
【0216】
図28(A)(B)は、制御主の切り替えと、移動玩具の制御に使用される走行制御データの関係について説明するための図である。
【0217】
図28(A)は、所定のタイミングT1、T2、T3、・・・で(ここでは4区間毎)に制御主が切り替えられる様子を示している。最初の4区間(第1の区間K1)では制御主はゲーム装置P1であるが、T1のタイミングで制御主はゲーム装置P2に切り替えられ次の4区間(第2の区間K2)では制御主はゲーム装置P2となる。そしてT2のタイミングで制御主はゲーム装置P3に切り替えられ次の4区間(第3の区間K3)では制御主はゲーム装置P3になる。
【0218】
従って、第1の区間K1では、P1の走行制御データD1−DS1〜D1−DS4によって移動玩具は制御され、第2の区間K2では、P2の走行制御データD2−DS5〜D2−DS8によって移動玩具は制御され、第3の区間K3では、P3の走行制御データD3−DS9〜D3−DS13によって移動玩具は制御される。
【0219】
図28(B)は、所定のタイミングT1’、T2’、T3’、・・・で(ここでは1周毎)に制御主が切り替えられる様子を示している。1周目(第1の区間K1’)は制御主はゲーム装置P2であるが、T1’のタイミングで制御主はゲーム装置P4に切り替えられ2周目(第2の区間K2’)では制御主はゲーム装置P4となる。そしてT2’のタイミングで制御主はゲーム装置P3に切り替えられ、3周目(第3の区間K3’)は制御主はゲーム装置P6になる。
【0220】
従って、第1の区間K1’では、P2の走行制御データD2−DS1〜D2−DSMによって移動玩具は制御され、第2の区間K2’では、P4の走行制御データD4−DS1〜D4−DSNによって移動玩具は制御され、第3の区間K3’では、P6の走行制御データD6−DS1〜D6−DSNによって移動玩具は制御される。
【0221】
図29は、第1の実施の形態の移動玩具の制御主切り替え処理の一実施例(走行制御データを予め移動玩具の記憶させておく例)の処理の流れについて説明するためのフローチャートである。
ここでは、走行制御データを予め移動玩具の記憶させておいて、それを読み出して移動玩具1000を制御する場合について説明する。
【0222】
移動玩具は、走行開始に先立ち移動玩具の制御主となるグループのゲーム装置の情報及びグループを構成するゲーム装置に対応した走行制御データをゲーム装置から受信し、ゲーム装置の識別情報に関連づけて、記憶部に記憶する(ステップS100)。ここで移動玩具の制御主となるグループのゲーム装置の情報とは、例えばグループを構成するゲーム装置の数や識別情報等や、最初の制御主の情報等でもよい。
【0223】
セレクトボタンが押されると、最初の制御主を決定して、最初の制御主の識別情報を制御主指定情報に設定する(ステップS110)。制御主指定情報で指定されているゲーム装置に関連づけて記憶されているゲーム装置の走行制御データをワークメモリに設定する(ステップS120)。ここでセレクトボタンは、準備完了やレース開始を指示するボタンである。最初の制御主の決定は予め設定されている切り替え順位の最初に設定されているゲーム装置でもよいし、ランダムに決定してもよい。
【0224】
制御主の切り替えタイミングを検出すると、以下の処理を行う(ステップS130)。ここで制御主の切り替えタイミングは、割り込み信号等により検出してもよい。例えば、所定の時間経過毎に制御主を切り替える場合には、タイマーにより所定の時間の経過を検出したタイミングで制御主切り替え用の割り込みを発生させてもよい。
【0225】
また所定の区間毎に制御主を切り替える場合には、例えば移動玩具に設けられたセンサ(図3の50)がコースに設けられたマーカ(図1のMC1〜MC16)を検出したタイミングで制御主切り替え用の割り込みを発生させてもよい。
【0226】
またゲーム装置から送信される制御主切り替えコマンド等により制御主を切り替える場合には、当該制御主切り替えコマンド等を受信したタイミングで制御主切り替え用の割り込みを発生させてもよい。
【0227】
次の制御主を決定する処理を行い、次の制御主の識別情報を制御主指定情報に設定する
(ステップS140)。
【0228】
そして制御主指定情報で指定されているゲーム装置に関連づけて記憶されているゲーム装置の走行制御データをワークメモリに設定する(ステップS150)。例えば区間単位で制御主を切り替える場合には、ワークメモリの切り替えの発生した区間以降について新たな制御主の走行制御データを設定し、切り替えの発生する以前の区間については切り替え前の制御主の走行制御データをのこしておいてもよい。
【0229】
移動玩具は、ワークメモリに設定されたデータに基づいて、例えば図24で説明したようなモータ駆動処理を行い、減速や加速の制御を行うようにしてもよい。
【0230】
次に、制御主の切り替えが行われたことを告知する出力処理(音、ランプ点滅)を行う(ステップS160)。例えば発光素子(図3の52)を発光させて切り替えが行われたことを告知してもよい。なお各ゲーム装置毎に異なる発光パターン(ランプの点滅パターン)を記憶させておき、切り替えられた制御主のゲーム装置に対応した発光パターンで発光素子を点滅させるようにしてもよい。
【0231】
また移動玩具に音出力部を設け、制御主の切り替えが行われたことを告知する音や音楽を出力してもよい。なお各ゲーム装置毎に異なる音パターンや音楽を記憶させておき、切り替えられた制御主のゲーム装置に対応した音パターンや音楽を出力するようにしてもよい。
【0232】
グループを構成するすべての制御主に対する切り替えは終了したか否か判断し、終了していない場合にはステップS130に戻って、ステップS130〜S170の処理を繰り返す(ステップS170)。
【0233】
図30は、第1の実施の形態の移動玩具の制御主切り替え処理の他の実施例(走行制御データをリアルタイムに受信する例)の処理の流れについて説明するためのフローチャートである。
【0234】
セレクトボタンが押されると、最初の制御主を決定して、最初の制御主の識別情報を制御主指定情報に設定する(ステップS200)。
【0235】
ゲーム終了まで、以下の処理を行う(ステップS210)。
【0236】
走行制御データを受信したら(ステップS220)、受信した走行制御データが制御主指定情報で指定されている識別情報のゲーム装置が送信したものである場合に当該走行制御データをワークメモリに設定する(ステップS230)。
【0237】
制御主の切り替えタイミングを検出したら(ステップS240)、以下の処理を行う。
【0238】
まず、次の制御主を決定する処理を行い、次の制御主の識別情報を制御主指定情報に設定する(ステップS250)。
【0239】
次に、制御主の切り替えが行われたことを告知する出力処理(音、ランプ点滅)を行う(ステップS260)。
【0240】
そして、ゲーム装置に対して制御主切り替えが行われたことを示す制御主切り替え情報を無線通信で送信する(ステップS270)。
【0241】
この様に受信した走行制御データが制御主のものである場合にはワークメモリに記憶される。従って移動玩具は、図24で説明したようにワークメモリに記憶されている走行制御データに基づいて自機の移動を制御することで、次々に切り替えられる制御からの指示にしたがって移動を制御することができる。
【0242】
なお図24では走行制御データによって区間毎の制御値が設定され、移動玩具が区間毎の制御値に基づき移動を制御する構成について処理例を示しているが、この構成には限られない。
【0243】
例えば走行制御データとして、速度や加速度をアップ又はダウンさせるためのコマンドがゲーム装置からリアルタイムに送信され、移動玩具は当該コマンドに従って加速したり減速したりしてもよい。
【0244】
2.第2の実施の形態
第2の実施の形態では、移動玩具の制御主の切り替え処理を行うゲーム装置及び当該ゲーム装置と移動玩具とを含むゲームシステムについて説明する。
【0245】
第2の実施の形態のゲームシステムは移動玩具の制御主の切り替え処理を行う複数のゲーム装置(情報処理装置の一例)と、ゲーム装置の生成した走行制御データ(動作制御情報の一例)によって走行が制御される移動玩具とを含む。
【0246】
ここにおいて移動玩具の構成は、第1の実施の形態の図3〜図4で説明した構成と同様でもよい。ただし第2の実施の形態では、移動玩具は、送信主IDが所定の制御主用のIDである場合に、当該走行制御データに基づいて移動玩具の動作制御を行う。すなわち、第2の実施の形態では、移動玩具は複数のゲーム装置から走行制御データを受信することはできるが、受信した走行制御データに含まれる送信主IDが所定の制御主用のIDでない場合には、移動玩具の動作制御には使用しない。
【0247】
図31,図32は、第2の実施の形態におけるゲーム装置の制御主の切り替え制御について説明するための図である。本実施の形態ではゲームシステムを構成する複数のゲーム装置でグループを構成して、グループ内のゲーム装置の間で制御主を切り替える制御を、ゲーム装置が行う。制御主切り替えのタイミングや内容(どのゲーム装置が次の制御主になるかや、制御主となるゲーム装置の順番等)は、グループにおいて親機となるゲーム装置が決定して、グループを構成する他のゲーム装置(子機)に送信する構成でもよいし、グループ内のゲーム装置が個別に同じアルゴリズムの演算を行う構成(この場合すべてのゲーム装置で同じ演算を行う)でもよい。
【0248】
図31に、所定のタイミングT1、T2、T3、・・・で制御主が切り替えられた場合の、切り替えによって分割された各期間K1、K2、K3におけるグループを構成するゲーム装置P1、P2、P3の状態を示す。
【0249】
切り替えのタイミングは、例えばゲーム装置において、タイマーや時計を用いて時間の経過又は時刻を検出し、検出された時間の経過又は時刻に基づき切り替えタイミングを決定してもよい。また、移動玩具の位置(現在位置位置又は通過位置)を取得して、取得した位置(現在位置位置又は通過位置)に基づき、制御主を切り替えるタイミングを決定してもよい。この場合、位置の検出自体は移動玩具で行い、移動玩具が検出した位置情報をゲーム装置が受信することで、移動玩具の位置を取得する構成でもよい。
【0250】
期間K1の制御主はゲーム装置P1であるが、T1のタイミングで制御主の切り替えイベントが発生し、期間K2の制御主はゲーム装置P2となる。そしてT2のタイミングで制御主切り替えイベントが発生し、期間K3の制御主はゲーム装置P3になる。
【0251】
各ゲーム装置は、制御主切り替えのタイミングで、自機の制御主識別情報記憶部に、制御主となるゲーム装置の識別IDを記憶させ、記憶されている識別IDと自機の識別IDを比較し、一致した場合に制御主フラグ(SF)をオンにし、一致しない場合に制御主フラグ(SF)をオフにしてもよい。
【0252】
期間K1の制御主はゲーム装置P1であるため、各ゲーム装置の制御主情報記憶部にゲーム装置P1の識別ID’P001’がセットされる。期間K1において、ゲーム装置P1(識別ID’P001’)では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致するため制御主フラグ(SF)=ON(S期間)となる。また他のゲーム装置P2、P3、・・・では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致しないため制御主フラグ(SF)=OFF(NS期間)となる。
【0253】
期間K2の制御主はゲーム装置P2であるため、各ゲーム装置の制御主情報記憶部にゲーム装置P2の識別ID’P002’がセットされる。期間K2において、ゲーム装置P2(識別ID’P002’)では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致するため制御主フラグ(SF)=ONとなる。また他のゲーム装置P1、P3、・・・では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致しないため制御主フラグ(SF)=OFFとなる。
【0254】
期間K3の制御主はゲーム装置P3であるため、各ゲーム装置の制御主情報記憶部にゲーム装置P3の識別ID’P003’がセットされる。期間K3において、ゲーム装置P3(識別ID’P003’)では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致するため制御主フラグ(SF)=ONとなる。また他のゲーム装置P1、P2、・・・では、制御主情報記憶部に記憶された制御主情報と自機の識別IDが一致しないため制御主フラグ(SF)=OFFとなる。
【0255】
図32(A)〜(C)は、ゲーム装置P1〜P3が送信する走行制御データの構成を示している。同図に示すように、自機が制御主であるS期間(SF=ONの期間)に生成又は送信される走行制御データに含まれる送信主を示すエリアは所定の制御主用のID’S001’となっている(2022’−1,2022’−2,2022’−3)が、自機が制御主でないNS期間(SF=OFFの期間)に生成又は送信される走行制御データに含まれる送信主を示すエリアは自機の識別IDとなっている(2022−1,2022−2,2022−3)。
【0256】
ゲームシステムを構成する移動玩具は、受信した走行制御データに含まれる送信主を示すエリアが所定の制御主用のID’S001’となっている場合のみ、当該走行制御データを移動玩具の走行制御に使用する構成を有している。従ってゲーム装置側で使用可能な送信主IDの制御を行うことで、制御主の切り替えを行うことができる。
【0257】
図33は、第2の実施の形態が適用されるゲーム装置の機能ブロック図である。図6のゲーム装置と同じ構成については、同じ符号を付しており、同等の機能を有しているため、説明を省略する。
【0258】
制御主切り替え処理部150は、前記移動玩具の制御主を所与のタイミングで切り替える制御を行うもので、制御主となった情報処理装置に、送信主IDとして所定の制御主用のIDの使用を許可し、制御主でない情報処理装置には、送信主IDとして、前記所定の制御主用のIDを使用できないように制御する。
【0259】
また例えば図示していないタイマーや内部時計等を、時間の経過又は時刻を検出する時間/時刻検出手段として機能させ、制御主切り替え処理部150は、検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0260】
また制御主切り替え処理部150は、移動玩具の位置情報(現在位置位置又は通過位置の情報)を取得し、取得した位置情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0261】
また通信部196が、制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信した場合に、制御主切り替え処理部150は、切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定してもよい。
【0262】
また制御主切り替え処理部150は、予め設定された所定の規則に従って制御主に切り替える処理を行ってもよい。
【0263】
また制御主切り替え処理部150は、複数の情報処理装置の中からランダムに次の制御主を決定し、決定した制御主に切り替えてもよい。
【0264】
図34は、第2の実施の形態のゲーム装置の制御主切り替え処理の流れを示すフローチャートである。
【0265】
移動玩具の制御主となるグループのゲーム装置の登録を行う(ステップS300)。例えば、各ゲーム装置間で通信を行ってゲームに参加するゲーム装置を募り、通信が確立しゲーム参加を表明したゲーム装置でグループを構成し、グループを構成するゲーム装置の識別IDの登録を行ってもよい。
【0266】
セレクトボタンが押されると、最初の制御主を決定して、最初の制御主の識別情報を制御主指定情報に設定する(ステップS310)。最初の制御主は、グループに登録されているゲーム装置から所与のアルゴリズムに従って決定してもよい。
【0267】
ゲーム終了になるまで、以下の処理を繰り返す(ステップS320)。
【0268】
走行制御データの送信指示があるか否か判断し、ない場合にはステップS380の処理を行う。指示がある場合には(ステップS330)、自機が制御主に指定されているか否か判断する(ステップS340)。自機が制御主に指定されているか否かは、制御主指定情報に記憶されている制御主の識別IDと、自機の識別IDを比較して判断してもよい。また図31で説明したように制御主フラグが設定されている場合には当該フラグを参照して判断してもよい。
【0269】
自機が制御主に指定されている場合には、図32の2022’−1、2022’−2、2022’−3に示すように、送信主IDとして所定の制御主用のIDを使用して走行制御データを送信し(ステップS350)、自機が制御主に指定されていない場合には、図32の2022−1、2022−2、2022−3に示すように、送信主IDとして自機の識別Dを使用して走行制御データを送信する(ステップS360)。
【0270】
そして制御主の切り替えタイミングか否か判断し(ステップS370)、切り替えタイミングである場合には次の制御主を決定する処理を行い、次の制御主の識別情報を制御主指定情報に設定する(ステップS370)。
【0271】
図35は、第2の実施の形態の移動玩具の制御主切り替え処理の流れを示すフローチャートである。
セレクトボタンが押されたら(ステップS400)、ゲーム終了になるまで、以下の処理を行う。走行制御データを受信したか場合には(ステップS410)、受信した走行制御データが所定の制御主IDを使用したものか否か判断し(ステップS420)、所定の制御主IDを使用したものである場合には、走行制御データをワークメモリに設定する(ステップS430)。
【0272】
なお第2の実施の形態で、ゲーム装置が行う移動玩具の制御主の切り替え処理として、移動玩具の移動区間を複数に分割して、分割された区間毎に制御主を決定し、各区間に決定された制御主にたいして当該区間の動作制御情報の設定を許可し、それ以外の制御主に対しては当該区間の動作制御情報の設定ができないように制御してもよい。
【0273】
例えば図7〜図9で説明したコースデータの設定処理において、コース区間毎に制御主となるゲーム装置を決定し、図40に示すように各コース区間に対応づけて決定された制御主となるゲーム装置の識別IDを登録するようにしてもよい。各ゲーム装置において、自機の識別IDと各区間(図40のコース区間1200)の制御主として登録されている識別ID(図40の制御主の情報1210)を比較して、各区間の制御主が自機であるか否か判断してもよい。そして区間の制御主として、自機の識別IDが対応づけて登録されている場合に当該区間の走行制御データの設定ができ、それ以外の区間について走行制御データの設定ができないようにしてもよい。
【0274】
例えばコース区間CS1には制御主情報として’P001’が登録されているので、自機の識別IDが’P001’であるゲーム装置は、当該区間の走行制御データの設定を行うことができ、それ以外のゲーム装置は当該区間の走行制御データの設定を行うことができないようにする。
【0275】
また例えばコース区間CS2には制御主情報として’P002’が登録されているので、自機の識別IDが’P002’であるゲーム装置は、当該区間の走行制御データの設定を行うことができ、それ以外のゲーム装置は当該区間の走行制御データの設定を行うことができないようにする。
【0276】
3.第3の実施の形態
第3の実施の形態では、親機と子機を含む複数のゲーム装置が移動玩具に対し動作制御情報を送信して、移動玩具の動作を制御するゲームシステム(移動玩具制御システムの一例)について説明する。
【0277】
図36は第3の実施の形態のゲームシステムについて説明するための図である。
【0278】
第3の実施の形態のゲームシステムは、移動玩具100との間で無線通信を行う親機1010−1と前記親機1010−1との間で無線通信を行う子機1010−2、1010−3を含む複数の情報処理装置によって、移動玩具1000を無線で制御する移動玩具制御システムである。子機1010−2、1010−3は、入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報(例えば走行制御データ)を生成する移動玩具制御手段と、動作制御情報(例えば走行制御データ)P2−D、P3−Dを親機1010−1に無線送信するための処理を行う通信手段とを含む。
【0279】
親機1010−1は、子機1010−2、1010−3が送信した動作制御情報P2−D、P3−Dを無線で受信し、受信した動作制御情報例えば走行制御データ)P2−D、P3−Dを移動玩具1000に無線送信する通信手段を含む。
【0280】
ここで親機1010−1や子機1010−2、1010−3となるゲーム装置は、例えば図6で説明したゲーム装置と同じ構成を有していてもよい。ここにおいて親機1010−1の通信部は、子機1010−2、1010−3との間ではブルートゥース(Bluetooth)等を用いた電波によるワイヤレス通信を行い、移動玩具100との間では、赤外線通信等の光無線通信を行ってもよい。また子機1010−2、1010−3の通信部は、親機1010−1との間ではブルートゥース(Bluetooth)等を用いた電波によるワイヤレス通信を行い、移動玩具との間では無線通信が行えない構成でもよい。
【0281】
本実施の形態では、子機1010−2、1010−3と移動玩具の間で無線通信が行えない場合でも、子機は動作制御情報を一端親機に送信して、親機を介して子機に送信することができる。
【0282】
4.第4の実施の形態
第4の実施の形態では、複数の情報処理装置によって、複数の移動玩具を無線で制御するゲームシステム(移動玩具制御システムの一例)における同期処理について説明する。
【0283】
図37(A)(B)、図38(A)(B)は第4の実施の形態のゲームシステムについて説明するための図である。
【0284】
第4の実施の形態は、複数のゲーム装置によって、複数の移動玩具を無線で制御するゲームシステムである。複数のゲーム装置で、所定のグループを構成する。ここで所定のグループは、何らかの形で形成されていればよい。例えばプレーヤの入力によって形成されてもよいし、例えば移動玩具を用いたレースゲームへの参加の呼びかけに応じて参加を表明したゲーム装置でグループを形成してもよい。
【0285】
グループに属する各ゲーム装置は、それぞれが自機に対応する移動玩具の動作制御を行う。例えばグループを構成する複数のゲーム装置に対応した複数の移動玩具がレースゲームを行うようなゲームシステムでもよい。
【0286】
所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出し、所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出する。そして所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動する。
【0287】
所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かは、所定のグループを構成する各ゲーム装置1010−1、1010−2、1010−3、1010−4が他のゲーム装置に対して所定の信号の送信を行い、他のゲーム装置からの所定の信号の受信ができるか否かを検出することで判断することができる。
【0288】
例えば図37(A)では、ゲーム装置1010−1は他のゲーム装置1010−1、1010−3、1010−4との各通信1050−1、1050−2、1050−3が確立された状態であるので、第1の状態にある。しかしゲーム装置1010−4は他のゲーム装置1010−1、1010−3との各通信1050−3、1050−6は確立された状態にあるが、他のゲーム装置1010−2との通信1050−4は確立されていないので、第1の状態にはない。従って図37(A)では、所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が第1の状態にあるといえない。
【0289】
これに対し図37(B)では、全ゲーム装置1010−1、1010−2、1010−3、1010−4間の通信1050−1〜1050−6が確立された状態であるので、全ゲーム装置1010−1、1010−2、1010−3、1010−4は、第1の状態にあるといえる。
【0290】
例えば、グループを構成する各ゲーム装置が、無線LAN機能を備え、IEEE 802.11規格(例えば、IEEE 802.11b)に準拠している場合には、ブロードキャスト方式、ユニキャスト方式、あるいはマルチキャスト方式によるパケット通信(データ通信)によって、グループの他のゲーム装置への呼びかけ信号の送信(所定の信号の送信)を行い、グループを構成する他のゲーム装置から呼びかけ信号の受信(所定の信号の受信)をおこなってもよい。グループを構成するゲーム装置(送信相手)が特定できる場合にはユニキャスト方式で送信するようにしてもよい。また送信相手が特定できない場合にはブロードキャスト方式で送信するようにしてもよい。
【0291】
ブロードキャスト(Broadcast)方式とは、自機の通信可能範囲内に存在する不特定多数の相手(ノード)に向かってデータデータを含むパケットを送信する通信方式である。この方式では、自機の通信可能範囲の全体を意味する特殊なネットワークアドレスを指定することによってデータの送信を行なう。
【0292】
またユニキャスト(Unicast)方式とは、自機の通信可能範囲内で、単一のネットワークアドレスを指定して特定の相手(ノード)にデータ(データを含むパケット)を送信する通信方式であって、マルチキャスト(Multicast)方式とは、自機の通信可能範囲内で、複数の相手(ノード)のネットワークアドレスを指定して同じデータ(データを含むパケット)を送信する通信方式である。
【0293】
所定のグループを構成する全情報処理装置1010−1、1010−2、1010−3、1010−4が、各情報処理装置に対応する前記移動玩具1000−1、1000−2、1000−3、1000−4と通信可能な第2の状態にあるか否かは、所定のグループを構成する各ゲーム装置1010−1、1010−2、1010−3、1010−4が各情報処理装置に対応する前記移動玩具1000−1、1000−2、1000−3、1000−4に対して所定の信号の送信を行い、自機に対応する移動玩具から所定の信号に対する応答信号の受信ができるか否かを検出することで判断することができる。各ゲーム装置はユニキャスト方式で、自機に対応する移動玩具1000に呼びかけ送信を行い、移動玩具1000はユニキャスト方式で各ゲーム装置に応答送信を行ってもよい。
【0294】
例えば図38(A)では、全ゲーム装置1010−1〜1010−4は、自機に対応する移動玩具1000−1〜1000−4との通信1060−1〜1060−6が確立された状態であるので、全ゲーム装置1010−1、1010−2、1010−3、1010−4は、第2の状態にあるといえる。
【0295】
これに対し図38(B)では、ゲーム装置1010−3は、自機に対応する移動玩具1000−3との通信1060−3が確立されていないので、全ゲーム装置1010−1、1010−2、1010−3、1010−4は、第2の状態にあるはいえない。
【0296】
本実施の形態では、図37(B)のようにグループを構成する全ゲーム装置が第1の状態であって、かつ図38(A)のようにグループを構成する全ゲーム装置が第2の状態である場合に、所定のコマンドを同期を取って発動する。ここで、所定のコマンドとは、例えばスタートコマンド(各移動玩具にスタートの指示を行うコマンド)でもよい。また同期を取ってとは、各ゲーム装置が同時に所定のコマンドを発動する場合でもよいし、各ゲーム装置が所定の間隔をおいて所定のコマンドを発動する場合でもよい。
【0297】
図39は、第4の実施の形態のゲームシステムを構成する各ゲーム装置の同期処理の流れを示すフローチャートである。例えば各ゲーム装置は、所定のボタンを押された場合や所定のコマンドが発動された場合に以下の処理を行うようにしてもよい。
所定のグループを構成する他のゲーム装置すべてに対して第1のテスト通信を行い通信可能か否かを判断する(ステップS500)。所定のグループを構成する他のゲーム装置は、例えばゲーム開始の段階で登録されていてもよい。第1のテスト通信は、例えば他のゲーム装置に対する呼びかけ送信と、他のゲーム装置が行った呼びかけ送信の受信とを含んでもよい。
【0298】
所定のグループを構成する他のゲーム装置すべてと通信可能(ステップS510)になるまでステップS500〜S510の処理を繰り返す。所定のグループを構成する他のゲーム装置すべてと通信可能になると(ステップS510)、第1の通信確立の旨の通知信号を所定のグループを構成する他のゲーム装置すべてに対して送信する(ステップS520)。
【0299】
所定のグループを構成する他のゲーム装置すべてから第1の通信確立の旨の通知信号を受信する(ステップS530)まで、ステップS520〜S530の処理を繰り返す。
【0300】
所定のグループを構成する他のゲーム装置すべてから第1の通信確立の旨の通知信号を受信する(ステップS530)と、自機に対応する移動玩具に対して第2の通信を行い通信可能か否かを判断する(ステップS540)。移動玩具と通信可能(ステップS550)になるまで、ステップS540〜S550の処理を繰り返す。
【0301】
移動玩具と通信可能(ステップS550)になると、第2の通信確立の旨の通知信号を所定のグループを構成する他のゲーム装置すべてに対して送信する(ステップS560)。
【0302】
所定のグループを構成する他のゲーム装置すべてから第2の通信確立の旨の通知信号を受信(ステップS570)するまで、ステップS560〜S570の処理を繰り返す。
【0303】
所定のグループを構成する他のゲーム装置すべてから第2の通信確立の旨の通知信号を受信(ステップS570)すると、所定のタイミングで所定のコマンドを発動(ステップS580)。
【0304】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語(移動玩具、原動機、動作制御データ、動作特性データ、実動作結果データ、動作シミュレーション結果データ等)として引用された用語(移動玩具、モータ、走行制御データ、走行特性データ、実走行結果データ、走行シミュレーション結果データ等)は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【0305】
また、移動玩具の制御手法、マーカの検知手法、走行制御データの設定手法、移動玩具の減速・加速制御手法、原動機の駆動手法、シミュレーション処理手法等は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含むことができる。 また本発明が適用される移動玩具、ゲーム装置は、本発明で説明したような構成の移動玩具やゲーム装置に限定されるものではなく、種々の変形実施が可能である。
【符号の説明】
【0306】
CSi、CSi+1 コース区間、DSi、DSi+1 走行制御データ、
MCi、MCi+1 マーカ、DTi、DTi+1 デューティ、
MT 移動玩具、DF 差分情報、CP1〜CP16 コースブロック、
10 移動玩具、12 ボディ、30 モータ、50 センサ、52 発光素子、
60 コース、61、62 第1、第2の周回コース、
100 処理部、102 シミュレーション処理部、104 送信処理部、
106 受信処理部、108 認証処理部、110 比較処理部、112 表示制御部、
114 成績評価部、116 アップロード処理部、140 動作制御情報生成部、150 制御主切り替え処理部160、操作部、170 記憶部、
172 走行特性データ記憶部、173 コースデータ記憶部、
174 走行制御データ記憶部、176 キャラクタデータ記憶部、
178 描画バッファ、190 タッチパネル型表示部、191 表示部、
192 音出力部、194 補助記憶装置、196 通信部、
300 回路基板、310 制御部、330 記憶部、340 発光素子駆動部、
350 駆動部、360 センサコントローラ、370 外部インターフェース部

【特許請求の範囲】
【請求項1】
移動玩具であって、
ボディと、
前記ボディに搭載され、移動玩具を移動させるための原動機と、
制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の制御を行う制御部と、
前記動作制御情報を、外部の情報処理装置から受け取る外部インターフェース部と、
を含み、
前記制御部は、
前記制御主となる外部の情報処理装置を所与のタイミングで切り替える制御主切り替え処理部を含み、
制御主の切り替えが行われた場合には、切り替え後の制御主となる外部の情報処理装置で生成された動作制御情報に基づき移動玩具の動作制御を行うことを特徴とする移動玩具。
【請求項2】
請求項1において、
前記動作制御情報を記憶する記憶部を、を含み、
前記制御部は、
記憶部に記憶された前記動作制御情報に基づき、移動玩具の動作制御を行うことを特徴とする移動玩具。
【請求項3】
請求項1又は2のいずれかにおいて、
時間の経過又は時刻を検出する時間/時刻検出部をさらに含み、
前記制御主切り替え処理部は、
検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定することを特徴とする移動玩具。
【請求項4】
請求項1乃至3のいずれかにおいて、
前記移動玩具の位置を検出する位置検出部をさらに含み、
前記制御主切り替え処理部は、
検出された位置の情報に基づき、前記制御主を切り替えるタイミングを決定することを特徴とする移動玩具。
【請求項5】
請求項1乃至4のいずれかにおいて、
前記外部インターフェース部は、
制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信し、
前記制御主切り替え処理部は、
前記切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定することを特徴とする移動玩具。
【請求項6】
請求項1乃至5のいずれかにおいて、
前記制御主切り替え処理部は、
予め設定された所定の規則に従って制御主に切り替える処理を行うことを特徴とする移動玩具。
【請求項7】
請求項1乃至6のいずれかにおいて、
前記制御主切り替え処理部は、
ランダムに次の制御主を決定し、決定した制御主に切り替える処理を行うことを特徴とする移動玩具。
【請求項8】
請求項1乃至7のいずれかにおいて、
前記外部インターフェース部は、
前記制御主の切り替えが行われた場合に、前記制御主の切り替えが行われたことを示す制御主切り替え情報を無線通信で送信することを特徴とする移動玩具。
【請求項9】
請求項1乃至8のいずれかにおいて、
前記制御主の切り替えが行われた場合に、前記制御主の切り替えが行われたことを外部に告知するための出力を行う制御主切り替え告知部を、さらに含むことを特徴とする移動玩具。
【請求項10】
移動玩具に動作制御情報を送信する情報処理装置を制御するためのプログラムであって、
前記移動玩具の制御主を所与のタイミングで切り替える制御主切り替え処理部と、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記移動玩具に送信するための処理を行う通信部として、コンピュータを機能させ、
前記制御主切り替え処理部は、
前記制御主となった情報処理装置に、送信主を示す情報として所定の制御主用のIDの使用を許可し、制御主でない情報処理装置には、前記所定の制御主用のIDを使用できないように制御することを特徴とするプログラム。
【請求項11】
請求項10において、
時間の経過又は時刻を検出する時間/時刻検出部としてコンピュータを機能させ、 前記制御主切り替え処理部は、
検出された時間の経過又は時刻に基づき、前記制御主を切り替えるタイミングを決定することを特徴とするプログラム。
【請求項12】
請求項10又は11のいずれかにおいて、
前記制御主切り替え処理部は、
移動玩具の位置情報を取得し、取得した位置情報に基づき、前記制御主を切り替えるタイミングを決定することを特徴とするプログラム。
【請求項13】
請求項10乃至12のいずれかにおいて、
前記通信部は、
制御主の切り替えタイミングを指示する切り替えタイミング指示情報を無線で受信し、 前記制御主切り替え処理は、
前記切り替えタイミング指示情報に基づき、前記制御主を切り替えるタイミングを決定することを特徴とするプログラム。
【請求項14】
移動玩具に動作制御情報を送信する情報処理装置を制御するためのプログラムであって、
前記移動玩具の制御主を所与のタイミングで切り替える制御主切り替え処理部と、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記移動玩具に送信するための処理を行う通信部として、コンピュータを機能させ、
前記制御主切り替え処理部は、
移動玩具の移動区間を複数に分割して、分割された区間毎に制御主を決定し、各区間に決定された制御主にたいして当該区間の動作制御情報の生成を許可し、それ以外の制御主に対しては当該区間の動作制御情報の生成ができないように制御することを特徴とするプログラム。
【請求項15】
請求項10乃至14のいずれかにおいて、
前記制御主切り替え処理部は、
予め設定された所定の規則に従って制御主に切り替える処理を行うことを特徴とするプログラム。
【請求項16】
請求項10乃至14のいずれかにおいて、
前記制御主切り替え処理部は、
ランダムに次の制御主を決定し、決定した制御主に切り替える処理を行うことを特徴とするプログラム。
【請求項17】
コンピュータ読み取り可能な情報記憶媒体であって、請求項10乃至16のいずれかに記載のプログラムが記憶されていることを特徴とする情報記憶媒体。
【請求項18】
移動玩具との間で第1の無線通信が可能な親機と、前記親機との間で第2の無線通信が可能な子機を含む複数の情報処理装置を含む移動玩具制御システムであって、
前記子機は、
入力情報に基づき、前記移動玩具の動作を制御するための動作制御情報を生成する動作制御情報生成部と、
前記動作制御情報を前記親機に第1の無線通信で送信するための処理を行う第1の無線通信部と、を含み、
前記親機は、
前記子機が送信した動作制御情報を第1の無線通信で受信する第1の無線通信部と、
前記子機から受信した前記動作制御情報を前記移動玩具に第2の無線通信で送信する第2の無線通信部を含むことを特徴とする移動玩具制御システム。
【請求項19】
複数の情報処理装置によって、複数の移動玩具を無線で制御する移動玩具制御システムであって、
所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出する手段と、
所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出する手段と、
所定のグループを構成する全情報処理装置が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動するコマンド発動手段と、
を含む移動玩具制御システム。
【請求項20】
請求項19に記載の移動玩具制御システムにおいて、
前記コマンド発動手段は、
少なくとも1つの情報処理装置から所定のトリガコマンドが入力されたことを検出した場合に、同期を取って所定のコマンドを発動する移動玩具制御システム。
【請求項21】
複数の情報処理装置によって、複数の移動玩具を無線で制御する移動玩具制御方法であって、
所定のグループを構成する全情報処理装置が所定のグループを構成する他の情報処理装置と通信可能な第1の状態にあるか否かを検出するステップと、
所定のグループを構成する全情報処理装置が、各情報処理装置に対応する前記移動玩具と通信可能な第2の状態にあるか否かを検出するステップと、
所定のグループを構成する全情報処理装置が、第1の状態かつ第2の状態である場合に、所定のコマンドを同期を取って発動するステップと、
を含む移動玩具制御方法。

【図6】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate

【図36】
image rotate

【図37】
image rotate

【図38】
image rotate

【図39】
image rotate

【図40】
image rotate

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2011−130829(P2011−130829A)
【公開日】平成23年7月7日(2011.7.7)
【国際特許分類】
【出願番号】特願2009−290930(P2009−290930)
【出願日】平成21年12月22日(2009.12.22)
【出願人】(000134855)株式会社バンダイナムコゲームス (1,157)
【Fターム(参考)】