JP5523306B2 - ゲーム装置、走行シミュレーション方法及びプログラム - Google Patents

ゲーム装置、走行シミュレーション方法及びプログラム Download PDF

Info

Publication number
JP5523306B2
JP5523306B2 JP2010505997A JP2010505997A JP5523306B2 JP 5523306 B2 JP5523306 B2 JP 5523306B2 JP 2010505997 A JP2010505997 A JP 2010505997A JP 2010505997 A JP2010505997 A JP 2010505997A JP 5523306 B2 JP5523306 B2 JP 5523306B2
Authority
JP
Japan
Prior art keywords
course
data
toy
travel
traveling
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
JP2010505997A
Other languages
English (en)
Other versions
JPWO2009123310A1 (ja
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.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
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 Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2010505997A priority Critical patent/JP5523306B2/ja
Publication of JPWO2009123310A1 publication Critical patent/JPWO2009123310A1/ja
Application granted granted Critical
Publication of JP5523306B2 publication Critical patent/JP5523306B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H17/00Toy vehicles, e.g. with self-drive; ; Cranes, winches or the like; Accessories therefor
    • A63H17/14Endless-track automobiles or trucks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/211Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/214Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
    • A63F13/2145Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/65Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor automatically by game devices or servers from real world data, e.g. measurement in live racing competition
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/80Special adaptations for executing a specific game genre or game mode
    • A63F13/803Driving vehicles or craft, e.g. cars, airplanes, ships, robots or tanks
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H17/00Toy vehicles, e.g. with self-drive; ; Cranes, winches or the like; Accessories therefor
    • A63H17/26Details; Accessories
    • A63H17/262Chassis; Wheel mountings; Wheels; Axles; Suspensions; Fitting body portions to chassis
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H18/00Highways or trackways for toys; Propulsion by special interaction between vehicle and track
    • A63H18/12Electric current supply to toy vehicles through the track
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63HTOYS, e.g. TOPS, DOLLS, HOOPS OR BUILDING BLOCKS
    • A63H18/00Highways or trackways for toys; Propulsion by special interaction between vehicle and track
    • A63H18/16Control of vehicle drives by interaction between vehicle and track; Control of track elements by vehicles
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/105Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals using inertial sensors, e.g. accelerometers, gyroscopes
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1068Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad
    • A63F2300/1075Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals being specially adapted to detect the point of contact of the player on a surface, e.g. floor mat, touch pad using a touch screen
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/69Involving elements of the real world in the game world, e.g. measurement in live races, real video
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8017Driving on land or water; Flying

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Toys (AREA)

Description

本発明は、ゲーム装置、走行シミュレーション方法及びプログラ等に関する。
従来より、複数のコースパーツを連結することで構成されるコース上を走行させて楽しむ車両玩具(移動玩具)が知られている。このような車両玩具の従来例としては例えば特許文献1、2がある。
特許文献1には、コース状態に応じて、所定のプログラムに基づく自動操縦と、遠隔コントローラによる手動操縦とを切り替えることができる車両玩具走行装置が開示されている。この車両玩具走行装置では、自動操縦用プログラムは、外部端末において事前に設定されて、人形を模した記憶装置に書き込まれる。そして、この記憶装置を車両玩具に接続することで、自動操縦用プログラムを車両玩具に転送する。
また特許文献2には、ゲーム装置でゲームプレイすることで得られた制御情報を車両玩具に転送し、この制御情報に基づいて車両玩具の走行を制御する技術が開示されている。
特開平6−269574号公報 特開2000−210476号公報
しかしながら、特許文献1、2の従来技術では、高度なアルゴリズムの走行制御プログラムを作成して、車両玩具に転送し、車両玩具の走行を制御している。このため、プレーヤは、コーナーでの操舵開始タイミングやブレーキタイミングや、コーナーでの走行アルゴリズム等を詳細に設定する必要があり、車両玩具の走行の制御を手軽に行うことができないという課題があった。
また、車両玩具を用いたこれまでのホビーレーシングカーでは、パーツ交換によるラップタイムの向上に限界があると共に、どのパーツを交換すれば、ラップタイムの向上に効果的なのかを、プレーヤは、客観的に評価できなかった。このため、プレーヤにすぐに飽きられてしまうという課題があった。
この点、特許文献2の従来技術では、プレーヤがゲーム装置でゲームプレイすることで得られた制御情報により、車両玩具を走行させることで、ゲームの面白味の幅を広げている。
しかしながら、この特許文献2の従来技術では、実際のコースとゲーム上のコースはリンクしていなかった。また実際の車両玩具の走行特性とゲーム上の車の走行特性もリンクしていなかった。このため、ゲーム装置でのセッティングを車両玩具側に反映させたり、逆に車両玩具の実際の走行結果を、ゲーム装置側に反映させることができないという課題があった。
本発明の幾つかの態様によれば、移動玩具を仮想的にシミュレーション走行させてチューニング設定の幅を広げることを可能にするゲーム装置、走行シミュレーション方法、プログラ及び情報記憶媒体等を提供できる。
本発明の一態様は、コース上を移動する移動玩具の走行特性に基づき設定されたデータである走行特性データを記憶する走行特性データ記憶部と、前記移動玩具が移動する前記コースのコース特性に基づき設定されたデータであるコースデータを記憶するコースデータ記憶部と、前記コースでの前記移動玩具の走行を制御するためのデータである走行制御データを記憶する走行制御データ記憶部と、前記移動玩具に対応して設けられ前記走行特性データに基づきその走行特性が設定される仮想移動体を、前記コースに対応して設けられ前記コースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行うシミュレーション処理部とを含むゲーム装置に関係する。
本発明の一態様によれば、シミュレーション処理を行うためのデータとして、移動玩具の走行特性に応じて設定された走行特性データと、移動玩具が移動するコースの特性に応じて設定されたコースデータと、移動玩具の走行を制御する走行制御データが用意される。そして、これらの走行特性データとコースデータと走行制御データに基づいて、仮想移動体を仮想コースにおいて走行させるシミュレーション処理が行われる。この場合に、仮想移動体は、移動玩具に対応して設けられ、走行特性データに基づきその走行特性が設定される。また仮想コースは、移動玩具が対応するコースに対応して設けられ、コースデータに基づいてそのコース特性が設定される。そして、当該仮想移動体を当該仮想コースにおいて走行制御データにしたがって走行させるシミュレーション処理が行われる。このようにすれば、ゲーム装置でのシミュレーション処理により、移動玩具を仮想的に試走させることができるため、プレーヤのチューニング設定の幅を広げることが可能になる。
また本発明の一態様では、前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、受信した前記実走行結果データを表示部に表示する制御を行う表示制御部を含んでもよい。
このようにすれば、走行制御データを移動玩具に送信し、その走行制御データに対応する実走行結果データを移動玩具から受信することで、プレーヤは、自身が設定した走行制御データが、最適な設定か否かを客観的に判断することが可能になる。
また本発明の一態様では、前記表示制御部は、前記実走行結果データを、前記コースの各コース区間に対応づけて表示する制御を行ってもよい。
このように実走行結果データを各コース区間に対応づけて表示することで、各コース区間に設定した走行制御データの妥当性についても客観的に判断できるようになる。
また本発明の一態様では、前記表示制御部は、前記シミュレーション処理により得られた走行シミュレーション結果データに対して、受信した前記実走行結果データを関連づけて表示する制御を行ってもよい。
このようにすれば、プレーヤは、シミュレーションの走行と現実の走行の違いを、客観的に認識できる。従って、プレーヤは、この違いを考慮しながら、仮想的なチューニングを行うことが可能になり、シミュレーションによるチューニングの精度を向上できる。
また本発明の一態様では、前記送信処理部は、前記コースの各コース区間に対応づけられた前記走行制御データを、前記移動玩具に送信するための処理を行い、前記受信処理部は、前記コースの各コース区間での前記移動玩具の実走行ラップタイムデータを、前記実走行結果データとして受信するための処理を行い、前記表示制御部は、受信した前記実走行ラップタイムデータを、前記コースの各コース区間に対応づけて表示する制御を行ってもよい。
このように実ラップタイムデータを各コース区間に対応づけて表示すれば、プレーヤは、各コース区間に設定した走行制御データが、各コース区間でのラップタイム向上にどの程度結びついたのかを、客観的に評価できる。
また本発明の一態様では、前記送信処理部は、前記コースの各コース区間に対応づけられた前記走行制御データを、前記移動玩具に送信するための処理を行い、前記受信処理部は、前記コースの各コース区間での前記移動玩具の実加減速データを、前記実走行結果データとして受信するための処理を行い、前記表示制御部は、受信した前記実加減速データを、前記コースの各コース区間に対応づけて表示する制御を行ってもよい。
このように実加減速データを各コース区間に対応づけて表示すれば、プレーヤは、各コース区間に設定した走行制御データが、各コース区間での移動玩具の加速特性や減速特性にどの程度結びついたのかを、客観的に評価できる。
また本発明の一態様では、前記送信処理部は、前記コースの各コース区間において前記移動玩具の原動機に供給される動力の大きさを設定するデータを、前記走行制御データとして前記移動玩具に送信するための処理を行い、前記移動玩具は、前記コースに設けられた複数のマーカの各マーカを検知するセンサを有し、前記センサからの検知情報に基づいて前記コースの第iのコース区間から第i+1のコース区間に前記移動玩具が移動したと判断した場合に、前記第i+1のコース区間に対応づけられた第i+1の走行制御データと、前記第iのコース区間に対応づけられた第iの走行制御データとの差分情報に基づいて、前記移動玩具の減速制御及び加速制御の少なくとも一方を行い、前記受信処理部は、前記差分情報に基づき減速制御又は加速制御された前記移動玩具の前記実走行結果データを、受信するための処理を行ってよい。
このような走行制御データを用いれば、第i+1のコース区間において、移動玩具の減速や加速を明示的に指定しなくても、第i、第i+1のコース区間への第i、第i+1の走行制御データの設定だけで、移動玩具は減速又は加速するようになり、走行制御データの設定の簡素化を図れる。
また本発明の一態様では、前記送信処理部は、前記走行制御データとして、コースデータ取得用走行制御データを前記移動玩具に送信するための処理を行い、前記受信処理部は、送信された前記コースデータ取得用走行制御データに基づき前記移動玩具が前記コースを走行することで得られたコースデータ取得用実走行結果データを、前記移動玩具から受信するための処理を行い、前記シミュレーション処理部は、受信した前記コースデータ取得用実走行結果データにより取得されたコースデータに基づいて、シミュレーション処理を行ってもよい。
このようにすれば、コース上で移動玩具を実際に走行させるだけで、そのコースデータが自動取得されて、シミュレーション処理に活用できるようになる。
また本発明の一態様では、前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、受信した前記実走行結果データが正当なデータであるか否かを認証する処理を行う認証処理部を含んでもよい。
このようにすれば、不正な方法で実走行結果データが作成されてしまう事態を防止でき、実走行結果データの正当性を担保できる。
また本発明の一態様では、前記認証処理部は、前記移動玩具が前記コースのスタート地点からスタートして前記コースのゴール地点を通過したと判定された場合に、前記実走行結果データが正当なデータであると判断してもよい。
このようにすれば、実際にコース上で走行していないデータが、実走行結果データとして不正に作成されてしまう事態を防止できる。
また本発明の一態様では、前記送信処理部は、前記コースの各コース区間に対応づけられた前記走行制御データを前記移動玩具に送信するための処理を行い、前記移動玩具は、前記コースに設けられた複数のマーカの各マーカを検知するセンサを有し、前記センサからの検知情報に基づいて、前記コースの各コース区間に対応づけられた前記走行制御データを読み出すことで、前記移動玩具の走行を制御すると共に、前記認証処理部は、スタート地点に対応するコース区間とゴール地点に対応するコース区間を前記移動玩具が通過したと判断された場合に、その走行により得られた前記実走行結果データが正当なデータであると判定してもよい。
このようにすれば、走行制御データの読み出しのために使用するマーカを有効活用して、実走行結果データの認証処理を実現できる。
また本発明の一態様では、受信した前記実走行結果データが正当なデータであると判断された場合に、正当なデータであると判断された前記実走行結果データを、ネットワークを介してアップロードする処理を行うアップロード処理部を含んでもよい。
このようにすれば、不正な方法で作成された走行結果データが、アップロードされてしまう事態を防止できる。
また本発明の一態様では、前記移動玩具のパーツ変更に対応して前記走行特性データの設定内容を変更する設定変更部を含み、前記シミュレーション処理部は、変更後の前記走行特性データに基づいて、前記仮想移動体を前記仮想コースで走行させるシミュレーション処理を行ってもよい。
このようにすれば、移動玩具のパーツ変更が行われた場合に、それに応じて走行特性データの設定内容も変更されるため、パーツ変更を反映させたシミュレーション処理を実現できる。
また本発明の一態様では、前記設定変更部は、前記移動玩具が有する原動機の変更に対応して、前記走行特性データのうちの加速特性データを変更し、前記シミュレーション処理部は、変更後の前記加速特性データに基づきその加速特性が設定される前記仮想移動体を、前記仮想コースで走行させるシミュレーション処理を行ってもよい。
このようにすれば、移動玩具の原動機が変更された場合に、原動機の変更に対応するように、走行特性データのうちの加速特性データの設定内容が変更されるため、原動機の変更を反映させたシミュレーション処理を実現できる。
また本発明の一態様では、前記設定変更部は、前記移動玩具が有するタイヤの変更に対応して、前記走行特性データのうちのコーナリング特性データを変更し、前記シミュレーション処理部は、変更後の前記コーナリング特性データに基づきそのコーナリング特性が設定される前記仮想移動体を、前記仮想コースで走行させるシミュレーション処理を行ってもよい。
このようにすれば、移動玩具のタイヤが変更された場合に、タイヤの変更に対応するように、走行特性データのうちのコーナリング特性データの設定内容が変更されるため、タイヤの変更を反映させたシミュレーション処理を実現できる。
また本発明の一態様では、前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、受信した前記実走行結果データと、前記シミュレーション処理により得られた走行シミュレーション結果データとの比較処理を行う比較処理部を含んでもよい。
このような比較処理を行えば、シミュレーション精度の向上等を実現できる。
また本発明の一態様では、表示部の表示制御を行う表示制御部を含み、前記表示制御部は、前記比較処理での比較結果に基づいて、前記移動玩具のパーツ変更のアドバイス画面を表示する制御を行ってもよい。
このようにすれば、プレーヤは、このアドバイス画面でのアドバイスに基づいて、変更するパーツを決定することが可能になる。
また本発明の一態様では、前記移動玩具に対応づけられるキャラクタのキャラクタデータのパラメータ値を、前記移動玩具の走行シミュレーション結果データに基づいて変更する処理を行うパラメータ処理部と、変更された前記キャラクタデータの前記パラメータ値に対応した走行制御の指示情報を、前記移動玩具に送信するための処理を行う送信処理部を含んでもよい。
このようにすれば、走行シミュレーションの結果データによりキャラクタデータのパラメータ値を変更し、変更されたパラメータ値に対応した指示情報を移動玩具に送信して、移動玩具の走行を制御することが可能になる。
また本発明の一態様では、前記パラメータ処理部は、前記キャラクタデータの前記パラメータ値として、前記移動玩具の最高速度及び最低速度、前記移動玩具の加速度、前記移動玩具の減速度、前記移動玩具の制動力、及び前記移動玩具の反応速度の少なくとも1つを変更する処理を行い、前記送信処理部は、前記移動玩具の前記最高速度及び最低速度の指示情報、前記加速度の指示情報、前記減速度の指示情報、前記制動力の指示情報、及び前記反応速度の指示情報の少なくとも1つを、前記移動玩具に送信するための処理を行ってもよい。
このようにすれば、移動玩具の最高速度及び最低速度、加速度、減速度、制動力、及び反応速度の少なくとも1つのパラメータ値が、シミュレーション処理の結果に基づいて変更されると共に、変更されたパラメータ値に対応した走行制御の指示情報を、移動玩具に送信して、移動玩具の走行を制御することが可能になる。
本発明の他の態様は、コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを記憶する走行制御データ記憶部と、前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、受信した前記実走行結果データを表示部に表示する制御を行う表示制御部とを含むゲーム装置に関係する。
本発明の他の態様は、コース上を移動する移動玩具の走行特性に基づき設定されたデータである走行特性データを走行特性データ記憶部に記憶し、前記移動玩具が移動する前記コースのコース特性に基づき設定されたデータであるコースデータをコースデータ記憶部に記憶し、前記コースでの前記移動玩具の走行を制御するためのデータである走行制御データを走行制御データ記憶部に記憶し、前記移動玩具に対応して設けられ前記走行特性データに基づきその走行特性が設定される仮想移動体を、前記コースに対応して設けられ前記コースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行う、移動玩具のための走行シミュレーション方法に関係する。
本発明の他の態様は、コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを走行制御データ記憶部に記憶し、前記走行制御データを前記移動玩具に送信するための処理を行い、送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行い、受信した前記実走行結果データを表示部に表示する制御を行う、移動玩具のための走行シミュレーション方法に関係する。
本発明の他の態様は、コンピュータ読み取り可能な情報記憶媒体であって、上記に記載の走行シミュレーション方法をコンピュータに実行させるプログラムに関係する。
本発明の他の態様は、コンピュータ読み取り可能な情報記憶媒体であって、上記に記載のプログラムを記憶した情報記憶媒体に関係する。
図1A、図1Bは車両玩具が走行するコースの説明図。 本実施形態が適用される車両玩具の外観斜視図。 本実施形態が適用される車両玩具の内部構成を示す平面図。 本実施形態が適用される車両玩具の機能ブロック図。 本実施形態が適用されるゲーム装置の外観図。 本実施形態が適用されるゲーム装置の機能ブロック図。 走行制御データの設定手法を説明するための図。 走行制御データの設定手法を説明するための図。 走行制御データの設定手法を説明するための図。 図10A〜図10Cは、走行特性データの設定手法を説明する図。 コースデータの設定手法を説明する図。 図12A、図12Bは実走行結果データを受信して表示する手法の説明図。 図13A、図13Bは実走行結果データと走行シミュレーション結果データを比較して表示する手法の説明図。 図14A、図14Bは加減速データを説明する図。 図15A〜図15Cはコースデータの自動取得手法の説明図。 実走行結果データの認証処理の説明図。 図17A、図17Bは、パーツ変更のアドバイス画面の説明図。 ゲーム装置側の詳細な処理のフローチャート。 ゲーム装置側の詳細な処理のフローチャート。 ゲーム装置側の詳細な処理のフローチャート。 ゲーム装置側の詳細な処理のフローチャート。 ゲーム装置側の詳細な処理のフローチャート。 図23A、図23Bは本実施形態の減速制御、加速制御の手法の説明図。 図24A、図24Bは差分情報に基づく減速制御、加速制御の手法の説明図。 図25A〜図25Dは差分情報に基づく減速制御、加速制御の手法の説明図。 図26A、図26BはPWM駆動を用いた減速制御、加速制御の手法の説明図。 図27A、図27BはPWM駆動を用いた減速制御、加速制御の手法の説明図。 駆動部の具体的な構成例を示す図。 駆動部での具体的な信号波形例を示す図。 車両玩具側の詳細な処理のフローチャート。 実走行結果データの具体的な表示例。 キャラクタ選択画面の例。 図33A〜図33Dはキャラクタデータのパラメータ値を用いた走行制御手法の説明図。 図34A、図34Bはキャラクタデータのパラメータ値を用いた走行制御手法の説明図。 図35A、図35Bはコースパーツやマーカの変形例。 車両玩具の変形例。 車両玩具の機能ブロック図の変形例。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.コース
図1Aに、本実施形態の移動玩具の一例である車両玩具を走行させるコースの例を斜視図で示す。なお以下では移動玩具として、車の形状を模した車両玩具を例にとり説明するが、本実施形態の移動玩具はこれに限定されない。
車両玩具10(広義には移動玩具)が走行するコース60は、図1Aに示すように、直線形状、カーブ形状、スロープ形状等の各種形状の複数のコースパーツCP1〜CP16を連結することで構成される。具体的には、コース60は、第1の周回コース61と、この第1の周回コース61に後続するように配置される第2の周回コース62により構成される。第1の周回コース61は、コースパーツCP1〜CP8により構成される。第2の周回コース62は、コースパーツCP9〜CP16により構成され、第1の周回コース61と略同一のコース形状になっている。
第1の周回コース61は、直線コースパーツCP1、カーブコースパーツCP2、スロープコースパーツCP3、カーブコースパーツCP4、スロープコースパーツCP5、カーブコースパーツCP6、直線コースパーツCP7、カーブコースパーツCP8を順に連結することで構成される。
直線コースパーツ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とほぼ同様の構成・形状になっているため、その説明を省略する。
図1Bに、図1AのA−Aに示す部分の断面図を示す。図1Bに示すように、コース60の各部では、第1の周回コース61と第2の周回コース62が並列され、各周回コース61、62に対し両サイドに、それぞれ側壁63L、63R、64L、64Rが設けられている。そして、各周回コース61、62の略中央には、黒色のセンターラインCL1、CL2が設けられている。
また本実施形態では、図1Aに示すように、各コースパーツCP1〜CP16の連結部付近に、白色のマーカMC1〜MC16が設けられており、そのうち、直線コースブロックCP1の一端に設けられるマーカMC1がスタートライン(スタートエリア)となる。そして、マーカMC1をスタートラインとして走行開始した車両玩具10は、ゲーム装置(外部端末)から転送される走行制御データによって走行が制御されて、コース60上を反時計回りで走行する。そして、本実施形態では、これらのマーカMC1〜MC16でコース60を区切ることによって、コース区間CS1〜CS16が設定されている。即ち、コースパーツCP1〜CP16に対応して、コース区間CS1〜CS16が設定される。なお、本実施形態のコースは、図1A、図1Bの形状に限定されず、種々の変形実施が可能である。
2.車両玩具
図2に、本実施形態の移動玩具の一例である車両玩具10の外観斜視図を示す。本実施形態では、図2に示すように、車両玩具10のボディ12は、スポーツカー等の外形を模した外装部14と、前輪18と後輪20(接地部)が一対ずつ設けられるシャシ16とを含む。これらの前輪18および後輪20は、シャシ16に搭載されたモータ等の原動機によって駆動されて、車両玩具10を移動させる。
図2に示すように、ボディ12の四隅には、ガイドローラ(プレート)21、22、23、24(24について図3参照)がそれぞれ設けられている。これらのガイドローラ21〜24は、コース60を走行中に図1Bに示す側壁63L、63R、64L、64Rにヒットすることで、車両玩具10のコース60上での進行を円滑にすると共に、車両玩具10の走行の安定性を担保するための部材である。
なお、本実施形態では、車両玩具10は、ボディ12(外装部14)がスポーツカーを模した形状になっているが、車両玩具10は、これに限らず様々な形態の自動車(例えば、トラック等)、或いは二輪車(例えば、バイク等)の外形を有していてもよい。また、本実施形態の移動玩具は、車両玩具に限定されず、例えば、競馬の競走馬等の動物や漫画等の各キャラクタを模した人形等をコースに沿って移動させるものにも適用可能である。
図3は、本実施形態の車両玩具10の内部構成を示す平面図であり、ボディ12の外装部14を取り外した状態を示す。本実施形態では、車両玩具10は、前輪18(18L、18R)及び後輪20(20L、20R)をそれぞれ左右に一対ずつ有し、これら前輪18、後輪20を軸支する前輪用車軸(シャフト)26、後輪用車軸28に、シャシ16の後方側に搭載されるモータ30の駆動が伝達され、前輪18及び後輪20が回転駆動される四輪駆動車両玩具である。なお、所与の動力を供給して車両玩具10を走行移動させるための機械的エネルギーに変換する原動機は、モータ30に限定されず、例えば小型エンジン等の他の原動機であってもよい。
後輪用車軸28には、後輪20を駆動させるための後輪駆動用ギア32が設けられ、当該後輪駆動用ギア32を介して、当該後輪用車軸28にモータ30の駆動が伝達される。また、後輪用車軸28には、前輪用車軸26にモータ30の駆動を伝達するための後輪側クラウンギア34が設けられており、前輪用車軸26に駆動を伝達するための駆動伝達軸36の端部に設けられる後輪側駆動伝達ギア38と噛合している。
一方、前輪用車軸26には、駆動伝達軸36を介してモータ30の駆動を伝達するための前輪側クラウンギア40が設けられており、駆動伝達軸36の他端に設けられる前輪側駆動伝達ギア42と噛合している。このため、モータ30が駆動すると、モータ30の駆動が後輪駆動用ギア32、後輪側駆動伝達ギア38、駆動伝達軸36、前輪側駆動伝達ギア42、および前輪側クラウンギア40を介して伝達され、本実施形態の車両玩具10が四輪駆動となる。なお、本実施形態の車両玩具10のモータ30に所与の動力を供給して車両玩具10を走行させるための機械的エネルギーに変換する動力伝達機構は、図3の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
また、前輪用車軸26は、シャシ16に対し軸部44を介して軸支される前輪軸支持部46に回転自在に支持されている。このため、前輪18は、前輪用車軸26を介して水平軸周りに回転可能とすることによって車両玩具10を走行させ、かつ軸部44で軸支される前輪軸支持部46を介して垂直軸周りに揺動可能とすることによって、車両玩具10の走行方向を変化させる。
シャシ16の略中央には、モータ30に対して動力となる電力を供給する電源として乾電池48(動力源)が設置されている。乾電池48の設置場所は、シャシ16の略中央に限定されないが、重量を有する乾電池48をシャシ16の略中央に設置することによって、車両玩具10の重心が略中央に移動し、車両玩具10の走行動作が安定するようになるので、乾電池48の設置場所は、シャシ16の略中央に設置することが好ましい。なお、本実施形態では、電力供給源として乾電池48を設置する車両玩具10としているが、電力供給を充電式によるものとすることも可能である。
更に、車両玩具10がコース60上に走行中にコース60と対向するボディ12の接地面側、すなわちシャシ16の裏面側の前方には、当該接地面側のコース60への対向を検知するセンサ50が設けられている。このセンサ50は、コース60に設けられた複数のマーカMC1〜MC16の各マーカを検知する。具体的には本実施形態では、センサ50は、検知対象の輝度(輝度情報)を検知する。そしてセンサ50からの検知結果(検知信号)に基づいて、シャシ16の裏面側となる接地面側が、コース60に対向しているか否かを検知する。
具体的には、センサ50は、図1Bに示すコース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の接地部)の間に配置されることが好ましい。
本実施形態では、車両玩具10が通常通りコース60を走行している場合は、当該センサ50がコース60と対向するので、所与の間隔でコース60上に設けられている白色のマーカMC1〜MC16を読み取れる。一方、車両玩具10がジャンプしたり、コースアウト、転倒等した場合には、車両玩具10の接地面がコース60に対向しなくなるので、所定判定時間以上経過しても、マーカMC1〜MC16を読み取れなくなる。これによりジャンプ等を検出できる。
なお、センサ50としては、例えば反射型のフォトセンサ(赤外線センサ)を用いることができる。この反射型のフォトセンサは、LED等の発光素子を有し、当該発光素子で発光した光を、検知対象で反射させて、その反射光を検知するセンサである。但しセンサ50は、反射型のフォトセンサには限定されず、距離センサ、バーコード読み取りセンサ、或いはCCD等の各種センサを用いることができる。
また、車両玩具10のスタート後(レース開始後、原動機がオンになた後)に、常時、センサ50による検知対象の検知を実行するようにしてもよい。即ち、スタート後、常にセンサ50による検知を行い、得られた検知結果のデータを記憶部330に蓄積して行く。このとき、例えば検知結果のデータを記憶部330の図示しないリングバッファに格納すうようにしてもよい。この場合には、リングバッファの全ての格納領域に検知結果データが書き込まれると、その後は検知結果が上書きされることになるため、リングバッファに格納される検知結果データが所定時間毎に更新されるようになる。
車両玩具10のボディ12(シャシ16)の後端側には、ブレーキランプ等として機能する発光素子52L、52Rが設けられており、車両玩具10の速度変化時(例えば減速時又は加速時等)に点灯する。これにより、減速時のブレーキランプの点灯等を擬似的に表現できる。
図4に、本実施形態の車両玩具(移動玩具)10の機能ブロック図の例を示す。車両玩具10のボディ12内には、車両玩具10の各構成要素を制御するための回路部品が実装された回路基板(システム基板)300が設けられている。この回路基板300は、図4に示すように、制御部310、記憶部330、発光素子駆動部340、駆動部350、センサコントローラ360、外部インターフェース(I/F)部370を含む。
制御部310は、車両玩具10(移動玩具)の制御を行う。具体的には、記憶部330から読み出されたデータやプログラムなどに基づいて、車両玩具10全体の制御や、回路基板300の各構成要素(駆動部等)の制御を行う。本実施形態では、制御部310は、例えばセンサ50からの検知情報や、記憶部330に記憶されるデータ(走行制御データ、動力設定データ、電力設定データ)に基づいて、モータ(広義には原動機)30を駆動するための制御を行う。この制御部310の機能は、各種プロセッサ(CPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
記憶部330は、各種プログラムやデータを記憶するものであり、その機能はRAMやROMなどにより実現できる。例えば制御部310は、記憶部330から読み出されたプログラムにより動作し、記憶部330をワーク領域として各種処理を行う。また外部のゲーム装置(外部端末)から受信した走行制御データなどの各種データは、記憶部330に保存される。なお、メモリーカードなどの携帯型情報記憶装置の装着が可能な移動玩具の場合には、当該携帯型情報記憶装置によって、記憶部330の一部の機能を実現してもよい。
発光素子駆動部340は、LED等の発光素子52を駆動する。例えば本実施形態では、制御部310は、車両玩具10の減速制御時(ブレーキング時)に、発光素子52を発光させる制御を行う。具体的には、車両玩具10の減速時に、制御部310からの指示信号に基づいて、発光素子駆動部340が発光素子52を駆動して発光させ、ブレーキランプの点灯を疑似的に表現する。この場合の発光期間(減速期間)は、例えば後述する各コース区間の前半の第1の期間である。或いは、走行制御データに基づいて減速制御を行うと判断した場合、一定の期間だけ、発光素子52を発光させるようにしてもよい。
駆動部350(モータ駆動部)は、制御部310の制御の下でモータ30を駆動する。例えばモータ30(原動機)は、車両玩具10(移動玩具)のボディ12に搭載され、所与の動力(電力)が供給されて車両玩具10を走行(移動)させる。駆動部350はこのモータ30を駆動する。
例えば車両玩具10を走行させる場合には、駆動部350はモータ30をPWM駆動する。この場合のPWM駆動のデューティは、記憶部330から読み出された走行制御データ(動力設定データ、電力設定データ)により設定される。そして、車両玩具10の走行速度は、PWM駆動のデューティにより制御できる。また車両玩具10の加速制御を行う場合には、例えば高いデューティ(例えば100パーセント)に対応する電圧をモータ30に印加する。一方、減速制御を行う場合には、例えば通常走行時とは逆極性の電圧をモータ30に印加する。
また本実施形態では、センサ50からの検知結果に基づいて、ボディ12の接地面側がコース60に所定の判定時間以上対向していないと判断された場合に、モータ30への電力(動力)の供給をオンからオフに切り替えて、モータ30を停止させる。即ちPWM駆動を停止して、モータ30の回転動作を停止させる。この場合に、モータ30の慣性による回転動作を、逆極性の電圧印加により十分に減速した後に、電力供給を停止してもよい。
センサコントローラ360は、センサ50の制御等を行うコントローラである。具体的には、センサ50からの検知信号を受けて、検知信号に対応するデータを制御部310に出力する。例えばセンサ50が反射型のフォトセンサである場合には、センサ50は、LED等の発光素子により実現される投光部と、検知対象からの反射光を受光する受光部を有する。この場合にセンサコントローラ360は、発光素子を発光させたり、受光部からの検知信号を検出する処理などを行う。
外部インターフェース(I/F)部370は、外部機器とのインターフェース処理を行うものである。具体的には、外部機器であるゲーム装置から走行制御データなどのデータを受信したり、ゲーム装置に対して実走行結果データなどのデータを送信する。
この場合の外部I/F部370によるインターフェースは、RS232CやUSBなどの有線のインターフェースにより実現してもよいし、赤外線などの無線のインターフェースにより実現してもよい。例えば赤外線通信(IRDA)により、外部I/F部370のインターフェースを実現する場合には、車両玩具10の例えば裏面側に赤外線の受光センサを設ける。そしてゲーム装置側(ゲーム装置本体やゲーム装置に装着されるICカード)の発光素子からの赤外線を、この受光センサで検知することで、ゲーム装置からの走行制御データ(動作制御データ)等のデータを、車両玩具10にダウンロードする。また車両玩具10の例えば裏面側に赤外線の発光素子を設ける。そして、この発光素子からの赤外線を、ゲーム装置側の受光センサにより検知することで、車両玩具10の走行結果データ(動作結果データ)等のデータを、ゲーム装置にアップロードする。
そして本実施形態では、記憶部330は、コース60での移動玩具(狭義には車両玩具10)の走行を制御するためのデータである走行制御データを記憶する。この走行制御データは、移動玩具の各コース区間での速度等を設定するためのデータである。
またセンサ50は、コース60に設けられた複数のマーカMC1〜MC16の各マーカを検知する。例えば移動玩具が各マーカの設置位置を通過した時に、その通過を検知し、移動玩具が、どのコース区間に位置するのかを検出する。
そして記憶部330は、走行制御データとして、コース60の各コース区間において原動機(狭義にはモータ30)に供給される動力の大きさを設定する走行制御データ(動力設定データ)を、コース60の各コース区間に対応づけて記憶する。この走行制御データは、例えばモータ30に供給される電力(実効電圧)を設定するためのデータであり、具体的にはモータ30をPWM駆動する際のデューティを設定するためのデータである。
制御部310は、センサ50からの検知情報に基づいて、コース60の第iのコース区間(iは自然数)から第i+1のコース区間に移動玩具が移動したと判断した場合に、第i+1のコース区間に対応づけられた第i+1の走行制御データ(第i+1の電力設定データ)と、第iのコース区間に対応づけられた第iの走行制御データ(第iの電力設定データ)との差分情報(差分値)に基づいて、移動玩具の減速制御及び加速制御の少なくとも一方を行う。この場合、例えば減速制御(急減速)のみを行ってもよいし、加速制御(急加速)のみを行ってもよい。或いは、減速制御及び加速制御の両方を行ってもよい。
更に具体的には制御部310は、差分情報に基づき減速制御や加速制御を行うと判断した場合には、第i+1のコース区間における前半の第1の期間において、第i+1の走行制御データに対応する第i+1の速度に近づくように、移動玩具を減速したり、加速する制御を行う。例えば第iのコース区間での第iの速度から第i+1の速度に移動玩具を減速させたり、加速させる。そして第i+1のコース区間における後半の第2の期間において、移動玩具を第i+1の速度で走行させるための制御を行う。例えば定速の第i+1の速度で走行するように制御する。
この場合に、減速制御や加速制御を行う第1の期間の長さを、差分情報に基づいて設定してもよい。例えば差分値が大きいほど第1の期間の長さを長くする。
例えば原動機であるモータ30をPWM駆動する場合には、駆動部350は、第iのコース区間では、第iの走行制御データにより設定される第iのデューティでモータ30をPWM駆動し、第i+1のコース区間では、第i+1の走行制御データにより設定される第i+1のデューティでモータ30をPWM駆動する。
更に具体的には、駆動部350は、差分情報に基づき減速制御を行うと判断された場合には、第i+1のコース区間における前半の第1の期間において、通常走行時の電圧とは逆極性の電圧をモータ30に印加する。例えば通常走行時に正の電圧を印加する場合には、減速時には負の電圧を印加して、モータ30の回転にブレーキングをかける。そして駆動部350は、後半の第2の期間において、第i+1のデューティでモータ30をPWM駆動する。これにより移動玩具を、減速し、その後に第i+1のデューティで設定される速度で定速走行させることが可能になる。
また駆動部350は、差分情報に基づき加速制御を行うと判断された場合には、第i+1のコース区間における前半の第1の期間において、第i+1のデューティよりも高いデューティに対応する電圧をモータ30に印加する。例えばデューティ=100パーセントに対応する正極性の電圧をモータ30に印加する。一方、後半の第2の期間において、第i+1のデューティでモータ30をPWM駆動する。これにより移動玩具を、加速し、その後に第i+1のデューティで設定される速度で定速走行させることが可能になる。
また駆動部350は、第iのデューティと第i+1のデューティとの差分(絶対値)が大きくなればなるほど長くなるように、第1の期間の長さを設定する。そして設定された第1の期間において移動玩具の減速制御又は加速制御を行う。このようにすれば、差分が大きくなればなるほど、移動玩具が十分に減速又は加速されるようになる。
3.ゲーム装置
図5に、本実施形態のゲーム装置(画像生成装置)の外観図を示す。ここではゲーム装置の一例として携帯型ゲーム装置を示している。なお本実施形態のゲーム装置は、このような携帯型ゲーム装置には限定されず、例えば携帯型ゲーム装置以外のゲーム装置や、ゲームプログラムの実行が可能な携帯型情報端末や携帯電話機などの種々のゲーム装置に適用できる。
図5のゲーム装置は、タッチパネル型の表示部190と、通常の表示部191を有する。また操作部として機能する方向指示キー(十字キー)400、操作ボタン402や、音出力部として機能するスピーカ404、406を有する。また情報記憶媒体として機能するICカード410(ゲームカード、ゲームカートリッジ)が着脱自在に装着されるカードスロット412を有する。このICカード410には、ゲームプログラム(ゲームデータ)が記憶される。なおスタイラスペン420は、タッチパネル型の表示部190へのタッチ操作を、プレーヤ(ユーザ)の指の代わりに行うためのものである。
表示部190、191には種々の画像(メニュー画面、シミュレーション画像、ゲーム画像)が表示される。これらの表示部190、表示部191は、TFTなどのカラー液晶ディスプレイにより構成できる。そしてタッチパネル型の表示部190では、カラー液晶ディスプレイの上面(或いは下面)にタッチパネルが一体的に形成されており、これによりタッチ操作による操作入力が可能になる。
例えばタッチパネル型の表示部190には、後述する走行制御データの設定画面が表示される。また表示部191には、シミュレーション画像(ゲーム画像)が表示される。具体的には、コース60に対応する仮想コース430(コース60を模した仮想空間内のコース)が表示される。また車両玩具10に対応する仮想移動体440(車両玩具を模した移動オブジェクト)が表示され、仮想移動体440が仮想コース430で走行する様子が表示される。なお、これらの仮想移動体440、仮想コース430は、表示部に表示されるオブジェクトであってもよいし、非表示のオブジェクトであってもよい。
図6に本実施形態のゲーム装置の機能ブロック図の例を示す。なお本実施形態のゲーム装置は図6の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、方向指示キー、操作ボタン、或いはジョイスティックなどにより実現できる。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(DRAM、VRAM)などにより実現できる。この記憶部170は、走行特性データ記憶部172、コースデータ記憶部173、走行制御データ記憶部174、キャラクタデータ記憶部176、描画バッファ178を含む。
走行特性データ記憶部172は走行特性データを記憶する。この走行特性データは、コース上を移動する移動玩具の走行特性(加速特性、ブレーキング特性、コーナリング特性等)に基づき設定されたデータである。
コースデータ記憶部173はコースデータ(コース特性データ)を記憶する。このコースデータは、移動玩具が移動するコースのコース特性(コース長、コース幅、コーナー曲率等)に基づき設定されたデータである。
走行制御データ記憶部174は走行制御データを記憶する。この走行制御データ(動作制御データ)は、コースでの移動玩具の走行(速度、加速度、旋回等)を制御するためのデータである。
キャラクタデータ記憶部176はキャラクタデータ(パイロットデータ、ドライバデータ)を記憶する。ここで、キャラクタは、移動玩具を擬似的(仮想的)に操作(搭乗)するものとして、仮想的に設定されるものである。例えばゲームにおいては、ゲーム空間を走行する車のドライバとして、仮想的なキャラクタが設定される。本実施形態では、このようなキャラクタの概念を、移動玩具に対しても拡張している。即ち、実在しないドライバが、あたかも移動玩具を操縦しているかのような仮想現実をプレーヤに体感させるために、本実施形態ではこのようなキャラクタデータを用意する。このキャラクタデータの実体は、例えばキャラクタ名などのキャラクタ識別情報や、キャラクタの能力或いはステータス等を表す各種パラメータである。このパラメータとしては、例えばキャラクタ(プレーヤ)の経験値、技術(技量)、耐久力(体力)、判断力、反射神経、或いは運動能力などを数値的に表す能力パラメータやステータスパラメータがある。またキャラクタデータに基づいて移動玩具の走行制御を行う場合、ドライバであるキャラクタの走行に関連するパラメータとして、最高速度、最低速度、加速度、減速度、制動力(ブレーキ)、或いは反応速度などのパラメータを考えることができる。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、ICカード(メモリーカード)、光ディスク(CD、DVD)、HDD(ハードディスクドライブ)、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
タッチパネル型の表示部190は、プレーヤ(ユーザ)が種々の操作を行ったり、本実施形態により生成された画像を表示するためのものであり、例えば、LCD、有機ELなどのディスプレイと、それに一体的に形成されたタッチパネルなどにより実現できる。タッチパネル方式としては、抵抗膜方式(4線式、5線式)、静電容量結合方式、超音波表面弾性波方式、赤外線走査方式などがある。
表示部191は、本実施形態により生成された画像を表示するためのものであり、例えばLCD、有機ELなどのディスプレイにより実現できる。なお表示部191としてタッチパネル型のディスプレイを用いてもよい。
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォン端子などにより実現できる。
補助記憶装置194(補助メモリ、2次メモリ)は、記憶部170の容量を補うために使用される記憶装置であり、SDメモリーカード、マルチメディアカードなどのICカードにより実現できる。この補助記憶装置194は脱着自在になっているが、内蔵されるものであってもよい。この補助記憶装置194は、ゲームの途中結果などのセーブデータや、プレーヤ(ユーザ)の個人的な画像データや音楽データなどを保存するために使用される。
通信部196は、有線や無線の通信網(ネットワーク)を介して外部(例えば移動玩具、サーバ、他のゲーム装置等)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
例えばゲーム装置と移動玩具との間でデータの送受信を行う場合には、通信部196の機能は、RS232CやUSBなどの規格にしたがってデータ転送を行う転送コントローラにより実現できる。この場合に、この転送コントローラを、図5のICカード410に内蔵させてもよい。またICカード410に、カードなどの外部情報記憶媒体の情報を読み取るバーコードリーダ等のコントローラを更に内蔵させてもよい。またゲーム装置と移動玩具との間で、通信部196により無線(例えば赤外線通信)によりデータを送受信するようにしてもよい。或いは、USBメモリなどの携帯型記憶装置を用いて、ゲーム装置と移動玩具との間でデータを送受信してもよい。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170、補助記憶装置194)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理(シミュレーション処理)、画像生成処理、或いは音生成処理などを行う。この場合のゲーム処理としては、ゲームの内容やゲームモードを決定する処理、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、シミュレーション処理部102、送信処理部104、受信処理部106、認証処理部108、比較処理部110、表示制御部112、成績評価部114、アップロード処理部116、パラメータ処理部120、設定変更部130を含む。なおこれらの一部の構成要素(例えば認証処理部、比較処理部等)を省略する構成としてもよい。
シミュレーション処理部102は、移動玩具に対応する仮想移動体を移動(動作)させるシミュレーションを行う。例えばコースに対応する仮想コース上で仮想移動体を走行させるシミュレーション処理を行う。
具体的にはシミュレーション処理部102は、移動玩具に対応して設けられ走行特性データに基づきその走行特性が設定される仮想移動体を、コースに対応して設けられコースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、走行制御データにしたがって走行(仮想走行)させるシミュレーション処理を行う。そして、走行シミュレーションの結果データを生成する。
この場合のシミュレーション処理は、通常のレーシングゲームと同様に、仮想移動体の移動情報(位置、回転角度、速度、或いは加速度)を、1フレーム(1/60秒)毎に順次求める処理を行うことで実現してもよい。即ち、仮想移動体の加速性能、最高速性能、ブレーキング性能、或いはコーナリング性能等を、走行特性データにより設定する。また、コースデータを、通常のレーシングゲームと同様の手法により設定する。例えばコースに沿って設定された複数のサンプリングポイントの各サンプリングポイントに対して、コース幅やコース方向などを対応づけたコースデータを用意する。そしてこのコースデータを用いて、移動玩具が走行する実際のコース(例えば、基本コースや店舗の特設コース等)に対応した仮想コースを、仮想空間(ゲーム空間)内に構築する。そして、レーシングゲームで一般的に使用される自動走行アルゴリズムにより、仮想移動体を仮想コース内で走行させるシミュレーション処理を行う。そして必要であれば、図5に示すように、仮想移動体440が仮想コース430上で走行する様子を、表示部191に表示する。
或いは、このような仮想移動体のリアルタイムなシミュレーション走行処理は行わずに、走行特性データやコースデータや走行制御データを入力データとし、ラップタイムなどの走行シミュレーション結果データを出力データとするテーブルデータを用いて、シミュレーション処理を実現してもよい。このテーブルデータは、記憶部170の図示しないテーブルデータ記憶部に記憶される。そしてシミュレーション処理部102は、このテーブルデータを用いて、シミュレーション処理を実行する。この場合のテーブルデータは、例えば移動玩具のメーカが、実際の移動玩具を実際のコースで走行させることで、様々な条件のテーブルデータを用意する。例えば、同じコースで同じ種類(車種)の移動玩具であっても、移動玩具に装着されるパーツが異なる場合には、異なった走行シミュレーション結果データになるように、複数のテーブルデータの各テーブルデータを作成する。そして、作成したテーブルデータを、ゲームソフトのデータとして情報記憶媒体180に格納したり、ネットワーク、通信部196を介して外部からダウンロードできるようにする。
送信処理部104は、移動玩具に対してデータを送信するための処理を行う。例えば送信するデータを記憶部170に用意したり、データの送信を通信部196に指示する。具体的には、送信処理部104は、走行制御データを移動玩具に送信するための処理を行う。例えばコースの各コース区間に対応づけられた走行制御データ(動力設定データ、電力設定データ)を送信する。或いは走行制御データとして、コースデータ取得用の走行制御データを移動玩具に送信してもよい。
受信処理部106は、移動玩具からのデータを受信するための処理を行う。例えばデータの受信を通信部196に指示したり、受信したデータを記憶部170に保存する。具体的には、受信処理部106は、送信処理部104により送信された走行制御データに基づき移動玩具がコースを走行することで得られた実走行結果データを、移動玩具から受信するための処理を行う。この場合に、コースの各コース区間での移動玩具の実走行ラップタイムデータを、実走行結果データとして受信してもよいし、コースの各コース区間での移動玩具の実加減速データを、実走行結果データとして受信してもよい。或いは、送信されたコースデータ取得用走行制御データに基づき移動玩具がコースを走行することで得られたコースデータ取得用の実走行結果データを、受信してもよい。
認証処理部108は、移動玩具から受信したデータの認証処理を行う。例えば受信した実走行結果データが正当なデータ(アップロード等が許可されるデータ)であるか否かを認証する。具体的には、移動玩具がコースのスタート地点からスタートしてコースのゴール地点を通過したと判定された場合に、実走行結果データが正当なデータであると判断する。例えば、スタート地点に対応するコース区間とゴール地点に対応するコース区間を移動玩具が通過したと、センサからの検知情報に基づき判断された場合に、その走行により得られた実走行結果データが正当なデータであると判断する。この場合に、コースの全てのコース区間(マーカ)を通過(検知)したことを条件に、その実走行結果データが正当なデータであると判断してもよい。或いは、移動玩具がコースでジャンプして、センサによる検出が読み飛ばされることを考慮し、100パーセントよりも小さい一定の割合(例えば90パーセント)以上のコース区間(マーカ)を通過(検知)したことを条件に、正当なデータであると判断してもよい。
比較処理部110は、データの比較処理を行う。例えば、受信処理部106により受信された実走行結果データと、シミュレーション処理部102でのシミュレーション処理により得られた走行シミュレーション結果データとの比較処理を行う。この場合の比較処理としては、例えば各コース区間での実走行ラップタイムと、そのコース区間でのシミュレーションラップタイムを比較し、その差分を求める処理などがある。或いは、各コース区間での実加減速データと、そのコース区間でのシミュレーション加減速データの比較処理を行ってもよい。そして、このような比較処理を行うことで、実走行結果を向上させるのに必要なパーツを特定する。そして表示制御部112は、この比較処理での比較結果に基づいて、移動玩具のパーツ変更のアドバイス画面(変更パーツ表示画面)を表示する制御を行う。
表示制御部112は、表示部190、191の表示制御を行う。例えば処理部100で行われる種々の処理(シミュレーション処理、ゲーム処理)の結果に基づいて、描画バッファ178への画像の描画処理を行い、これにより画像(例えば図5の走行制御データ設定画面の画像、シミュレーション画像)を生成し、生成された画像を表示部190、191に表示する。この場合に、生成する画像は、いわゆる2次元画像であってもよいし、3次元画像であってもよい。そして3次元画像を生成する場合には、まず、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、或いは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を描画バッファ178(フレームバッファ、中間バッファなどのピクセル単位で画像情報を記憶できるバッファ。VRAM)に描画する。これにより、仮想空間(オブジェクト空間)内において仮想カメラ(所与の視点)から見える画像が生成される。
そして本実施形態では表示制御部112は、実走行結果データを、コースの各コース区間に対応づけて表示する制御を行う。具体的には、実走行結果データであるラップタイムデータや加減速データを、コースの各コース区間に対応づけて表示する。或いは、シミュレーション処理により得られた走行シミュレーション結果データに対して、実走行結果データを関連づけて表示してもよい。
成績評価部114(成績演算部)は、プレーヤのプレイ成績(走行成績、得点、ポイント、勝敗等)の評価処理(演算処理)を行う。例えば、受信した実走行結果データ(実動作結果データ)に基づいて、移動玩具についてのプレーヤのプレイ成績(ラップタイム等の実走行結果)を評価する。或いはプレーヤのゲームプレイのプレイ成績を評価してもよい。
アップロード処理部116は、データのアップロード処理を行う。具体的には、通信部196及びネットワークを介して、プレーヤの実走行結果データなどのプレイ成績を、外部のサーバ等にアップロードする処理を行う。これにより、サーバの管理の下で、プレーヤの実走行結果データのランキング表示などが可能になる。この場合に、受信した実走行結果データが正当なデータであると認証処理部108により判断された場合に、正当なデータであると判断された実走行結果データを、ネットワークを介してアップロードしてもよい。即ち正当な実走行結果データについてはアップロードを許可し、不正な実走行結果データについてはアップロードを許可しないようにする。
パラメータ処理部120は、キャラクタデータのパラメータ値に対する種々の処理を行う。具体的には、受信処理部106により受信された実走行結果データに基づいて、キャラクタデータのパラメータ値を変更する処理を行う。そして設定変更部130は、パラメータ値が変更されたキャラクタデータに基づいて、走行制御データの設定内容を変更する。更に具体的には、パラメータ処理部120は、実走行結果データに基づいて、プレーヤのプレイ成績が高いと評価された場合に、キャラクタデータのパラメータ値を上昇させる。例えば、プレーヤのプレイ成績が、判定基準となるプレイ成績よりも高いと、成績評価部114により評価された場合に、キャラクタデータのパラメータ値(例えば経験値、技術等のパラメータ値)を上昇させる。設定変更部130は、キャラクタデータのパラメータ値が上昇した場合に、走行制御データの設定内容を優位な設定内容に変更する。即ちパラメータ値が上昇する前の走行制御データよりも、移動玩具の走行結果が優位になるように、走行制御データを変更する。
或いはパラメータ処理部120は、シミュレーション処理部102での走行シミュレーション結果データに基づいて、キャラクタデータのパラメータ値を変更する処理を行う。そして設定変更部130は、パラメータ値が変更されたキャラクタデータに基づいて、走行制御データの設定内容を変更する。更に具体的には、パラメータ処理部120は、シミュレーション結果データに基づいて、プレーヤのシミュレーションでのプレイ成績が高いと評価された場合に、キャラクタデータのパラメータ値を上昇させる。設定変更部130は、キャラクタデータのパラメータ値が上昇した場合に、走行制御データの設定内容を優位な設定内容に変更する。
そして、送信処理部104は、変更されたキャラクタデータのパラメータ値に対応した走行制御の指示情報を、移動玩具に送信するための処理を行う。このようにすれば、走行シミュレーション結果によりキャラクタデータのパラメータ値を変更し、変更されたパラメータ値に対応した指示情報を移動玩具に送信して、その走行を制御することが可能になる。
具体的には、キャラクタデータのパラメータ値として、キャラクタが対応づけられる移動玩具の最高速度及び最低速度、加速度、減速度、制動力、或いは反応速度などのパラメータ値が用意される。そしてパラメータ処理部120は、キャラクタデータのパラメータ値として、移動玩具の最高速度及び最低速度、加速度、減速度、制動力、及び反応速度の少なくとも1つを変更する処理を行う。すると、送信処理部104は、移動玩具の最高速度及び最低速度の指示情報、加速度の指示情報、減速度の指示情報、制動力の指示情報、及び反応速度の指示情報の少なくとも1つを、移動玩具に送信するための処理を行う。このようにすれば、移動玩具の最高速度等のパラメータ値が、シミュレーション処理の結果に基づいて変更され、変更されたパラメータ値に対応した走行制御の指示情報を、移動玩具に送信して、その走行を制御することが可能になる。
設定変更部130は、種々の設定の変更処理を行う。例えば設定変更部130は、移動玩具のパーツ変更に対応して走行特性データの設定内容を変更する処理を行う。例えばプレーヤが、自身が所有する移動玩具のモータ、タイヤ等のパーツを変更し、後述するパーツの選択画面等において、その変更を入力(登録)すると、設定変更部130は、それに応じて走行特性データの設定内容(走行シミュレーションのアルゴリズムのパラメータや、使用するテーブルデータ等)を変更する。そしてシミュレーション処理部102は、変更後の走行特性データに基づいて、仮想移動体を仮想コースで走行させるシミュレーション処理を行う。
具体的には設定変更部130は、移動玩具が有する原動機(モータ、エンジン)の変更に対応して、走行特性データのうちの加速特性データ(馬力、トルクのデータ)を変更する。例えば、プレーヤが移動玩具の原動機を別の種類の原動機に取り替えた場合には、それに応じて仮想移動体の加速特性(馬力、トルク)も変更する。そしてシミュレーション処理部102は、変更後の加速特性データに基づきその加速特性が設定される仮想移動体を、仮想コースで走行(疑似走行、仮想走行)させるシミュレーション処理を行う。また設定変更部130は、移動玩具が有するタイヤの変更に対応して、走行特性データのうちのコーナリング特性データ(グリップ能力、旋回能力のデータ)を変更する。例えば、プレーヤが移動玩具のタイヤを別の種類のタイヤに取り替えた場合には、それに応じて仮想移動体のコーナリング特性も変更する。そしてシミュレーション処理部102は、変更後のコーナリング特性データに基づきそのコーナリング特性が設定される仮想移動体を、仮想コースで走行させるシミュレーション処理を行う。
また設定変更部130は、走行制御データ(動作制御データ)の設定内容を変更する処理を行う。例えば、移動玩具に対応づけられたキャラクタデータに基づき、走行制御データの設定内容を変更する処理を行う。この場合の走行制御データの設定内容の変更処理としては、例えば、キャラクタデータに応じて、走行制御データのデータ値自体を増加させたり減少させる処理がある。或いは、キャラクタデータに応じた走行制御を移動玩具に指示する指示情報(コマンド、パラメータ値等)を、走行制御データに付加する処理(走行制御データに含ませる処理)であってもよい。この場合には、この指示情報を受信した移動玩具側が、その指示情報に応じた移動玩具の走行制御を行う。例えば走行制御データに付加する指示情報としては、キャラクタデータのパラメータ値などがある。この場合には、移動玩具側は、キャラクタデータのパラメータ値に応じた移動玩具の走行制御を行う。
4.本実施形態の手法
4.1 走行制御データの設定
次に本実施形態の手法について説明する。まず走行制御データ(広義には動作制御データ)の設定手法について説明する。
図7に走行制御データの設定画面の例を示す。この設定画面は、図5に示すようにタッチパネル型の表示部190に表示され、プレーヤは、この設定画面において、図1Aのコース60の各コース区間CS1〜CS16での走行制御データを設定する。
例えば、走行制御データの雛形データ(メーカ側が用意するデフォルトの走行制御データ)が存在する場合や、過去に設定して保存した走行制御データが存在する場合には、図7のJ1に示すアイコンを、タッチパネル型表示部190へのタッチ操作により選択して、そのセッティング内容を読み出す。また走行制御データの設定が完了した場合には、J2に示すアイコンを選択して、そのセッティング内容を保存する。また走行制御データを車両玩具10に送信(ダウンロード)する場合には、J3に示すアイコンを選択する。一方、実走行結果データ(実動作結果データ)等を車両玩具10から受信(アップロード)する場合には、H1に示すアイコンを選択する。
また、コース選択画面を表示して、コースを選択する場合には、H2に示すアイコンを選択し、コースの周回数を設定する場合には、H3に示すアイコンを選択する。また、キャラクタ選択画面を表示して、車両玩具10を仮想的に操作するキャラクタ(ドライバ)を選択する場合には、H4に示すアイコンを選択する。
また図7のJ4では、スタート地点に対応するコース区間CS1での走行制御データとして、「61」が設定されている。この場合の走行制御データは、モータ30の動力設定データ(電力設定データ)であり、具体的には後述するPWM駆動におけるデューティである。走行制御データを「61」を設定することで、このコース区間CS1では、61パーセントのデューティでモータ30がPWM駆動される。即ちコース区間CS1は、距離の長い直線の区間であるため、プレーヤは、高いデューティを設定して、車両玩具を加速させる。
また図7のJ5では、次のコース区間CS2での走行制御データとして、「10」が設定されている。即ちコース区間CS2は急カーブの区間であるため、コースアウトしないように、プレーヤは、低いデューティを設定して、車両玩具10を減速させる。
また図7のJ6では、次のコース区間CS3での走行制御データとして、「29」が設定されている。即ちコース区間CS3は、直線の区間であるため、プレーヤは、コース区間CS2よりも高いデューティを設定して、車両玩具10を加速させる。同様にしてコース区間CS3〜CS7の走行制御データを設定し、J7に示すように第1の周回コース61の最終のコース区間CS8の走行制御データを設定する。またJ8、J9、J10、J11等に示すように、第2の周回コース62のコース区間CS9〜CS16の走行制御データを設定する。
図8のJ20では、プレーヤは、スタイラスペン420を用いたドラッグ操作により、走行制御データを設定している。図8のJ20では、ドラッグ操作により走行制御データが「62」に設定され、その後にJ21に示すアイコンを選択することで、「62」の走行制御データの設定が確定する。なお、設定をキャンセルする場合にはJ22に示すアイコンを選択する。
全てのコース区間についての走行制御データの設定が完了すると、プレーヤは図8のJ3に示すアイコンを選択する。そして、ゲーム装置から車両玩具10への全ての走行制御データの送信(ダウンロード)が完了すると、図9に示すような画面が表示される。
以上の本実施形態の走行制御データの設定手法によれば、プレーヤは、複数のコース区間の走行制御データを、簡素な作業で効率良く入力することが可能になる。
4.2 シミュレーション処理
さて、図2に示すホビーレーシングカーでは、プレーヤは、モータやタイヤなどのパーツを交換するチューニングを行って、他のプレーヤとラップタイプを競い合う。
しかしながら、これまでのホビーレーシングカーでは、交換したパーツが、ラップタイムの向上にどの程度貢献したかを、プレーヤは客観的に評価することができなかった。従って、プレーヤは、試行錯誤をして、直感的にパーツを交換せざるを得なかった。このため、ラップタイムをなかなか短縮することができず、ラップタイムの向上に限界があり、これが原因でプレーヤにすぐに飽きられてしまうという課題があった。
また、プレーヤは、図1に示すような占有面積が大きなコースを自宅に設置することは難しいため、特設コースが設置された店舗に出向き、そこでパーツを色々と変えながら、ラップタイム短縮のために試行錯誤する。従って、車両玩具のチューニングを、手軽に行うことができず、このようなチューニング作業の面倒さが、ホビーレーシングカーからプレーヤの興味を遠ざける原因となっていた。
この点、前述の特許文献2の従来技術では、プレーヤがゲーム装置でゲームプレイすることで得られた制御情報により、車両玩具側を走行させることで、ゲームの面白味の幅を広げている。
しかしながら、この特許文献2の従来技術では、車両玩具が実際に走るコースと、ゲーム装置においてゲーム空間に構築される仮想的なコースは、お互いにリンクしていなかった。また、車両玩具の走行特性と、ゲーム空間で走行する車の走行性能もリンクしていなかった。このため、ゲーム装置でのセッティングを車両玩具側に反映させたり、逆に車両玩具の実際の走行結果を、ゲーム装置側に反映させることができないという課題があった。
本実施形態では、このような課題を解決するために以下に説明するような手法を採用している。
即ち、まず本実施形態では、コース上を移動する車両玩具の走行特性に基づき設定されたデータである走行特性データや、車両玩具が移動するコースのコース特性に基づき設定されたデータであるコースデータを用意する。また図7〜図9に示すような手法で設定される走行制御データを用意する。そして、これらの走行特性データとコースデータと走行制御データとに基づいて、ゲーム装置において、車両玩具のセッティングのためのシミュレーション処理を行う。
このようにすることで、車両玩具が走る実際のコースと、ゲーム装置側において、車両玩具に対応する仮想移動体が走行する仮想コースとが、お互いにリンクするようになる。また車両玩具の加速性能などの走行特性と、ゲーム装置側の仮想移動体の走行特性もリンクするようになる。従って、プレーヤは、例えば特設コースが設置されている店舗等に出向かなくても、自身が所有するゲーム装置でのシミュレーション処理により、車両玩具の走行を仮想的に試すことができる。また実機の車両玩具の実走行結果をゲーム装置側に取り込むことで、交換したパーツのラップタイムへの貢献度合い等を、客観的に判断することが可能になる。従って、試行錯誤により、直感に頼っていたこれまでのホビーレーシングカーでは実現できなかったチューニングの面白さを、プレーヤに提供できるようになる。
例えば図10A〜図10Cに、車両玩具の走行特性の設定のためにゲーム装置の表示部に表示される画面の例を示す。
まず、図10Aに示すように、車種選択画面を表示する。プレーヤは、この選択画面において、自身が使用する車両玩具の車種を選択する。具体的には、選択画面に車両玩具の商品名を表示し、プレーヤは、この商品名の中から自身が所有する車両玩具の商品名を選択する。
次に、図10B、図10Cに示すように、パーツセット選択画面を表示する。プレーヤは、この選択画面において、車両玩具のチューニングに使用しているパーツを選択する。例えば図10Bでは、プレーヤは、基本パーツセットB1に代えて、グレートアップパーツセットB2を購入して使用しているため、このグレードアップパーツセットB2を選択する。また、このグレードアップパーツセットB2のうち、変更しているパーツがあれば、図10Cの選択画面で、変更しているパーツを選択する。なお、図10Bのようなパーツセットの選択画面を表示せずに、図10Cに示すように、変更しているパーツを直接に選択するようにしてもよい。
以上のような選択画面を表示し、プレーヤが、自身が使用する車種やパーツを選択することで、プレーヤの使用する車両玩具の走行特性が特定されて、走行特性データが設定される。即ち車両玩具やパーツを製造・販売するメーカは、車両玩具の重さや形状、モータの馬力やトルク、タイヤの大きさやグリップ力、シャシの強化度や走行安定性などを把握している。従って、プレーヤが、自身が使用する車両玩具の車種やパーツ名をゲーム装置に入力することで、その車両玩具の加速力、最高速、コーナリング性能、走行安定性等を特定できる。従って、特定された走行特性を、シミュレーション処理のアルゴリズムが取り扱うことができるフォーマットの走行特性データとして用意することで、実際の車両玩具の走行特性に適合したシミュレーション処理が可能になる。なお、この走行特性データを作成するための車種、パーツ等のデータベース情報は、ゲーム装置が有するネットワークへの接続機能を利用して、適宜、ゲーム装置にダウンロードするようにしてもよい。
以上のように走行特性データを設定することで、プレーヤが実際にコース上で走行させる車両玩具と、仮想コース上で走行させる仮想移動体とをマッチングさせて、リンクさせることが可能になる。
次に図11に示すように、プレーヤが使用するコースの選択画面を表示する。例えば図11では、選択候補となるコースとして、スタータキットとして販売される基本オーバルコースや基本8の字コースが表示されている。また、例えば東京の店舗Aに設置されている特設コースが、選択候補コースとして表示されている。
即ち、スタータキット等として市販される基本オーバルコースや基本8の字コースのコース形状についてはすぐに特定できる。一方、特定の店舗に設置される公式レース用の特設コースについても、市販用のコースパーツと同じコースパーツで作成されているため、使用されているコースパーツやその接続構成を特定することで、特設コースのコース形状についても特定できる。
この場合に、特設コースの使用コースパーツや接続構成の情報については、ネットワークを介してゲーム装置にダウンロードするようにしてもよいし、プレーヤが、コース編集画面において配置設定することで、特定してもよい。即ち、プレーヤは、このコース編集画面において、コースパーツの画像を適宜組み合わせて接続することで、特設コースと同じ形状のコースを作成して編集する。そして、編集されたコースを登録することで、その特設コースに対応するコースデータを設定する。
以上のようにコースデータを設定することで、車両玩具が実際に走行するコースと、仮想移動体が走行する仮想コースとをマッチングさせて、リンクさせることが可能になる。
次に、図7、図8に示す走行制御データ設定画面を表示する。プレーヤは、この設定画面において、試行錯誤しながら、良いラップタイムを獲得するのに必要な走行制御データを設定する。そして、プレーヤが、シミュレーション処理の開始を指示すると、図10A〜図10Cで設定された走行特性データと、図11で設定されたコースデータと、図7、図8で設定された走行制御データに基づいて、シミュレーション処理が実行される。即ち走行特性データに基づきその走行特性が設定される仮想移動体を、コースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、走行制御データにしたがって走行させるシミュレーション処理が実行される。
そしてプレーヤは、走行シミュレーションの結果データを確認し、走行制御データを再度設定して、自身が所望するラップタイムを獲得できるまで、シミュレーション処理を繰り返し実行させる。こうして、ゲーム装置側で、車両玩具の走行に関する仮想的なチューニングを繰り返す。そしてプレーヤは、満足する結果が得られると、ゲーム装置と車両玩具を有線又は無線で接続して、図9に示すように最終的な走行制御データを車両玩具に送信して、その記憶部に記憶させる。そして、図1等に示すコース上で車両玩具を実際に走行させる。
例えば、週末に、店舗の特設コースで公式レースが開催される場合に、プレーヤは、平日に、ゲーム装置を用いてシミュレーションを行って、車両玩具の仮想的なチューニングを繰り返す。
この場合に、プレーヤの自宅には特設コースは存在しないが、ゲーム装置の仮想空間内には、特設コースのコースデータに基づいて特設コースに対応する仮想コースが構築されている。プレーヤは、この仮想コースにおいて、自身が出場させる車両玩具に対応する仮想移動体を走行させるシミュレーション処理を、ゲーム装置を用いて実行させる。そして、プレーヤの納得が行くまで、チューニング設定を繰り返して、週末の公式レースに参加する。
この時、例えば、特定のパーツが原因で、良いラップタイムを獲得できない場合には、図10B、図10Cで説明した手法により、パーツを交換する設定を行う。この場合に、プレーヤは、実際にパーツを購入しなくても、仮想的にパーツ交換を行って、そのパーツがラップタイム向上に有効か否かを、シミュレーションにより確認することができる。そして、特定のパーツ(例えばモータ、タイヤ)を交換することで、シミュレーションにおいて、良いラップタイムを獲得できた場合には、そのパーツを実際に購入して、車両玩具に装着し、週末の公式レースに参加する。
以上のように本実施形態によれば、特設コースのように自宅に置けないようなコースについても、ゲーム装置でのシミュレーション処理により、車両玩具を仮想的に試走させることができる。また、交換するパーツを購入する前に、プレーヤは、そのパーツのラップタイムへの貢献度合い等を、客観的に評価できる。従って、プレーヤの利便性を向上できると共に、シミュレーションにより高いレベルのチューニングを行って、ラップタイムの向上を目指すことができるため、速さの追求に関するプレーヤのモチベーションを向上させることができ、飽きの来にくいホビーレーシングカーのシステムを提供できる。
なお、シミュレーション処理は、車両玩具に対応する仮想移動体のリアルな走行シミュレーション処理を行って、走行シミュレーション処理の結果データを求めるものであってもよいし、このようなリアルな走行シミュレーション処理を行わずに、走行特性データ、コースデータ、走行制御データとテーブルデータに基づいて、走行シミュレーション処理の結果データを瞬時に求めるような処理であってもよい。また走行シミュレーション処理を、ゲーム処理の一部として行ってもよく、この場合には、図5に示すように、車両玩具に対応する仮想移動体が移動する様子を示す演出画像を、ゲーム画像として表示すればよい。
4.3 実走行結果データ
本実施形態では、図12Aに示すように、走行制御データをゲーム装置から車両玩具に送信するのみならず、その走行制御データに基づき車両玩具がコースを走行することで得られた実走行結果データを、車両玩具から受信するようにしてもよい。
図12Bに実走行結果データの一例を示す。図12Bでは、コースの各コース区間での車両玩具の実走行ラップタイムデータを、実走行結果データとして受信している。この受信された実走行結果データは、ゲーム装置の表示部に表示される。
この場合に図12Bでは、実走行結果データが、コースの各コース区間に対応づけて表示されている。例えば、コース区間CS1に対して、CS1での実走行結果データである実走行ラップタイム=0.89秒が対応づけられて表示され、コース区間CS2に対して、CS2での実走行ラップタイム=0.62秒が対応づけられて表示される。
また図13Aでは、ゲーム装置側でのシミュレーション処理により走行シミュレーション結果データが得られている。そして車両玩具から受信した実走行結果データと、この走行シミュレーション結果データの両方が表示される。また実走行結果データと走行シミュレーション結果データの比較処理が行われている。
具体的には図13Bに示すように、シミュレーション処理により得られた走行シミュレーション結果データに対して、受信した実走行結果データが関連づけて表示される。例えばコース区間CS1に対して、CS1での実走行ラップタイム=0.94秒と、CS1での走行シミュレーション結果データであるシミュレーションラップタイム=0.89秒とが対応づけられて表示される。またコース区間CS2に対して、CS2での実走行ラップタイム=0.63秒と、CS2でのシミュレーションラップタイム=0.62秒とが対応づけられて表示される。
以上のような実走行結果データは、車両玩具がそのセンサによりコース上のマーカ等を検知することで計測することができる。例えばコース区間CSiのマーカMCiをセンサが検知すると、カウンタのカウント値のカウント動作を開始し、次のコース区間CSi+1のマーカMCi+1を検知すると、カウント動作を停止する。こうして得られたカウント値により、そのコース区間CSiでの実走行ラップタイムデータを得ることができる。そして、各コース区間において計測された実走行ラップタイムデータを各コース区間に対応づけた実走行結果データを、ゲーム装置に送信することで、ゲーム装置は、図12Bに示すような表示を行うことができる。また走行シミュレーション結果データについても、仮想コース上に設定された仮想マーカを用いて、走行シミュレーション時に上記と同様のカウント処理を行うことで、求めることができ、これにより図13Bに示すような表示が可能になる。
なおゲーム装置での実走行結果データや走行シミュレーション結果データの表示形態は、図12B、図13Bに限定されない。例えば図7に示すような画面を表示して、各コース区間CS1〜CS16に対応づけて、実走行結果データや走行シミュレーション結果データを表示してもよい。
また実走行結果データや走行シミュレーション結果データとしては、ラップタイムデータに限定されず、種々のデータを想定することができ、例えば移動玩具の加速又は減速の度合いを表す実加減速データであってもよい。
図14A、図14Bに加減速データの例を示す。図14Aはコース区間CS1に対応づけられる加減速データであり、図14Bはコース区間CS2に対応づけられる加減速データである。図14Aにおいて、横軸はコース区間内距離であり、縦軸は車両玩具(仮想移動体)の速度になっている。横軸のコース区間内距離は、コース区間CS1に対応するマーカMC1から車両玩具(仮想移動体)までの距離を表す。図14Bも同様である。
図14Aは、例えば直線のコース区間CS1において、停止状態の車両玩具が加速して、加速後に一定の速度で走行している状態を示している。図14Bは、例えば直線のコース区間CS1で加速した車両玩具が、カーブのコース区間CS2において減速している状態を示している。
図14A、図14Bに示す加減速データは、例えば車両玩具に加速センサを設けることで測定できる。或いは、タイヤの部分にロータリエンコーダを設けて、このロータリエンコーダによりタイヤの回転速度を検出することで、加速度データを測定してもよい。このようなロータリエンコーダは、例えば反射型のフォトセンサを、そのセンサ面がタイヤのホイールに対向するように設置し、スリットが設けられたタイヤのホイールのうち、スリット以外の部分で反射した光を検知することで実現できる。
図14A、図14Bに示すような加減速データを車両玩具側で測定し、ゲーム装置がこの加減速データを受信して、表示部に表示することで、プレーヤは、ラップタイムだけでは知ることができない情報を得ることができる。即ち図14Aに示すような加速特性のデータを表示することで、プレーヤは、モータの馬力やトルクが最適な設定か否かを判断できる。また図14Bに示すような減速特性のデータを表示することで、プレーヤは、タイヤのグリップ力や、逆極性電圧印加によるモータの制動動作が最適な設定か否かを判断できる。
以上の本実施形態の手法によれば、走行制御データを車両玩具に送信し、その走行制御データに対応する実走行結果データを車両玩具から受信することで、プレーヤは、自身が設定した走行制御データが、最適な設定か否かを客観的に判断することができる。また実走行結果データを各コース区間に対応づけて表示することで、各コース区間に設定した走行制御データの妥当性についても客観的に判断できる。
従って、設定した走行制御データを送信し、それに対応する実走行結果データを受信して、設定の妥当性を判断するという作業を繰り返すことで、プレーヤは、最適なチューニング設定を容易に得ることができる。この結果、これまでのように直感に頼って行っていたチューニング設定を、実走行結果データに基づいて客観的に評価して行うことが可能になり、これまでにないチューニングの楽しみをプレーヤに与えることができる。
また、車両玩具のパーツを変更した場合に、そのパーツ変更の効果についても、プレーヤは、実走行結果データに基づいて客観的に評価できるようになり、プレーヤの改造の楽しみを更に増すことができる。
また、例えばシミュレーション処理は、理想的な走行特性データ及びコースデータに基づいて行われるものであるため、それによる走行シミュレーション結果データは、現実とは食い違っている場合が多い。
この点、図13Bのように、走行シミュレーション結果データと実走行結果データとを対応づけて表示すれば、プレーヤは、シミュレーションの走行と現実の走行の違いを、客観的に認識できる。従って、プレーヤは、この違いを考慮しながら、ゲーム装置においてシミュレーションによる仮想的なチューニングを行うことが可能になり、シミュレーションによるチューニングの精度を向上できる。
なお、走行シミュレーション結果データと実走行結果データの比較処理を行い、その比較結果に基づいて補正データを求め、その補正データに基づいて、走行シミュレーション結果データを実走行結果データに近づけるための補正処理を行ってもよい。このようにすることで、シミュレーションによるチューニングの精度を更に向上できる。
4.4 コースデータの自動取得
以上のように本実施形態では、ゲーム装置と車両玩具との間でデータの送受信を行っているが、この送受信のシステムを有効活用して、車両玩具が走行するコースのコースデータを自動取得するようにしてもよい。
具体的には、図12Aにおいて、走行制御データとして、コースデータ取得用の走行制御データを車両玩具に送信する。次に、送信されたコースデータ取得用の走行制御データに基づき車両玩具がコースを走行することで得られたコースデータ取得用の実走行結果データを、車両玩具から受信する。そして、受信したコースデータ取得用の実走行結果データにより取得されたコースデータに基づいて、シミュレーション処理を行うようにする。即ち図11でプレーヤが選択するコースデータを、実際のコースにおいて車両玩具を走行させることで自動的に取得する。
更に具体的には例えば図15Aに示すような確認画面を表示して、プレーヤがコースデータを自動取得するか否かを選択させる。そして図15Bに示すように、車両玩具をゲーム装置に接続することを指示する画面を表示した後、コースデータ取得用の走行制御データを車両玩具に送信する。そして、このコースデータ取得用の走行制御データに基づいて、車両玩具がコースデータを走行することで、車両玩具側においてコースデータを取得する。そして、取得されたコースデータを、車両玩具から受信すると、ゲーム装置において例えば図15Cに示すような画面を表示する。
この場合にゲーム装置から車両玩具に送信するコースデータ取得用の走行制御データは、コースデータの取得に適した設定のデータになっている。即ち、コースデータ取得用の走行制御データは、図7のようにラップタイムを向上させるためのデータである必要はない。このため、例えば、全てのコース区間において、車両玩具の速度が定速の低い速度になるように設定された走行制御データを、コースデータ取得用の走行制御データとして、ゲーム装置から車両玩具に送信する。例えば図7において、全てのコース区間CS1〜CS16において走行制御データDS1〜DS16=10となるようなデータを送信する。このようにすることで、コースデータの安定した測定が可能になる。
なお、コースデータは、例えば定速で走行する車両玩具の各コース区間でのラップタイムを測定したり、車両玩具に設けられた例えば3軸の加速センサで車両玩具の各軸での加速度を測定したり、タイヤに設けられたロータリエンコーダにより車両玩具の速度や移動距離を測定することなどにより取得できる。
或いは、車両玩具にバーコードセンサを設けると共に、コースブロックのマーカ等にバーコード情報を設定する。そして、このバーコード情報の中に、各コースブロックの識別情報やコース形状情報を含ませて、この識別情報やコース形状情報を、車両玩具のバーコードセンサで読み取ることで、コースデータを取得してもよい。例えばバーコード情報の中にコースブロックの識別情報を含ませれば、ゲーム装置において、データベースに登録されているコースブロックデータの中から、識別情報に対応するコースブロックのデータを読み出すことで、そのコースブロックを接続することで構成されるコースのコースデータを作成できる。
以上の本実施形態の手法によれば、プレーヤは、自身が所望するコース上で車両玩具を実際に走行させるだけで、そのコースデータが自動取得されて、シミュレーション処理に活用できるようになる。また、任意の組み合わせのコースブロックの連結により構成されたコースのコースデータを、1回の車両玩具の走行だけで取得できる。これにより、プレーヤの利便性を大幅に向上できる。
4.5 認証処理、アップロード処理
本実施形態では、図12Aに示すように実走行結果データを車両玩具から受信できるため、図12Bに示すような実走行ラップタイムなどの実走行結果データを容易に取得できる。従って、ゲーム装置のネットワーク機能を利用して、この実走行結果データをウェブ上にアップロードすることで、プレーヤのラップタイムのランキング表示等が可能になる。
しかしながら、このようなシステムでランキング表示等を行った場合に、プレーヤが不正を行って、虚偽の実走行結果データをウェブ上にアップロードするおそれがある。
そこで、車両玩具から受信した実走行結果データに対して認証処理を行い、認証された実走行結果データだけをアップロードできるようにすることが望ましい。
即ち、車両玩具から実走行結果データを受信した場合に、受信した実走行結果データが正当なデータであるか否かを認証する処理を行う。そして、受信した実走行結果データが正当なデータであると判断された場合に、正当なデータであると判断された実走行結果データを、ネットワークを介して外部のサーバ等にアップロードする。
この場合に、例えばスタート地点のコース区間とゴール地点のコース区間を車両玩具が適正に走行(通過)したか否かを、例えばセンサからの検知情報に基づき判断する。そして、少なくともスタート地点とゴール地点を適正に走行したと判断された場合に、その走行により得られた実走行結果データが正当なデータであると判定する。なお、スタート地点やゴール地点のコース区間のみならず、途中のコース区間を適正に走行したか否かを、実走行結果データの認証の条件に設定してもよい。
例えば図16では、各コース区間に対して、そのコース区間を適正に通過したか否かを示す通過フラグが設定されている。例えば車両玩具側は、各コース区間に対応づけられた各マーカを適正に検知できた場合に、そのコース区間の通過フラグを「1」にセットする。ゲーム装置は、このように各コース区間に通過フラグが対応づけられた実走行結果データ(認証データ)を、車両玩具から受信する。そして、この通過フラグに基づいて、少なくともスタート地点とゴール地点を車両玩具が適正に通過したか否かを判断し、適正に通過したと判断した場合に、その実走行結果データを正当なデータとして認証し、そのアップロードを許可する。或いは、「1」にセットされた通過フラグの個数をカウントし、その個数が所定数以上になった場合に、実走行結果データが正当なデータであるとして認証するようにしてもよい。或いは、認証処理の一部を車両玩具側で行うようにしてもよい。
以上の本実施形態の手法によれば、プレーヤが不正な方法で作成した実走行結果データが、ウェブ上にアップロードされてしまう事態を防止でき、実走行結果データの正当性を担保することができる。そして、特設コースが設けられた店舗等に出向かなくても、自身のラップタイムを他のプレーヤと競い合う楽しみを、プレーヤに与えることができ、ホビーレーシングカーの面白味を格段に向上できる。
なお、このようなアップロードを行う場合に、ユーザであるプレーヤは、購入したカードにチャージした回数に応じて、ウェブ上のネットワークランキングに参加できるようにしてもよい。この場合に、カードには、個人IDのみを記録し、ネットワークランキングのための業務用筐体に、自身の車両玩具の実走行結果データを転送して、その実走行結果データをサーバにアップロードする。そして、サーバにアップロードすると、そのアップロードの回数分だけ、カードに記録されチャージ回数を減少させる。これにより、実走行結果データのアップロード回数に応じて、プレーヤに課金することが可能になる。
また、プレーヤの実走行結果データに対応する走行制御データについても、ウェブ上にアップロードできるようにしてもよい。このようにすれば、プレーヤは、例えば高いラップタイムを獲得した他のプレーヤの走行制御データをダウンロードし、そのダウンロードされた走行制御データを用いて、自身の車両玩具のセッティングを行って遊ぶことができるため、遊びの幅を広げることができる。この場合、他のプレーヤの走行制御データのダウンロード時に、上述したカードを用いた方法等により、プレーヤに対して課金を行ってもよい。また、ダウンロードした他のプレーヤの走行制御データのコピーについては禁止し、その走行制御データから直接得られた実走行結果データのアップロードについても禁止してもよい。
或いは、全国のプレーヤの走行制御データを用いて、サーバにおいてシミュレーション処理を行うことで、ネットワーク上で仮想のレース大会を開催し、そのレースの様子を、映像の形態で、各店舗の端末にライブモニタで表示したり、携帯端末で閲覧できるようにしてもよい。
4.6 パーツ変更
さて、本実施形態では、車両玩具(移動玩具)のパーツが変更されると、図10B、図10Cで説明したように、そのパーツ変更に対応して走行特性データの設定内容を変更する。そして、設定内容が変更された走行特性データに基づいて、仮想移動体を仮想コースで走行させるシミュレーション処理を行う。例えば、車両玩具のモータ(原動機)が変更されると、走行特性データのうちの加速特性データを変更する。そして変更後の加速特性データに基づきその加速特性が設定される仮想移動体を、仮想コースで走行させる。或いは、車両玩具のタイヤが変更されると、走行特性データのうちのコーナリング特性データを変更する。そして、変更後のコーナリング特性データに基づきそのコーナリング特性が設定される仮想移動体を、仮想コースで走行させる。或いは、車両玩具のパーツ変更に伴い、車両玩具の実際の重量が変化した場合には、仮想移動体の重量パラメータを変化させて、仮想コースで走行させる。例えば走行性能を高めるためのパーツを追加することで車両玩具の重量が増加した場合には、仮想移動体の重量パラメータを増加させて、バランスをとる。
このようにすることで、車両玩具のパーツ変更を行った場合に、それによって走行特性データの設定内容も変更されて、そのパーツ変更が反映されたシミュレーション処理を実行できるようになる。従って、プレーヤは、パーツを変更した時の車両玩具の走行を、シミュレーションにおいて確認することができ、チューニング設定の面白味を格段に向上できる。
この場合に、例えば図13Aで説明したように、実走行結果データと走行シミュレーション結果データとの比較処理を行ってもよい。そして、比較処理での比較結果に基づいて、車両玩具のパーツ変更のアドバイス画面を表示する。
例えば図17Aでは、コース区間CS1での実走行結果データと走行シミュレーション結果データが、比較して表示されている。これらのデータは、コース区間CS1での加減速データである。
そして図17Aでは、理想的な走行シミュレーション結果データと、実走行結果データとの比較処理により、実際の車両玩具の加速性能が理想値に比べて低いと評価される。従って、この場合には、車両玩具の加速性能を向上させるために、現在使用しているモータを、例えばダッシュ重視のモータに変更することを勧めるアドバイス画面を表示する。
一方、図17Bでは、理想的な走行シミュレーション結果データと、実走行結果データとの比較処理により、実際の車両玩具の減速性能が理想値に比べて低いと評価される。従って、この場合には、車両玩具の減速性能を向上させるために、現在使用しているタイヤを、例えばグリップ力強化タイヤに変更することを勧めるアドバイス画面を表示する。
このようにすれば、プレーヤは、このアドバイス画面でのアドバイスに基づいて、変更するパーツを決定することができ、プレーヤの利便性を更に向上できる。
なおアドバイス画面の表示手法は図17A、図17Bに示す手法に限定されない。例えば、変更を勧める具体的なパーツ名を表示するのではなく、各コース区間での加速性能や減速性能の評価を客観的に表示して、パーツ変更をプレーヤに促すようにしてもよい。
4.7 ゲーム装置側の詳細な処理
次にゲーム装置側の詳細な処理フローについて図18〜図22のフローチャートを用いて説明する。
図18はメインループの処理フローである。まず、プレーヤに対してメニュー画面を表示する(ステップS21)。そしてプレーヤがセッティングモード(初期設定モード)を選択した場合には、セッティング処理に移行し(ステップS22、S23)、走行シミュレーションモードを選択した場合には、走行シミュレーション処理に移行する(ステップS24、S25)。またプレーヤが、データ送信モードを選択した場合には、データ送信処理に移行し(ステップS26、S27)、データ受信モードを選択した場合には、データ受信処理に移行する(ステップS28、S29)。
図19はセッティング処理の詳細を示すフローチャートである。まず図10A〜10(C)で説明した車種選択画面やパーツ選択画面を表示する(ステップS31、S32)。そして、プレーヤにより選択された車種、パーツに基づいて、走行特性データを設定する(ステップS33)。
次に、図11で説明したコース選択画面を表示する(ステップS34)。そして、プレーヤにより選択されたコースに基づいてコースデータを設定する(ステップS35)。このようにして、車両玩具やコースについての初期セッティングを終了する。シミュレーション処理は、例えばこのような初期セッティングの完了後に許可する。
図20は走行シミュレーション処理の詳細を示すフローチャートである。まず、走行特性データ記憶部から、図19のセッティング処理で設定された走行特性データを読み出す(ステップS41)。また、コースデータ記憶部から、図19のセッティング処理で設定されたコースデータを読み出す(ステップS42)。また、走行制御データ記憶部から、図7、図8で説明した手法により設定された走行制御データを読み出す(ステップS43)。
そして、読み出された走行特性データ、コースデータ、走行制御データに基づいて、走行シミュレーション処理を実行する(ステップS44)。そして、走行シミュレーションが終了すると、その走行シミュレーション結果を表示部に表示する(ステップS45、S46)。例えば各コース区間にシミュレーションラップタイムを対応づけて表示する。
図21はデータ送信処理の詳細を示すフローチャートである。まず、図7、図8で説明した走行制御データの設定画面を表示する(ステップS51)。そして、全てのコース区間についてのプレーヤの入力設定が完了したか否かを判断する(ステップS52)。そして、入力設定が完了した場合には、プレーヤがデータ送信を選択したか否かを判断し(ステップS53)、データ送信を選択した場合には、その走行制御データを車両玩具に送信する(ステップS54)。
図22はデータ受信処理の詳細を示すフローチャートである。まず車両玩具がゲーム装置に適正に接続されたか否かを確認する(ステップS61)。そして、適正に接続されたことが確認されると、プレーヤがデータの受信を選択したか否かを判断し(ステップS62)、データ受信を選択した場合には、実走行結果データを車両玩具から受信する(ステップS63)。
次に、受信した実走行結果データをコース区間に関連づけて表示する(ステップS64)。そして、走行シミュレーションを行っている場合には、受信した実走行結果データと、走行シミュレーション結果データを、コース区間に関連づけて表示する(ステップS65、S66)。また実走行結果データと走行シミュレーション結果データの比較処理を行い(ステップS67)、図17A、図17Bで説明したように、比較処理の結果に基づいて、お勧めのパーツのアドバイス画面を表示する(ステップS68)。
4.8 減速制御、加速制御
次に本実施形態の減速制御、加速制御の手法について説明する。
図23Aに走行制御データのデータ構造の例を示す。図23Aでは、CS1〜CSNの各コース区間に対して、DS1〜DSNの各走行制御データが対応づけられて、図6の走行制御データ記憶部172に記憶される。具体的には、走行制御データとして、各コース区間においてモータに供給される動力(電力)の大きさを設定する走行制御データ(動力設定データ)が、CS1〜CSNの各コース区間に対応づけて記憶される。
この走行制御データは、図7〜図9で説明した手法により設定できる。図7を例にとれば、コース区間CS1にはDS1=61、コース区間CS2にはDS2=10というように走行制御データDS1、DS2が設定される。そしてDS1=61と設定されたコース区間CS1では、車両玩具の速度が速くなり、DS2=10と設定されたコース区間CS2では、車両玩具の速度が遅くなる。
また図23Bに示すように、車両玩具MTに設けられたセンサにより、コース上のマーカMCi+1(iは自然数)が検知される。これにより、車両玩具MTが、コース区間CSiからコース区間CSi+1に進入したことが検出される。なお、マーカMCi+1は、例えばコースブロックに一体形成されて埋め込まれる樹脂部材により実現してもよいし、コースブロックにはり付けられた白色のテープにより実現してもよい。或いはICタグなどのデバイスにより実現してもよい。
このようにセンサからの検知情報に基づいて、コースの第iのコース区間CSiから第i+1のコース区間CSi+1に車両玩具MTが移動したと判断した場合に、差分情報DFに基づいて、車両玩具MTの減速制御や加速制御が行われる。
ここで差分情報DFは、コース区間CSiに対応づけられた走行制御データDSiと、コース区間CSi+1に対応づけられた走行制御データDSi+1との差分DSi+1−DSiに対応した情報である。この差分情報DFは、DSi+1とDSiの差分そのものであってもよいし、差分を引数とした関数により設定される情報であってもよい。
例えば図24Aでは、コース区間CSiではDSi=60であり、CSi+1ではDSi+1=40になっている。この場合には、DF=DSi+1−DSi=ー20であり、差分が負になるため、車両玩具MTの速度を低くする減速制御を行う。
一方、図24Bでは、コース区間CSiではDSi=60であり、CSi+1ではDSi+1=90になっている。この場合には、DF=DSi+1−DSi=30であり、差分が正になるため、車両玩具MTの速度を高くする加速制御を行う。なお差分情報DFに基づいて、図24Aの減速制御と図24Bの加速制御のいずれか一方のみを行ってもよい。
また図25Aでは、差分情報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が制御される。
また図25Bでは、差分情報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が制御される。
更に図25C、図25Dでは、図25A、図25Bの減速制御又は加速制御を行う第1の期間T1の長さを、差分情報DFに応じて変化させている。
例えば図25Cでは、DFが大きいため、期間T1の長さを長くする。このようにすれば、差分情報DFに応じて、減速期間や加速期間が長くなるため、コース区間CSiでの車両玩具MTの速度Viを、コース区間CSi+1での速度Vi+1に効率良く近づけることが可能になる。
一方、図25Dでは、DFが小さいため、期間T1の長さを短くする。このようにすれば、減速期間や加速期間が短くなるため、減速しすぎて、速度Vi+1を下回ってしまったり、加速しすぎて速度Vi+1を上回ってしまうというような事態の発生を防止できる。
以上の本実施形態の手法によれば、プレーヤは、各コース区間に対して走行制御データを設定するだけで、その走行制御データに応じた速度で車両玩具MTを走行させることが可能になる。例えば図24Aや図24Bにおいてプレーヤは、コース区間CSi+1において車両玩具MTの減速や加速を明示的に指定しなくても、コース区間CSi、CSi+1への走行制御データDSi、DSi+1の設定だけで、車両玩具MTが自動的に減速又は加速するようになる。従って、プレーヤは、各コース区間に対して所望の走行制御データを設定するだけという簡素な作業で、車両玩具MTの移動を制御できるようになり、プレーヤにとって利便性の高いインターフェース環境を提供できる。
また図25A〜図25Dのように、定速走行させる期間T2の前に、減速又は加速する期間T1を設定することで、そのコース区間に設定された所望の速度に、車両玩具MTの速度を効率良く近づけることが可能になる。
例えば、このような減速又は加速用の期間T1を設けない手法によると、車両玩具MTが有する慣性等が原因で、車両玩具MTの速度を、そのコース区間に設定された所望の速度に早期に近づけることが難しくなる。このため、各コース区間に設定された走行制御データと、それによる車両玩具MTの実際の速度とが、線形関係にならなくなってしまう。例えば走行制御データをDSi+1=50に設定した場合の速度に対して、DSi+1=80に設定した場合の速度は、線形の関係を保って1.6倍になることが望ましい。しかしながら、期間T1を設けないと、このような線形の関係を保つことが難しくなる。
この点、図25A〜図25Dの本実施形態の手法によれば、各コース区間に設定された速度に、車両玩具MTの速度を効率良く近づけることができるため、走行制御データと、それによる車両玩具MTの実際の速度とを、ほぼ線形な関係にすることが可能になる。従って、プレーヤが所望する速度で車両玩具MTが各コース区間で走行するようになり、プレーヤの意向をより反映した車両玩具MTの走行制御が可能になる。
4.9 PWM駆動
さて、原動機がモータである場合には、モータはPWM方式により駆動することが望ましい。即ち、走行制御データにより設定されるデューティで、原動機であるモータをPWM駆動する。
例えば図26Aに示すように。走行制御データが「60」に設定されていた場合には、デューティが60パーセントのPWMの駆動波形でモータを駆動する。また走行制御データが「40」に設定されていた場合には、デューティが40パーセントのPWMの駆動波形でモータを駆動する。このようにモータをPWM駆動すれば、モータはデューティに対応した実効電圧で駆動されるようになるため、デューティを変化させることで、車両玩具MTを所望の速度で移動させることが可能になる。
例えば図26Bにおいて、車両玩具MTがコース区間CSiに位置している時には、コース区間CSiの走行制御データにより設定される第iのデューティDTiでモータをPWM駆動する。一方、車両玩具MTがコース区間CSiからCSi+1に進入した場合には、コース区間CSi+1の走行制御データにより設定される第i+1のデューティDTi+1でモータをPWM駆動する。例えばコース区間CSiに設定されるデューティDTi=60の場合には、図26Aの60パーセントのデューティのPWM駆動波形でモータを駆動し、コース区間CSi+1に設定されるデューティDTi+1=40の場合には、図26Aの40パーセントのデューティのPWM駆動波形でモータを駆動する。
更に具体的には図27Aに示すように、DF<0となる減速制御の場合には、コース区間CSi+1における前半の第1の期間T1において、通常走行時の電圧とは逆極性の電圧をモータに印加する。即ち通常のPWM駆動時にモータの第1、第2の端子間に正極性の電圧が印加される場合には、図27Aの期間T1ではモータの第1、第2の端子間に負極性の電圧が印加される。これによりモータの回転にブレーキングをかけて、車両玩具MTを減速させることができる。そしてコース区間CSi+1の後半の第2の期間T2において、CSi+1に設定されたデューティDTi+1でモータをPWM駆動する。これにより減速後、例えば定速走行に移行するようになる。
一方、図27Bに示すように、DF>0となる加速制御の場合には、前半の第1の期間T1において、デューティDTi+1よりも高いデューティに対応する電圧をモータに印加する。例えばデューティ=100パーセントの電圧を印加する。これによりモータの回転が加速されて、車両玩具MTが加速される。後半の第2の期間T2において、CSi+1に設定されたデューティDTi+1でモータをPWM駆動する。これにより加速後、例えば定速走行に移行するようになる。
なお図25C、図25Dで説明したように、コース区間CSiに設定されたデューティDTiとコース区間CSi+1に設定されたデューティDTi+1との差分が大きくなればなるほど長くなるように、第1の期間T1の長さを設定する。そして設定された第1の期間T1において車両玩具の減速制御又は加速制御を行うようにする。このようにすれば減速期間又は加速期間となる第1の期間T1が、デューティの差分に応じて長くなったり、短くなる。これにより車両玩具MTの減速の度合いや加速の度合いが自動的に調整されるため、適正な減速又は加速制御を実現できる。
4.10 駆動部
次に図4の駆動部350の詳細な構成及び動作について説明する。図28に駆動部350の回路構成例を示す。
図28に示すように駆動部350は、第1〜第4のトランジスタTR1〜TR4を含む。また第5、第6のトランジスタTR6、TR7や、ダイオードDI1〜DI4や、抵抗R1〜R6を含むことができる。ここでトランジスタTR1〜TR6は例えば電界効果型のトランジスタ(FET)である。なおトランジスタTR1〜TR6は、MOS型FETであってもよいし、接合型FETであってもよい。或いはバイポーラ型のトランジスタであってもよい。また本実施形態の駆動部350は図28の構成に限定されず、その構成要素の一部(例えばトランジスタTR6、TR7、ダイオードDI1〜DI4等)を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
P型のトランジスタTR1は、第1の電源VDDのノードNDと、モータ30の第1の端子TM1のノードNT1との間に設けられる。具体的にはトランジスタTR1は、そのソース、ゲート、ドレインに、各々、ノードND、N1、NT1が接続される。またノードNDとN1の間には抵抗R1が設けられる。
P型のトランジスタTR2は、ノードNDと、モータ30の第2の端子TM2のノードNT2との間に設けられる。具体的にはトランジスタTR2は、そのソース、ゲート、ドレインに、各々、ノードND、N2、NT2が接続される。またノードNDとN2の間には抵抗R2が設けられる。
N型のトランジスタTR3は、ノードNT1と第2の電源VSS(GND)のノードNSとの間に設けられる。具体的にはトランジスタTR3は、そのソース、ゲート、ドレインに、各々、ノードNS、N3、NT1が接続される。またノードN3とNSの間には抵抗R3が設けられ、ノードN3には制御信号SG3が入力される。
N型のトランジスタTR4は、ノードNT2とNSとの間に設けられる。具体的にはトランジスタTR4は、そのソース、ゲート、ドレインに、各々、ノードNS、N4、NT2が接続される。またノードN4とNSの間には抵抗R4が設けられ、ノードN4には制御信号SG4が入力される。
N型のトランジスタTR5は、ノードN1とNSの間に設けられる。具体的にはトランジスタTR5は、そのソース、ゲート、ドレインに、各々、ノードNS、N5、N1が接続される。またノードN5とNSの間には抵抗R5が設けられ、ノードN5には制御信号SG5が入力される。
N型のトランジスタTR6は、ノードN2とNSの間に設けられる。具体的にはトランジスタTR6は、そのソース、ゲート、ドレインに、各々、ノードNS、N6、N2が接続される。またノードN6とNSの間には抵抗R6が設けられ、ノードN6には制御信号SG6が入力される。
また、ダイオードDI1はノードNDとNT1の間に設けられ、ダイオードDI2はノードNDとNT2の間に設けられ、ダイオードDI3はノードNT1とNSの間に設けられ、ダイオードDI4はノードNT2とNSの間に設けられる。
図28の駆動部350では、車両玩具の通常走行時には、トランジスタTR1がオンになり、トランジスタがオフTR2、TR3がオフになる。そしてトランジスタTR4がPWM駆動のデューティにしたがってオン・オフされる。一方、車両玩具の減速制御時には、トランジスタTR1、TR4がオフになり、トランジスタTR2、TR3がオンになる。これにより、モータの第1の端子TM1と第2の端子TM2との間に、通常走行時の電圧(正電圧)とは逆極性の電圧(負電圧)が印加される。
図29に、図28の駆動部350の詳細な動作を説明するための信号波形例を示す。図29の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により生成される。
図29のH2に示すように、コース区間CSi+1のマーカMCi+1が検出されると、H3に示すように走行制御データの差分情報DFが求められる。ここでは、コース区間CSi、CSi+1の走行制御データは、各々、「80」、「20」に設定されているため、DF=−60になり、減速制御が行われる。そして、コース区間CSi+1の前半の第1の期間T1の長さが、差分情報DF=−60に対応する長さに設定され、T1=60msecに設定される。これにより、T1=60msecの期間、逆極性の電圧が印加されて、車両玩具が減速(ブレーキング)される。
具体的には、制御信号SG6、SG3がHレベルになることで、トランジスタTR6、TR2、TR3がオンになり、制御信号SG5、SG4がLレベルになることで、トランジスタTR5、TR1、TR4がオフになる。このようにトランジスタTR2、TR3がオンになり、TR1、TR4がオフになると、図28から明らかなように、モータ30の第2の端子TM2がVDDに設定され、第1の端子TM1がVSSに設定されるため、モータ30に対して逆極性の電圧が印加され、その回転にブレーキングがかかる。これにより、車両玩具を減速させることが可能になる。
次に図29の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がオン、オフされる。
また図29のH5に示すように、次のコース区間CSi+2では、デューティDTi+2=100でのPWM駆動が行われる。なお図29では、差分情報に基づく減速制御は行っているが、差分情報に基づく加速制御については行っていない。
以上のような構成の駆動部350を採用すれば、簡素な制御信号で、車両玩具の減速制御等を効率的に実現できる。また制御部310は、各コース区間に設定された走行制御データ(デューティ)を用いて、図29に示すような制御信号を生成するだけで済むため、制御部310の処理負荷も軽減できる。また車両玩具を減速させる場合に、図29のH4に示すようなPWM駆動信号を印加するだけでは、車両玩具が慣性を有するため、車両玩具の十分な減速を期待することが難しい。この点、本実施形態の手法によれば、H3に示すような逆極性電圧を印加しているため、車両玩具を十分に減速して、車両玩具の速度を、そのコース区間の走行制御データに対応した速度に設定することが可能になる。
4.11 車両玩具側の詳細な処理
次に車両玩具側の詳細な処理フローについて図30のフローチャートを用いて説明する。図30は、主に図4の制御部310が行う処理を示したものである。
まず、走行制御データをゲーム装置から受信したか否かを判断する(ステップS1)。そして走行制御データを受信した場合には、受信した走行制御データ(区間データ)を図4の記憶部330に格納する(ステップS2)。
次に、車両玩具の動作開始を指示するセレクトボタンが押されたか否かを判断する(ステップS3)。そして、押された場合には、走行制御データの区間番号iを1に設定し(ステップS4)、車両玩具の走行をスタートする(ステップS5)。即ちモータの駆動を開始する。
次に、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)。即ち図29のH3に示すような逆極性電圧の印加を行う。
次に、i=16か否かを判断する(ステップS10)。そしてi=16ではない場合には、iを1だけインクリメントして(ステップS11)、ステップS6に戻る。一方、i=16になった場合には、車両玩具がゴール地点に対応するコース区間CS16にゴールしたと判断して、区間番号iを初期値である1に設定する(ステップS12)。
4.12 実走行結果データの表示
図31に、実走行結果データの具体的な表示例を示す。図31では、図7のH3に示すアイコンを選択することで、コース周回数として10周が設定される。すると、このコース周回数情報が、ゲーム装置から車両玩具に送信され、これにより車両玩具側が、10周のラップタイム情報lap1〜lap10を計測する。例えばlap1は1周目の周回のラップタイム情報であり、lap2は2周目の周回のラップタイム情報である。ゲーム装置は、これらのラップタイム情報lap1〜lap10(ログ情報)を、実走行結果データとして、車両玩具から受信して、表示部に表示する。
図31のG1では、各ラップタイム情報lap1〜lap10として、各周回でのトータルのラップタイムと、各コース区間でのラップタイムが、ログ情報として表示されている。また図31のG2では、lap1〜lap10のうちプレーヤが選択したラップタイム情報が、グラフ化されて表示される。ここでは、プレーヤによりlap1.lap3、lap10が選択されているため、これらのlap1.lap3、lap10のラップタイム情報がグラフ化されて表示される。このようにグラフ化して表示すれば、プレーヤは、これらのlap1.lap3、lap10を比較することで、周回を重ねるにつれてどのようにラップタイムが低下しているのかを、視覚的に認識できる。即ち、車両玩具が、電池で駆動されるモータにより走行する場合、コース周回を重ねるにつれてモータに供給される電力が低下し、これによりラップタイムも低下する。図31のG2の表示によれば、このような電池の消耗によるラップタイムの低下を視覚的に認識できる。
4.13 キャラクタデータのパラメータ値を用いた車両玩具の走行制御
次に、キャラクタデータのパラメータ値を用いた車両玩具の走行制御について説明する。本実施形態では、走行シミュレーションの結果に基づいて、キャラクタのパラメータ値の変更処理が行われる。即ち、プレーヤが、車両玩具のドライバとなるキャラクタを選択し、この車両玩具に対応する仮想移動体の走行シミュレーションを繰り返すと、キャラクタが成長し、キャラクタデータのパラメータ値が変更(更新)される。そしてゲーム装置は、このように変更されたパラメータ値に対応した走行制御の指示情報を、車両玩具(移動玩具)に送信する。すると、車両玩具側は、このパラメータ値に対応した走行制御の指示情報に基づいて、車両玩具の走行制御を行う。
図32にキャラクタ選択画面(ドライバ選択画面)の具体例を示す。図32のキャラクタ選択画面において、プレーヤは、自身が所望するキャラクタを選択する。すると、選択されたキャラクタが車両玩具(仮想移動体)に対応づけられて、そのキャラクタのデータに基づいて車両玩具の走行制御が行われる。
例えば図32では、車両玩具のドライバであるキャラクタの走行に関するパラメータとして、最高速度、最低速度、加速度、減速度、ブレーキ(制動力)、反応速度のパラメータが設定される。そしてこれらのパラメータの値は、各キャラクタに応じて異なった値に設定されている。
なお、キャラクタの最高速度等の各パラメータ値を、図32のようにキャラクタ選択画面において明示的にプレーヤに表示してもよいし、表示しないようにしてもよい。例えば各パラメータ値を明示的に表示しない場合には、このようなパラメータ値を暗示するような情報を、キャラクタ選択画面においてプレーヤに対応づけて表示すればよい。また、編集画面を表示して、キャラクタの各パラメータ値をプレーヤ自身が編集できるようにしてもよい。
なお、図32の画面の右上には、スピードアップの設定画面も表示されている。即ち、車両玩具が、電池で駆動されるモータにより走行する場合、コース周回を重ねるにつれてモータに供給される電力(動力)が低下し、車両玩具の走行速度が低下してしまうという課題がある。
この点、図32のスピードアップ設定画面では、プレーヤは、車両玩具のスピードアップを設定できる。具体的には、コース周回の何周目でスピードアップするのかと、スピードアップ量である上昇率(電力上昇率)を設定できる。例えば図32では3回(所定回数)のスピードアップの設定が可能になっている。
例えば、プレーヤが先行逃げ切り型を目指す場合には、1周目、2周目、3周目というような前半の周回において、高い上昇率のスピードアップを設定する。一方、後半追い込み型を目指す場合には、8周目、9周目、10周目というように後半の周回において、高い上昇率のスピードアップを設定する。こうすることで、プレーヤは多様な戦略を立てることができ、車両玩具の遊びの幅を広げることができる。
さて、本実施形態では図33Aに示すように、設定変更部130は、走行制御データ(動作制御データ)の設定内容を変更する処理として、キャラクタデータに応じた走行制御を車両玩具(移動玩具)に指示する指示情報を、走行制御データに対して付加する処理を行う。そして送信処理部104は、指示情報が付加された動作制御データを、車両玩具に送信する。そして車両玩具は、送信された走行制御データを、ゲーム装置から受信し、キャラクタデータに応じてその設定内容が変更される走行制御データに基づいて、その走行制御が行われる。
この場合に、走行制御データに付加される指示情報(走行制御データに含ませる指示情報)としては、例えばキャラクタデータのパラメータ値を用いている。即ち図32に示すような各キャラクタの最高速度、最低速度、加速度、減速度、制動力(ブレーキ)、反応速度などのパラメータ値を、走行制御データに付加して、車両玩具に送信する。すると車両玩具の制御部が、走行制御データとこのパラメータ値に基づいて、車両玩具の走行を制御する。
例えば図33Bにおいて、キャラクタCAの最高速度VHAはキャラクタCBの最高速度VHBよりも高く設定され、キャラクタCAの最低速度VLAはキャラクタCBの最低速度VLBよりも低く設定されている。即ちキャラクタCAの走行速度レンジRVA=VHA〜VLAは、キャラクタCBの走行速度レンジRVB=VHB〜VLBよりも広いレンジになっている。
そして、プレーヤがキャラクタCAを選択し、キャラクタCAが車両玩具のドライバに設定されたとする。この場合に、図7等で説明した走行制御データをDS=100に設定すれば最高速度VHAになり、DS=0に設定すれば最低速度VLAになるように、走行制御データが変換される。即ち、変換後の走行制御データをDS’とすると、DS’=VLA+(VHA−VLA)×(DS/100)になる。例えばVHA=90、VLA=10とすると、DS=100の場合にDS’=VHA=90になり、DS=0の場合にDS’=VLA=10になる。
一方、プレーヤがキャラクタCBを選択し、キャラクタCBが車両玩具のドライバに設定されると、走行制御データをDS=100に設定すれば最高速度VHBになり、DS=0に設定すれば最低速度VLBになるように、走行制御データが変換される。即ち、DS’=VLB+(VHB−VLB)×(DS/100)になる。
このようにすれば、キャラクタに応じて走行速度レンジを異ならせることができる。例えばキャラクタCAでは、走行速度レンジRVAが広いため、ピーキーな速度変化が可能になる。一方、キャラクタCBでは、走行速度レンジRVBが狭いため、狭い範囲で細かな速度制御が可能になる。
また図33Cにおいて、キャラクタCAは、その加速度パラメータが大きな値に設定され、キャラクタCBは、その加速度パラメータが小さな値に設定されている。
そして加速度パラメータ値が大きいキャラクタCAがプレーヤにより選択された場合には、前半期間である加速期間T1(DF>0)が長い期間に設定される。このように加速期間T1を長くすることで、車両玩具の加速の度合いが大きくなる。
一方、加速度パラメータ値が小さいキャラクタCBが選択された場合には、加速期間T1(DF>0)が短い期間に設定される。このように加速期間T1を短くすることで、キャラクタCAに比べて加速の度合いが小さくなる。
以上のように、加速度パラメータ値に応じて加速期間T1の長さを変化させることで、選択されたキャラクタに応じて加速の度合いを異ならせる走行制御が可能になる。
また図33Dにおいて、キャラクタCAは、その減速度パラメータが小さな値に設定され、キャラクタCBは、その減速度パラメータが大きな値に設定されている。
そして減速度パラメータ値が小さいキャラクタCAがプレーヤにより選択された場合には、前半期間である減速期間T1(DF<0)が短い期間に設定される。このように減速期間T1を短くすることで、車両玩具の減速の度合いが小さくなる。
一方、減速度パラメータ値が大きいキャラクタCBが選択された場合には、減速期間T1(DF<0)が長い期間に設定される。このように加速期間T1を長くすることで、キャラクタCAに比べて減速の度合いが大きくなる。
以上のように、減速度パラメータ値に応じて、前半期間である減速期間T1の長さを変化させることで、選択されたキャラクタに応じて減速の度合いを異ならせる走行制御が可能になる。
また図34Aにおいて、キャラクタCAは、その制動力(ブレーキ)パラメータが大きな値に設定され、キャラクタCBは、その制動力パラメータが小さな値に設定されている。
そして制動力パラメータ値が大きいキャラクタCAがプレーヤにより選択された場合には、前半期間である減速期間T1(DF<0)において、高デューティ(例えば100パーセント)の逆極性電圧がモータに印加される。このように減速期間T1において、高デューティの逆極性電圧をモータに印加することで、車両玩具に強い制動力がかかり、早期に減速することが可能になる。
一方、制動力パラメータ値が小さいキャラクタCBが選択された場合には、減速期間T1(DF<0)において、低デューティ(例えば50パーセント)の逆極性電圧がモータに印加される。このように減速期間T1において、低デューティの逆極性電圧をモータに印加することで、キャラクタCAに比べて、車両玩具にかかる制動力が弱くなり、ゆっくりと減速するようになる。
以上のように、制動力パラメータ値に応じて、減速期間T1での逆極性電圧のデューティを変化させることで、選択されたキャラクタに応じて制動力の度合いを異ならせる走行制御が可能になる。
また図34Bにおいて、キャラクタCAは、その反応速度パラメータが速くなる値に設定され、キャラクタCBは、その反応速度パラメータが遅くなる値に設定されている。
そして反応速度が速いキャラクタCAがプレーヤにより選択された場合には、マーカMCi+1を検知後、実際に加速等が行われるまでの反応期間TRが短くなる。このように反応期間TRが短くなることで、車両玩具は即座に加速等するようになり、レスポンスが速くなる。
一方、反応速度が遅いキャラクタCBが選択された場合には、マーカMCi+1を検知後、実際に加速等が行われるまでの反応期間TRが長くなる。このように反応期間TRが長くなることで、車両玩具はすぐには加速等しないようになり、レスポンスが遅くなる。
以上のように、反応速度パラメータ値に応じて、反応期間TRの長さを変化させることで、選択されたキャラクタに応じて反応速度を異ならせる走行制御が可能になる。
4.14 変形例
次に本実施形態の種々の変形例について説明する。
例えばコース60を構成する各コースパーツCP1〜CP16に設けるマーカコードMC1〜MC16の配列は、図1(A)に示す例に限定されない。即ち、図35A、図35Bに示すように、コース60の走行面CPB1(〜CPB16)の車両玩具10の進行方向D1(第1の方向)に対して右半分側の領域CPBR1(広義には第1の領域)に、車両玩具10がデータを読み取るための複数のデータマーカDM1〜DMn(nは2以上の整数)からなるマーカコードMC1(〜MC16)を設けてもよい。
本実施形態において、これらのマーカコードMC1(〜MC16)に含まれる複数のデータマーカDM1〜DMnによって読み取られるデータは、各コースパーツCP1〜CP16の形状を特定するためのコースパーツID等で示されるコースデータである。すなわち、各マーカコードMC1(〜MC16)は、コースパーツCP1〜CP16のうち、第iのコースパーツCPiと第jのコースパーツCPj(1≦i<j≦16)の形状が異なれば、複数のデータマーカDM1〜DMnの配列が異なっている。このため、コースパーツCP1〜CP16の形状の違いを、データマーカDM1〜DMnの配列の違いにより表すことが可能になる。なお、当該データは、コースデータに限られず、例えば、各コースパーツCP1〜CP16における走行の際の走行指示データ等であってもよい。
一方、各コースパーツCP1〜CP16の走行面CPB1〜CPB16の車両玩具10の進行方向D1に対して左半分側の領域CPBL1(第2の領域)には、図35A、図35Bに示すように、当該データをサンプリングするためのクロックを車両玩具10が読み取るための複数のクロックマーカCM1(〜CM16)が設けられている。なお、これらのデータマーカDM1〜DMnとクロックマーカCM1〜CM16の配列は、図35A、図35Bに示す配列に限定せず、例えばD1方向に対して左右反対となる配列であってもよい。
このように、データマーカDM1〜DMn及びクロックマーカCM1(〜CM16)をコース60上に設けることによって、コース60上を走行開始した車両玩具10は、各種端末装置等からなるゲーム装置からインストールされるプログラムによって走行動作が制御されながら、コース60上を反時計回り(図1(A)におけるD1方向)で走行する。本実施形態では、コース60上を走行した際に、車両玩具10に含まれるデータ用センサ50a(図36参照)が、マーカコードMC1〜MC16に含まれるデータマーカDM1〜DMnを読み取ることによって、各コースパーツCP1〜CP16の形状を特定するためのコースパーツID(コースデータ)を取得できる。
なお、本実施形態では、データマーカDM1〜DMn及びクロックマーカCM1(〜CM16)は、白色のマーカであり、コース60の走行面CPB1(〜CPB16)は、黒色に着色されている。なお、これらのマーカDM1〜DMn、CM1〜CM16の色は、白色に限定されず、輝度が所与の基準輝度以上に設定され、コース60の走行面CPB1(〜CPB16)の輝度が当該基準輝度未満に設定されていればよい。また反対に、これらのマーカDM1〜DMn、CM1〜CM16の輝度が所与の輝度未満に設定され、コース60の走行面CPB1(〜CPB16)の輝度が当該基準輝度以上に設定するようにしてもよい。
また、図35A、図35Bに示すように、コース60上にデータマーカDM1〜DMnと、クロックマーカCM1〜CM16が設けられている場合、センサ50として、図36に示すように、データ用センサ50aと、クロック用センサ50bを、車両玩具10の接地面側に設ければよい。データ用センサ50aは、車両玩具10がデータを読み取るためにコース60に設けられる複数のデータマーカDM1〜DMnからなるマーカコードMC1〜MC16を検知する。クロック用センサ50bは、当該データをサンプリングするためのクロックを読み取るためにコース60に設けられる複数のクロックマーカCM1〜CM16を検知する。
本実施形態では、データ用センサ50a及びクロック用センサ50bは、図36に示すように、ボディ12のコース60に対する接地面側に、車両玩具10の走行方向(移動方向)である第1の方向D1に対して垂直方向となる第2の方向D2に沿って並列して設けられている。このため、車両玩具10がコース60上を走行すると、クロック用センサ50bでクロックマーカCM1〜CM16を読み取りながら、データ用センサ50aでデータマーカDM1〜DMnを読み取れる。換言すると、データ用センサ50aと並列配置されているクロック用センサ50bによりクロックを抽出し、そのクロックを基準にデータを適正に取得できる。
即ち、データ用センサ50aは、検知対象となるマーカコードMC1〜MC16に含まれるデータマーカDM1〜DMnの輝度(輝度情報)を検知し、クロック用センサ50bは、検知対象となるクロックマーカCM1〜CM16の輝度(輝度情報)を検知する。そして、クロック用センサ50bの検知信号から抽出されたクロックにより、データ用センサ50aの検知信号をサンプリングすることでコースパーツCP1〜CP16の形状を特定するためのコースデータを読み取ることができる。
具体的には、データ用センサ50aは、コース60の各コースパーツの走行面の進行方向D1に対して右半分側の領域(第1の領域)に設けられたデータマーカDM1〜DMnと、対向するように配置される。そして、データ用センサ50aは、検知対象となるデータマーカDM1〜DMnの輝度を検知する。この場合に、コース60の走行面CPB1〜CPB16の輝度は、所与の基準輝度未満であり、データマーカDM1〜DMnの輝度は、基準輝度以上になるように設定される。そして、車両玩具10が走行してコース60上に設けられているマーカコードMC1〜MC16の各データマーカDM1〜DMnを通過すると、センサ50の検知対象の輝度が基準輝度を閾値として判断して、各マーカコードMC1〜MC16が検出される。そして、これらのマーカコードMC1(〜MC16)に含まれるデータマーカDM1〜DMnの検出によって、各コースパーツCP1〜CP16、CP201〜CP216、CP301〜CP316、CP401〜CP416の形状を特定するためのコースデータが読み取られる。なお、ここで言及する基準輝度とは、第1の輝度と第2の輝度の差異を明確に設定するための当該第1の輝度と第2の輝度の間の所与の輝度である。
また、図36に示すようにセンサ50としてデータ用センサ50aとクロック用センサ50bを設ける場合には、図37の車両玩具10の機能ブロック図に示すように、制御部310に、クロック抽出処理部312とデータ判定処理部314とデータ送受信処理部318を含ませればよい。
クロック抽出処理部312は、コース60上のクロックマーカCM1〜CM16を検知するクロック用センサ50bの検知信号に基づいて、クロックを抽出する。
データ判定処理部314は、クロック用センサ50bの検知信号から抽出されたクロックに基づいてデータマーカDM1〜DMnを検知するデータ用センサ50aの検知信号をサンプリングすることで、データを抽出する。本実施形態では、データ判定処理部314は、抽出するデータとして、車両玩具10が走行したコース60を構成する各コースパーツCP1〜CP16の形状を特定するためのコースデータを抽出する。なお、当該データは、コースデータに限定されず、例えば、各コースパーツCP1〜CP16における走行の際の走行指示データ等を、データ判定処理部314で抽出してもよい。
データ送受信処理部318は、外部I/F部370が外部機器とインターフェース処理を行う際に、当該外部機器とデータの送受信を行う制御を行う。具体的には、データ送受信処理部318は、外部I/F部370がゲーム装置400とインターフェース処理を行う際に、ゲーム装置400から送信される各種データを受信して記憶部330に記憶させたり、反対に実際に走行した車両玩具10に新たに記憶された各種データをゲーム装置400に送信する制御を行う。また、本実施形態では、データ送受信処理部318は、外部I/F部370を介してデータ判定処理部314により抽出されたコースデータをゲーム装置400に送信するデータ送信処理部としても機能する。
また、この場合、記憶部330は、外部のゲーム装置(外部端末)から受信した走行制御データを記憶する走行制御データ記憶部332と、車両玩具10のセンサ50の検知情報、車両玩具10のジャンプ区間、滞空時間等の走行検知データをデータログとして記憶する走行検知データ記憶部334と、を含む。そして、走行制御データ記憶部332が記憶する走行制御データとして、その各走行制御データが、第1〜第16のコースパーツCP1〜CP16のうちの対応する各コースパーツに設けられた複数のデータマーカDM1〜DMnに対応づけられる、第1〜第16の走行制御データを記憶する。また、走行検知データ記憶部334が記憶する車両玩具10のセンサ50の検知情報には、データ用センサ50aで検知したコースパーツCP1〜CP16の形状を特定するためのコースパーツID(コースデータ)が含まれる。
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語(移動玩具、原動機、動作制御データ等)として引用された用語(車両玩具、モータ、走行制御データ等)は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
また、移動玩具の制御手法、マーカの検知手法、走行制御データの設定手法、移動玩具の減速・加速制御手法、原動機の駆動手法、シミュレーション処理手法等は、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含むことができる。また本発明が適用される移動玩具、ゲーム装置は、本発明で説明したような構成の移動玩具やゲーム装置に限定されるものではなく、種々の変形実施が可能である。
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 アップロード処理部、130 設定変更部、
160 操作部、170 記憶部、172 走行特性データ記憶部、
173 コースデータ記憶部、174 走行制御データ記憶部、178 描画バッファ、190 タッチパネル型表示部、191 表示部、192 音出力部、
194 補助記憶装置、196 通信部、
300 回路基板、310 制御部、330 記憶部、340 発光素子駆動部、
350 駆動部、360 センサコントローラ、370 外部インターフェース部

