(57)【特許請求の範囲】
【請求項１】
操作情報に基づく生成画像表示をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示する表示手段と、
をコンピュータに機能させるための先行画像生成プログラム。
【請求項２】
請求項１に記載の先行画像生成プログラムにおいて、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つ、および／または、操作ボタンのボタン押下操作指示、である、
ことを特徴とする先行画像生成プログラム。
【請求項３】
請求項１または２に記載の先行画像生成プログラムにおいて、
前記先行画像生成手段が、
前記操作情報の後に続く操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の次フレームのための候補操作情報に基づき、複数の次フレーム候補先行生成画像を生成し、次フレームのための各候補操作情報と各次フレーム候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項４】
請求項１〜３のいずれか１項に記載の先行画像生成プログラムにおいて、
前記先行画像生成手段は、
前記操作情報が、オブジェクトに対する方向指示である場合、当該オブジェクトが属する画像レイヤーのみに対して、前記読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項５】
請求項１〜４のいずれか１項に記載の先行画像生成プログラムにおいて、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合、所定の範囲の移動値を持つ複数の候補操作情報を、当該所定の範囲に含まれる１つの移動値を持つ候補操作情報に置換する、
ことを特徴とする先行画像生成プログラム。
【請求項６】
請求項１〜５のいずれか１項に記載の先行画像生成プログラムにおいて、
前記記憶手段に代えて、前記受信手段により受信された複数の操作情報を、複数の候補操作情報とし、当該操作情報の出現頻度とを関連付けたものを含む操作情報テーブルを格納する記憶手段を、コンピュータに機能させ、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して、操作情報の出現頻度が高いものから順に読み出した２以上の候補操作情報に基づき、当該順で複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項７】
請求項１〜６のいずれか１項に記載の先行画像生成プログラムにおいて、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、のに代えて、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データ（最終画像の中間データ、スプライト座標、ポリゴン座標、ボーン情報、ワイヤーフレーム情報、マトリクス情報など）を生成し、各候補操作情報と、各候補先行生成中間データとを関連付け、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを抽出し、候補先行生成中間データから最終画像を生成し、
前記表示手段が、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示するのに代えて、
前記最終画像を、該操作情報に基づく生成画像として、表示する、
ことを特徴とする先行画像生成プログラム。
【請求項８】
操作情報に基づく生成画像をクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラム。
【請求項９】
請求項８に記載の先行画像生成プログラムにおいて、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つ、および／または、操作ボタンのボタン押下操作指示、である、
ことを特徴とする先行画像生成プログラム。
【請求項１０】
請求項８または９に記載の先行画像生成プログラムにおいて、
前記先行画像生成手段が、
前記操作情報の後に続く操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の次フレームのための候補操作情報に基づき、複数の次フレーム候補先行生成画像を生成し、次フレームのための各候補操作情報と各次フレーム候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項１１】
請求項８〜１０のいずれか１項に記載の先行画像生成プログラムにおいて、
前記先行画像生成手段は、
前記操作情報が、オブジェクトに対する方向指示である場合、当該オブジェクトが属する画像レイヤーのみに対して、前記読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項１２】
請求項８〜１１のいずれか１項に記載の先行画像生成プログラムにおいて、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合、所定の範囲の移動値を持つ複数の候補操作情報を、当該所定の範囲に含まれる１つの移動値を持つ候補操作情報に置換する、
ことを特徴とする先行画像生成プログラム。
【請求項１３】
請求項８〜１２のいずれか１項に記載の先行画像生成プログラムにおいて、
前記記憶手段に代えて、前記受信手段により受信された複数の操作情報を、複数の候補操作情報とし、当該操作情報の出現頻度とを関連付けたものを含む操作情報テーブルを格納する記憶手段を、コンピュータに機能させ、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して、操作情報の出現頻度が高いものから順に読み出した２以上の候補操作情報に基づき、当該順で複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする先行画像生成プログラム。
【請求項１４】
操作情報に基づく、画像を生成するための中間データをクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データを生成し、各候補操作情報と各候補先行生成中間データとを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを、該操作情報に基づく中間データとして、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラム。
【請求項１５】
操作情報に基づく生成画像をクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データを生成し、各候補操作情報と各候補先行生成中間データとを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データに基づき、最終画像を生成し、該最終画像を、該操作情報に基づく生成画像として、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラム。
【請求項１６】
請求項１〜１５のいずれか１項に記載の先行画像生成プログラムを格納したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、先行画像生成プログラムおよびコンピュータ可読記憶媒体に関し、特に、先行画像生成をすることで通信経路や画像生成による遅延を低減するまたは解消する先行画像生成プログラムおよびコンピュータ可読記憶媒体に関するものである。
【背景技術】
【０００２】
従来、コンシューマー向けゲーム機は、家庭用のスタンドアローンの形式のものが主流であった。しかし、通信回線やインターネットの発展、および、光通信などの通信インフラの普及に伴い、通信回線を利用可能なゲーム機が市販品の殆どを占めるに至っている。このような流れにより、ゲーム機上で動作するゲームソフトも通信回線を使用する「オンラインゲーム」が人気となっている。
【０００３】
他方、ＰＣをプラットホームとするゲームの世界では、ＰＣは基本的に通信機能を持つものが主流であったため、オンラインゲームの立ち上がりが早く、スタンドアローンのゲームよりも、むしろオンラインゲームの方が盛んになっている状況である。
【０００４】
このような「オンラインゲーム」で問題となるのが、通信回線の速度や、ゲーム機とサーバとの距離に依存する遅延時間である。特に、格闘ゲームやシューティングゲームなどのアクションゲームでは、このような操作するキャラクターの応答性がキーとなるため、遅延は大きな問題である。ゲーム機やＰＣの演算装置、グラフィックエンジンなどは近年、飛躍的に高速化が進んだが、高速の光通信の回線であっても通信遅延は、ユーザ操作の応答性を低下させ、ゲームの操作快適性を低減させる大きな要因の１つとなっている。
【０００５】
例えば、特許文献１による従来技術では、ネットワークに通信可能に接続されて対戦相手方との対戦型電子遊戯をオンラインで実行可能なものであって、対戦型電子遊戯用のプログラムを記憶させた記憶手段と、操作者が操作する操作手段と、演算装置と、画像生成手段とをそなえる情報処理装置を提案している。当該技術では、「演算手段は、操作者が行った操作に応じて操作対象オブジェクトのゲーム空間上の将来の予測位置を演算し、その情報をパケット化してネットワークを介して相手方端末に送信し、また、相手方端末から送信されてきたパケットを受信し、画像生成手段は、パケットの受信の欠落又は遅延を生じたときに、現在の受信以前に受信していたパケットに含まれている将来の予測位置を用いて相手方オブジェクトを含むゲーム画像を生成し、これにより、データの伝送遅延やパケットロス等が生じた場合でも、各端末における相手方キャラクターの表示のための演算量を減らすことができること」を狙ったものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】再表2006/057185号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の従来技術は、通信遅延が想定よりも大きい場合やパケットロスが発生した場合の技術である。また、この技法では、予め、相手方端末から「将来の予測位置」を含むパケットを送信させて、受信しておく必要がある。即ち、サーバ、クライアント間で事前にこのような「将来の予測位置」をやり取りするプロトコルを規定しておく必要がある構成である。また、この従来技術は、一瞬とはいえ予測位置で画像表示を行う構成であるため、予測位置のずれが生じてしまう恐れがあり、そのずれを後から修正する場合に、「キャラクタなどの瞬間移動」が発生したり、カクカクした不連続な画像表示になったりするなどの不都合が生じる。また、厳格な当たり判定処理を行うケースなどで、信頼性に欠ける判定が生じる場合があるなどの不都合もある。
【０００８】
図１２は、従来技術における典型的な通信遅延の発生態様を示す説明図である。図の（ａ）に示すように非通信ゲームであっても、ユーザ操作の入力を受けてから、画像を生成して、当該画像を表示するまでには、主として画像生成に要した時間に応じて、最低でも１／６０秒（１フレーム）の遅延時間が生ずる。これが、図の（ｂ）に示すように通信ゲームでは、サーバ側での画像生成の時間に加えて、クライアント−サーバ間の通信時間が往復分加わることになる。したがって、この通信回線の速度や、クライアント／サーバ間の距離によって、さらに遅延時間が増加することになる。図の例では、ほぼ２フレーム分の遅延であるが、回線速度や距離によっては、数フレーム、数十フレームの遅延が発生することもあり、ユーザの操作性が悪化することもある。図の（ｃ）は、ピア・ツー・ピアでプレイヤー１とプレイヤー２とがオンラインゲームをしているときの様子を示すものである。この場合でも、各プレイヤーにおいて、通信回線速度と距離による遅延が、約２フレーム分生じている。
【０００９】
本願発明者は、このような通信遅延によってもたらされる操作入力から画像表示まで遅延時間が発生するという課題に鑑み、先行画像生成によって遅延を低減、または解消する技法を見出すに至った。
【００１０】
そこで、本発明の目的は、遠隔地の装置の間で画像表示を行う場合の通信遅延を低減または解消することである。即ち、先行画像生成をすることで通信経路や画像生成による遅延を低減するまたは解消することである。
【課題を解決するための手段】
【００１１】
上述した諸課題を解決すべく、第１の発明によるプログラムは、
操作情報に基づく生成画像表示をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
（外部コンピュータから送信される）操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示する表示手段と、
をコンピュータに機能させるための先行画像生成プログラムである。
【００１２】
また、第２の発明による先行画像生成プログラムは、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つ（例えば、８方向指示（操作なしのニュートラルを含めて９操作）の１つ、４方向指示（操作なしのニュートラルを含めて５操作）の１つなど）、および／または、操作ボタンのボタン押下操作指示、である、
ことを特徴とする。
【００１３】
また、第３の発明による先行画像生成プログラムは、
前記先行画像生成手段が、
前記操作情報の後に続く操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の次フレームのための候補操作情報に基づき、複数の次フレーム候補先行生成画像を生成し、次フレームのための各候補操作情報と各次フレーム候補先行生成画像とを関連付ける、
ことを特徴とする。
【００１４】
また、第４の発明による先行画像生成プログラムは、
前記先行画像生成手段は、
前記操作情報が、オブジェクトに対する方向指示である場合、当該オブジェクトが属する画像レイヤーのみに対して、前記読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする。
【００１５】
また、第５の発明による先行画像生成プログラムは、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合、所定の範囲の移動値を持つ複数の候補操作情報を、当該所定の範囲に含まれる１つの移動値を持つ候補操作情報に置換する、
ことを特徴とする。
【００１６】
また、第６の発明による先行画像生成プログラムは、
前記記憶手段に代えて、前記受信手段により受信された複数の操作情報を、複数の候補操作情報とし、当該操作情報の出現頻度とを関連付けたものを含む操作情報テーブルを格納する記憶手段を、コンピュータに機能させ、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して、操作情報の出現頻度が高いものから順に読み出した２以上の候補操作情報に基づき、当該順で複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする。
【００１７】
また、第７の発明による先行画像生成プログラムは、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、のに代えて、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データ（最終画像の中間データ、スプライト座標、ポリゴン座標、ボーン情報、ワイヤーフレーム情報、マトリクス情報など）を生成し、各候補操作情報と、各候補先行生成中間データとを関連付け、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを抽出し、候補先行生成中間データから最終画像を生成し、
前記表示手段が、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示するのに代えて、
前記最終画像を、該操作情報に基づく生成画像として、表示する、
ことを特徴とする。
【００１８】
上記の発明は、いずれもクライアントのコンピュータで稼働するプログラムの態様であるが、サーバ側のコンピュータで稼働するプログラムとしても本発明を実現できる。
【００１９】
サーバ側のコンピュータで稼働するプログラムとして実現させた、第８の発明による先行画像生成プログラムは、
操作情報に基づく生成画像をクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラムである。
【００２０】
また、第９の発明による先行画像生成プログラムは、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つ、および／または、操作ボタンのボタン押下操作指示、である、
ことを特徴とする。
【００２１】
また、第１０の発明による先行画像生成プログラムは、
前記先行画像生成手段が、
前記操作情報の後に続く操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の次フレームのための候補操作情報に基づき、複数の次フレーム候補先行生成画像を生成し、次フレームのための各候補操作情報と各次フレーム候補先行生成画像とを関連付ける、
ことを特徴とする。
【００２２】
また、第１１の発明による先行画像生成プログラムは、
前記先行画像生成手段は、
前記操作情報が、オブジェクトに対する方向指示である場合、当該オブジェクトが属する画像レイヤーのみに対して、前記読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする。
【００２３】
また、第１２の発明による先行画像生成プログラムは、
前記操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、
複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合、所定の範囲の移動値を持つ複数の候補操作情報を、当該所定の範囲に含まれる１つの移動値を持つ候補操作情報に置換する、
ことを特徴とする。
【００２４】
また、第１３の発明による先行画像生成プログラムは、
前記記憶手段に代えて、前記受信手段により受信された複数の操作情報を、複数の候補操作情報とし、当該操作情報の出現頻度とを関連付けたものを含む操作情報テーブルを格納する記憶手段を、コンピュータに機能させ、
前記先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して、操作情報の出現頻度が高いものから順に読み出した２以上の候補操作情報に基づき、当該順で複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、
ことを特徴とする。
【００２５】
また、第１４の発明による先行画像生成プログラムは、
操作情報に基づく、画像を生成するための中間データをクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データを生成し、各候補操作情報と各候補先行生成中間データとを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを、該操作情報に基づく中間データとして、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラムである。
【００２６】
また、第１５の発明による先行画像生成プログラムは、
操作情報に基づく生成画像をクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データを生成し、各候補操作情報と各候補先行生成中間データとを関連付ける先行画像生成手段と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データに基づき、最終画像を生成し、該最終画像を、該操作情報に基づく生成画像として、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラムである。
【００２７】
上述したように本発明の解決手段をプログラムとして説明してきたが、本発明はこれらに実質的に相当する方法、装置、プログラムを記録した記憶媒体としても実現し得るものであり、本発明の範囲にはこれらも包含されるものと理解されたい。なお、下記の方法やプログラムの各ステップ、各手段、各機能部は、データの処理においては必要に応じて、CPU、DSPなどの演算処理装置を使用するものであり、入力したデータや加工・生成したデータなどを磁気テープ、HDD、メモリなどの記憶装置に格納するものである。
【００２８】
例えば、本発明をコンピュータ可読記憶媒体として実現させた第１４の発明によるコンピュータ可読記憶媒体は、
コンピュータに上記第１〜１３のいずれかの発明に記載の先行画像生成プログラムを格納したコンピュータ可読記憶媒体である。
【発明の効果】
【００２９】
本発明によれば、遠隔地の装置の間で画像表示を行う場合の通信遅延を低減または解消することが可能となる。
【図面の簡単な説明】
【００３０】
【図１】図１は、本発明の一実施態様によるオンラインゲームのゲームクライアントの概要を示すブロック図である。
【図２】図２は、図１に示したゲームクライアントで実行される処理の一例を示すフローチャートである。
【図３】図３は、図２の処理のときに遅延時間が減少する様子を示すシーケンス図である。
【図４】図４は、図２の処理のときに遅延時間が減少する様子を示すシーケンス図である。
【図５】図５は、操作入力部と、複数の候補操作情報を含む操作情報テーブルと、候補先行生成画像テーブルとの関連性を示す説明図である。
【図６】図６は、２フレーム先の先行画像生成を実施する態様を示す説明図である。
【図７】図７は、候補操作情報に移動値が含まれる場合の処理を説明する説明図である。
【図８】図８は、頻度を利用した場合の、複数の候補操作情報を含む操作情報テーブルと、候補先行生成画像テーブルとの関連性を示す説明図である。
【図９】図９は、本発明の一実施態様によるオンラインゲームのゲームサーバの概要を示すブロック図である。
【図１０】図１０は、図９に示したゲームクライアントで実行される処理の一例を示すフローチャートである。
【図１１】図１１は、図１０の処理のときに遅延時間が減少する様子を示すシーケンス図である。
【図１２】図１２は、従来技術における典型的な通信遅延の発生態様を示す説明図である。
【図１３】図１３は、図３の変形例のシーケンス図である。
【図１４】図１４は、図１１の変形例のシーケンス図である。
【図１５】図１５は、図９に示したゲームクライアントで実行される処理の一例を示すフローチャートである。
【図１６】図１６は、図１５の処理のときに遅延時間が減少する様子を示すシーケンス図である。
【発明を実施するための形態】
【００３１】
以降、諸図面を参照しながら、本発明の実施態様を詳細に説明する。
【００３２】
＜実施態様１＞
図１は、本発明の一実施態様によるオンラインゲームのゲームクライアント（クライアントＰＣ、ゲーム端末、携帯電話端末など）の概要を示すブロック図である。図に示すように、ゲームクライアント１００（ＧＣ）は、制御部（ＣＰＵ、演算処理装置、プロセッサ）１１０、入力部ＩＮ、出力部ＯＵＴ、通信部ＣＯＭ、記憶部１２０、および、タッチパネル（図示せず）が付加された入力可能な表示部ＤＩＳを有する。ゲームクライアント１００は、通信部ＣＯＭ、ネットワークＮＥＴを介して、オンラインゲームを提供するゲームサーバＧＳ、コンピュータ端末ＰＣ１，ＰＣ２、携帯端末ＰＤＡ１，携帯電話端末ＭＳ１と接続し、情報のやり取りが可能である。出力部ＯＵＴは、本装置に格納される情報や生成された情報を出力することができる。表示部ＤＩＳも、本装置に格納される情報や生成された情報を表示することができる。入力部ＩＮは、操作入力部ＯＩからの操作入力を受け付ける。操作入力部ＯＩは、８方向レバー、十字ボタン、などのゲーム操作の操作方向入力装置とすることが好適である。
【００３３】
先行画像生成プログラムＰＲＰは、記憶部１２０に格納されている。先行画像生成プログラムＰＲＰは、複数の候補操作情報を含む操作情報テーブルＯＩＬを記憶部に格納する記憶モジュールＳＭと、（外部コンピュータ、例えば、ゲームサーバＧＳや端末ＰＣ１から送信される）操作情報を通信部ＣＯＭを介して受信する受信モジュールＲＭと、操作情報を受信する前に、操作情報テーブルＯＩＬを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し（好適には、記憶部に格納される画像用オブジェクト情報やイメージ情報を読み込み、グラフィック用プロセッサを使用して生成する）、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成モジュールＰＲＭと、操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として表示部ＤＩＳに表示する表示モジュールＤＭとを有する。プログラム実行時には、各モジュールは、制御部１１０（プロセッサ）内、または、制御部１１０の制御下のメモリ空間に読み込まれ、各モジュールは、記憶手段、受信手段、先行画像生成手段、表示手段としてプロセッサ（コンピュータ）上で機能する。
【００３４】
候補先行生成画像を生成するには、実際には、他の情報も必要である。具体的には、例えば、候補先行生成画像よりも前の生成画像、当該画像を生成するためのオブジェクト、背景画像などである。本装置は、これらの諸情報を記憶部に格納してあり、必要に応じて、これらの諸情報を使用しながら、候補先行生成画像を生成する。
【００３５】
図２は、図１に示したゲームクライアントで実行される処理の一例を示すフローチャートである。図に示すように、ステップＳ１１にて、記憶モジュールＳＭは、複数の候補操作情報を含む操作情報テーブルＯＩＬを記憶部に格納する。次に、ステップＳ１２では、先行画像生成モジュールＰＲＭが、操作情報を受信する前に、操作情報テーブルＯＩＬを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける。この中間データは、一旦、メモリ上に展開（格納）して、高速にアクセスして取り出せるようにしておくことが好適である。次に、ステップＳ１３では、受信モジュールＲＭが、外部コンピュータ、例えば、ゲームサーバＧＳや端末ＰＣ１から送信される操作情報を通信部ＣＯＭを介して受信する。次に、ステップＳ１４では、表示モジュールＤＭが、操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め（選択し）、最後に、ステップＳ１５では、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として表示部ＤＩＳに表示する。
【００３６】
図３は、図２の処理のときに遅延時間が減少する様子を示すシーケンス図である。図の（ａ）が、本プログラムを機能させてあるプレイヤー１が使用するゲームクライアント（１００；ＧＣ）のシーケンス図である、図の（ｂ）が、本プログラムを機能させていない、従来の処理のプレイヤー２が使用する外部コンピュータである。図に示すように、プレイヤー１では、相手からの操作情報である入力２の受信を待たずに、先行画像生成により、候補先行生成画像を予め生成するため、「入力２」を受信すると、図の「画像選択」のように、極めて短時間で、入力２に対応する画像を候補先行生成画像から求めて、図の「表示２」のように表示することが可能となる。「画像選択」は、ハッチンングした矢印で示してあり、ある程度の時間を要するように見えるが、これは作図の便宜上のものであり、実際の「画像選択」は極めて短時間で完了することに注意されたい。このようにして、本実施態様では、処理時間の大半を占める画像生成を先行画像生成で事前に済ませておき、相手からの入力を受けたときに行う作業を瞬時に完了できる「画像選択」だけにすることによって、遅延時間を大幅に低減させることが可能となり、相手プレイヤーや相手コンピュータによる操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。また、本構成は、従来技術と異なり、予測に基づく間違った画像を表示することなく、最終的には、実際の操作に基づく画像を表示しながらも、操作応答性を高めることが可能となる。
【００３７】
比較のためにプレイヤー２は、本発明による先行画像生成技法を適用していないため、入力１を相手から受信した後で画像生成するため、プレイヤー１に比べて、表示１を表示するまでの遅延時間が長いことが分かる。このように本発明を適用することで、通信遅延を低減することが可能である。
【００３８】
図１３は、図３の変形例のシーケンス図である。同じ処理や構成については説明を省略する。図１３の処理と、図３のそれらとで大きく異なるのは、図１３では最終画像生成ではなく、画像を構成、生成するための中間データ生成を行うことである。
【００３９】
即ち、先行画像生成手段が、先行中間データ生成手段として機能する。
先行画像生成手段が、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、のに代えて、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データ（最終画像の中間データ、スプライト座標、ポリゴン座標、ボーン情報、ワイヤーフレーム情報、マトリクス情報など）を生成し、各候補操作情報と、各候補先行生成中間データとを関連付け、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを抽出し、候補先行生成中間データから最終画像を生成し、
表示手段が、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示するのに代えて、
前記最終画像を、該操作情報に基づく生成画像として、表示する。
【００４０】
図の（ａ）に示すように、プレイヤー１では、相手からの操作情報である入力２の受信を待たずに、「先行中間データ生成」により、候補先行生成中間データを予め生成するため、「入力２」を受信すると、図の「中間データ選択、中間データ生成」のように、極めて短時間で、入力２に対応する画像を候補先行生成画像から求めて、図の「表示２」のように表示することが可能となる。この「中間データ選択」、「最終画像生成」処理は、「画像選択」よりも若干時間はかかるが、「画像選択」とほぼ同様に、極めて短時間で完了することに注意されたい。何故なら、画像生成の時間や演算量は、ほとんどが「スプライト座標、ポリゴン座標、ボーン情報、ワイヤーフレーム情報、マトリクス情報」など「中間データ」の生成に要するからであり、これら中間データがあれば、最終画像生成は比較的短時間で可能だからである。本構成によれば、例えば３６候補画像全てを最終画像生成まで行うよりも、中間データの事前生成によって、効率や自由度を上げることが可能となる。中間データを選択した後、最終画像生成を一回だけ行うことにより全体の効率化を図ること可能となる。シーンによるが、最終画像生成時間が極短時間というケースでもちろん適用可能であるが、そのようなシーンだけでなく、中間データから最終画像生成に時間がかかるケースでも、本構成を適用して、中間データから最終画像生成した方が、最初から画像生成するより短時間で済むというメリットがある。また、上述した中間データは単なる例示であり、その他にも様々な種類の中間データがある。上記構成による効率の向上とは、処理量、通信データ量、消費メモリ量などの様々な面から考えられる。例えば「中間データ量＜最終画像データ量」であれば間違いなくメモリ消費や通信量を減らすことが可能となる。また、自由度の向上とは、例えば、クライアント側のプロセッサ能力やそのときの遅延状況に応じて、解像度や画像の品質を調節した最終生成を行うことが可能となる（例えば、画像構成を1024x768から640x480へ落とすなどが考えられる）。このようにして、本実施態様では、処理時間の大半を占める「中間データ」生成を先行中間データ生成で事前に済ませておき、相手からの入力を受けたときに行う作業を瞬時に完了できる「中間データ選択」「最終画像生成」だけにすることによって、遅延時間を大幅に低減させることが可能となり、相手プレイヤーや相手コンピュータによる操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。
【００４１】
図４は、図２の処理のときに遅延時間が減少する様子を示すシーケンス図である。この例は、図３のものとほぼ同様であるが、プレイヤー２にも本発明による先行画像生成技法を適用した態様を示したものである。図に示すように、プレイヤー２にも、本発明による先行画像生成技法を適用してあるため、プレイヤー１と同様に、表示１を表示するまでの遅延時間を低減させることが可能となる。このように本発明を適用することで、オンラインゲームでの通信経路での遅延を低減することが可能である。
【００４２】
図５は、操作入力部（入力装置）と、複数の候補操作情報を含む操作情報テーブルと、候補先行生成画像テーブルとの関連性を示す説明図である。操作入力部ＯＩ１０は、一例であるが、方向を入力する８方向レバー、何らの操作を指示するＡボタン、Ｂボタンからなる。ボタンがＡ，Ｂの２つは、単なる例示であり、ボタンは１でも、３個以上あってもよい。このような形式は、アーケードゲーム、家庭用ビデオゲーム機の典型的な入力装置の態様である。このような操作入力部ＯＩ１０に対応する操作情報テーブルＯＩＬ１０について説明する。
【００４３】
図に示すように、操作情報テーブルＯＩＬ１０は、３つのインプット器具に対応して、候補操作情報：アイテム１としての「８方向レバー」、候補操作情報：アイテム２としての「Ａボタン」、候補操作情報：アイテム３としての「Ｂボタン」の各情報を含む。例えば「８方向レバー：上」を操作したときの組み合わせとしては、「Ａボタン：押す、操作なし」「Ｂボタン：押す、操作なし」の４パターンがある。この４パターンに応じて、候補画像１〜４が事前に生成され、候補先行生成画像テーブルＰＲＩＴ１０（メモリや記憶部に格納される）に格納され、前述の４パターンの候補操作情報にそれぞれ関連付けられる。このように候補操作情報に応じた先行画像生成を実施することにより、通信遅延によるゲーム表示画面の遅延を最小化することが可能となる。
【００４４】
図５では、次に受信する操作情報に対する画像、即ち、次フレームの画像を先行画像生成するときの各テーブルを示した。図６は、２フレーム先の先行画像生成を実施する態様を示す説明図である。候補先行生成画像テーブルＰＲＩＴ１０は、図５と同様である。この実施態様では、さらにその次に受信するであろう操作情報を受信する前に、操作情報テーブルを参照して読み出した２以上の次フレームのための候補操作情報に基づき、複数の次フレーム候補先行生成画像を生成し、次フレームのための各候補操作情報と各次フレーム候補先行生成画像と（或いは、次の操作情報と次フレーム候補先行生成画像とを関連付けてもよい）を関連付ける。即ち、候補先行生成画像テーブルＰＲＩＴ１０の候補が画像１には、さらに３６枚の候補画像を先行画像生成しておき、それぞれ関連付ける。ちなみに、８方向操作指示レバーの場合は、「操作なし（ニュートラル）」を含めて９操作あり、それに、Ａボタン、Ｂボタンの２パターンずつで、９×２×２で３６パターンの候補画像となる。このような先行画像生成には、コンピューティングパワーを大量に消費するが、現在は、高性能なグラフィック専用チップ（プロセッサ）や汎用プロセッサなど、並列処理能力が非常に高いプロセッサを搭載したゲーム機やコンピュータがあるため、それほど負担にならずに、このような多段階フレームの先行画像生成を実現することが可能となる。さらに、プロセッサの処理能力が将来的にさらに高くなった場合には、本構成のような２フレーム以上先のフレームや中間データの先行生成のメリットはさらに高くなる。このことは、２フレーム以上先のシーンに対する先行生成のみならず、他の実施態様で説明する中間データの先行生成にも適用可能である点に注意されたい。
【００４５】
先行画像生成は、操作情報が、図５、図６のようなオブジェクトに対する方向指示である場合、当該オブジェクトが属する画像レイヤーのみに対して、読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付けることが好適である。ゲーム画面では、背景画像のグラフィック処理の方が、当該オブジェクトのそれよりも高負荷であることが多いため、この処理によって、演算量を大幅に低減することが可能となる。
【００４６】
上述したように、先行生成画像の対象は、画面全体でもよいが、画面を構成する要素のうちの、注目すべき操作対象に絞って行うことが好適である。例えば、アクションゲームにおいて、背景はほとんど変化しないか、静止した背景であるが、操作対象の人物キャラクターや敵のキャラクターが主として変化するようなシーンの場合には、「操作対象の人物キャラクター」だけ、或いは、「操作対象の人物キャラクター」および「敵のキャラクター」だけを先行画像生成することが好適である。具体的には、シーンを構成する画像フレームが幾つかのレイヤーを含む場合には、「操作対象の人物キャラクター」および「敵のキャラクター」を含むレイヤーだけを先行画像生成することが、本実施態様の装置で可能である。即ち、ゲームにおいて注目すべき操作対象に関するものだけ先行画像生成することが好適である。
【００４７】
また、操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合を考えると、移動量は、アナログ数値であり、先行画像生成のパターンが飛躍的に増加してしまう。このような不都合を解消するための技法を盛り込んだ実施態様を説明する。
【００４８】
図７は、候補操作情報に移動値が含まれる場合の処理を説明する説明図である。図に示すように、操作情報テーブルに含まれる複数の候補操作情報の少なくとも１つが、複数の方向指示のうちの１つであり、かつ、当該方向への移動値を含むものである場合、所定の範囲の移動値を持つ複数の候補操作情報を、当該所定の範囲に含まれる１つの移動値を持つ候補操作情報に置換する。即ち、上方向には、移動値１，２，３、・・９の９段階の移動値がある場合には、上、１，２，３の範囲のものを「上：移動値２」という候補操作情報に置換する。このようにすることで、先行画像生成の生成画像の処理を３３％に低減することが可能となる。これは３つのものを１つに置換した場合を示したが、例えば、５つの移動値を１つの移動値のもの置換されば、先行画像生成の生成画像の処理を２０％に低減することが可能となる。
【００４９】
図８は、頻度を利用した場合の、複数の候補操作情報を含む操作情報テーブルと、候補先行生成画像テーブルとの関連性を示す説明図である。操作入力部ＯＩ１１は、操作情報の出現頻度が関連付けられている以外は、図５のそれらと同様である。図の例では、３６パターンの操作情報のうち４つの操作情報に、頻度１〜４が関連付けられている。そして、本実施態様では、この頻度が高い順に候補画像４，７，１２，１５が先行画像生成され、候補先行生成画像テーブルＰＲＩＴ１１に格納される様子を示してある。このように、操作情報の出現頻度の順序で先行画像生成をすることで、例えば、本プログラムが稼働するゲーム機やコンピュータの画像生成の演算力が乏しい場合には、３６パターンのうちの頻度が高い１６パターンだけを先行画像生成しても、先行生成画像として効率よく使用することが可能である。このような、間引き先行画像生成では、ヒットミス（先行生成画像がない場合）もあり得るが、そのときだけ表示が遅延したとしても、全体としての遅延は少なくなり、全体としての操作性は向上する。
【００５０】
上記のように、操作の頻度の高いものの順序で先行画像生成をすることがいいが、ゲームやプレイヤーによっては、次回のフレームの操作パターンの出現頻度が、直近の操作になることが多い。そのような場合に対応して、最初に先行画像生成するものを直近の操作、例えば、上方向にレバーを操作した場合には、「上方向」に操作したときの画像を先行画像生成し、その後は、操作の頻度の順序で、先行画像生成することが好適である。このような頻度のテーブルは、直近の操作パターン毎に、頻度テーブル（画像生成や中間データ生成の順序を規定する優先順位テーブル）を設けることがさらに好適である。以下のような構成となる。
頻度のテーブル１：    直近（上）：第一候補（上）、第二候補（右）、第三候補（左）、・・・・
頻度のテーブル２：    直近（下）：第一候補（下）、第二候補（上）、第三候補（右）、・・・・
頻度のテーブル３：    直近（右）：第一候補（斜め右上）、第二候補（斜め右下）、第三候補（上）、・・・・
このような直近操作を軸にした頻度テーブルが、ほとんどのアクションゲームでは、先行画像生成や先行中間データ生成で最も効果を奏するものである。また、後述するゲーム内状況を軸にした頻度テーブルとしてもよい。このように頻度テーブルの構成は様々なパターンが考えられる。
【００５１】
実際には、受信手段により受信された複数の操作情報を、複数の候補操作情報とし、当該操作情報の出現頻度とを関連付けたものを含む操作情報テーブルを格納する記憶手段を、コンピュータに機能させ、先行画像生成手段が、前記操作情報を受信する前に、前記操作情報テーブルを参照して、操作情報の出現頻度が高いものから順に読み出した２以上の候補操作情報に基づき、当該順で複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける、ことが好適である。
【００５２】
この出現頻度（予測パターン）は、各プレイヤーの熟練度、個人のクセ、ゲームのシーン、などで異なるが、幾つかのパターンを用意しておき、随時更新したり、頻度を蓄積して精度（予測的中）を高めることが好適である。頻度は、例えば、過去の所定期間内の全ユーザの操作情報の統計情報でもよいし、当該プレイヤーの統計情報でもよい。
【００５３】
＜実施態様２＞
図９は、本発明の一実施態様によるオンラインゲームのゲームサーバ（コンピュータなど）の概要を示すブロック図である。図に示すように、ゲームサーバ２００（ＧＳ）は、制御部（ＣＰＵ、演算処理装置、プロセッサ）２１０、入力部ＩＮ、出力部ＯＵＴ、通信部ＣＯＭ、記憶部１２０を有する。サーバなので、表示部は必須ではないが設けてもよい。ゲームサーバ２００は、通信部ＣＯＭ、ネットワークＮＥＴを介して、ゲームクライアントＧＣ１，ＧＣ２、コンピュータ端末ＰＣ１、携帯端末ＰＤＡ１，携帯電話端末ＭＳ１と接続し、情報のやり取りが可能であり、主としてオンラインゲームを接続するゲームクライアントＧＣ１，ＧＣ２に提供する。出力部ＯＵＴは、本装置に格納される情報や生成された情報を出力することができる。表示部を設けた場合には、本装置に格納される情報や生成された情報を表示することができる。入力部ＩＮは、図示しない操作入力部（キーボードなど）からの操作入力を受け付ける。
【００５４】
先行画像生成プログラムＰＲＰは、記憶部２２０に格納されている。先行画像生成プログラムＰＲＰは、複数の候補操作情報を含む操作情報テーブルＯＩＬを記憶部に格納する記憶モジュールＳＭと、（外部コンピュータ、例えば、ゲームクライアントＧＣ１や端末ＰＣ１から送信される）操作情報を通信部ＣＯＭを介して受信する受信モジュールＲＭと、操作情報を受信する前に、操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成モジュールＰＲＭと、操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、通信部ＣＯＭを介してクライアントに送信する送信モジュールＴＭとを有する。プログラム実行時には、各モジュールは、制御部２１０（プロセッサ）内、または、制御部２１０の制御下のメモリ空間に読み込まれ、各モジュールは、記憶手段、受信手段、先行画像生成手段、送信手段としてプロセッサ（コンピュータ）上で機能する。
【００５５】
図１０は、図９に示したゲームクライアントで実行される処理の一例を示すフローチャートである。図に示すように、ステップＳ２１にて、記憶モジュールＳＭは、複数の候補操作情報を含む操作情報テーブルＯＩＬを記憶部に格納する。次に、ステップＳ２２では、先行画像生成モジュールＰＲＭが、ゲームクライアントから操作情報を受信する前に、操作情報テーブルＯＩＬを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける。この中間データは、一旦、メモリ上に展開（格納）して、高速にアクセスして取り出せるようにしておくことが好適である。次に、ステップＳ２３では、受信モジュールＲＭが、外部コンピュータ、例えば、ゲームクライアントＧＣ１や端末ＰＣ１から送信される操作情報を通信部ＣＯＭを介して受信する。次に、ステップＳ２４では、操作情報を受信すると、送信モジュールＴＭが、該操作情報と合致する前記候補操作情報を求め（選択し）、最後に、ステップＳ２５では、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として通信部ＣＯＭを介して、操作情報の送信元であるゲームクライアントに送信する。
【００５６】
図１１は、図１０の処理のときに遅延時間が減少する様子を示すシーケンス図である。図の（ａ）が、プレイヤー１が使用するゲームクライアント（ＧＣ１）のシーケンス図である、図の（ｂ）が、本プログラムを機能させてあるゲームサーバ２００（ＧＳ）である。図に示すように、プレイヤー１では、操作情報である入力３をゲームサーバに送信する。従来であれば、点線の矢印で示すように、ゲームサーバは画像生成してから画像をクライアントに送信するため、「入力３」から「表示３」までは、３フレームかかっている。一方、本発明を適用した場合には、ゲームサーバは、入力３の受信を待たずに、先行画像生成により、候補先行生成画像を予め生成するため、「入力３」を受信すると、極めて短時間で、入力３に対応する画像を候補先行生成画像から求めて、図の実線の「表示３」のように表示することが可能となる。画像選択時に、候補先行生成画像を圧縮して送信することで送信パケット量を減少させることができるが、先行画像生成時に、圧縮を済ませておき、選択時に、そのまま送信することも可能である。そのため、遅延時間が大幅に低減することが可能となり、相手プレイヤーや相手コンピュータによる操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。この例では、従来、３フレームを要していたが、本技法の適用により２フレームまで遅延時間を低減できていることが分かる。
【００５７】
図１４は、図１１の変形例のシーケンス図である。同じ処理や構成については説明を省略する。図１４の処理と、図１１のそれらとで大きく異なるのは、図１４では最終画像生成ではなく、画像を構成、生成するための中間データ生成を行うことである。これは図１３のものとほぼ、同様のことをサーバで行う実施態様である。
【００５８】
ここでは、先行画像生成プログラム（先行中間データ生成プログラムと規定してもよい）は、
操作情報に基づく、画像を生成するための中間データをクライアントに送信する処理をコンピュータに実行させるための先行画像生成プログラムであって、
複数の候補操作情報を含む操作情報テーブルを格納する記憶手段と、
前記クライアントから操作情報を受信する受信手段と、
前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成中間データを生成し、各候補操作情報と各候補先行生成中間データとを関連付ける先行画像生成手段（即ち、先行中間データ生成手段）と、
前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成中間データを、該操作情報に基づく中間データとして、前記クライアントに送信する送信手段と、
をコンピュータに機能させるための先行画像生成プログラムである。
【００５９】
図の（ｂ）が、本プログラムを機能させてあるゲームサーバ２００（ＧＳ）である。図に示すように、プレイヤー１では、操作情報である入力３をゲームサーバに送信する。従来であれば、点線の矢印で示すように、ゲームサーバは画像生成してから画像をクライアントに送信するため、「入力３」から「表示３」まではは、３フレームかかっている。一方、本発明を適用した場合には、ゲームサーバは、入力３の受信を待たずに、「先行中間データ生成」により、候補先行中間データを予め生成するため、「入力３」を受信すると、極めて短時間で、入力３に対応する中間データを候補先行生成中間データから求めて送信して、図の実線の「表示３」のように表示することが可能となる。この場合には、中間データから最終画像を生成する処理は、中間データを受信した側であるプレイヤー１（ゲームクライアントＧＣ１）で行うことになる（図示はしていない）。中間データは圧縮して送信することで送信パケット量をさらに減少させることができるが、そのため、遅延時間が大幅に低減することが可能となり、相手プレイヤーや相手コンピュータによる操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。この例では、従来、３フレームを要していたが、本技法の適用により１フレームまで（図１１の実施態様の２フレームよりもさらに遅延が１フレーム減少している。）遅延時間を低減できていることが分かる。この「中間データ選択」処理は、「画像選択」とほぼ同様に、極めて短時間で完了することに注意されたい。何故なら、画像生成の時間や演算量は、ほとんどが「スプライト座標、ポリゴン座標、ボーン情報、ワイヤーフレーム情報、マトリクス情報」など「中間データ」の生成に要するからである。そして、これら中間データがあれば、受信側のプレイヤーにおける最終画像生成は極めて短時間で可能だからである。このようにして、本実施態様では、処理時間の大半を占める「中間データ」生成を先行中間データ生成で事前に済ませておき、相手からの入力を受けたときに行う作業を瞬時に完了できる「中間データ選択」だけにすることによって、「処理による遅延時間」および「送信時間」を大幅に低減させることが可能となり、操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。なお、中間データから最終画像を生成する処理は、プレイヤー側（受信側）でしてもよいが、中間データ選択に続いて、そのままサーバ側で処理してもよい。
【００６０】
図１５は、図９に示したゲームクライアントで実行される処理の一例を示すフローチャートである。図に示すように、ステップＳ３１にて、記憶モジュールＳＭは、複数の候補操作情報を含む操作情報テーブルＯＩＬを記憶部に格納する。このとき、頻度テーブル（画像生成優先順位テーブル）も格納しておいてもよい。次に、ステップＳ３２では、先行画像生成モジュールＰＲＭが、ゲームクライアントから操作情報を受信する前に、操作情報テーブルＯＩＬを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける。生成の際には、頻度テーブルの順序に従って、生成するのが好適であるが、任意の順序で生成してもよい。そして、ステップＳ３３にて、生成した候補先行生成画像は、１つずつ、或いは、２，３つなどのブロックで、ゲームクライアントに送信する。このとき、画像生成に際して派生した中間データや候補先行生成画像は、一旦、メモリ上に展開（格納）して、高速にアクセスして取り出せるようにしておくことが好適である。ステップＳ３４では、全ての候補先行生成画像を送信したかを判定し、全て送信しきれていない場合は、ステップＳ３２、Ｓ３３を繰り返す。
【００６１】
全ての候補先行生成画像を送信した場合は、ステップＳ３５に進み、受信モジュールＲＭが、外部コンピュータ、例えば、ゲームクライアントＧＣ１や端末ＰＣ１から送信される操作情報を通信部ＣＯＭを介して受信する。次に、ステップＳ３６では、操作情報を受信すると、送信モジュールＴＭが、該操作情報と合致する前記候補操作情報を求め（選択し）、最後に、ステップＳ３７では、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として決定する。このような状況では、ゲームクライアントには、候補先行生成画像を送信済であるが、通信部ＣＯＭを介して、候補先行生成画像を操作情報の送信元であるゲームクライアントに送信してもよい。
【００６２】
このように、ゲームサーバ側では、入力３を待たずに先行画像生成するため、生成された複数の画像（もしくは中間データ）を早い段階からプレイヤー側へ送信することで、より遅延を少なくすることが可能となる。即ち、入力３を受け取る前から、可能な限り多くの先行画像（中間データ）を送信しておくことによって、プレイヤー側では、すでにある入力３と照らし合わせて、より早く確定した画像を得ることができることになる。このフローでは、先行画像送信で説明したが、同様のことが中間データの生成および送信でも可能であり、同様に遅延時間を低減可能であることに注意されたい。また、本構成では、ステップＳ３４にて、全ての候補先行画像を送信できる態様で説明したが、プロセッサの演算能力によっては、全てを送信できない場合も考えられる。その場合に対応して、ステップＳ３４に代えて、操作情報を受信した段階で、当該操作情報に対応する画像が生成済であるか確認し、生成済である場合には、その先行画像を送信し、そうでない場合には、当該操作情報に対応する画像を生成する構成を取ることが好適である。次の図１６にて、この先行画像送信により遅延時間がさらに低減される仕組みを詳細に説明する。
【００６３】
図１６は、図１５の処理のときに遅延時間が減少する様子を示すシーケンス図である。図１６は、図１１の処理の変形例であり、先行画像生成の先行画像送信を逐次行う点と、それによって、プレイヤー１（ゲームクライアントＧＣ１）の遅延時間が１フレームとさらに低減化される点のみが異なる。そのため、図１１で説明した処理、要素については説明を省略する。図に示すように、本構成では、先行生成画像を生成が完了し次第、送信する（これを先行画像送信と称する）。プレイヤー１は、入力３を送信した後、或いは、タイミングによっては、入力３が操作された段階において、入力３に対応する先行画像を受信済となり、これを即座に実線の「表示３」のように１フレームの遅延のみで表示可能となる。この場合には、候補先行生成画像には、入力３により生成された画像であることを示す制御フラグを、例えば、何らかの画像表示制御ブロックに含ませることが好適である。或いは、別途、画像と操作情報と関連付けることが可能なデータを送信してもよい。この場合でも、候補先行生成画像を圧縮して送信することで送信パケット量を減少させることができる。このようにして、遅延時間が大幅に低減することが可能となり、相手プレイヤーや相手コンピュータによる操作入力の応答性が高まり、結果としてユーザ操作の快適性が高まる。この例では、従来、３フレームを要していたが、本技法の適用により１フレームまで遅延時間を低減できていることが分かる。或いは、先行画像送信の技法を適用しない、図１１の場合よりも１フレーム遅延を低減できることが分かる。
【００６４】
本発明を諸図面や実施例に基づき説明してきたが、当業者であれば本開示に基づき種々の変形や修正を行うことが容易であることに注意されたい。従って、これらの変形や修正は本発明の範囲に含まれることに留意されたい。例えば、各部、各ステップなどに含まれる処理や機能などは論理的に矛盾しないように再配置可能であり、複数の手段／部やステップなどを１つに組み合わせたり、或いは分割したりすることが可能である。或いは、本発明による装置、方法、プログラムなどの一部の構成要素、機能、処理、ステップなどを遠隔地のサーバなどに配置することも可能であることに注意されたい。
【００６５】
実施態様では、ゲームサーバやゲームクライアントの形式を挙げたが、本発明は、離れた２つ以上の装置の間で、操作情報に基づき画像生成をするような形態であれば、適用可能であることは言うまでもない。特にこれらのなかでも応答性が要求されるものでは本発明の効果を奏する。例えば、ゲームでは、アクションゲーム、格闘ゲーム、シューティングゲーム、音楽ゲームなどであり、他では、ウェブページ、家電のリモコンなどに適用可能である。
【符号の説明】
【００６６】
１００  ゲームクライアント
１１０  制御部
１２０  記憶部
２００  ゲームサーバ
２１０  制御部
２２０  記憶部
ＣＯＭ  通信部
ＤＩＳ  表示部
ＤＭ  表示モジュール
ＧＣ１，ＧＣ２  ゲームクライアント
ＧＳ  ゲームサーバ
ＩＮ  入力部
ＭＳ１  携帯電話端末
ＮＥＴ  ネットワーク
ＯＩ  操作入力部
ＯＩ１０  操作入力部
ＯＩ１１  操作入力部
ＯＩＬ  操作情報テーブル
ＯＩＬ１０  操作情報テーブル
ＯＵＴ  出力部
ＰＣ１，ＰＣ２  コンピュータ端末
ＰＤＡ１  携帯端末
ＰＲＩＴ１０  候補先行生成画像テーブル
ＰＲＩＴ１１  候補先行生成画像テーブル
ＰＲＭ  先行画像生成モジュール
ＰＲＰ  先行画像生成プログラム
ＲＭ  受信モジュール
ＳＭ  記憶モジュール
ＴＭ  送信モジュール
【要約】
【課題】  遠隔地の装置の間で操作入力から画像表示まで遅延時間が発生する。
【解決手段】  操作情報に基づく生成画像表示をコンピュータに実行させるための先行画像生成プログラム(PRP)は、複数の候補操作情報を含む操作情報テーブルを格納する記憶手段(SM)と、操作情報を受信する受信手段(RM)と、前記操作情報を受信する前に、前記操作情報テーブルを参照して読み出した２以上の候補操作情報に基づき、複数の候補先行生成画像を生成し、各候補操作情報と各候補先行生成画像とを関連付ける先行画像生成手段(PRM)と、前記操作情報を受信すると、該操作情報と合致する前記候補操作情報を求め、求めた候補操作情報に関連付けられた前記候補先行生成画像を、該操作情報に基づく生成画像として、表示する表示手段(DM)とをコンピュータに機能させる。
【選択図】図１【図１】
0005544632.tif 000002
【図２】
0005544632.tif 000003
【図３】
0005544632.tif 000004
【図４】
0005544632.tif 000005
【図５】
0005544632.tif 000006
【図６】
0005544632.tif 000007
【図７】
0005544632.tif 000008
【図８】
0005544632.tif 000009
【図９】
0005544632.tif 000010
【図１０】
0005544632.tif 000011
【図１１】
0005544632.tif 000012
【図１２】
0005544632.tif 000013
【図１３】
0005544632.tif 000014
【図１４】
0005544632.tif 000015
【図１５】
0005544632.tif 000016
【図１６】
0005544632.tif 000017