(57)【特許請求の範囲】
【請求項１】
サーバ装置と通信する複数の端末の各々においてゲーム参加者により観賞可能なビデオゲームを制御するサーバ装置であって、
（ａ）複数のグラフィカルシーンを伝えるソースグラフィックスデータを生成するゲームエンジンであって、前記複数のグラフィカルシーンがゲームキャラクタを有する仮想世界を集合的に示し、各グラフィカルシーンが前記仮想世界の少なくとも一部を記述するゲームエンジンと、
（ｂ）共有描画エンジンであって、
（ｉ）各グラフィカルシーンをゲーム参加者に関連付け、
（ｉｉ）動画データストリームを生成するために第１のグラフィカルシーンにおいて共有描画動作を実行し、前記共有描画エンジンにより前記第１のグラフィカルシーンに関連付けられたゲーム参加者について前記共有描画動作が共通である共有描画エンジンと、
（ｃ）前記第１のグラフィカルシーンに関連付けられた前記ゲーム参加者のゲーム端末に前記動画データストリームを送信する出力部と、
を有するサーバ装置。
【請求項２】
前記ゲーム参加者は、各ゲームキャラクタに関連付けられたゲームプレイヤを含む請求項１に記載のサーバ装置。
【請求項３】
前記ゲーム参加者は、観戦者を含む請求項１に記載のサーバ装置。
【請求項４】
前記共有描画エンジンは、少なくとも前記仮想世界におけるゲームプレイヤのゲームキャラクタの位置を基準に、該ゲームプレイヤを各グラフィカルシーンに関連付ける請求項２に記載のサーバ装置。
【請求項５】
前記共有描画エンジンは、ゲームプレイヤに関連付けられたゲームキャラクタが特定のグラフィカルシーンにより記述された前記仮想世界の一部に現れる場合に、該ゲームプレイヤを該特定のグラフィカルシーンに関連付ける請求項２に記載のサーバ装置。
【請求項６】
前記共有描画エンジンは、機械読み取り可能な記録装置に、ゲームプレイヤをグラフィカルシーンに関連付ける動的更新リストを保持する請求項２に記載のサーバ装置。
【請求項７】
前記共有描画エンジンは、第１のグラフィカルシーンにより示される前記仮想世界の位置から第２のグラフィカルシーンにより示される前記仮想世界の異なる位置へのゲームキャラクタの移動に応じて、該ゲームキャラクタに関連付けられたゲームプレイヤの前記第１のグラフィカルシーンへの関連付けを外し、該ゲームキャラクタに関連付けられたゲームプレイヤを前記第２のグラフィカルシーンに関連付ける請求項６に記載のサーバ装置。
【請求項８】
前記グラフィカルシーンは、前記仮想世界の相互排除的な部分を示す請求項２に記載のサーバ装置。
【請求項９】
２以上の前記グラフィカルシーンは、部分的にオーバーラップする前記仮想世界の各部分を示す請求項２に記載のサーバ装置。
【請求項１０】
（ｂ）前記第１のグラフィカルシーンは、前記第２のグラフィカルシーンと共有されない第１の部分と、前記第２のグラフィカルシーンと共有される第２の部分とを有し、
（ｃ）前記第２のグラフィカルシーンは、前記第１のグラフィカルシーンと共有されない第３の部分を有し、
（ｄ）前記共有描画エンジンは、前記第１の部分から前記第２の部分へのゲームキャラクタの移動に応じて、該ゲームキャラクタに関連付けられたゲームプレイヤの前記第１のグラフィカルシーンへの関連付けを外し、該ゲームキャラクタに関連付けられたゲームプレイヤを前記第２のグラフィカルシーンに関連付ける請求項７に記載のサーバ装置。
【請求項１１】
（ａ）前記第１のグラフィカルシーンは、前記第２のグラフィカルシーンと共有されない第１の部分と、前記第２のグラフィカルシーンと共有される第２の部分とを有し、
（ｂ）前記第２のグラフィカルシーンは、前記第１のグラフィカルシーンと共有されない第３の部分を有し、
（ｃ）前記共有描画エンジンは、ゲームキャラクタが前記第１の部分から前記第２の部分に移動した場合に、前記第１のグラフィカルシーンに関連付けられた該ゲームキャラクタに関連付けられたゲームプレイヤを維持する請求項７に記載のサーバ装置。
【請求項１２】
前記仮想世界は、観戦者に関連付けられたキャラクタを有さない請求項３に記載のサーバ装置。
【請求項１３】
前記サーバ装置は、観戦者に関連付けられた端末において入力された観賞設定情報を受信するための入力部を有し、
前記共有描画エンジンは、少なくとも前記観賞設定情報に基づいて該観戦者にグラフィカルシーンを関連付ける請求項３に記載のサーバ装置。
【請求項１４】
前記観賞設定情報は、前記仮想世界における特定のゲームキャラクタを識別し、
前記共有描画エンジンは、該ゲームキャラクタに関連付けられたゲームプレイヤが関連付けられているグラフィカルシーンに前記観戦者を関連付ける請求項１３に記載のサーバ装置。
【請求項１５】
前記観賞設定情報は、前記仮想世界における特定の位置を識別し、
前記共有描画エンジンは、前記特定の位置のビューが提供されるグラフィカルシーンに前記観戦者を関連付ける請求項１３に記載のサーバ装置。
【請求項１６】
前記観賞設定情報は、ゲームアクションパラメータを記述し、
前記共有描画エンジンは、前記観賞設定情報に合致するアクションパラメータを含むグラフィカルシーンに前記観戦者を関連付ける請求項１３に記載のサーバ装置。
【請求項１７】
前記共有描画エンジンは、前記観戦者の前記観賞設定情報内のゲームアクションパラメータに合致するゲームアクションパラメータをいずれのグラフィカルシーンが含むかを決定するために、該観戦者の観賞設定情報に記述されたゲームアクションパラメータと、オンラインゲームがプレイされるように開発されたゲームアクションパラメータとを比較し、そのように決定されたグラフィカルシーンに該観戦者を関連付ける請求項１６に記載のサーバ装置。
【請求項１８】
特定のグラフィカルシーン用の前記ゲームアクションパラメータは、該特定のシーンにおいて単位時間あたりに殺されたゲームキャラクタの数、単位時間あたりの軍事出費率、該特定のシーンにおける単位時間あたりの爆発の数、及び特定のシーンに存在しているゲームキャラクタの数で構成されるグループから選択される請求項１７に記載のサーバ装置。
【請求項１９】
前記サーバ装置は、前記観戦者が観賞設定情報を入力可能なグラフィカルユーザインタフェース（ＧＵＩ）を、該観戦者に関連付けられた端末において生成する請求項１３に記載のサーバ装置。
【請求項２０】
前記ＧＵＩは、前記観戦者が１体を選択可能な前記仮想世界内の複数のゲームキャラクタを示しており、
ゲームキャラクタの選択に応じて、前記サーバ装置の前記入力部に送信するための、選択されたゲームキャラクタを示す観賞設定情報を生成する請求項１９に記載のサーバ装置。
【請求項２１】
前記ＧＵＩは、前記観戦者が１つの位置を選択可能な前記仮想世界内の複数の位置を示しており、
位置の選択に応じて、前記サーバ装置の前記入力部に送信するための、選択された位置を記述する観賞設定情報を生成する請求項１９に記載のサーバ装置。
【請求項２２】
前記ＧＵＩは、前記観戦者が１以上を選択可能な複数のゲームアクションパラメータを示しており、
１以上のゲームアクションパラメータの選択に応じて、前記サーバ装置の前記入力部に送信するための、選択されたゲームアクションパラメータを記述する観賞設定情報を生成する請求項１９に記載のサーバ装置。
【請求項２３】
複数の端末の各々においてゲーム参加者により観賞可能なビデオゲームにおいてグラフィカルシーンの共有描画を実行する方法であって、
（ａ）ゲームエンジンを用いて、ゲームキャラクタを有する仮想世界を集合的に描写したグラフィカルシーンを示すソースグラフィックデータを生成し、各グラフィカルシーンは少なくとも前記仮想世界の一部を記述し、
（ｂ）ゲーム参加者をグラフィカルシーンの各々に関連付け、
（ｃ）動画データストリームを生成するために、第１のグラフィカルシーンについて共有描画動作を実行し、前記共有描画動作は、共有描画エンジンにより前記第１のグラフィカルシーンに関連付けられたゲーム参加者について共通であり、
（ｄ）前記第１のグラフィカルシーンに関連付けられたゲーム参加者のゲーム端末に、前記動画データストリームを送信する方法。
【請求項２４】
前記ゲーム参加者は、各ゲームキャラクタに関連付けられたゲームプレイヤを含む請求項２３に記載の方法。
【請求項２５】
前記ゲーム参加者は、観戦者を含む請求項２３に記載の方法。
【請求項２６】
少なくとも前記仮想世界におけるゲームプレイヤに関連付けられたゲームキャラクタの位置に基づいて、ゲームプレイヤを各グラフィカルシーンに関連付けることを含む請求項２４に記載の方法。
【請求項２７】
ゲームプレイヤに関連付けられたゲームキャラクタが特定のグラフィカルシーンにより記述された前記仮想世界内の一部に現れる場合に、該ゲームプレイヤを該特定のグラフィカルシーンに関連付けることを含む請求項２４に記載の方法。
【請求項２８】
ゲームプレイヤをグラフィカルシーンに関連付けた動的更新リストを機械読み取り可能な記録装置に保持することを含む請求項２４に記載の方法。
【請求項２９】
第１のグラフィカルシーンにより示される前記仮想世界の位置から第２のグラフィカルシーンにより示される前記仮想世界の異なる位置へのゲームキャラクタの移動に応じて、該ゲームキャラクタに関連付けられたゲームプレイヤの前記第１のグラフィカルシーンへの関連付けを外し、該ゲームキャラクタに関連付けられたゲームプレイヤを前記第２のグラフィカルシーンに関連付ける請求項２８に記載の方法。
【請求項３０】
前記グラフィカルシーンは、前記仮想世界の相互排除的な部分を示す請求項２４に記載の方法。
【請求項３１】
２以上の前記グラフィカルシーンは、部分的にオーバーラップする前記仮想世界の各部分を示す請求項２４に記載の方法。
【請求項３２】
（ａ）前記第１のグラフィカルシーンは、前記第２のグラフィカルシーンと共有されない第１の部分と、前記第２のグラフィカルシーンと共有される第２の部分とを有し、
（ｂ）前記第２のグラフィカルシーンは、前記第１のグラフィカルシーンと共有されない第３の部分を有し、
（ｃ）前記方法は、前記第１の部分から前記第２の部分へのゲームプレイヤに関連付けられたゲームキャラクタの移動に応じて、該ゲームキャラクタの前記第１のグラフィカルシーンへの関連付けを外し、該ゲームプレイヤを前記第２のグラフィカルシーンに関連付ける請求項２９に記載の方法。
【請求項３３】
（ａ）前記第１のグラフィカルシーンは、前記第２のグラフィカルシーンと共有されない第１の部分と、前記第２のグラフィカルシーンと共有される第２の部分とを有し、
（ｂ）前記第２のグラフィカルシーンは、前記第１のグラフィカルシーンと共有されない第３の部分を有し、
（ｃ）前記方法は、ゲームキャラクタが前記第１の部分から前記第２の部分に移動した場合に、前記第１のグラフィカルシーンに関連付けられたゲームプレイヤを維持する請求項２９に記載の方法。
【請求項３４】
前記仮想世界は、観戦者に関連付けられたキャラクタを有さない請求項２５に記載の方法。
【請求項３５】
観戦者に関連付けられた端末における観賞設定情報を受信し、少なくとも前記観賞設定情報に基づいて該観戦者にグラフィカルシーンを関連付けることを含む請求項２５に記載の方法。
【請求項３６】
前記観賞設定情報は、前記仮想世界における特定のゲームキャラクタを識別し、
前記方法は、前記特定のゲームキャラクタに関連付けられたプレイヤが関連付けられているグラフィカルシーンに前記観戦者を関連付けることを含む請求項３５に記載の方法。
【請求項３７】
前記観賞設定情報は、前記仮想世界における特定の位置を識別し、
前記方法は、前記特定の位置を描画するグラフィカルシーンに前記観戦者を関連付けることを含む請求項３５に記載の方法。
【請求項３８】
前記観賞設定情報は、ゲームアクションパラメータを記述し、
前記方法は、前記観賞設定情報に合致するアクションパラメータを含むグラフィカルシーンに前記観戦者を関連付けることを含む請求項３５に記載の方法。
【請求項３９】
前記観戦者の前記観賞設定情報内のゲームアクションパラメータに合致するゲームアクションパラメータをいずれのグラフィカルシーンが含むかを決定するために、該観戦者の観賞設定情報に記述されたゲームアクションパラメータと、ゲームがプレイされるように開発されたゲームアクションパラメータとを比較し、そのように決定されたグラフィカルシーンに該観戦者を関連付けることを含む請求項３８に記載の方法。
【請求項４０】
特定のグラフィカルシーン用の前記ゲームアクションパラメータは、該特定のシーンにおいて単位時間あたりに殺されたゲームキャラクタの数、単位時間あたりの軍事出費率、該特定のシーンにおける単位時間あたりの爆発の数、及び特定のシーンに存在しているゲームキャラクタの数で構成されるグループから選択される請求項３９に記載の方法。
【請求項４１】
前記観戦者が観賞設定情報を入力可能なグラフィカルユーザインタフェース（ＧＵＩ）を、該観戦者に関連付けられた端末において生成することを含む請求項３５に記載の方法。
【請求項４２】
前記ＧＵＩは、前記観戦者が１体を選択可能な前記仮想世界内の複数のゲームキャラクタを示しており、
ゲームキャラクタの選択に応じて、選択されたゲームキャラクタを示す観賞設定情報を生成する請求項４１に記載の方法。
【請求項４３】
前記ＧＵＩは、前記観戦者が１つの位置を選択可能な前記仮想世界内の複数の位置を示しており、
位置の選択に応じて、選択された位置を記述する観賞設定情報を生成する請求項４１に記載の方法。
【請求項４４】
前記ＧＵＩは、前記観戦者が１以上を選択可能な複数のゲームアクションパラメータを示しており、
１以上のゲームアクションパラメータの選択に応じて、選択されたゲームアクションパラメータを記述する観賞設定情報を生成する請求項４１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンラインビデオゲームのような共有描画エンジンを用いてビデオゲームを制御するサーバ装置に関する。また本発明は、ビデオゲーム内のグラフィカルシーンの共有描画を実行する方法に関する。
【背景技術】
【０００２】
オンラインビデオゲームは、ますます大衆的になってきている。オンラインビデオゲームインフラストラクチャは、ビデオゲームを制御し、インターネット等のデータネットワークにより複数の端末に接続されたサーバ装置を用いる。ゲーム参加者は、端末を介してビデオゲームと情報のやり取りを行う。
【０００３】
サーバ装置は、特にゲームに関与するプレイヤの数が多い場合に、多大な計算リソースを必要とする。従来のサーバアーキテクチャは、ゲームロジックを実行するために必要なリソースを各プレイヤに割り当て、画像描画を実行する。この方式では、画像描画は各プレイヤについて分離して実行される。
【０００４】
特に高画質が要求されるような画像描画動作は、計算的に大規模である。数百あるいは数千のプレイヤが関与する場合、要求を満たすために多大なリソースが割り当てられる必要がある。
【０００５】
故に、画像描画動作をより効率的に実行可能な新たなサーバ装置アーキテクチャの開発は、産業におけるニーズがある。
【発明の概要】
【０００６】
以下に具体化されて概要的に記載されるように、発明は複数の端末の各々においてゲーム参加者が観賞可能なビデオゲームを制御するサーバ装置を提供する。サーバ装置は、各々が仮想世界の少なくとも一部を記述するグラフィカルシーンを伝え、ゲームキャラクタを有する仮想世界を集合的に示す、ソースグラフィックスデータを生成するためにゲームエンジンを有する。またサーバ装置は、関連するグラフィカルシーンにゲーム参加者をリンクし、動画イメージデータストリームを生成するために共有描画動作を実行する共有描画エンジンを有し、共有描画動作は共有描画エンジンにより特定のグラフィカルシーンにリンクされたゲーム参加者について共通である。
【０００７】
また、以下に具体化されて概要的に記載されるように、発明は複数の端末の各々においてゲーム参加者により観賞可能なビデオゲームにおけるソースグラフィックスデータの共有描画を実行する方法を提供する。方法は、ゲームキャラクタを有する仮想世界を集合的に示し、各々が仮想世界の少なくとも一部を記述するグラフィカルシーンを伝えるソースグラフィックスデータを、ゲームエンジンを用いて生成することを含む。さらに方法は、各グラフィカルシーンにゲーム参加者をリンクすること、及び動画データストリームを生成するために共有描画動作を実行することを含み、共有描画動作は共有描画エンジンにより特定のグラフィカルシーンにリンクされたゲーム参加者について共通である。
【図面の簡単な説明】
【０００８】
【図１】オンラインビデオゲームインフラストラクチャのブロック図
【図２】図１のサーバ装置の、より詳細なブロック図
【図３】様々なゲームシーン及びゲームキャラクタを描画する、オンラインビデオゲームの仮想世界のレイアウトを示した図
【図４】図１及び２のサーバ装置で用いられる共有描画エンジンのアーキテクチャを示したブロック図
【図５】ゲーム参加者とグラフィカルシーンとの間の関連付けを決定するための、共有描画エンジンにより実行される処理のフローチャート
【図６】観賞設定を利用することによりゲーム参加者とグラフィカルシーンとの間の関連付けを決定する、共有描画エンジンにより実行される別の処理のフローチャート
【発明を実施するための形態】
【０００９】
具体的かつ非限定的な実装例において、本発明はオンラインビデオゲームを制御するサーバ装置を提供する。図１は、オンラインビデオゲームを実行するデータ通信インフラストラクチャを示している。該インフラストラクチャは、データネットワーク１２を介して個人のゲーム端末１４に接続するサーバ装置１０を含む。データネットワーク１２は、インターネットであってよい。
【００１０】
参加者は、端末１４を介してゲームとやり取りを行う。「ゲーム参加者」または略して「参加者」との表現は、ゲームプレイヤまたは観戦者を指す。１人のゲームプレイヤは、ゲームが描画する仮想世界内の１体のゲームキャラクタに関連付けられた個人である。通常、プレイヤは他のゲームプレイヤまたはゲームロジックにより制御されるゲームキャラクタと競争するために、ゲームキャラクタの移動やその他のアクションを制御することができる。一方、観戦者は仮想世界内にゲームキャラクタを有さない。観戦者は、端末１４を介してゲームプレイヤによりプレイされているビデオゲームを観賞する。なお、一般には同時に生じ得ないが、ゲームプレイヤも観賞することが可能である。例えば、プレイヤが死亡し、死亡イベント後に所定の時間が経過した後にのみ復活可能である場合、プレイヤは該アイドル期間中、観戦者となり得る。復活後、それぞれ観戦者であることを終了し、プレイヤの役割に再び就く。しかしながら、その間もずっと、それぞれゲーム観戦者であり続けてもよい。
【００１１】
サーバ装置１０の概要構造は、図２により詳しく示される。サーバ装置１０は、ビデオゲームを管理するプログラムコードを実行するために、原則的にコンピュータベースドプラットホームであり、画像描画を実行するための必要なハードウェアリソースを含む。最後に、サーバ装置１０はプログラムコード及びゲームを管理するために該プログラムコードを動作させる様々なパラメータが格納された機械読み取り可能な記録装置（不図示）を含む。機械読み取り可能な記録装置は、データを格納するあらゆるハードウェアリソースを指し、これらのリソースが単一位置に存在する、あるいはいかなる特定の方式で構成されることを示すものではない。実装の最適な形態では、機械読み取り可能な記録装置は自然界に分布する、通信リンクにより中央ユニットに接続されたリモートデータベースを含んでよい。
【００１２】
機械読み取り可能な記録装置に格納されたプログラムコードは、単一または複数の中央演算ユニット（ＣＰＵ）により実行される。関与するＣＰＵの数、種類及び構成は、発明の精神から逸脱することなく変更可能である。またサーバ装置１０は、ソースグラフィックスデータを動画データストリームに変換するための必要な画像描画リソースを含みうる。このような画像描画リソースは、グラフィックス処理ユニット（ＧＰＵ）等のより効率的な動作を実現する専用プロセッサを含む。
【００１３】
機能的な観点からすれば、サーバ装置１０は全般的なゲーム制御機能を提供するゲームエンジン１６を含む。該機能を実現するために必要なソフトウェア要素及びハードウェア要素を集合的に示すゲームエンジン１６は、動的に展開する仮想世界を生成し、ゲームプレイヤによりなされた入力に基づいて、該仮想世界内のゲームキャラクタの移動及びアクションを制御する。
【００１４】
ゲームエンジン１６は、ソースグラフィックスデータを出力する。ソースグラフィックスデータは、ゲーム参加者に示される仮想世界の数学的表現を構成する。仮想世界は広範囲に及びうるため、ソースグラフィックスデータは仮想世界の完全な表現を集合的に提供する複数のグラフィカルシーンやビューを伝える。一般に、各グラフィカルシーンは仮想世界のある一部に関連付けられている。ゲームキャラクタが仮想世界の１つの位置から他の位置に移動すると、ゲームプレイヤに示されるグラフィカルシーンは変化する。例えば、ゲームプレイヤが居住施設の部屋から隣接した部屋に移動した場合、プレイヤが観るグラフィカルシーンは、移動の錯覚を与えるように２つの部屋の境界をプレイヤが横断する際に変化する。
【００１５】
ゲームエンジン１６により生成されたソースグラフィックスデータは、プレイヤに対して表示されるゲームの仮想世界を記述する。ソースグラフィックスデータは、共有描画エンジン１８に与えられ、プレイヤが観る画像を構成する色及び明度を表現する個々の画素値を生成するように処理される情報である。一般に、ソースグラフィックスは２つの主要素を有する。第１に、画像の様々な要素の数学的記述を構成するプリミティブデータである。プリミティブデータの例は、画像メッシュをマークアップする頂点の位置を定義する頂点座標である。頂点データの別の例は、個々の頂点を特に三角形、多角形、直線のような幾何構造にするリンクである。
【００１６】
またプリミティブデータは、光強度や光源原点、シェーディング及びテクスチャリング等の情報や、Ｚ方向における様々な画像要素（image element）の相対位置のような３次元的な画像情報を伝えてもよい。
【００１７】
またプリミティブデータに加え、ソースグラフィックスは描画命令を含む。描画命令は、プリミティブデータをどのように扱うか、あるいはどのように操作するかを共有描画エンジン１８に教える基本的なコマンドである。描画コマンドの例は、ある視覚効果を生成するものや、画像フレーム内のある画像要素を１つの位置から別の位置に移動する、ある軸周りに回転させるもの等であってよい。
【００１８】
ソースグラフィックスデータは、ゲーム参加者に対して表示されるために、共有描画エンジン１８により動画データストリームに変換される。上述したように、描画動作は原則的に、数学的空間から画素値で定義される２Ｄ画像等の画像へのグラフィカル情報の変換である。エンジン１８は、少なくともいくつかの描画命令が複数のプレイヤについて再利用され、各プレイヤについての完全に独立した描画処理が回避されるため、「共有」として言及される。
【００１９】
共有描画エンジン１８は、各参加者の端末１４に送信される動画データストリームを出力する。実際には異なるプレイヤは仮想世界の異なる場所に位置するため、一連の動画データストリームは、ゲームに関与するプレイヤの数やその視点等に応じて、共有描画エンジン１８により生成される。
【００２０】
動画データストリームは、参加者端末１４での復号に適したあらゆる形式に符号化される。ＭＰＥＧ−４は使用されうる符号化形式の一例である。
【００２１】
共有描画エンジン１９の出力は、入出力インタフェース２０を用いて各参加者端末１４に向けられる。入出力インタフェース２０は、端末１４のような外部装置へのデータ送信や該外部装置からの受信を可能にするサーバ装置の様々な機能を指定する。
【００２２】
図３は、オンラインゲームが展開する仮想世界の例を示している。仮想世界は、戦場、居住施設、庭園、ゲームのスタイル及び種類に依存したその他の会場を表現し得る。仮想世界は、ゲームキャラクタが展開する限界としてゲームプレイヤに示される境界により定義される。例えば、境界は居住施設の壁により示されてよい。
【００２３】
仮想世界２２は、小領域２２ａ、２２ｂ、２２ｃ、２２ｄ及び２２ｅにさらに分割される。ゲームキャラクタ２４は、常に仮想世界２２の境界内に滞在し、通常１つの小領域から他の小領域に移動する。領域２２ａ、２２ｂ、２２ｃ、２２ｄ及び２２ｅは、個々のグラフィカルシーンにより表現される。例えば、仮想世界の領域２２ａは、該領域内のゲームキャラクタを有するゲームキャラクタ、あるいは該領域内でのアクションを観ることに興味を示している観戦者のリモート端末１４において描画される、対応するグラフィカルシーンにより表現される。
【００２４】
仮想世界２２を各グラフィカルシーンにより表現される小領域にさらに分割する方法は、設計上の選択事項であり、ゲームによって大いに変更される。実装の一例において、分割は、小領域が互いに排他的、換言すればオーバーラップしないようになされうる。図３に示される例では、領域２２ｃ、２２ｄ及び２２ｅはオーバーラップしていない。別の可能性では、小領域はある程度オーバーラップ可能である。領域２２ｂと２２ａとがこれに当たる。領域２２ａは第１の部分２６と第２の部分２８とを有し、第２の部分２８は領域２２ｂと共通である。また領域２２ｂは領域２２ｂにしかない、換言すれば他の小領域と共有されない部分３０を有する。
【００２５】
図３においてハッチングにより示される共有部分２８は、領域２２ａと２２ｂのいずれにも関連付けられるグラフィカルシーンにより表現されうる仮想世界のゾーンを表現する。換言すれば、ゲームキャラクタがゾーン２８に位置する場合、対応するリモート端末１４において領域２２ｂに関連付けられたグラフィカルシーンまたは領域２２ａに関連付けられたグラフィカルシーンを描画することにより、ゲームアクションは該ゲームキャラクタに関連付けられたゲームプレイヤに示されうる。
【００２６】
いずれのグラフィカルシーンが特定のゲームプレイヤに対して描画されるかを決定するロジックは、複数の様々なパラメータに基づいて決定されうる。このようなパラメータの１つは、仮想世界内のゲームキャラクタの位置である。例えば、ゲームキャラクタが領域２２ｅに位置する場合、該領域に関連付けられたグラフィカルシーンが、彼または彼女の端末１４において描画される。そして、ゲームキャラクタが領域２２ｅの境界内に滞在している地域で動き回る場合、ゲームキャラクタの移動を反映することを除いて、グラフィカルシーンの全体は変化しない。しかしながら、ゲームキャラクタが境界を横断し、領域２２ｄのような隣接する領域に入る場合、端末１４において描画されるグラフィカルシーンは変化し、領域２２ｄに関連付けられたグラフィカルシーンに置き換えられる。
【００２７】
この場合、１つのグラフィカルシーンから他のグラフィカルシーンに切り替えることのトリガは、特にゲームキャラクタが仮想世界の２つの隣接領域間の閾値を横断する場合のキャラクタの移動に基づく。
【００２８】
違いは、領域２２ａと２２ｂの両方に広がる部分２８のような２つの隣接領域により共有されるゾーンにゲームキャラクタが位置する場合に生じうる。この場合、第１の採り得る方策は、ゲームキャラクタが部分２８に入った際にグラフィカルシーンを切り替えることである。例えばゲームキャラクタが部分３０にいて部分２８に侵入する場合、グラフィカルシーンは領域２２ａに関連付けられたグラフィカルシーンに切り替えられる。その他の採り得る方策は、ゲームキャラクタが共有部分２８から、もはやいずれの隣接領域にも共有されない部分に移動する場合にのみグラフィカルシーンを切り替えることである。例えば、ゲームキャラクタが部分２８から部分２６に移動する場合、グラフィカルシーンの切り替えが実行される。
【００２９】
代替的に、グラフィカルシーンは、仮想世界内のある座標に関連するプレイヤの位置以外のロジックに基づいて変化する視点からの、仮想世界のビューであってもよい。例えば、ビューはゲームが展開するように進行的にシフトしてもよい。その他、ビューがプレイヤに沿って移動するように、あるプレイヤにビューを関連付けてもよい。
【００３０】
図４は、共有描画エンジン１８により実行される機能を示したブロック図である。共有描画エンジンは、描画動作の全体を管理するメインロジックモジュール３２を有する。論理モジュール３２は、ロジック３２がゲーム参加者を対応するグラフィカルシーンまたはビューに関連付ける基準において、ゲームパラメータについての情報を入力３４を用いて受信する。
【００３１】
動作は、ゲーム参加者とグラフィカルシーンとをリンクする一連のリストがサーバ装置１０の機械読み取り可能な記録装置に維持されることにより実行される。実装の具体例において、グラフィカルシーンと同数のリストが存在する。図４において、Ｎ種類のグラフィカルシーンが示されている。リスト３６はグラフィカルシーン１に関連付けられ、リスト３８はグラフィカルシーン２に関連付けられ、リスト４０はグラフィカルシーンＮに関連付けられている。
【００３２】
各リストは、対応するグラフィカルシーンに基づいて生成された動画データストリームを受信する参加者の識別子を保持する。参加者は、グラフィカルシーンに存在するゲームキャラクタを有するゲームプレイヤや、グラフィカルシーン内のゲームアクションを観ることを選択した観戦者のような、グラフィカルシーンに関連する者である。
【００３３】
参加者の識別子は、参加者を一意に識別するあらゆるデータであってよい。従って、特に参加者がゲームとやり取りする端末１４のＩＰアドレスや、参加者に関連付けられた仮想キャラクタのＩＤ等の識別子は、参加者自身に関連付けられうる。
【００３４】
ロジック３２は、参加者とグラフィカルシーンを動的に関連付け、それに応じてリスト３６、３８及び４０を編集する。動的な関連付けは、入力３４を用いて受信されるゲームパラメータを解析することにより実行される。
【００３５】
第１の採り得るパラメータは、仮想世界２２の表現である、様々なグラフィカルシーンに対応する領域が設定されうる構造化されたレイアウトを定義する仮想世界マップである。一般に、第１のパラメータは、多くの種類のゲームにおいてゲーム中変化せず、仮想世界はゲーム展開と同一に維持される。
【００３６】
しかしながら、仮想世界がアクションダイナミクスに基づいて変化し得るゲームを提供することも考えられる。この場合、入力３４を用いて受信されるパラメータは該変化を反映する。
【００３７】
第２の採り得るパラメータは、仮想世界２２内のゲームキャラクタの位置である。位置情報は、様々なキャラクタが仮想世界２２のどの領域に存在し、該ゲームキャラクタに各グラフィカルシーンを関連付けることをロジック３２に可能ならしめる。例えば、特定のゲームキャラクタがグラフィカルシーン１に対応する領域に位置する場合、該ゲームキャラクタに関連付けられた参加者の識別子は、リスト３６に入れられる。各ゲームキャラクタがグラフィカルシーンに関連付けられるように、同様の動作が各ゲームキャラクタについて実行される。
【００３８】
ゲームキャラクタとグラフィカルシーンの関連付けは、実際は動的であり、ゲームアクションダイナミクスに応じて変化する。ゲームキャラクタが仮想世界２２内で移動する場合、参加者に関連付けられたゲームキャラクタが仮想世界２２の異なるグラフィカルシーンに対応する領域に移動すると、ロジック３２は特定のゲーム参加者とグラフィカルシーンとの関連付けを変更する。実際面で、このような関連付けの変更は、ゲーム参加者の識別子が１つのリストから削除され、異なるリストに配置されることを意味する。
【００３９】
参加者とグラフィカルシーンの関連付けを決定するために用いられ得る更なるパラメータは、参加者自身により供給される観賞設定（viewing preferences）である。観賞設定は、システムにより許容された観賞オプションを特定する、参加者により提供される情報を含む。ゲームとのインタラクションの性質上、観戦者はゲームプレイヤよりも多くの観賞オプションを有する。ゲームプレイヤは仮想ゲームキャラクタを制御するため、ゲームプレイヤがその端末１４において観るグラフィカルシーンは、通常ゲームキャラクタが発見されるシーンである。一方で、観戦者は特定のゲームキャラクタに関係しておらず、アクションのいずれの部分を観るかをより自由に選択できる。
【００４０】
観戦者の場合、観賞設定は追跡する特定のゲームキャラクタの選択を含みうる。これは、選択されたゲームキャラクタが位置するグラフィカルシーンを観戦者が観ることを意味する。実際問題として、観戦者は特定のゲームキャラクタに関連付けられたゲームプレイヤと組にされ、該ゲームプレイヤと同一のリストに配置される。
【００４１】
他の採り得る観戦者の観賞設定は、特定のグラフィカルシーンの選択である。観戦者は、利用可能なグラフィカルシーンのセットから１つのグラフィカルシーンを選択でき、ロジック３２は特定のグラフィカルシーンに関連付けられたゲーム参加者のリストに観戦者を配置する。
【００４２】
観戦者が指定しうる更なる採り得る観賞設定は、アクションダイナミクスに基づいてグラフィカルシーンを観ることである。戦争ゲームの場合、観戦者は最もアクションを含んでいるグラフィカルシーンを観たいと思われる。アクションは、特に単位時間あたりの殺されたゲームキャラクタ数、単位時間あたりの爆発の数、単位時間あたりの軍事出費率、及び仮想世界２２の領域あたりのゲームキャラクタ数により定義されうる。
【００４３】
上記の全てのパラメータは、ゲームが管理されている基準においてメトリクスを構成するため、ゲームエンジン１６に存在する。これらのパラメータは、いずれのグラフィカルシーンがゲーム参加者の要求を満たすか決定するために、ゲーム参加者により供給される観賞設定情報とともにパラメータを処理するロジック３２に移される。所望のグラフィカルシーンがロジック３２により識別されると、ゲーム参加者は該グラフィカルシーンにリンクされる。
【００４４】
ゲームプレイヤの場合、観賞設定はゲームキャラクタが一時的に活動していない間のゲームイベントについて有効になるオプションを含みうる。一例として、ゲームキャラクタが死亡し、所定時間が経過した際またはゲームラウンドが終了した際にのみ復活するシチュエーションがある。これは、ゲームキャラクタが死亡するとゲームに戻れなくなるような離脱に基づくゲームラウンドのケースである。ゲームキャラクタが活動していない状態となった場合、ゲーム参加者は事実上観戦者となり、他のゲーム参加者を観続ける、仮想世界２２の特定の位置に留まる、アクションダイナミクスに基づいて選択された位置を観る等のような、より広範な観賞設定に関するオプションを有する。
【００４５】
上述した観賞設定の例が完全でなく、本発明の精神から逸脱することなく、観戦者及びゲームプレイヤの双方について多くの他の観賞設定が可能であることは読み手に理解されよう。
【００４６】
鑑賞者及びゲームプレイヤの観賞設定は各端末１４において入力される。利用可能な様々な観賞設定をゲーム参加者に提示し、ゲーム参加者が適切な選択を行うためのツールを提供するグラフィカルユーザインタフェース（ＧＵＩ）が各端末１４において生成されることにより、入力動作は可能となる。
【００４７】
ＧＵＩは、サーバ装置１０において生成され、表示用に各端末１４に送信される。特定のゲームキャラクタを追跡または追尾することを観戦者に可能ならしめるグラフィカルユーザインタフェースの例は、観戦者が選択可能なように、ゲームに現在関与しているゲームキャラクタのリスト表示を観戦者の端末１４に提供することである。該選択は、ポインティングデバイスを使用してなされうる。ゲーム内のゲームキャラクタの数が全てをリスト化することが困難なほど多い場合、グラフィカルユーザインタフェースは観戦者がゲームを観ている間に渡ってゲームキャラクタを選択可能なように構成されてもよい。例えば、ゲームアクションが動作中、観戦者は端末において表示されているゲームキャラクタを指示するためにポインティングデバイスを使用する。
【００４８】
特定のグラフィカルシーンを観賞用に選択する際、ＧＵＩは利用可能なグラフィカルシーンを示した仮想世界のマップをゲーム参加者に提示する。ゲーム参加者は示されたグラフィカルシーンの中から１つのグラフィカルシーンを選択することができる。例えば、参加者に提示されるビューは、図３に示したものと同様であってよい。該図において、仮想世界と様々なグラフィカルシーンの境界とが示される。参加者は、シーン境界内のいずれかをポインティングデバイスで「クリック」することによりグラフィカルシーンを選択する。
【００４９】
ゲーム参加者の入力を受けるＧＵＩはサーバ装置１０に情報を返送し、そして適切なグラフィカルシーンを該ゲーム参加者にリンクするようロジック３２により処理される。
【００５０】
共有描画動作は、各グラフィカルシーンについて実行される。共有描画動作は、該グラフィカルシーンに関連付けられた動的リスト内のゲーム参加者について共通である。実装の具体例では、単一の描画動作が該グラフィカルシーンについて実行され、共有描画動作の結果は該特定のグラフィカルシーンにリンクされた参加者リスト内の各参加者に送信される。グラフィカルシーン１を例にとると、共有描画動作４２は１度だけ実行され、該描画動作の結果がリスト３６内のゲーム参加者の端末１４に送信される。
【００５１】
同様の動作が、描画される全てのグラフィカルシーンについて実行される。
【００５２】
描画動作の実行に用いられる描画エンジンは、異なるグラフィカルシーンを示すソースグラフィックスデータを動画データストリームに適切に変換できるのであれば重要でない。描画動作はリアルタイムに実行される必要があるため、専用ＧＰＵを用いるハードウェアアクセラレータは有益であろう。
【００５３】
なお、「共有描画」との表現は、グラフィカルシーンモデルの全ての画像要素が必ずしも描画されないことを意味するものではない。該表現は、グラフィカルシーン内の画像要素の必ずしも全てではなく大多数が描画され、該グラフィカルシーンにリンクされた様々な参加者間で共有されることを単に意味する。
【００５４】
故に、共有描画は、グラフィカルシーン内の必ずしも全てではない複数の画像要素の描画を実行する部分的な描画動作であり得る。描画されない画像要素は、サーバ装置１０による後続の動作において描画されるか、描画動作が端末１４ロケーションにおいて完結しうる。
【００５５】
共有描画動作の出力は、ゲーム参加者に提示するために端末１４に送信される動画データストリームである。動画データストリームは、ＭＰＥＧ−４形式等のあらゆる適切な形式に符号化され、参加者端末１４において再生される。共有描画動作が、グラフィカルシーン内の描画されないいくつかの画像要素が参加者端末１４で描画するために除外され、部分的である場合、これらのオブジェクトは、送信用に、かつ各端末１４において描画モジュールにより後続の処理を行うために、適切に符号化される必要がある。
【００５６】
図５は、グラフィカルシーンに参加者をリンクするために、ロジックモジュール３２により実行される上述の処理の概要を示したフローチャートである。該処理は、仮想ゲームキャラクタを制御するゲームプレイヤ用に主に適している。ステップ４４で、ロジック３２は、仮想世界内の特定のゲームプレイヤに関連付けられたゲームキャラクタの位置を決定する。ゲームキャラクタを含む現在のグラフィカルシーンをゲームプレイヤに送信するため、該処理はゲームキャラクタの位置を継続的に追跡できるように絶えず繰り返される。ステップ４６で、前ステップで決定された位置情報に基づいて、対応するグラフィカルシーンが導出される。最後にステップ４８で、関連付けられたリストにゲームプレイヤの識別子を入力することにより、該ゲームプレイヤが該グラフィカルシーンにリンクされる。
【００５７】
図６は、ゲーム参加者がリンクされるグラフィカルシーンの選択における、観賞設定の因子に係る上述の処理の概要を示したフローチャートである。
【００５８】
ステップ５０で、ロジック３２は、ゲーム参加者により入力された観賞設定情報を取得する。該情報は、各端末１４において入力され、サーバ装置１０に返送される。ステップ５２で観賞設定情報が処理され、そしてステップ５４で該観賞詳細情報に合致するグラフィカルシーンが識別される。なお、参加者がリンクされるべきグラフィカルシーンを決定するために、観賞設定情報に加え、他のパラメータが使用されてもよい。例えば、決定は、観賞設定情報に加えて仮想世界内のゲームキャラクタの位置情報を考慮してもよい。
【００５９】
グラフィカルシーン選択の処理において追加の要素が考慮されてもよいことは、本技術分野に属する当業者であれば理解されよう。
【図１】
0005952403.tif 000002
【図２】
0005952403.tif 000003
【図３】
0005952403.tif 000004
【図４】
0005952403.tif 000005
【図５】
0005952403.tif 000006
【図６】
0005952403.tif 000007