Claims (20)

  1. コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを記憶する走行制御データ記憶部と、
    前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、
    送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、
    受信した前記実走行結果データを表示部に表示する制御を行う表示制御部と、
    前記移動玩具に対応して設けられた仮想移動体を、前記コースに対応して設けられた仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行うシミュレーション処理部と、
    を含み、
    前記送信処理部は、
    前記走行制御データとして、コースデータ取得用走行制御データを前記移動玩具に送信するための処理を行い、
    前記受信処理部は、
    送信された前記コースデータ取得用走行制御データに基づき前記移動玩具が前記コースを走行することで得られたコースデータ取得用実走行結果データを、前記移動玩具から受信するための処理を行い、
    前記シミュレーション処理部は、
    受信した前記コースデータ取得用実走行結果データにより取得されたコースデータに基づいて、シミュレーション処理を行うことを特徴とするゲーム装置。
  2. 請求項1において、
    前記表示制御部は、
    前記実走行結果データを、前記コースの各コース区間に対応づけて表示する制御を行うことを特徴とするゲーム装置。
  3. 請求項1において、
    前記表示制御部は、
    前記シミュレーション処理により得られた走行シミュレーション結果データに対して、受信した前記実走行結果データを関連づけて表示する制御を行うことを特徴とするゲーム装置。
  4. 請求項1において、
    前記送信処理部は、
    前記コースの各コース区間に対応づけられた前記走行制御データを、前記移動玩具に送信するための処理を行い、
    前記受信処理部は、
    前記コースの各コース区間での前記移動玩具の実走行ラップタイムデータを、前記実走行結果データとして受信するための処理を行い、
    前記表示制御部は、
    受信した前記実走行ラップタイムデータを、前記コースの各コース区間に対応づけて表示する制御を行うことを特徴とするゲーム装置。
  5. 請求項1において、
    前記送信処理部は、
    前記コースの各コース区間に対応づけられた前記走行制御データを、前記移動玩具に送信するための処理を行い、
    前記受信処理部は、
    前記コースの各コース区間での前記移動玩具の実加減速データを、前記実走行結果データとして受信するための処理を行い、
    前記表示制御部は、
    受信した前記実加減速データを、前記コースの各コース区間に対応づけて表示する制御を行うことを特徴とするゲーム装置。
  6. 請求項1において、
    前記送信処理部は、
    前記コースの各コース区間において前記移動玩具の原動機に供給される動力の大きさを設定するデータを、前記走行制御データとして前記移動玩具に送信するための処理を行い、
    前記移動玩具は、
    前記コースに設けられた複数のマーカの各マーカを検知するセンサを有し、前記センサからの検知情報に基づいて前記コースの第iのコース区間から第i+1のコース区間に前記移動玩具が移動したと判断した場合に、前記第i+1のコース区間に対応づけられた第i+1の走行制御データと、前記第iのコース区間に対応づけられた第iの走行制御データとの差分情報に基づいて、前記移動玩具の減速制御及び加速制御の少なくとも一方を行い、
    前記受信処理部は、
    前記差分情報に基づき減速制御又は加速制御された前記移動玩具の前記実走行結果データを、受信するための処理を行うことを特徴とするゲーム装置。
  7. 請求項1において、
    受信した前記実走行結果データが正当なデータであるか否かを認証する処理を行う認証処理部を含むことを特徴とするゲーム装置。
  8. 請求項7において、
    前記認証処理部は、
    前記移動玩具が前記コースのスタート地点からスタートして前記コースのゴール地点を通過したと判定された場合に、前記実走行結果データが正当なデータであると判断することを特徴とするゲーム装置。
  9. 請求項8において、
    前記送信処理部は、
    前記コースの各コース区間に対応づけられた前記走行制御データを前記移動玩具に送信するための処理を行い、
    前記移動玩具は、
    前記コースに設けられた複数のマーカの各マーカを検知するセンサを有し、前記センサからの検知情報に基づいて、前記コースの各コース区間に対応づけられた前記走行制御データを読み出すことで、前記移動玩具の走行を制御すると共に、
    前記認証処理部は、
    スタート地点に対応するコース区間とゴール地点に対応するコース区間を前記移動玩具が通過したと判断された場合に、その走行により得られた前記実走行結果データが正当なデータであると判定することを特徴とするゲーム装置。
  10. 請求項7において、
    受信した前記実走行結果データが正当なデータであると判断された場合に、正当なデータであると判断された前記実走行結果データを、ネットワークを介してアップロードする処理を行うアップロード処理部を含むことを特徴とするゲーム装置。
  11. コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを記憶する走行制御データ記憶部と、
    前記走行制御データを前記移動玩具に送信するための処理を行う送信処理部と、
    送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行う受信処理部と、
    受信した前記実走行結果データを表示部に表示する制御を行う表示制御部と、
    前記移動玩具に対応して設けられた仮想移動体を、前記コースに対応して設けられた仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行うシミュレーション処理部と、
    受信した前記実走行結果データと、前記シミュレーション処理により得られた走行シミュレーション結果データとの比較処理を行う比較処理部と、
    を含み、
    前記表示制御部は、
    前記比較処理での比較結果に基づいて、前記移動玩具のパーツ変更のアドバイス画面を表示する制御を行うことを特徴とするゲーム装置。
  12. 請求項1乃至11のいずれかにおいて、
    前記移動玩具に対応づけられるキャラクタのキャラクタデータのパラメータ値を、前記移動玩具の走行シミュレーション結果データに基づいて変更する処理を行うパラメータ処理部を含み、
    前記送信処理部は、
    変更された前記キャラクタデータの前記パラメータ値に対応した走行制御の指示情報を、前記走行制御データに付加して、前記移動玩具に送信するための処理を行うことを特徴とするゲーム装置。
  13. 請求項12において、
    前記パラメータ処理部は、
    前記キャラクタデータの前記パラメータ値として、前記移動玩具の最高速度及び最低速度、前記移動玩具の加速度、前記移動玩具の減速度、前記移動玩具の制動力、及び前記移動玩具の反応速度の少なくとも1つを変更する処理を行い、
    前記送信処理部は、
    前記移動玩具の前記最高速度及び最低速度の指示情報、前記加速度の指示情報、前記減速度の指示情報、前記制動力の指示情報、及び前記反応速度の指示情報の少なくとも1つを、前記移動玩具に送信するための処理を行うことを特徴とするゲーム装置。
  14. 請求項1乃至13のいずれかにおいて、
    コース上を移動する移動玩具の走行特性に基づき設定されたデータである走行特性データを記憶する走行特性データ記憶部と、
    前記移動玩具が移動する前記コースのコース特性に基づき設定されたデータであるコースデータを記憶するコースデータ記憶部と、
    を含み、
    前記シミュレーション処理部は、
    前記走行特性データに基づきその走行特性が設定される前記仮想移動体を、前記コースデータに基づきそのコース特性が設定される前記仮想空間内の前記仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行うことを特徴とするゲーム装置。
  15. 請求項14において、
    前記移動玩具のパーツ変更に対応して前記走行特性データの設定内容を変更する設定変更部を含み、
    前記シミュレーション処理部は、
    変更後の前記走行特性データに基づいて、前記仮想移動体を前記仮想コースで走行させるシミュレーション処理を行うことを特徴とするゲーム装置。
  16. 請求項15において、
    前記設定変更部は、
    前記移動玩具が有する原動機の変更に対応して、前記走行特性データのうちの加速特性データを変更し、
    前記シミュレーション処理部は、
    変更後の前記加速特性データに基づきその加速特性が設定される前記仮想移動体を、前記仮想コースで走行させるシミュレーション処理を行うことを特徴とするゲーム装置。
  17. 請求項15において、
    前記設定変更部は、
    前記移動玩具が有するタイヤの変更に対応して、前記走行特性データのうちのコーナリング特性データを変更し、
    前記シミュレーション処理部は、
    変更後の前記コーナリング特性データに基づきそのコーナリング特性が設定される前記仮想移動体を、前記仮想コースで走行させるシミュレーション処理を行うことを特徴とするゲーム装置。
  18. コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを走行制御データ記憶部に記憶し、
    前記走行制御データとして、コースデータ取得用走行制御データを前記移動玩具に送信するための処理を行い、
    送信された前記コースデータ取得用走行制御データに基づき前記移動玩具が前記コースを走行することで得られたコースデータ取得用実走行結果データを、前記移動玩具から受信するための処理を行い、
    受信した前記コースデータ取得用実走行結果データを表示部に表示する制御を行い、
    前記移動玩具に対応して設けられた仮想移動体を、前記コースに対応して設けられ、前記コースデータ取得用実走行結果データにより取得されたコースデータに基づきそのコース特性が設定される仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行うとを特徴とする移動玩具のための走行シミュレーション方法。
  19. コース上を移動する移動玩具の走行を制御するためのデータである走行制御データを走行制御データ記憶部に記憶し、
    前記走行制御データを前記移動玩具に送信するための処理を行い、
    送信された前記走行制御データに基づき前記移動玩具が前記コースを走行することで得られた実走行結果データを、前記移動玩具から受信するための処理を行い、
    受信した前記実走行結果データを表示部に表示する制御を行い、
    前記移動玩具に対応して設けられた仮想移動体を、前記コースに対応して設けられた仮想空間内の仮想コースにおいて、前記走行制御データにしたがって走行させるシミュレーション処理を行い、
    受信した前記実走行結果データと、前記シミュレーション処理により得られた走行シミュレーション結果データとの比較処理を行うと共に、
    前記比較処理での比較結果に基づいて、前記移動玩具のパーツ変更のアドバイス画面を表示する制御を行うことを特徴とする移動玩具のための走行シミュレーション方法。
  20. コンピュータ読み取り可能な情報記憶媒体であって、請求項18又は19に記載の走行シミュレーション方法をコンピュータに実行させることを特徴とするプログラム。
