(57)【要約】【課題】仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化するゲーム装置等を提供する。【解決手段】ゲーム装置２０１の入力受付部２０２は、プレイヤーからの操作入力を受け付け、記憶部２０３は、当該移動体の位置および速度、ならびに、当該路面の状態を記憶し、計算部２０４は、受け付けられたプレイヤーからの操作入力と、記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体の加速度を計算し、更新部２０５は、計算された加速度により、記憶された移動体の位置および速度を更新し、当該移動体の位置、速度、加速度のいずれか少なくとも１つの変化により、記憶される当該路面の状態を更新し、表示部２０６は、記憶された移動体の位置、速度のいずれか少なくとも１つを表示する。【選択図】  図２
2004298345.tif 000002
【特許請求の範囲】
【請求項１】
仮想世界において移動体を路面上で移動させるゲーム装置であって、入力受付部と、記憶部と、計算部と、更新部と、を備え、
前記入力受付部は、プレイヤーからの操作入力を受け付け、
前記記憶部は、当該移動体の状態（当該移動体の位置を含む。）、ならびに、当該路面の状態を記憶し、
前記計算部は、前記受け付けられたプレイヤーからの操作入力と、前記記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体が受ける影響を計算し、
前記更新部は、前記計算された影響により、前記記憶された移動体の状態を更新し、当該移動体の状態の変化により、前記記憶される当該路面の状態を更新する
ことを特徴とするもの。
【請求項２】
請求項１に記載のゲーム装置であって、
前記記憶部は、当該移動体の速度を、当該移動体の状態としてさらに記憶し、
前記計算部は、当該移動体の加速度を、当該移動体が受ける影響として計算し、
前記更新部は、前記計算された加速度により、前記記憶された移動体の位置および速度を更新する
ことを特徴とするもの。
【請求項３】
請求項２に記載のゲーム装置であって、
前記記憶部は、当該路面内の各位置における基準摩擦力を、当該路面の状態として記憶し、
前記計算部は、前記記憶された「当該路面内における当該移動体の現在の位置の基準摩擦力」を前記記憶された「当該移動体の現在の状態」により変化させて、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項４】
請求項２または３に記載のゲーム装置であって、表示部をさらに備え、
前記表示部は、前記記憶された移動体の位置、速度のいずれか少なくとも１つを表示する
ことを特徴とするもの。
【請求項５】
請求項４に記載のゲーム装置であって、
前記記憶部は、当該路面の状態として、当該路面内の所定の位置における当該移動体の通過回数を記憶し、
前記更新部は、前記記憶された移動体の位置の変化により、前記記憶される移動体の通過回数を更新し、
前記表示部は、前記記憶された移動体の通過回数により変化する画像をさらに表示する
ことを特徴とするもの。
【請求項６】
請求項２から５のいずれか１項に記載のゲーム装置であって、
前記計算部は、前記記憶された「当該路面内における当該移動体の現在の位置の通過回数」により当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項７】
請求項６に記載のゲーム装置であって、
前記計算部は、前記記憶された「当該路面内における当該移動体の現在の位置の通過回数」が増加すると、当該移動体の加速度が大きくなるように計算する
ことを特徴とするもの。
【請求項８】
請求項５から７のいずれか１項に記載のゲーム装置であって、
前記記憶部は、当該路面内の目標経路をさらに記憶し、
前記更新部は、前記記憶された移動体の通過回数により、前記記憶された目標経路を更新し、
前記表示部は、前記記憶された目標経路をさらに表示する
ことを特徴とするもの。
【請求項９】
仮想世界において移動体を路面上で移動させるゲーム方法であって、入力受付工程と、計算工程と、更新工程と、を備え、当該移動体の状態（当該移動体の位置を含む。）、ならびに、当該路面の状態を記憶する記憶部を用い、
前記入力受付工程では、プレイヤーからの操作入力を受け付け、
前記計算工程では、前記受け付けられたプレイヤーからの操作入力と、前記記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体が受ける影響を計算し、
前記更新工程では、前記計算された影響により、前記記憶された移動体の状態を更新し、当該移動体の状態の変化により、前記記憶される当該路面の状態を更新する
ことを特徴とする方法。
【請求項１０】
コンピュータを、ゲーム装置の入力受付部、記憶部、計算部、および、更新部として機能させるプログラムであって、
前記入力受付部は、プレイヤーからの操作入力を受け付け、
前記記憶部は、当該移動体の状態（当該移動体の位置を含む。）、ならびに、当該路面の状態を記憶し、
前記計算部は、前記受け付けられたプレイヤーからの操作入力と、前記記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体が受ける影響を計算し、
前記更新部は、前記計算された影響により、前記記憶された移動体の状態を更新し、当該移動体の状態の変化により、前記記憶される当該路面の状態を更新する
ように機能させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化するゲーム装置、ゲーム方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
【０００２】
【従来の技術】
従来から、プレイヤーがドライバーとなって自動車やオートバイなどを運転し、仮想的に設定された世界の中を車両で移動し、他のプレイヤーやコンピュータが制御するプレイヤーと競争を楽しむレーシングゲームが提供されている。一方、現実のカーレース等では、自動車等が路面を走行すると、タイヤのゴムが剥れ落ちて路面に付着し、これによって走行する自動車等のタイヤと路面との摩擦が大きくなり、グリップ性能が変化する、という傾向が見られる。
【０００３】
【発明が解決しようとする課題】
したがって、リアルなレーシングゲーム等を実現するためには、ゲームという仮想世界の中を移動する車両等の移動体が、路面を移動することによって路面が受ける影響や、これによって状況が変化した路面上から移動体が受ける影響を考慮して、移動体の移動の様子をシミュレートする必要がある。一方、限られたハードウェア資源しか有さず、リアルタイム性を要求されるゲーム装置では、このようなシミュレーションを実現させるための工夫も必要とされている。
【０００４】
本発明は、上記のような課題を解決するためのものであって、仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化するゲーム装置、ゲーム方法、ならびに、これらをコンピュータによって実現するプログラムを提供することを目的とする。
【０００５】
【課題を解決するための手段】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
本発明の第１の観点に係るゲーム装置は、仮想世界において移動体を路面上で移動させ、入力受付部と、記憶部と、計算部と、更新部と、を備え、以下のように構成する。
【０００６】
すなわち、入力受付部は、プレイヤーからの操作入力を受け付ける。プレイヤーは、ゲーム装置が標準で装備するコントローラのほか、ハンドル型コントローラ、ブレーキ型コントローラ、シフトレバー型コントローラなど、各種の入力装置を操作することにより、ゲーム装置に対して操作入力を与えるのである。
【０００７】
一方、記憶部は、当該移動体の状態（当該移動体の位置を含む。）、ならびに、当該路面の状態を記憶する。典型的には、当該移動体の速度も移動体の状態として記憶する。後述するように、時間が経過するごとに記憶部に記憶される移動体の位置および速度、路面の状態の情報は更新されていく。
【０００８】
このほか、移動体が自動車である場合には、記憶部は、自動車の重量、ハンドルの姿勢、タイヤの種類・すり減り量、エンジンの回転数・温度・出力、現在のシフトレバーの位置、ギヤ比、クラッチの位置等、種々の情報を記憶する。また、路面の状態として後述する移動体の通過回数のほか、路面の種類（アスファルトか、グラベルか、ダートか、ターマックか、雨が降っているか、道路外か、道路外であるならば芝生か、等。）等を記憶しても良い。
【０００９】
さらに、計算部は、受け付けられたプレイヤーからの操作入力と、記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体が受ける影響を計算する。たとえば、自動車が道路を走行する場合は、現在の路面の状態によって、自動車が受ける摩擦力（グリップ力）が変化したり、路面の状態によって自動車の振動の度合などが変化するなど、各種の影響を受ける。そこで、このような影響を計算する。
【００１０】
そして、更新部は、計算された影響により、記憶された移動体の状態を更新し、当該移動体の状態の変化により、記憶される当該路面の状態を更新する。たとえば、レーシングカーが道路を走行すると、タイヤと路面との摩擦によりタイヤのゴムが剥れ、路面の色が変化したり路面との摩擦力が変化する。そこで、これらを路面の状態の変化として更新する。
【００１１】
本発明によれば、仮想世界において移動体を路面上で移動させ、当該移動体が路面から受ける影響を現在の移動体の位置における路面の状態により計算するとともに、当該移動体の状態の変化によって路面の状態を変化させて、よりリアルな移動体の移動のシミュレートが実現できる。
【００１２】
また、本発明のゲーム装置において、記憶部は、当該移動体の速度を、当該移動体の状態としてさらに記憶し、計算部は、当該移動体の加速度を、当該移動体が受ける影響として計算し、更新部は、計算された加速度により、記憶された移動体の位置および速度を更新するように構成することができる。
【００１３】
自動車が道路を走る場合、加速度を求めるためには、タイヤの接地面とタイヤとの摩擦力を求める必要がある。そこで、現在の移動体の位置における路面の状態を調べて、これと上記のように記憶された他の情報やプレイヤーの操作に基づいて、自動車の加速度を決めるのである。
【００１４】
また、加速度を積分すれば速度が得られ、速度を積分すれば位置が得られる。典型的には、一定時間間隔おきに当該更新が行われ、計算部で得られた加速度に当該時間間隔を乗じて速度の増分を求める。また、現在の速度と「現在の速度に増分を加算したもの」との平均に当該時間間隔を乗じて、位置の増分を求める。
【００１５】
さらに、上述のように、路面と移動体とが接していることによる影響を考慮して、記憶部に記憶される路面の状態の情報を更新するのである。
本発明によれば、仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化し、これによって移動体の加速度が変化するようなゲーム装置を実現することができる。
【００１６】
また、本発明のゲーム装置において、記憶部は、当該路面内の各位置における基準摩擦力を、当該路面の状態として記憶し、計算部は、記憶された「当該路面内における当該移動体の現在の位置の基準摩擦力」を記憶された「当該移動体の現在の状態」により変化させて、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算するように構成することができる。
【００１７】
たとえば、レーシングゲームの場合、路面の各位置には、基準となるグリップ力（基準摩擦力）があらかじめ設定されており、自動車の現在の速度等（たとえば、自動車の重量、今までの走行距離等）によってこの基準摩擦力に適当な修正を加えて実際に自動車が受ける摩擦力を得る。
本発明は上記ゲーム装置の好適実施形態に相当するものであり、本発明によれば、たとえば、路面の各場所によって基準となるグリップ力が変化する一方で、さらにそのグリップ力が自動車の状態によって変化するようなリアルなレーシングゲームを実現することができる。
【００１８】
また、本発明のゲーム装置において、表示部は、記憶された移動体の位置、速度のいずれか少なくとも１つを表示するように構成することができる。たとえば、レーシングゲームでは、自動車の運転席から外界を見た様子と、コース内における自動車の位置・向きと、を表示するほか、現在の自動車の速度を速度計によって表示する。このほか、記憶部に記憶されたエンジンの回転数・温度やシフトレバーの位置など、種々の情報をさらに表示しても良い。
本発明によれば、仮想世界における移動体の位置や速度をプレイヤーに通知するゲーム装置を実現することができる。
【００１９】
また、本発明のゲーム装置において、記憶部は、当該路面の状態として、当該路面内の所定の位置における当該移動体の通過回数を記憶し、更新部は、記憶された移動体の位置の変化により、記憶される移動体の通過回数を更新し、表示部は、記憶された移動体の通過回数により変化する画像をさらに表示するように構成することができる。
【００２０】
現実のカーレースにおいては、自動車が路面を通過するごとにタイヤのゴムが路面に付着し、次第に黒くなっていく。そこで、移動体の通過回数を順次更新して記憶し、この様子を画面に表示する。典型的には、自動車の運転席から見た路面の様子が変化して、以前の周回で通過した部分が次第に黒くなっていくこととなる。典型的には、通過回数に応じてあらかじめ複数のテクスチャを用意し、これを路面に貼り付けて表示する。
本発明によれば、プレイヤーの操作によって移動する移動体の路面における通過回数を表す画像で示すことにより、プレイヤーに対して、移動体の操作や移動の履歴を提示するゲーム装置を実現することができる。
【００２１】
また、本発明のゲーム装置において、計算部は、記憶された「当該路面内における当該移動体の現在の位置の通過回数」により当該移動体に与える摩擦力を得て、当該移動体の加速度を計算するように構成することができ、特に、計算部は、記憶された「当該路面内における当該移動体の現在の位置の通過回数」が増加すると、当該移動体の加速度が大きくなるように計算するように構成することができる。
【００２２】
現実のカーレースにおいては、路面にゴムが付着すればするほどグリップ性能が向上して、タイヤと路面の摩擦力が大きくなり、滑りにくくなる、という傾向が見られる。すなわち、路面を自動車が通過する回数によって、グリップ性能が変化するのである。そこで、路面の状況として移動体の通過回数を用い、通過回数が増えると、他の条件が同じであっても、移動体の加速度が変化するように、典型的には大きくなるように、加速度の計算を行うのである。
【００２３】
本発明によれば、移動体の通過回数を統計として保存しておくことにより、現実世界のカーレースにおいて、自動車が走行して路面にゴムが付着すればするほどグリップ性能が変化し、特に、タイヤと路面の摩擦力が大きくなり滑りにくくなる、という傾向を簡易にシミュレートするゲーム装置を実現することができる。
【００２４】
また、本発明ゲーム装置において、記憶部は、当該路面内の目標経路をさらに記憶し、更新部は、記憶された移動体の通過回数により、記憶された目標経路を更新し、表示部は、記憶された目標経路をさらに表示するように構成することができる。
【００２５】
現実のカーレースにおいては、路面上の道路内のどの経路を用いれば最も速く移動できるか、すなわち、どのようなラインどりをすればレースに勝てるか、という点に興味が集まる。最速移動が期待されるラインを「レコードライン」と呼ぶこととすると、路面がきれいな状態でのレコードラインは、そのコースにおいて滑らかなハンドル操作でできるだけ減速せずに走行できるようなラインであり、このような当初のレコードラインの情報を記憶部に記憶する。
【００２６】
そして、移動体が移動して通過回数が更新されると、その影響を考慮して、記憶部に記憶されるレコードラインを移動させていく。レコードラインは、典型的には自動車の運転席から見た路面上に描画される。
本発明によれば、たとえばレーシングゲームにおいて、プレイヤーが自動車の移動において参考にすべきラインどりを提示し、プレイヤーの習熟を促すゲーム装置を実現することができる。
【００２７】
本発明の他の観点に係るゲーム方法は、仮想世界において移動体を路面上で移動させ、入力受付工程と、計算工程と、更新工程と、を備え、当該移動体の状態（当該移動体の位置を含む。）、ならびに、当該路面の状態を記憶する記憶部を用い、以下のように構成する。
すなわち、入力受付工程では、プレイヤーからの操作入力を受け付ける。
一方、計算工程では、受け付けられたプレイヤーからの操作入力と、記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体が受ける影響を計算する。
さらに、更新工程では、計算された影響により、記憶された移動体の状態を更新し、当該移動体の状態の変化により、記憶される当該路面の状態を更新する。
【００２８】
本発明の他の観点に係るプログラムは、コンピュータを、上記のゲーム装置として機能させ、もしくは、当該コンピュータに、上記のゲーム方法を実行させるように構成する。
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記録媒体に記録することができる。上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。
【００２９】
【発明の実施の形態】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム専用の情報処理装置に本発明が適用される実施形態を説明するが、各種のコンピュータ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｔｓ）、携帯電話などの情報処理装置においても同様に本発明を適用することができる。すなわち、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【００３０】
（発明の実施の形態）
図１は、本発明の実施形態の１つに係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【００３１】
情報処理装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１０３と、インターフェース１０４と、コントローラ１０５と、外部メモリ１０６と、画像処理部１０７と、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）−ＲＯＭドライブ１０８と、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）１０９と、を備える。
【００３２】
ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０８に装着して、情報処理装置１００の電源を投入することにより、プログラムが実行され、本実施形態のゲーム装置が実現される。
【００３３】
ＣＰＵ  １０１は、情報処理装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。ＣＰＵ  １０１は、各構成要素からデータを取得し、当該データを種々の演算により加工して各構成要素にデータや制御信号として与える。ＣＰＵ  １０１では、各種のデータはいったんＣＰＵ  １０１が備えるキャッシュに格納され、さらにＣＰＵ  １０１が備えるレジスタに取得されてから各種の演算が施される。
【００３４】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Ｉｎｉｔｉａｌ  Ｐｒｏｇｒａｍ  Ｌｏａｄｅｒ）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、情報処理装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータを記録される。
【００３５】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行や通信に必要なデータが保持される。このほか、情報処理装置１００に接続される各種の機器から伝達される種々の情報や、各種の機器に伝達すべき種々の情報も、一時的に格納される。
【００３６】
インターフェース１０４を介して接続されたコントローラ１０５は、ユーザがゲーム実行の際に行う操作入力を受け付ける。また、インターフェース１０４を介して着脱自在に接続された外部メモリ１０６には、ゲームの進行状態を示すデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【００３７】
ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０８は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【００３８】
画像処理部１０７は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０７が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０７が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０７に接続されるモニタ（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
【００３９】
画像演算プロセッサは、２次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを俯瞰したレンダリング画像を得る演算の高速実行も可能である。特に、点光源や平行光源、円錐光源などの典型的な（正）光源によってポリゴンが照らされる度合を計算する機能が、ライブラリ化もしくはハードウェア化され、高速に計算できるようになっている。
【００４０】
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。フォント情報は、ＲＯＭ  １０２に記録されているが、ＤＶＤ−ＲＯＭに記録された専用のフォント情報を利用することも可能である。
【００４１】
ＮＩＣ  １０９は、情報処理装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Ｉｎｔｅｇｒａｇｅｄ  Ｓｅｒｖｉｃｅｓ  Ｄｉｇｉｔａｌ  Ｎｅｔｗｏｒｋ）モデム、ＡＤＳＬ（Ａｓｙｍｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ  Ｍｏｄｅｍ）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【００４２】
音声処理部１１０は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。たとえば、自動車の走行音や、振動音、タイヤがロックしたときの音のほか、適合しないギヤ比にシフトレバーを操作しようとしたときに生ずる異音や、クラッチをつないだときに生ずる音などである。
【００４３】
このほか、情報処理装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
【００４４】
（ゲーム装置の概要構成）
図２は、当該実施形態に係るゲーム装置の各部の機能に係る概要構成を示す説明図である。図３は、当該実施形態に係るゲーム装置において実行されるゲーム方法の処理の流れを示すフローチャートである。以下、これらの図を参照して説明する。
まず、本実施形態に係るゲーム装置２０１は、入力受付部２０２と、記憶部２０３と、計算部２０４と、更新部２０５と、表示部２０６と、を備える。
【００４５】
まず、記憶部２０３は、当該移動体の位置および速度、ならびに、当該路面の状態を記憶する。本実施形態では、路面の状態として、特に、当該路面内の所定の位置における当該移動体の通過回数を記憶する。したがって、ＲＡＭ  １０３は、記憶部２０３として機能する。
【００４６】
なお、後述するように、処理が進むごとに記憶部２０３に記憶される移動体の位置および速度、路面の状態の情報は更新されていく。このほか、移動体が自動車である場合には、記憶部２０３は、自動車の重量、ハンドルの姿勢、タイヤの種類・すり減り量、エンジンの回転数・温度・出力、現在のシフトレバーの位置、ギヤ比、クラッチの位置等、種々の情報を記憶する。また、路面の状態として路面の種類（アスファルトか、グラベルか、ダートか、ターマックか、雨が降っているか、道路外か、道路外であるならば芝生か、等。）等を記憶しても良い。
【００４７】
図４は、路面内において通過回数を記録する位置の例を示す説明図である。図５は、記憶部２０３に記憶される各種の情報の様子を示す説明図である。以下、本図を参照して説明する。
【００４８】
まず、タイヤと路面との摩擦が問題となるのは、路面４０１内の道路４０２の範囲である。そこで、道路４０２の進行方向に略垂直に、すなわち、道路４０２の端から端までを結ぶ線分４０３を、道路４０２の曲率が高い（カーブがきつい）場所では密に、曲率が低い場所では粗に、それぞれ配置する。もっとも、線分４０３は、互いに交叉しないように配置すれば、どのような配置としても構わない。
【００４９】
そして、各線分４０３を、所定の長さおきに分割した領域を考える。本図に示す例では、道路４０２の幅が一定であるので、各線分４０３は同じ長さの領域４０４に８等分されている。領域４０４を区切る数は、ＲＡＭ  １０３の容量等に応じて、適宜変更が可能である。
【００５０】
各線分４０３には他と重複しない識別番号（線分番号）が振られている。また、各領域には、同じ線分４０３内で重複しない識別番号（領域番号）が振られている。本実施形態では、線分番号は、スタートライン（図示せず）から始めて道路の標準的な進行方向の順に１、２、３、…のように振られている。領域番号は、道路の標準的な進行方向に対して右端から左端へ、１、２、３、…のように振られている。
【００５１】
図５に示す記憶部２０３の通過回数表５０１の各レコード５０２は、各線分４０３の各領域４０４に一対一に対応付けられており、線分番号５０３と、領域番号５０４と、ゲームを開始してから当該領域４０４を通過した通過回数５０５とが記録されている。
【００５２】
また、記憶部２０３には、自動車の現在位置の座標５０６と、現在の速度ベクトル５０７と、が記録されている。
このほか、記憶部２０３には、線分４０３の路面４０１内における座標データを記録する線分座標表５１１がある。線分座標表５１１の各レコード５１２は、路面４０１上の道路４０２部分内に設定された線分４０３に一対一に対応付けられており、線分番号５１３と、右端の座標５１４と、左端の座標５１５と、が記録されている。
【００５３】
さて、入力受付部２０２は、プレイヤーからの操作入力を受け付ける（ステップＳ３５１）。操作入力は、ゲーム装置１００が標準で装備するコントローラ１０５のほか、ハンドル型コントローラ、ブレーキ型コントローラ、シフトレバー型コントローラなどに対して与えられる。したがって、これらの各種のコントローラが、入力受付部２０２として機能する。
【００５４】
さらに、計算部２０４は、受け付けられたプレイヤーからの操作入力と、記憶された当該移動体の現在の位置と、その位置の当該路面の状態と、から、当該移動体の加速度を計算する（ステップＳ３５２）。自動車が道路を走る場合、加速度を求めるためには、タイヤの接地面とタイヤとの摩擦力を求める必要がある。そこで、現在の移動体の位置における路面の状態を調べて、これと上記のように記憶された他の情報やプレイヤーの操作に基づいて、自動車の加速度を決める。
【００５５】
なお、プレイヤーの操作が自動車の各種のパラメータに与える影響については、公知のレーシングゲームの技術等、種々の技術が利用できる。そこで以下では、通過回数表５０１を用いて移動体の加速度を得る手法について、詳細に説明する。
【００５６】
まず、記憶部２０３に記憶されている現在の移動体の位置５０６と、線分座標表５１１との関係から、現在の移動体が、どの線分４０３に挟まれているか、を調べる。図６は、ここで得たい線分４０３と移動体との位置関係を示す説明図であり、本図は、図４に示す道路４０２の一部に相当するものである。また、移動体は、本図に示す道路４０２を左から右へ移動することを想定している。
【００５７】
本図における２つの線分４０３は、それぞれ、自動車が移動する道路４０２を横切る線、すなわち、道路４０２の右端６１１と左端６１２とを結ぶ線に相当する。なお本図では、理解を容易にするため、右端６１１と左端６１２は、鎖線により表示した。また、本図に示す道路４０２の一部において、当該道路４０２の幅（線分４０３の長さ）が大きく変化しているが、これは理解を容易にするためのものであり、一般には、道路４０２は、ほぼ等しい幅になっている。
【００５８】
本図に示すように、移動体６０１を挟む２つの線分４０３がいずれであるか、を、線分座標表５１１を走査することにより調べるのである。
上記のように、各線分４０３は互いに交叉しないので、線分座標表５１１を先頭から走査していき、ある線分と次の線分の右端座標５１４と左端座標５１５を得て、得られる４つの座標を頂点とする四辺形に、当該移動体の位置５０６が含まれるか否か、を調べれば良い。
なお、線分座標表５１１は線分番号の順にソートされており、線分番号はスタートラインから昇順に振られているから、前回の走査で発見された線分４０３の組から走査を開始すれば、高速に所望の四辺形をなす線分４０３の組を得ることができる。
【００５９】
次に、通過回数表５０１から、得られた線分４０３に含まれる各領域４０４の通過回数を得る。本図において、各領域４０４の近傍には、それぞれ「０」「４」「３」「０」ならびに「０」「２」「４」「１」「０」「０」のように、通過回数の情報が記載されている。
【００６０】
そして、これらの通過回数の情報から、移動体の位置５０６における通過回数を補間推定する。補間推定の手法としては、公知の技術の他、種々の技術を適用することができるが、本実施形態では、以下のように補間を行う。
【００６１】
すなわち、図７に示すように、両線分４０３の各領域４０４を端から順に結んでいく（点線で示す）。本図に示す例では、領域４０４の数が両線分４０３において異なるため、右端と左端とで向かい合う領域４０４を結ぶことにより四辺形が描かれているが向かい合う領域４０４が存在しない三角形状態の部分が中央に配置されることとなっている。
【００６２】
そして、移動体の位置５０６は、いずれの点線四辺形もしくは点線三角形に含まれるか、を調べる。点線三角形の中に移動体の位置５０６が含まれる場合は、点線三角形の辺をなす領域４０４の通過回数を、当該位置における通過回数とする。
【００６３】
一方、点線四辺形に含まれる場合、向かい合う領域４０４の通過回数が等しければ、これを当該位置５０６における通過回数とする。
【００６４】
等しくない場合は、向かい合う領域４０４の「通過回数の差に１を加算したもの」で、各点線を等分して、これを結び（破線で示す）、一方の領域４０４から他方の領域４０４に向けて、通過回数が１ずつ変化していくように、各区分（線分４０３と、これらの端点を結ぶ線と、破線と、のいずれかにより囲まれた個々の部分）に通過回数を割り当てていく。そして、当該位置５０６が、いずれの区分に含まれるかによって、通過回数を決める。
図７には、各区分に対して、通過回数の情報も記載してある。
【００６５】
このようにして通過回数が得られれば、当該ゲームにおいて定められた各種のパラメータにより、グリップの度合を得ることができ、公知のシミュレーション計算技術のほか、種々の技術を用いて、自動車の加速度を得ることができる。この際には、他の条件が同じであるならば、通過回数が多いほど摩擦力が大きくなるように、設定することが望ましい。現実のカーレースにおいては、路面にゴムが付着すればするほどグリップ性能が向上して、タイヤと路面の摩擦力が大きくなり、滑りにくくなる、という傾向が見られるので、これに合わせるためである。
【００６６】
そして、更新部２０５は、計算された加速度により、記憶された移動体の位置および速度を更新する（ステップＳ３５３）。計算により得られた加速度を積分して速度を得て、速度を積分して位置を得る。
【００６７】
たとえば、垂直同期の度（６０分の１秒毎）に更新を行うのであれば、計算部２０４で得られた加速度に当該時間間隔を乗じて速度の増分を求め、また、現在の速度と「現在の速度に増分を加算したもの」との平均に当該時間間隔を乗じて、位置の増分を求める。そして、記憶部２０３の移動体の位置の座標５０６と移動体の速度ベクトル５０７の情報に、上記増分を足し込むことにより、更新を行う。
【００６８】
ついで、当該移動体の位置、速度、加速度のいずれか少なくとも１つの変化により、記憶される当該路面の状態を更新する（ステップＳ３５４）。自動車の速度や加速度によってゴムのはがれの程度が変化するような場合には、これを考慮して路面の状態を更新するような形態を採用することができるが、本実施形態では、移動体の位置の変化によって、路面の状態を更新する。
【００６９】
図８に示すように、ステップＳ３５３による更新前の移動体の座標８１１と、更新後の移動体の座標８１２と、を結ぶ変位８０１を考え、すなわち、この変位８０１と各線分４０３との交点８０２を求める。線分座標表５１１を走査して、線分４０３の両端の座標を得れば、線分と線分との交点を求める公知の技術により、交点があるか否かを判別することができる。
【００７０】
さらに、得られた交点と当該線分４０３の右端との距離を領域４０４を区切る長さで割り算すれば、交点８０２が含まれる領域の領域番号５０４が得られる。交わると判定された各線分４０３の各領域４０４に対応するレコード５０２の通過回数５０５を１増やすのである。
【００７１】
一方、表示部２０６は、記憶された移動体の位置、速度のいずれか少なくとも１つを表示して（ステップＳ３５５）、ステップＳ３５１に戻る。なお、上記のように、垂直同期の度に更新を行うのであれば、ステップＳ３５１〜ステップＳ３５５の繰り返しの適切な場所で垂直同期の待機を行う。
【００７２】
図９には、レーシングゲームにおける表示例を示す。本図に示すように、画面７０１には、コース内における自動車の位置・向きを示すコース表示領域７０２と、自動車の運転席から外界を見た様子を示す外界表示領域７０４と、速度表示表示領域７０５と、シフトレバー表示領域７０６と、が用意され、各種の情報が表示されている。
【００７３】
また、煩雑になるため図９では明確に描いていないが、図７に示すように、道路面には、区分ごとに通過回数の情報が割り当てられる。したがって、当該通過回数にあらかじめ対応付けられたテクスチャ情報を、道路面に貼り付け、これを３次元グラフィックスにより表示する。これによって、通過回数が多い場所については、それだけはがれたゴムの色が濃くなるようにすることができる。
【００７４】
このように、本実施形態では、仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化し、これによって移動体の加速度を変化させる。特に、プレイヤーの操作によって移動する移動体の路面における通過回数を表す画像で示すことにより、プレイヤーに対して、移動体の操作や移動の履歴を提示する。さらに、移動体の通過回数を統計として保存しておくことにより、現実世界のカーレースにおいて、自動車が走行して路面にゴムが付着すればするほどグリップ性能が向上して、タイヤと路面の摩擦力が大きくなり、滑りにくくなる、という傾向を簡易にシミュレートする。
【００７５】
（その他の実施形態）
カーレースにおける望ましいラインどりを表すレコードラインを画面に表示すると、プレイヤーが自動車の移動において参考にすべきラインどりを提示し、プレイヤーの習熟を促すことができる。本実施形態は、このようなレコードラインを表示するものである。
【００７６】
図１０は、レコードラインを更新する手法を示す説明図である。以下、本図を参照して説明する。
【００７７】
本図に示すように、路面４０１の各線分４０３には、初期レコードライン４１２が通過すべき初期点４１１が割り当てられている。ゲーム開始時のレコードラインは、これらの初期点４１１を通過する曲線（スプライン補間等、種々の補間技術により得られる曲線）である。また、各線分４０３は、上記実施形態と同様に複数の領域４０４（理解を容易にするため、本図では示さない。）に分けられており、各領域４０４の通過回数が記憶部２０３に記憶されている。
【００７８】
そこで、各線分４０３ごとに、以下の重み付き平均を求めて得られる座標を、新たなレコードラインの通過点の座標とする。
（１）領域４０４の代表点の座標の重みは、当該領域４０４の通過回数とする。代表点としては、当該領域４０４の中心点を用いる。
（２）初期点４１１の座標の重みは、所定の定数とする。これは、路面の種類や用いるタイヤの種類等によって変化する。
【００７９】
そして、各線分４０３ごとに新たな通過点の座標が得られたら、これらを通過する曲線を新たなレコードラインとして同様の補間技術によって接続する。図１０には、通過点４１３と、これを通過する新たなレコードライン４１４が点線で、それぞれ示されている。
【００８０】
また、図１１は、このようにして得られたレコードライン４１４を図示する様子を示す模式図である。自動車の運転席から見た外界の路面上に、レコードライン４１４が３次元グラフィックスによって表示されており、プレイヤーは、これを目標に操作技術を向上させることができる。
【００８１】
また、上記実施形態のほか、以下のような手法によって、さらにリアルなレーシングゲームを実現することができる。
【００８２】
すなわち、路面の状態として、路面の各位置について、以下の情報を記憶することとする。
基準摩擦力。
通過回数。
その他の路面の状態。
【００８３】
そして、自動車の加速度を計算により求める際には、以下の情報を適宜選択して考慮し、計算を行うとともに、路面の状態についても
現在の位置の基準摩擦力。
現在の位置の通過回数。
その他の路面の状態。
自動車の現在の位置。
自動車の現在の速度。
自動車の現在の加速度。
その他の自動車の状態（自動車の重量、タイヤの状態、エンジンの状態等）。
現実世界においては、自動車の通過回数によってグリップ性能が変化するとしても、その変化の量は次第に小さくなってくる。たとえば、１回も通過していなかった場所を新たに通過した場合のグリップ力の変化と、１０００回通過後にさらに１回通過した場合のグリップ力の変化と、では、後者の方が小さい。
また、自動車がコースアウトした後に道路に戻ってくる際に芝生や砂を巻き込んだ場合や、オイル漏れを起こしている自動車が通過した場合には、路面にこれらが撒き散らされるため、グリップ性能は低くなる。
さらに、自動車自体の重量や路面に対する加速度（荷重）によって、タイヤから剥れるゴムの量も変化するので、大きく荷重ののったタイヤが通過すれば大きくグリップ力が変化する。
【００８４】
そこで、これらの状況を反映させるため、単に通過回数を考慮するだけではなく、基準摩擦力等の種々の路面の状態を記憶し、移動体の状態の変化によって種々の路面の状態を更新するのである。
【００８５】
上記実施形態では、通過回数から直接摩擦力を得ている。本実施形態では、以下のような手法を採用することができる。
（ａ）グリップ力を路面のあらかじめ各場所に設定しておき、自動車の状態の変化によって路面に設定されたグリップ力そのものを更新する。通過回数は考慮しない。これによって、簡易に路面の変化をシミュレートすることができる。
（ｂ）グリップ力を路面のあらかじめ各場所に設定しておき、自動車の状態の変化によって路面に設定されたグリップ力そのものを更新するとともに、通過回数も更新する。これによって、状況の変化しやすい路面、しにくい路面、自動車の状態による路面変化の違いなどをシミュレートすることができる。
【００８６】
なお、上記実施形態では、自動車全体を「移動体」として考えたが、タイヤと路面との相互作用を考慮する際には、適宜各タイヤを「移動体」として考え、位置、速度、加速度等を考慮する際には自動車全体を「移動体」として考える等の手法を採用することもできる。これにより、ゲーム装置のハードウェアの計算能力に適合させて現実世界のシミュレートをすることができる。
【００８７】
【発明の効果】
以上説明したように、仮想世界において移動体を路面上で移動させ、移動の履歴によって移動体が路面から受ける影響が変化するゲーム装置、ゲーム方法、ならびに、これらをコンピュータによって実現するプログラムを提供することができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るゲーム装置が実現される典型的な情報処理装置の概要構成を示す模式図である。
【図２】本実施形態に係るゲーム装置の概要構成を示す模式図である。
【図３】当該実施形態に係るゲーム装置において実行されるゲーム方法の処理の流れを示すフローチャートである。
【図４】路面内で通過回数を記録する位置を示す説明図である。
【図５】記憶部に記録される情報の様子を示す説明図である。
【図６】移動体の位置と線分との関係を示す説明図である。
【図７】通過回数を求めるための手法を説明する説明図である。
【図８】通過回数を更新するための手法を説明する説明図である。
【図９】本ゲーム装置の画面への表示例を示す説明図である。
【図１０】レコードラインを求める手法を説明する説明図である。
【図１１】本ゲーム装置の画面への表示例を示す説明図である。
【符号の説明】
１００  情報処理装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  インターフェース
１０５  コントローラ
１０６  外部メモリ
１０７  画像処理部
１０８  ＤＶＤ−ＲＯＭドライブ
１０９  ＮＩＣ
１１０  音声処理部
２０１  ゲーム装置
２０２  入力受付部
２０３  記憶部
２０４  計算部
２０５  更新部
２０６  表示部
４０１  路面
４０２  道路
４０３  線分
４０４  領域
４１１  初期点
４１２  初期レコードライン
４１３  重み付き平均点
４１４  現在のレコードライン
５０１  通過回数表
５０２  レコード
５０３  線分番号
５０４  領域番号
５０５  通過回数
５０６  現在位置の座標
５０７  速度ベクトル
５１１  線分座標表
５１２  レコード
５１３  線分番号
５１４  右端座標
５１５  左端座標
６０１  移動体
６１１  道路の右端
６１２  道路の左端
７０１  画面
７０２  コース表示領域
７０４  外界表示領域
７０５  速度表示領域
８０１  変位
８０２  交点
８１１  更新前の位置
８１２  更新後の位置
【図１】
2004298345.tif 000003
【図２】
2004298345.tif 000004
【図３】
2004298345.tif 000005
【図４】
2004298345.tif 000006
【図５】
2004298345.tif 000007
【図６】
2004298345.tif 000008
【図７】
2004298345.tif 000009
【図８】
2004298345.tif 000010
【図９】
2004298345.tif 000011
【図１０】
2004298345.tif 000012
【図１１】
2004298345.tif 000013
【手続補正書】
【提出日】平成15年9月16日(2003.9.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想世界において移動体を路面上で移動させるゲーム装置であって、
プレイヤーからの操作入力を受け付ける入力受付部、
当該移動体の位置と、当該移動体の速度と、当該路面に互いに重ならないように配置された複数の線分を区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、を記憶する記憶部、
前記記憶された区間通過回数から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定部、
前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、から、当該移動体が受ける加速度を計算する計算部、
前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新部
を備えることを特徴とするもの。
【請求項２】
請求項１に記載のゲーム装置であって、
前記補間推定部は、当該路面に互いに重ならないように配置された複数の線分のうち前記記憶された当該移動体の位置を挟むように対向して配置される線分（以下「挟線分」という。）を区切る線分区間について前記記憶された区間通過回数から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する
ことを特徴とするもの。
【請求項３】
請求項２に記載のゲーム装置であって、
前記補間推定部は、当該挟線分の一方を区切る線分区間の端点と、当該挟線分の他方を区切る線分区間の端点と、を、当該挟線分の端から順に結ぶことによりできる四辺形もしくは三角形の領域について、
（ａ）当該記憶された当該移動体の位置が当該三角形の領域のいずれかに含まれる場合は、当該三角形の領域の一辺をなす線分区間について前記記憶された区間通過回数を補間推定された結果とし、
（ｂ）当該記憶された当該移動体の位置が当該四辺形の領域のいずれかに含まれる場合は、
（ｂ１）当該四辺形の領域の辺となる２つの線分区間について前記記憶された区間通過回数が等しければ、当該区間通過回数を補間推定された結果とし、
（ｂ２）等しくなければ、当該四辺形の領域の辺となる２つの線分区間の端点同士を結ぶ線分を、当該２つの線分区間について前記記憶された区間通過回数の差に１を加算したもので内分し、当該内分点のうち対向するものを結んでできる複数の小領域について、当該２つの線分区間のいずれかを辺とする小領域には当該辺に相当する線分区間について前記記憶された区間通過回数を通過回数として割り当て、当該２つの線分区間のいずれかを辺とする小領域の一方から他方に挟まれる小領域については、通過回数が１ずつ変化するように割り当てて、当該記憶された当該移動体の位置を含む小領域に割り当てられた通過回数を補間推定された結果とする
ことを特徴とするもの。
【請求項４】
請求項１から３のいずれか１項に記載のゲーム装置であって、
前記記憶部は、当該路面内の各位置における基準摩擦力をさらに記憶し、
前記計算部は、前記記憶された当該路面内の各位置における基準摩擦力のうち、前記記憶された当該移動体の位置について記憶された基準摩擦力を、前記補間推定された通過回数により変化させて、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項５】
請求項４に記載のゲーム装置であって、
前記計算部は、前記補間推定された通過回数が増加すると当該移動体に与える摩擦力が大きくなるように、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項６】
請求項３に記載のゲーム装置であって、
前記記憶された当該移動体の位置、および、前記記憶された当該移動体の速度を画面に表示し、ならびに、当該複数の小領域に割り当てられた通過回数により変化する画像を、当該画面内の当該小領域に対応付けられる位置に表示する表示部
をさらに備えることを特徴とするもの。
【請求項７】
請求項６に記載のゲーム装置であって、
前記記憶部は、通過回数の値に対応付けて画像情報をさらに記憶し、
前記表示部は、当該複数の小領域に割り当てられた通過回数の値に対応付けて前記記憶された画像情報から、当該変化する画像を得る
ことを特徴とするもの。
【請求項８】
請求項１から７のいずれか１項に記載のゲーム装置であって、
前記記憶部は、当該路面に互いに重ならないように配置された複数の線分のそれぞれについて、当該線分上に配置される点（以下「目標点」という。）の座標をさらに記憶し、
前記更新部は、前記座標を記憶される目標点のそれぞれについて、当該目標点をその上に配置する線分の線分区間に割り当てられる代表点については、前記記憶された区間通過回数を重みとし、当該目標点については、所定の定数を重みとして当該代表点と当該目標点との座標の重み付き平均の座標で、当該目標点の座標を更新し、
前記表示部は、当該画面内の前記記憶された目標点の座標に対応付けられる位置を通過する曲線を、目標経路としてさらに表示する
ことを特徴とするもの。
【請求項９】
仮想世界において移動体を路面上で移動させ、入力受付部、当該移動体の位置と、当該移動体の速度と、当該路面に互いに重ならないように配置された複数の線分を区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、を記憶する記憶部、補間推定部、計算部、更新部を備えるゲーム装置にて実行されるゲーム方法であって、
前記入力受付部が、プレイヤーからの操作入力を受け付ける入力受付工程、
前記補間推定部が、前記記憶された区間通過回数から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定工程、
前記計算部が、前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、から、当該移動体が受ける加速度を計算する計算工程、
前記更新部が、前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新工程
を備えることを特徴とする方法。
【請求項１０】
コンピュータを、仮想世界において移動体を路面上で移動させるゲーム装置として機能させるプログラムであって、当該コンピュータを、
プレイヤーからの操作入力を受け付ける入力受付部、
当該移動体の位置と、当該移動体の速度と、当該路面に互いに重ならないように配置された複数の線分を区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、を記憶する記憶部、
前記記憶された区間通過回数から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定部、
前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、から、当該移動体が受ける加速度を計算する計算部、
前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新部
として機能させることを特徴とするプログラム。
【手続補正書】
【提出日】平成15年12月3日(2003.12.3)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
仮想世界において移動体を路面上で移動させるゲーム装置であって、
プレイヤーからの操作入力を受け付ける入力受付部、
当該移動体の位置と、当該移動体の速度と、「当該路面に互いに重ならないように配置された複数の線分」のそれぞれを区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、を記憶する記憶部、
少なくとも、前記記憶された区間通過回数と、当該区間通過回数に対する線分区間の座標と、から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定部、
少なくとも、前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、を含む情報から、当該移動体が受ける加速度を計算する計算部、
前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新部
を備えることを特徴とするもの。
【請求項２】
請求項１に記載のゲーム装置であって、
前記補間推定部は、当該路面に互いに重ならないように配置された複数の線分のうち前記記憶された当該移動体の位置を挟むように対向して配置される線分（以下「挟線分」という。）を区切る線分区間について、少なくとも、前記記憶された区間通過回数と、当該区間通過回数に対する線分区間の座標と、から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する
ことを特徴とするもの。
【請求項３】
請求項２に記載のゲーム装置であって、
前記補間推定部は、当該挟線分の一方を区切る線分区間の端点と、当該挟線分の他方を区切る線分区間の端点と、を、当該挟線分のそれぞれの両端に配置される当該端点から順に、それぞれの中央に配置される当該端点に向かって、結び、一旦中央に配置される当該端点に至った場合は、以降においても当該中央に配置される当該端点を一端として、結ぶことによりできる四辺形もしくは三角形の領域について、
（ａ）当該記憶された当該移動体の位置が当該三角形の領域のいずれかに含まれる場合は、当該三角形の領域の一辺をなす線分区間について前記記憶された区間通過回数を補間推定された結果とし、
（ｂ）当該記憶された当該移動体の位置が当該四辺形の領域のいずれかに含まれる場合は、
（ｂ１）当該四辺形の領域の辺となる２つの線分区間について前記記憶された区間通過回数が等しければ、当該区間通過回数を補間推定された結果とし、
（ｂ２）等しくなければ、当該四辺形の領域の辺となる２つの線分区間の端点同士を結ぶ線分を、当該２つの線分区間について前記記憶された区間通過回数の差に１を加算したもので内分し、当該内分点のうち対向するものを結んでできる複数の小領域について、当該２つの線分区間のいずれかを辺とする小領域には当該辺に相当する線分区間について前記記憶された区間通過回数を通過回数として割り当て、当該２つの線分区間のいずれかを辺とする小領域の一方から他方に挟まれる小領域については、通過回数が１ずつ変化するように割り当てて、当該記憶された当該移動体の位置を含む小領域に割り当てられた通過回数を補間推定された結果とする
ことを特徴とするもの。
【請求項４】
請求項１から３のいずれか１項に記載のゲーム装置であって、
前記記憶部は、当該路面内の各位置における基準摩擦力をさらに記憶し、
前記計算部は、前記記憶された当該路面内の各位置における基準摩擦力のうち、前記記憶された当該移動体の位置について記憶された基準摩擦力を、前記補間推定された通過回数により変化させて、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項５】
請求項４に記載のゲーム装置であって、
前記計算部は、前記補間推定された通過回数が増加すると当該移動体に与える摩擦力が大きくなるように、当該移動体に与える摩擦力を得て、当該移動体の加速度を計算する
ことを特徴とするもの。
【請求項６】
請求項３に記載のゲーム装置であって、
前記記憶された当該移動体の位置、および、前記記憶された当該移動体の速度を画面に表示し、ならびに、当該複数の小領域に割り当てられた通過回数に対応付けられたテクスチャ情報を、当該画面内の当該小領域に対応付けられる位置に貼り付けて、表示する表示部
をさらに備えることを特徴とするもの。
【請求項７】
請求項６に記載のゲーム装置であって、
前記記憶部は、通過回数の値に対応付けてテクスチャ情報をさらに記憶し、
前記表示部は、当該複数の小領域に割り当てられた通過回数の値に対応付けて前記記憶されたテクスチャ情報を、当該画面内の当該小領域に対応付けられる位置に貼り付けて表示する
ことを特徴とするもの。
【請求項８】
請求項１から７のいずれか１項に記載のゲーム装置であって、
前記記憶部は、当該路面に互いに重ならないように配置された複数の線分のそれぞれについて、当該線分上に配置される点（以下「目標点」という。）であって、当該目標点を通過する曲線が当該移動体が通過すべき目標経路であると想定される目標点の座標と、当該目標点の座標の初期値と、をさらに記憶し、
前記更新部は、前記記憶部に座標を記憶される目標点のそれぞれについて、
当該目標点をその上に配置する線分の線分区間のそれぞれの中心点（以下、「代表点」という。）については、前記記憶された区間通過回数を重みとし、
当該目標点の座標の初期値については、所定の定数を重みとして、
当該代表点の座標と当該目標点の座標の初期値との重み付き平均の座標で、当該目標点の座標を更新し、
前記表示部は、当該画面内の前記記憶された目標点の座標に対応付けられる位置を通過する曲線を、当該移動体が通過すべき新たな目標経路としてさらに表示する
ことを特徴とするもの。
【請求項９】
仮想世界において移動体を路面上で移動させるゲーム方法であって、当該ゲーム方法は、入力受付部、記憶部、補間推定部、計算部、更新部を備えるゲーム装置にて実行され、
前記記憶部には、当該移動体の位置と、当該移動体の速度と、「当該路面に互いに重ならないように配置された複数の線分」のそれぞれを区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、が記憶され、
前記入力受付部が、プレイヤーからの操作入力を受け付ける入力受付工程、
前記補間推定部が、少なくとも、前記記憶された区間通過回数と、当該区間通過回数に対する線分区間の座標と、から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定工程、
前記計算部が、少なくとも、前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、を含む情報から、当該移動体が受ける加速度を計算する計算工程、
前記更新部が、前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新工程
を備えることを特徴とする方法。
【請求項１０】
コンピュータを、仮想世界において移動体を路面上で移動させるゲーム装置として機能させるプログラムであって、当該コンピュータを、
プレイヤーからの操作入力を受け付ける入力受付部、
当該移動体の位置と、当該移動体の速度と、「当該路面に互いに重ならないように配置された複数の線分」のそれぞれを区切る区間（以下「線分区間」という。）のそれぞれを当該移動体が通過した通過回数（以下「区間通過回数」という。）と、を記憶する記憶部、
少なくとも、前記記憶された区間通過回数と、当該区間通過回数に対する線分区間の座標と、から、前記記憶された当該移動体の位置における当該移動体の通過回数を補間推定する補間推定部、
少なくとも、前記受け付けられたプレイヤーからの操作入力と、前記補間推定された通過回数と、前記記憶された当該移動体の速度と、を含む情報から、当該移動体が受ける加速度を計算する計算部、
前記計算された加速度により、前記記憶部に記憶される当該移動体の位置、および、当該移動体の加速度を更新し、当該更新前に記憶されていた当該移動体の位置と、当該更新後に記憶される当該移動体の位置と、を結ぶ線分が、当該線分区間のいずれかと交差する場合、当該交差した線分区間について前記記憶される区間通過回数を増やして更新する更新部
として機能させることを特徴とするプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００８３
【補正方法】変更
【補正の内容】
【００８３】
そして、自動車の加速度を計算により求める際には、以下の情報を適宜選択して考慮し、計算を行うとともに、路面の状態についても考慮する。
現在の位置の基準摩擦力。
現在の位置の通過回数。
その他の路面の状態。
自動車の現在の位置。
自動車の現在の速度。
自動車の現在の加速度。
その他の自動車の状態（自動車の重量、タイヤの状態、エンジンの状態等）。
現実世界においては、自動車の通過回数によってグリップ性能が変化するとしても、その変化の量は次第に小さくなってくる。たとえば、１回も通過していなかった場所を新たに通過した場合のグリップ力の変化と、１０００回通過後にさらに１回通過した場合のグリップ力の変化と、では、後者の方が小さい。
また、自動車がコースアウトした後に道路に戻ってくる際に芝生や砂を巻き込んだ場合や、オイル漏れを起こしている自動車が通過した場合には、路面にこれらが撒き散らされるため、グリップ性能は低くなる。
さらに、自動車自体の重量や路面に対する加速度（荷重）によって、タイヤから剥れるゴムの量も変化するので、大きく荷重ののったタイヤが通過すれば大きくグリップ力が変化する。