(57)【特許請求の範囲】
【請求項１】
ネットワークを介して通信可能に接続された状態において他の情報処理装置との間で対戦型電子遊戯をオンラインで実行可能な情報処理装置であって、
前記情報処理装置のそれぞれは、
ＣＰＵで制御される制御部と、遊戯者の操作に応じた操作信号を入力する操作手段と、ネットワークを介して通信可能に接続された他の情報処理装置との間でデータを送受信するための通信手段と、表示制御手段と、記憶手段と、を備え、
自己の制御部で演算する仮想空間内を移動するオブジェクト（以下、「自己操作対象オブジェクト」という。）と、他の情報処理装置（以下、「対戦相手情報処理装置」という。）で演算される仮想空間内を移動するオブジェクトに対応するオブジェクト（以下、「対戦対象オブジェクト」という。）を、自己の表示制御手段に接続された表示画面に表示タイミング毎に表示するように構成されてなり、
前記情報処理装置のそれぞれはさらに、
（１）自己の制御部が、前記表示タイミング毎に、前記操作手段に対して操作者が行った操作に応じて仮想空間内を移動する自己操作対象オブジェクトについて前記仮想空間内における現在位置および次の表示タイミングにおける予測位置を演算し、
（２）前記自己操作対象オブジェクトの現在位置及び前記予測位置を含む情報をパケット化して前記ネットワークに接続された前記通信手段から送信する
処理を実行するように構成されてなり、
自己操作対象オブジェクトを演算処理する前記情報処理装置においては、それぞれ
（３）前記ネットワークに接続された前記通信手段で前記対戦相手情報処理装置から送信されてきたパケット化された情報を受信し、
（４）前記制御部は、現在の表示タイミングにおいて、
（４．１）前記自己操作対象オブジェクトと、前記（３）で受信した前記パケット化された情報に含まれる現在位置に対応する前記仮想空間内における位置に配置された前記対戦対象オブジェクトと、を表示するゲーム画像を生成し前記表示制御手段に接続された前記表示画面に表示し、
（４．２）前記受信したパケット化された情報から得られた前記対戦対象オブジェクトの前記次の表示タイミングにおける予測位置を前記記憶手段に記憶し、
（５）前記制御部は、次の表示タイミングにおいて、パケットの欠落又は遅延状態が生じたとき、前記（４．２）で前記記憶手段に記憶した前記次の表示タイミングに対応する前記予測位置を読み出し当該予測位置に対応する位置に前記対戦対象オブジェクトを配置したゲーム画像を生成し前記表示画面に表示する
処理を実行する構成を備えたことを特徴とする情報処理装置。
【請求項２】
前記（１）において演算される予測位置は、現在の表示タイミングよりも少なくとも一つ後の表示タイミングにおけるものである請求項１記載の情報処理装置。
【請求項３】
前記（１）および（２）は、前記表示タイミング毎に、自己操作対象オブジェクトについて前記仮想空間内における現在位置、次の表示タイミングおよび次の次の表示タイミングにおける予測位置をそれぞれ演算し、当該現在位置、次の表示タイミングおよび次の次の表示タイミングにおける前記予測位置を含む情報をパケット化して前記ネットワークに接続された前記通信手段から送信するものであり、
前記（４．２）は、前記次の表示タイミングおよび次の次の表示タイミングにおける前記予測位置を前記記憶手段に記憶するものであり、
さらに、
（６）次の次の表示タイミングにおいてパケットの欠落又は遅延が生じたとき、前記記憶手段に予め記憶された前記次の次の表示タイミングに対応する前記予測位置を読み出し当該予測位置に対応する位置に前記対戦対象オブジェクトが配置されたゲーム画像を生成し前記表示画面に表示する処理を実行する構成を備えたものである請求項１または２のいずれか記載の情報処理装置。
【請求項４】
ネットワークを介して通信可能に接続された状態にある第１及び第２の情報処理装置の間で対戦型電子遊戯がオンラインで実行されるとき前記情報処理装置のそれぞれにおいて行われるデータ処理方法であって、
前記情報処理装置のそれぞれは、ＣＰＵで制御される制御部と、遊戯者の操作に応じた操作信号を入力する操作手段と、ネットワークを介して通信可能に接続された他の情報処理装置との間でデータを送受信するための通信手段と、記憶手段と、を備え、自己の制御部で演算する仮想空間内を移動するオブジェクト（以下、「自己操作対象オブジェクト」という。）と、他方の情報処理装置（以下、「対戦相手情報処理装置」という。）で演算される仮想空間内を移動するオブジェクトに対応するオブジェクト（以下、「対戦対象オブジェクト」という。）を、自己の表示制御手段に接続された表示画面に表示タイミング毎に表示するように構成されてなり、
前記情報処理装置のそれぞれによって実行される前記データ処理方法は、
（１）前記自己の制御部が、前記表示タイミング毎に、操作者が行った操作に応じて仮想空間内を移動する自己操作対象オブジェクトについて前記仮想空間内における現在位置および次の表示タイミングにおける予測位置を演算するステップと、
（２）前記自己操作対象オブジェクトの現在位置及び前記予測位置を含む情報をパケット化して前記ネットワークに接続された前記通信手段から送信するステップと、
（３）前記ネットワークに接続された前記通信手段で前記対戦相手情報処理装置から送信されてきたパケット化された情報を受信するステップと、
（４）現在の表示タイミングにおいて、
（４．１）前記自己操作対象オブジェクトと、前記（３）で受信した前記パケット化された情報に含まれる前記現在位置に対応する前記仮想空間内における位置に配置された前記対戦対象オブジェクトと、を表示するゲーム画像を生成し前記表示制御手段に接続された表示画面に表示するステップと、
（４−２）前記受信したパケット化された情報から得られた前記対戦対象オブジェクトの前記次の表示タイミングにおける予測位置を前記記憶手段に記憶するステップと、
（５）次の表示タイミングにおいて、パケットの欠落又は遅延状態が生じたとき、前記（４−２）で前記記憶手段に記憶した前記次の表示タイミングに対応する前記予測位置を読み出し当該予測位置に対応する位置にて前記対戦対象オブジェクトを配置したゲーム画像を生成し表示するステップと、
を含むことを特徴とするデータ処理方法。
【請求項５】
前記ステップ（１）において演算される予測位置は、現在の表示タイミングよりも少なくとも一つ後の表示タイミングにおけるものである請求項４記載のデータ処理方法。
【請求項６】
ネットワークを介して通信可能に接続された状態にある第１及び第２の情報処理装置のそれぞれで実行可能に構成されたコンピュータプログラムであって、
前記情報処理装置のそれぞれは、CPUで制御される制御部と、遊戯者の操作に応じた操作信号を入力する操作手段と、ネットワークを介して通信可能に接続された他の情報処理装置との間でデータを送受信するための通信手段と、記憶手段と、を備えてなり、
前記コンピュータプログラムの実行によって、前記情報処理装置のそれぞれは、自己の制御部で演算する仮想空間内を移動するオブジェクト（以下、「自己操作対象オブジェクト」という。）と、他方の情報処理装置（以下、「対戦相手情報処理装置」という。）で演算される仮想空間内を移動するオブジェクトに対応するオブジェクト（以下、「対戦対象オブジェクト」という。）を、自己の表示制御手段に接続された表示画面に表示タイミング毎に表示するように構成されてなり、
前記コンピュータプログラムは、前記情報処理装置のそれぞれに、
（１）前記自己の制御部が、前記表示タイミング毎に、操作者が行った操作に応じて仮想空間内を移動する自己操作対象オブジェクトについて前記仮想空間内における現在位置および次の表示タイミングにおける予測位置を演算するステップと、
（２）前記自己操作対象オブジェクトの現在位置及び前記予測位置を含む情報をパケット化して前記ネットワークに接続された前記通信手段から送信するステップと、
（３）前記ネットワークに接続された前記通信手段で前記対戦相手情報処理装置から送信されてきたパケット化された情報を受信するステップと、
（４）現在の表示タイミングにおいて、
（４．１）前記自己操作対象オブジェクトと、前記（３）で受信した前記パケット化された情報に含まれる前記現在位置に対応する前記仮想空間内における位置に配置された前記対戦対象オブジェクトと、を表示するゲーム画像を生成し前記表示制御手段に接続された表示画面に表示するステップと、
（４−２）前記受信したパケット化された情報から得られた前記対戦対象オブジェクトの前記次の表示タイミングにおける予測位置を前記記憶手段に記憶するステップと、
（５）次の表示タイミングにおいて、パケットの欠落又は遅延状態が生じたとき、前記（４−２）で前記記憶手段に記憶した前記次の表示タイミングに対応する前記予測位置を読み出し当該予測位置に対応する位置にて前記対戦対象オブジェクトを配置したゲーム画像を生成し表示するステップと、
を含む各ステップの手順を実行させるように構成されたコンピュータプログラム。
【請求項７】
前記（１）および（２）は、前記表示タイミング毎に、自己操作対象オブジェクトについて前記仮想空間内における現在位置、次の表示タイミングおよび次の次の表示タイミングにおける予測位置をそれぞれ演算し、当該現在位置、次の表示タイミングおよび次の次の表示タイミングにおける前記予測位置を含む情報をパケット化して前記ネットワークに接続された前記通信手段から送信するものであり、
前記（４．２）は、前記次の表示タイミングおよび次の次の表示タイミングにおける前記予測位置を前記記憶手段に記憶するものであり、
さらに、
（６）次の次の表示タイミングにおいてパケットの欠落又は遅延が生じたとき、前記記憶手段に予め記憶された前記次の次の表示タイミングに対応する前記予測位置を読み出し当該予測位置に対応する位置に前記対戦対象オブジェクトが配置されたゲーム画像を生成し前記表示画面に表示する処理を実行するステップを含むものである請求項６記載のコンピュータプログラム。
【請求項８】
前記各ステップの手順を前記情報処理装置に実行させるための請求項６又は７記載のコンピュータプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークに通信可能に接続されて対戦相手方との対戦型電子遊戯をオンラインで実行可能な情報処理装置、その情報処理装置におけるデータ処理方法、そのデータ処理方法の各手順を実行させるためのプログラム、及び、そのプログラムを記録したコンピュータ読み取り可能な記録媒体に関する。
【背景技術】
【０００２】
近年、電子遊戯の分野においてもＩＴ（情報技術）の進歩が大きく関与しており、インターネット等のネットワークを介して複数のユーザが同時に端末を操作して対戦型の電子ゲーム（遊戯）を行なうオンライン対戦ゲームシステムが提供されている。【０００３】
このようなオンライン対戦ゲームシステムでは、インターネット自体が不安定なネットワーク環境であるため、データ（パケット）受信の遅延やパケットロス（欠落）が発生することがある。このインターネット環境を利用するオンライン対戦ゲームにはリアルタイム性が求められるので、データ受信の遅延やパケットロスはゲームの品質を損なうことになる。インターネットに限らず、ＷＡＮ（Wide Area Network）や公衆電話回線でもデータ受信の遅延やパケットロスは発生し得るし、無線ＬＡＮ等でもノイズの影響によってパケットの欠落や遅延が発生しやすい。【０００４】
かかるデータ受信の遅延やパケットロスが生じたときに何も対策を施していない場合、その受信タイミングにおいて、相手方のキャラクタ（表示対象）の位置情報を取得できないので、自端末（ユーザが操作している自分の電子遊戯装置）のモニタに相手方キャラクタは表示されることはない。つまり、この場合、表示の時系列において、相手方キャラクタが画面上から一瞬消えた（表示されない）状態となり、ユーザを驚かすことになる。【０００５】
これを改善するため、データ受信の遅延やパケットロスが生じたときには、正常に受信できていた一つ前の過去のパケットを使用して得た位置情報で相手方キャラクタを代替的に表示するという処理も知られている。この場合には、相手方キャラクタが表示されない「間（瞬間）」は無くなるが、正常な受信状態に戻ったときに、相手方キャラクタが、それまでの一瞬止まったような状態から正常受信時の表時位置までジャンプしたように表示される。この場合も、ユーザに違和感を与え、ゲーム環境を低下させる。【０００６】
そこで、かかる状況を改善すべく、例えば特許文献１には、データ受信の遅延やパケットロスが生じたときに、相手方キャラクタの過去の数ビデオフレームの位置情報を用いて、ゲーム（仮想）空間における現在の位置情報を演算で推定し、この推定情報を用いて代替表示を行なう方法が提案されている。
【特許文献１】米国特許第６，０４２，４７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載の推定情報を用いた代替表示では、自端末において、パケットを受信できなかった相手方の全てのキャラクタ（表示対象）に対して、かかる推定演算を行なう必要がある。このため、自端末における相手方キャラクタのための演算負荷が大きくなることから、その分、ＣＰＵの演算能力を上げるか、又は、演算速度の低下を甘受しなければならない状況にあった。これは、個々のゲーム端末である電子遊戯装置の製造コストの低減や、ゲーム環境を向上させ難い要因の一つになっている。【０００８】
そこで、本発明は、かかる事情に鑑みてなされたものであり、データの伝送遅延やパケットロス等が生じても、各端末が相手方キャラクタの精度の高い位置情報を常に簡単にかつ演算不要の状態で取得して表示し、これにより、各端末における相手方キャラクタの表示のための演算量を減らすことができる情報処理装置等を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、本発明による情報処理装置は、ネットワークに通信可能に接続されて対戦相手方との対戦型電子遊戯をオンラインで実行可能な装置であって、対戦型電子遊戯用の手順を含む情報資源を記憶させた記憶手段と、操作者が操作する操作手段と、操作手段に対して操作者が行った操作に応じて操作対象オブジェクトの仮想空間上の将来の予測位置を演算する演算手段、その将来の予測位置を含む対戦型電子遊戯のための情報をパケット化してネットワークを介して対戦相手方に送信する送信手段、及び、そのネットワークを介して対戦相手方から送信されてきたパケットを受信する受信手段を有する演算装置と、パケットの受信の欠落又は遅延を生じたときに、現在の受信以前に受信していたパケットに含まれている将来の予測位置を用いて対戦対象オブジェクトを含むゲーム画像を生成する画像生成手段とを備える。【００１０】
また、演算手段が、将来の予測位置が過去に演算した予測位置から変化したか否かを判定する判定手段を有しており、送信手段が、判定手段により将来の予測位置が変化したと判定されたときに、その将来の予測位置の情報を送信するものであると好ましい。【００１１】
さらに、対戦型電子遊戯のための情報が、現在の表示タイミングよりも後の少なくとも一つの表示タイミング、例えば、現在の表示タイミングの次の表示タイミング、その次の表示タイミング、またその次の表示タイミング等における将来の予測位置を含むと好適である。【００１２】
あるいは、画像生成手段が、パケットの受信の欠落又は遅延を生じたときに、現在の受信よりも２つ以上前の表示タイミングで受信していたパケットに含まれている将来の予測位置を用いて対戦対象オブジェクトを含むゲーム画像を生成するものであっても好ましい。【００１３】
また、本発明によるデータ処理方法は、ネットワークに通信可能に接続されて対戦相手方との対戦型電子遊戯をオンラインで実行可能な本発明の情報処理装置を用いて有効に実施される方法であって、対戦型電子遊戯用の手順を含む情報資源を記憶させるステップと、操作者が行った操作に応じて操作対象オブジェクトの仮想空間上の将来の予測位置を演算するステップと、将来の予測位置を含む対戦型電子遊戯のための情報をパケット化してネットワークを介して対戦相手方に送信するステップと、ネットワークを介して対戦相手方から送信されてきたパケットを受信するステップと、パケットの受信の欠落又は遅延を生じたときに、現在の受信以前に受信していたパケットに含まれている将来の予測位置を用いて対戦対象オブジェクトを含むゲーム画像を生成するステップとを備える。【００１４】
さらに、対戦型電子遊戯のための情報として、現在の表示タイミングよりも後の少なくとも一つの表示タイミングにおける将来の予測位置を含むものを用いると有用である。【００１５】
またさらに、本発明によるプログラムは、コンピュータに本発明のデータ処理方法の各ステップの手順を実行させるためのものである。【００１６】
さらにまた、本発明による記録媒体は、コンピュータに本発明のデータ処理方法の各ステップの手順を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体である。【００１７】
また、これまでの経緯を参酌すれば、本発明は以下のとおり表現することもできる。すなわち、本発明は、電子遊戯用の手順を含む情報資源を記憶させた記憶手段と、操作者が操作する操作手段と、この操作手段に対して操作者が行った操作に応じて操作対象オブジェクトの仮想空間上の位置を変更する処理を含む対戦型電子遊戯のための情報処理を前記手順に基づいて実行する演算装置と、この演算装置の演算結果に基づいて前記対戦型電子遊戯の対戦対象オブジェクトを含むゲーム画像を生成する画像生成手段とを備え、ネットワークに通信可能に接続されて対戦相手方と前記対戦型電子遊戯をオンラインで実行可能な情報処理装置において、前記演算装置は、前記操作対象オブジェクトの仮想空間上の現在の位置及び将来の予測位置を演算する演算手段と、前記操作対象オブジェクトの現在の位置及び将来の予測位置を含む電子遊戯のための情報をパケット化してネットワークを介して対戦相手方に送信する送信手段と、前記ネットワークを介して対戦相手方から送信されてきたパケットを受信する受信手段とを含み、前記画像生成手段は、前記パケットの受信の欠落又は遅延を生じたときに、現在の受信以前に受信していたパケットに含まれている前記将来の予測位置を用いて前記対戦対象オブジェクトを含むゲーム画像を生成することを特徴とする。【００１８】
また、演算手段が、現時点の予測位置が過去の予測位置と変化したか否かを判定する判定手段を含み、送信手段が、判定手段により予測位置が変化したと判定されたときに、予測位置の情報を送信するようにしても好適である。【００１９】
さらに、予測位置の情報が、現在の表示タイミングの次の表示タイミングにおける対象の予測位置であっても好ましい。【００２０】
またさらに、予測位置の情報が、現在の表示タイミングの次の表示タイミング及びその次の表示タイミングにおける対象の２つの予測位置であっても好ましい。【００２１】
さらにまた、予測位置の情報が、現在の表示タイミングの次の３つ以上の表示タイミングにおける対象の３つ以上の予測位置であっても有用である。【００２２】
加えて、画像生成手段が、パケットの受信の欠落又は遅延を生じたときに、現在の受信よりも２つ以上前の表示タイミングで受信していたパケットに含まれている将来の予測位置を用いて対戦対象オブジェクトを含むゲーム画像を生成するように構成されていても好適である。【００２３】
また、本発明は、操作手段に対して操作者が行った操作に応じて操作対象オブジェクトの仮想空間上の位置を変更する処理を含む対戦型電子遊戯のための情報処理を、予め定めた手順に基づいて演算装置に実行させ、前記操作者の対戦対象オブジェクトを表示手段に表示するように構成され、かつネットワークに通信可能に接続されて対戦相手方と前記対戦型電子遊戯をオンラインで実行可能な情報処理装置における電子遊戯用データ処理方法において、前記演算装置は、前記操作者の操作に応じた前記操作対象オブジェクトの仮想空間上の現在の位置及び将来の予測位置を演算するステップと、前記操作対象オブジェクトの現在の位置及び将来の予測位置を含む電子遊戯のための情報をパケット化して前記ネットワークを介して対戦相手方に送信するステップと、前記ネットワークを介して対戦相手方から送信されてきたパケットを受信するステップと、前記パケットの受信の欠落又は遅延を生じたときに、現在の受信以前に受信していたパケットに含まれている前記将来の予測位置を用いて前記対戦対象オブジェクトをゲーム画面に表示するステップと、を実行することを特徴とする。【００２４】
この場合、予測位置の情報が、現在の表示タイミングの次の表示タイミングにおける操作対象オブジェクトの予測位置であると好ましい。【００２５】
あるいは、予測位置の情報が、現在の表示タイミングの次の表示タイミング及びその次の表示タイミングにおける操作対象オブジェクトの２つの予測位置であっても好ましい。
【発明の効果】
【００２６】
本発明によれば、自端末（電子遊戯装置）が当該端末側の表示対象の仮想空間上の現在の位置のみならず、例えば次の表示タイミング等、将来の位置を予測して、その予測位置をも相手方端末（電子遊戯装置）にオンライン送信する。このため、相手方端末は、その相手方から送信されてくるべきパケットに遅延やロスが生じた場合、過去に正常に受信していたパケットから将来の予測位置、すなわち現時点における対象の位置の情報を読み取って、その位置に対象を表示させることができる。これにより、データの伝送遅延やパケットロスが生じた場合でも、現時点における相手方キャラクタの精度の高い位置情報を常に確実にかつ演算不要の状態で取得して表示でき、その結果、自端末における相手方キャラクタの表示のための演算量を減らすことができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施の形態について詳細に説明する。なお、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態にのみ限定する趣旨ではない。本発明は、その要旨を逸脱しない限り、さまざまな形態で実施をすることができる。また、上下左右等の位置関係は、特に断らない限り、図面に示す位置関係に基づくものとする。さらに、図面の寸法比率は、図示の比率に限られるものではない。【００２８】
本実施形態は、複数の端末（ゲーム端末）がインターネットを介して互いに双方向にデータ通信を行ないながら一つの対戦型ゲームを実行するオンライン対戦ゲームシステムを提供するものであり、このオンライン対戦ゲームシステムの各端末として、本発明による情報処理装置（電子遊戯装置）としてのゲーム装置が用いられている。【００２９】
また、本実施形態において、各ゲーム装置は、所定の手順（プログラム）を含む情報資源を記憶させた記憶手段と、操作者が操作する操作手段と、この操作手段に対して操作者が行った操作に応じた対戦型ゲームのための情報処理を前記手順に基づいて実行する演算装置と、この演算装置の演算結果に基づいてゲームの対象を表示する表示手段とを備えており、インターネット等のネットワークに通信可能に接続されて相手方とオンライン対戦ゲームを実行可能になっている。【００３０】
図１は、本発明による情報処理装置の一実施形態であるオンライン対戦ゲームシステムの概要を示す構成図である。オンライン対戦ゲームシステム１０は、通信ネットワークとしてのインターネット１１にそれぞれ接続された、ゲームサーバ１２と、ゲーム端末（クライアント）としての複数のゲーム装置１３Ａ〜１３Ｃとを備えている。ゲームサーバ１２は、例えば公知のサーバコンピュータシステムによって構成され、ゲーム装置１３Ａ〜１３Ｃにおいて実行される対戦ゲームを統合管理する。一方、ゲーム装置１３Ａ〜１３Ｃは、例えば公知のパーソナルコンピュータ（ＰＣ）、家庭用ゲーム機、携帯ゲーム機、携帯電話、携帯情報端末、アーケードゲーム機等によって構成され、２つ以上の装置が１つの対戦グループ（組）となって、ゲームサーバ１２の管理下で、インターネット１１を介した対戦ゲームを実行するようになっている。インターネット１１は、例えばＴＣＰ／ＩＰプロトコルあるいはＵＤＰプロトコルの元でパケット化したデータを双方向に通信可能になっている。【００３１】
ゲーム装置１３Ａ〜１３Ｃ（以下、必要に応じてまとめて符合「１３」で表す。）は、それぞれ、図２に示すように構成されている。つまり、このゲーム装置１３は、ＣＰＵを有しており、電子遊戯に伴う画像処理等のための情報処理を実行する。この画像処理においては、三次元の空間座標系と、視点の動きに追随する三次元の視点座標系とを設定し、前記空間座標系に属する表示対象（表示キャラクタ等）を視点から発する投影を用いて視点座標系に座標変換することにより、仮想三次元空間に配置された表示対象を表示画面に表示する画像表示制御を実行する。【００３２】
詳しくは、図２に示すように、このゲーム装置１３（情報処理装置）は、ＣＰＵ１０１等を中心に構成される制御部１、遊戯者が制御部１に操作信号を入力するための入力装置であるコントローラパッド２、オペレーティングシステム（以下「ＯＳ」という。）やアプリケーションプログラム（ゲームプログラム）を記憶し、必要に応じて制御部１にこれらのプログラムを供給するための外部記憶装置であるＣＤ−ＲＯＭドライブ３、遊戯者に画像や音を提供するための表示装置４ａ、及びスピーカ４ｂ等からなる出力装置４を備える。【００３３】
また、インターネット１１を介して他のコンピュータやゲーム装置とデータの送受信をするためのインターフェースとしての通信装置５を備えている。なお、外部記憶媒体としては、図示したＣＤ−ＲＯＭ等に限らず、制御部１へ供給するデータを書き込み保持可能な記録媒体等であってもかまわない。【００３４】
このゲーム装置１３において、ゲームを開始すべく電源が投入されると、図示しないブートプログラムローダは、ＲＯＭ１０２に記憶されているブートプログラム（「イニシャルプログラム」と呼ばれることもある。）をＣＰＵ１０１にロードし、ＣＰＵ１０１は、ブートプログラムを実行する。ＣＰＵ１０１は、このブートプログラムに従ってＣＤ−ＲＯＭ等の外部記録媒体に記憶されているＯＳの全部又は必要な部分をメインメモリ１０３にロードして、かかるＯＳを実行する。【００３５】
ＣＰＵ１０１は、このＯＳの制御下、ＣＤ−ＲＯＭ等に記憶されているアプリケーションプログラム（以下、単に「プログラム」ということもある。）の全部又は必要な部分をメインメモリ１０３にロードすると共に、必要に応じてＣＤ−ＲＯＭ等に記憶されている描画データや画像データをグラフィックメモリ１０４にロードするとともに、サウンドデータをサウンドメモリ１０５にロードする。【００３６】
また、ＣＰＵ１０１は、ＯＳの制御下、メインメモリ１０３に記憶されたアプリケーションプログラムを実行する。アプリケーションプログラムの実行に伴うデータは、メインメモリ１０３やバックアップメモリ１０６に必要の都度書き込まれて参照される。バックアップメモリ１０６は、ゲームの中断等で電源が遮断されてもそれまでの状態を保持するために、データを記憶する。なお、本実施形態において、ＯＳやアプリケーションプログラム等はＣＤ−ＲＯＭ等の外部記録媒体から提供されるように構成しているが、例えば、ＲＯＭから又はネットワークを介して他のコンピュータから供給されるように構成してもよい。【００３７】
ビデオディスプレイプロセッサ（ＶＤＰ；Video display processor）１０７は、グラフィックメモリ１０４に記憶される画像表示に必要な描画データを読み出して、アプリケーションプログラムの実行によるＣＰＵ１０１からの命令やデータに基づき各種情報処理（画像処理）を行って、画像データを生成する。各種画像処理は、例えば、テクスチャマッピング、光源処理、表示優先処理等がある。【００３８】
上述のように生成された画像データを表示装置４ａに表示するために、ＶＤＰ１０７は、かかる画像データをビデオエンコーダ１０８に出力する。なお、生成された画像データは、例えば、フレームバッファメモリ等に書き込み、このフレームバッファメモリから所定のタイミングで読み出すようにしてもよい。【００３９】
サウンドプロセッサ（Sound Processor）１０９は、サウンドメモリ１０５に記憶されるサウンドデータを読み出して、アプリケーションプログラムの実行によるＣＰＵ１０１からの命令やデータに基づき各種の情報処理（音声処理）を行う。この各種の音声処理には、例えばエフェクト処理、ミキシング処理等が含まれる。このように各種の音声処理が施されたサウンドデータは、Ｄ／Ａコンバータ１１０によってアナログデータに変換された後、スピーカに出力される。バスアビータ（Bus Arbiter）１１１は、データ伝送路（バス等）を介して接続される各ユニット間の制御を行う。例えば、バスアビータ１１１は、バスを占有するユニットを決定するために、ユニット間の優先順位を決定したり、占有するユニットのバス占有時間を割り当てたりする機能を有する。【００４０】
以上のように構成されたゲーム装置１３は、そのＣＰＵ１０１がＣＤ−ＲＯＭ等の外部記録媒体から読み込んだプログラムを実行することにより、本発明に係る機能を含む各種の機能を実現することができるようになっている。【００４１】
ここで、ＣＰＵ１０１を中心とする制御部１の構成（ただし、ＲＯＭ１０２、グラフィックメモリ１０４、サウンドメモリ１０５、及びＣＤ−ＲＯＭドライブ３を除く）は、本発明の構成要素の一つである演算装置を機能的に実現する。コントローラパッド２は本発明の構成要素の一つである操作手段に対応する。また、表示装置４ａは本発明の構成要素の一つである表示手段に対応する。さらに、ＲＯＭ１０２、グラフィックメモリ１０４、及びサウンドメモリ１０５は、本発明の構成要素の一つである記憶手段に対応する。【００４２】
以上のように構成されている複数のゲーム装置１３、例えばゲーム装置１３Ａ及び１３Ｂによりインターネット１１を介して所望の対戦ゲームが実行されるときには、それぞれのゲーム装置１３のＣＰＵ１０１を中心として図３に機能的に示すゲーム処理が実行される。【００４３】
すなわち、自端末であるゲーム装置１３Ａは、インターネット１１を介して相手方端末であるゲーム装置１３Ｂから送信されてきた相手方のキャラクタ（表示対象）のゲーム空間上の位置情報をパケットとして受信し（位置受信処理）、この受信したパケットから位置情報のデータを取得する（データ取得処理）。この相手方のキャラクタの位置データの取得と並行して、ゲーム装置１３Ａのコントロールパッド２からの操作情報を読み込み（入力機器処理）、自己のキャラクタ（操作対象）をゲームプログラムに沿ってゲーム展開させる（自端末処理）。次いで、相手方のキャラクタの位置情報が取得できたとき、換言すれば、データ受信の遅延やパケットロスが無かったときには、相手方のキャラクタを含む描画のための所定の処理を行って、ゲーム展開に伴うゲーム画面を表示装置４ａに表示させる（描画処理）。【００４４】
なお、自己が操作権限を有するキャラクタを画面に表示してもしなくてもよい。オンライン対戦ゲームの多くは、相手方のキャラクタと共に自己のキャラクタをゲーム画面に表示するが、ＦＰＳ（First Person Shooting：一人称視点のシューティングゲーム）等、視点位置がプレイヤキャラクタの目の位置に設定されたゲーム場合、プレイヤキャラクタは表示されない。【００４５】
さらに、このゲーム装置１３Ａでは、上述した自端末処理（自己のキャラクタの位置の演算）の後、この自己キャラクタがこれ以降の将来の表示タイミングの時点でどの位置に移動するのか予測（推定）する。これは、自己キャラクタの現在の位置、速度、加速度、コントロールパッドからの操作情報等に基づき、直線予測あるいは放物線軌道予測等を行い、所定時間後の位置を予測することにより行われる（将来位置予測処理）。これにより予測した自己キャラクタの位置情報はパケット化されてインターネット１１を介して相手方のゲーム装置１３Ｂに向けて送信される（位置送信処理）。【００４６】
上述した一連の受信、描画、及び送信の処理は一定タイミング毎に繰り返して実行される。【００４７】
この一連の繰返しの中で、相手方のキャラクタの位置情報が取得できなかったとき、すなわち、データ受信の遅延やパケットロスが発生したときには、過去の取得していた相手方キャラクタの将来の予測位置情報を読み出す（予測位置利用処理）。このため、相手方キャラクタが現時点において存在している予測されていた位置情報を用いて、その相手方キャラクタと自己キャラクタ（自己キャラクタを表示する場合）とを含む描画がなされる（描画処理）。【００４８】
以上の各種の処理は、相手方のゲーム装置１３Ｂにおいても同様に実行される。なお、上述したデータの送受信は、ゲームサーバ１２で一旦中継してもよいし、ゲーム装置１３Ａとゲーム装置１３Ｂの間で直接行なってもよい。ゲームサーバ１２を経由しない方が、データ受信の遅延やパケットロスの面で若干有利である。【００４９】
図４に、上述の図３に示す処理のうち、一方のゲーム装置１３Ａにおいて実行される送信処理及び他方のゲーム装置１３Ｂにおいて実行される受信処理を時系列的に具体的に示す。【００５０】
具体的には、ユーザがコントロールパッド２を操作すると（ステップＳＴ１）、ＣＰＵ１０１はその操作に応答して自己キャラクタのゲーム空間上の位置を演算する（ステップＳＴ２）。次いで、ＣＰＵ１０１は、その演算した位置及び過去の位置から、一例として、次の表示タイミング及びその次の表示タイミングにおける自己キャラクタのゲーム空間での位置を予測演算する（ステップＳＴ３）。次いで、ＣＰＵ１０１は、ステップＳＴ２で演算された現時点でのゲーム空間を表示するための処理を指令し（ステップＳＴ４）、再びステップＳＴ１の処理に戻って、上述のステップＳＴ１〜ＳＴ４の処理を一定時間毎に繰り返す。【００５１】
この繰返し処理と並行して、ＣＰＵ１０１はステップＳＴ３で演算された自己キャラクタの将来の時点にて移動していると予測される位置（将来の予測位置）の情報を、現在の位置情報と共に、パケットとして相手方のゲーム装置１３Ｂに送信する（位置送信処理）。この将来の時点としては、「現在の表示タイミングの後の少なくとも一つの表示タイミングの経過の時点」、より具体的には、例えば、「次の表示タイミング及びその次の表示タイミングから成る２つ分のパケットの表示タイミングの経過の時点」が挙げられる。【００５２】
このため、他方のゲーム装置１３Ｂは相手方のゲーム装置１３Ａから送信されてきた相手方キャラクタの位置情報（現在の位置情報及び将来の予測位置情報）を受信する（ステップＳＴ１１）。次いで、このゲーム装置１３ＢのＣＰＵ１０１は、この受信の結果、データ受信の遅延やパケットロスが発生していない「受信ＯＫ」の状態か否かを受信状況から判定する（ステップＳＴ１２）。【００５３】
この判定の結果がＹＥＳ、つまり「受信ＯＫ」の正常な受信状態のときには、その相手方キャラクタ（すなわちゲーム装置１３Ａのキャラクタ）の位置情報に基づく相手方キャラクタの描画処理を指令する（ステップＳＴ１３）。一方、ステップＳＴ１２の判定結果がＮＯ、つまり「受信ＯＫ」の正常な受信状態でなく、データ受信の遅延又はパケットのロスが発生している異常な受信状態のときには、その相手方キャラクタについてその前のパケット受信時に既に受信し記憶していた将来の予測位置情報を代替的に利用すべく読み出す（ステップＳＴ１４）。【００５４】
これにより、例えば１つ前のパケット受信時に既に受信し記憶していた１つ先の表示タイミングにおける相手方キャラクタの位置を読み出すことができる。この読み出した代替位置情報は、前述したステップＳＴ１３の処理により、相手方キャラクタの描画処理に付される。【００５５】
これらのステップＳＴ１１〜ＳＴ１４の処理も一定タイミング毎に繰り返して実行される。このため、前述した相手方のゲーム装置１３Ａから、その自己キャラクタの将来の予測位置情報として２つ先のパケットの表示タイミングまでの位置情報が送信されてきている場合であって、かつ２つのパケットが連続してロスするような場合、ステップＳＴ１４では２つ前のパケットとして送信されてきていた２つ先の表示タイミングにおける相手方キャラクタの予測位置情報を読み出すこともできる。【００５６】
本実施形態に係るオンライン対戦ゲームシステム１０の場合、以上のようにして、各端末（ゲーム装置）１３にて自己キャラクタの現在及び将来の位置を演算・送信するとともに、その相手方端末（ゲーム装置）１３では、かかる位置を受信して受信異常（データの受信遅延又はパケットロス等）に対処する。【００５７】
その一例を図５に概略的に示す。この例は、将来の位置として２つ先の表示タイミング（つまり、２つ先のパケット）を先取りして予測するものである。いま、時刻Ｔ３においてパケットを受信すべきところ、データの受信（伝送）遅延やパケットロス等が生じて、かかるパケットを正常に受信できなかったとする。このとき、この受信処理を行っているゲーム装置１３は、その前の時刻Ｔ２で正常にパケットを受信しているので、そのＴ２時のパケットに含まれている「次の予定時刻」を今の時刻Ｔ３における「仮の現在の位置」としてキャラクタの描画処理を行う。同時に、Ｔ２時のパケットに含まれている「次の次の予定時刻」を今の時刻Ｔ３における「仮の次の予定位置」として保存し、これにより、次の表示タイミングにおけるデータ受信遅延やパケットロスに備える。【００５８】
このため、データの受信（伝送）遅延やパケットロス等が生じた場合でも、現時点における相手方キャラクタの精度の高い位置情報を常に確実にかつ演算不要の状態で取得して表示でき、これにより、自端末における相手方キャラクタの表示のための演算量を減らすことができる。【００５９】
つまり、従来必要であった受信側の端末が過去のデータから相手方キャラクタの位置を予測演算するといった処理が不要となる。前述した従来技術の問題点で指摘したように、受信側が相手方キャラクタの位置の予測演算を行う場合には、全てのキャラクタの位置を演算しなければならず、その演算量は相当量に上る。これに対し、本実施形態のオンライン対戦ゲームシステム１０の場合、自端末の分は自端末で処理してその位置情報を送信するだけであり、送信するパケットには時間情報を含める必要もない。この「自端末での処理」によって相手方端末に集中する演算量の増大を分散させることができ、結局、全体として演算量の軽減及び平準化を達成できる。【００６０】
その結果、かかる演算量の減少分だけ、ＣＰＵの演算能力を抑えることもできるから、個々のゲーム端末である情報処理装置の製造コストの低減や、ゲーム環境の向上を推進させることができる。【００６１】
加えて、各表示タイミングで常に適切な位置情報の元に相手方キャラクタを描画できるので、各端末の描画画面上において相手方キャラクタが一瞬表示されなくなる「間」や、相手方キャラクタがジャンプしたように表示されるといった不自然さも解消できる。このため、画質も向上して良質のゲーム環境を提供することが可能となる。【００６２】
図６及び図７は、上述した実施形態の変形例を示す図である。この変形例は、自端末であるゲーム装置１３Ａにおいて自己キャラクタの将来の位置を予測したときに、その位置が過去の予測位置から変更されていない場合、その変更しない分の予測位置の情報は送信しないようにしたものである（ステップＳＴ３´）。この場合、相手方端末（ゲーム装置１３Ｂ）において、かかる「予測位置の情報の非送信」の次のタイミングの受信時にデータ遅延やパケットロスの発生を検出したときには、２つ前のパケットまで遡って過去の予測位置を読み取り、その描画を行う（ステップＳＴ１４´）。【００６３】
この一例を図７に示す。同図に示すように、時刻Ｔ２のパケットには予測位置の情報が含まれておらず、時刻Ｔ３のパケット受信時にデータ遅延又はパケットロスが発生した状態を想定すると、時刻Ｔ３における現在の位置情報は２つ前のパケットである、時刻Ｔ１のときのパケットに含まれる「次の次の予定位置」が使用される。このように処理することで、予測位置の送信処理の演算負荷及び伝送負荷量を減らすことができる。したがって、これによっても、前述した実施形態と同等の作用効果を得ることができる。【００６４】
なお、本発明は上述した実施形態のものに限定されることなく、特許請求の範囲に記載の要旨の範囲内で更に様々な形態で実施することができる。例えば、自端末側で送信処理する将来の予測位置の情報としては、前述したように１つ先又は２つ先までのパケットの表示時の情報に限定されるものではなく、３つ以上先までのパケットを表示するときの自己キャラクタの位置の予測情報を演算して送信パケットに含まれるようにしてもよい。また、本発明の情報処理装置は、ゲーム機だけでなく、ＰＣや携帯電話端末、アーケードゲーム機等も包含する。さらに、複数の情報処理装置を接続するネットワークは、インターネットに限らずＷＡＮ、ＭＡＮ（Metropolitan Area Network）、ＬＡＮ（Local Area Network）、ＰＡＮ（Personal Area Network）、あるいは公衆電話回線等であってもよいし、有線でも無線でもよい。
【産業上の利用可能性】
【００６５】
以上説明した通り、本発明による情報処理装置及びそのデータ処理方法は、データの伝送遅延やパケットロスが生じても、各端末が相手方キャラクタの精度の高い位置情報を常に簡単にかつ演算不要の状態で取得して表示し、これにより、各端末における相手方キャラクタの表示のための演算量を減らすことができるので、上述の如く、パーソナルコンピュータ（ＰＣ）、家庭用ゲーム機、携帯ゲーム機、携帯電話、携帯情報端末、アーケードゲーム機等の各種の情報処理機器、設備、事業等に広く利用できる。
【図面の簡単な説明】
【００６６】
【図１】本発明による情報処理装置の一実施形態であるオンライン対戦ゲームシステムの概要を示す構成図である。
【図２】各ゲーム装置の構成を示すブロック図である。
【図３】各ゲーム装置で実行される処理の概略を示す機能ブロック図である。
【図４】各ゲーム装置で実行される送信処理及び受信処理の概略を示すフローチャートである。
【図５】データ遅延又はパケットロスが生じたときに各ゲーム装置で実行されるパケット内の位置情報の使用状態を示す概念図である。
【図６】変形例として実行される各ゲーム装置における送信処理及び受信処理の概略を示すフローチャートである。
【図７】図６に示す変形例においてデータ遅延又はパケットロスが生じたときに各ゲーム装置で実行されるパケット内の位置情報の使用状態を示す概念図である。
【図１】
0004807517.tif 000002
【図２】
0004807517.tif 000003
【図３】
0004807517.tif 000004
【図４】
0004807517.tif 000005
【図５】
0004807517.tif 000006
【図６】
0004807517.tif 000007
【図７】
0004807517.tif 000008