JP2010505997A 2008-04-04 2009-04-03 ゲーム装置、走行シミュレーション方法及びプログラム Active JP5523306B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010505997A JP5523306B2 (ja) 2008-04-04 2009-04-03 ゲーム装置、走行シミュレーション方法及びプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2008098787 2008-04-04
JP2008098787 2008-04-04
JP2010505997A JP5523306B2 (ja) 2008-04-04 2009-04-03 ゲーム装置、走行シミュレーション方法及びプログラム
PCT/JP2009/056959 WO2009123310A1 (ja) 2008-04-04 2009-04-03 ゲーム装置、走行シミュレーション方法、プログラム及び情報記憶媒体

Publications (2)

Publication Number Publication Date
JPWO2009123310A1 JPWO2009123310A1 (ja) 2011-07-28
JP5523306B2 true JP5523306B2 (ja) 2014-06-18

Family

ID=41135672

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010505997A Active JP5523306B2 (ja) 2008-04-04 2009-04-03 ゲーム装置、走行シミュレーション方法及びプログラム

Country Status (3)

Country Link
JP (1) JP5523306B2 (ja)
CN (1) CN101983094B (ja)
WO (1) WO2009123310A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5788275B2 (ja) * 2011-09-14 2015-09-30 株式会社バンダイナムコエンターテインメント ゲーム装置、ゲームシステム、プログラム、情報記憶媒体及びサーバシステム
CN106390475A (zh) * 2016-10-20 2017-02-15 昆山荃华图文设计有限公司 无轨赛车玩具模拟控制系统及其控制方法
CN111870946B (zh) * 2020-08-07 2024-01-30 网易(杭州)网络有限公司 信息处理方法、装置、设备及计算机可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0332687A (ja) * 1989-06-30 1991-02-13 Meidensha Corp 模型自動車走行装置
JPH09308769A (ja) * 1996-05-24 1997-12-02 Banpuresuto:Kk 電子ゲーム機
JP2000210476A (ja) * 1999-01-27 2000-08-02 Namco Ltd 玩具、ゲ―ム装置及び情報記憶媒体
JP2001300151A (ja) * 2000-04-20 2001-10-30 Kondo Kagaku Kk 走行体の走行システム
JP2004216064A (ja) * 2003-01-17 2004-08-05 Skill:Kk ラップ時間計測器及びデータ収集器
JP2004321728A (ja) * 2003-04-22 2004-11-18 Atsushi Matsuzaki 無線操縦競技用玩具及び同玩具を用いる競技

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0332687A (ja) * 1989-06-30 1991-02-13 Meidensha Corp 模型自動車走行装置
JPH09308769A (ja) * 1996-05-24 1997-12-02 Banpuresuto:Kk 電子ゲーム機
JP2000210476A (ja) * 1999-01-27 2000-08-02 Namco Ltd 玩具、ゲ―ム装置及び情報記憶媒体
JP2001300151A (ja) * 2000-04-20 2001-10-30 Kondo Kagaku Kk 走行体の走行システム
JP2004216064A (ja) * 2003-01-17 2004-08-05 Skill:Kk ラップ時間計測器及びデータ収集器
JP2004321728A (ja) * 2003-04-22 2004-11-18 Atsushi Matsuzaki 無線操縦競技用玩具及び同玩具を用いる競技

Also Published As

Publication number Publication date
JPWO2009123310A1 (ja) 2011-07-28
CN101983094B (zh) 2014-08-20
CN101983094A (zh) 2011-03-02
WO2009123310A1 (ja) 2009-10-08

Similar Documents

Publication Publication Date Title
EP1264623B1 (en) Remote control and program control for a toy driving mechanism
JP6253218B2 (ja) エンタテインメントシステム及び方法
JP3673449B2 (ja) 表示玩具
EP1264624B1 (en) Toy system
JP2000233072A (ja) ゲーム装置
JP2010167149A (ja) コースパーツ、及び移動玩具システム。
JP5526334B2 (ja) 遠隔無線操縦型オンライン対戦ゲームシステムにおけるゲーム画像生成方法
US20200027371A1 (en) Learning toy, mobile body for learning toy, panel for learning toy, and portable information processing terminal for learning toy
JP5523306B2 (ja) ゲーム装置、走行シミュレーション方法及びプログラム
KR200194797Y1 (ko) 자전거 운동/게임 장치
US20050090302A1 (en) System and method for utilizing vectors in a video game
WO2009123309A1 (ja) 移動玩具、移動玩具の制御方法、プログラム、情報記憶媒体及びゲーム装置
JP2009247578A (ja) プログラム、情報記憶媒体、ゲーム装置及び移動玩具
JP2011130829A (ja) 移動玩具、プログラム、情報記憶媒体、移動玩具制御システム及び移動玩具制御方法
JP2009247574A (ja) プログラム、情報記憶媒体、ゲーム装置及び移動玩具
KR100939869B1 (ko) 실제로봇과 가상로봇이 연동하는 게임 시스템 및 방법
JP2010167148A (ja) 移動玩具、プログラム、情報記憶媒体、およびゲーム装置。
JP3977264B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP2009247575A (ja) 移動玩具、プログラム、情報記憶媒体、およびゲーム装置
JPH0970483A (ja) ゲーム装置
JP7282844B2 (ja) エンターテインメントシステム
US9770663B2 (en) Computerized car racing game system
JP2009018199A (ja) ゲーム情報処理装置及びそのコンピュータプログラム
JP2009247577A (ja) 移動玩具、オートスタート装置、プログラム、情報記憶媒体、およびゲーム装置
JP2002263368A (ja) ゲーム装置、記憶媒体、測定手段、ゲームシステムおよび被制御物体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130115

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130314

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131217

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140214

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: 20140311

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140408

R150 Certificate of patent or registration of utility model

Ref document number: 5523306

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250