説明

シミュレーションにおける物理的相互作用のためのシステム及び方法

オンラインコンピュータゲームにおけるオブジェクトの相互作用のようなコンピュータシミュレーションにおいて物理相互作用を管理するための技術を実施するステム及び方法を提供する。シミュレーションにおけるオブジェクトは、次に作動において物理シミュレータの規則に従って挙動する物理オブジェクトであるか又はそれになることができる。様々な実施は、品目がどのように物理オブジェクトになるか及び物理オブジェクトを管理するためにどの規則を使用するかに対して異なる規則を使用することができる。物理オブジェクト相互作用は、所定の相互作用への準拠ではなくそれらの物理特性に基づいて判断されるので、得られる相互作用は、創発的があり、台本通りではない。

【発明の詳細な説明】
【技術分野】
【0001】
関連出願への相互参照
本出願は、本明細書においてその全内容が引用により組み込まれている「シミュレーションにおける物理的相互作用」という名称の2008年7月22日出願の米国特許仮出願出願番号第61/082,679号の恩典を請求する。
【背景技術】
【0002】
大規模多人数参加型オンライン(MMO)ゲームは、大変高い人気を得ており、一部のゲームは、何十万又は何百万ものプレーヤに達している。MMOのようなシミュレーションにおける仮想オブジェクトの動き及び物理的相互作用は、開発者によって示された規則によって管理される。このような動き及び相互作用の現実感を高め、従って、プレーヤの没入度を高めるための1つの方法は、所定の(ただし変更することができる)物理的な法則に従って所定の物理オブジェクトの動きを制御する物理シミュレータ又はエンジンを利用することである。
【0003】
物理エンジンは、現実感の強化された状態を提供する。エネルギ及び運動量の保存、並びに身体の弾性変形のような2次元又は3次元における法則を利用すると、物理オブジェクトは、以前のシステムよりも期待されかつ現実感のある方法で動くように見える傾向がある。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】米国特許仮出願出願番号第61/082,679号
【発明の概要】
【課題を解決するための手段】
【0005】
本発明のシステム及び方法の実施は、シミュレーションにおける品目が物理オブジェクトになる(これは、次に、物理エンジン又はシミュレータにおける規則に従って挙動する)方法、及び同じく規則が物理オブジェクトを管理するために適用される方法を伴うものである。この実施では、物理オブジェクトの相互作用は、創発的であり、固定された規則の初期セットによって単独に指示されるものではない。
【0006】
MMOのようなシミュレーションにおける物理オブジェクトは、動くか又はいずれかの他の入力を受ける時に物理シミュレーションに基づいてそれを実行する仮想オブジェクトである。従って、これらは、シミュレーションに対して定義された仮想3次元オブジェクトのより大きなグループの部分集合とすることができる。このような物理オブジェクトに影響を与える力及びイベントは、偶然の衝突から大きな爆発に及ぶ可能性がある。物理シミュレーションの規則によって作動しないオブジェクトは、本明細書では非物理オブジェクトと呼ぶ。以下の内容では、「オブジェクト」という用語それ自体の使用は、物理オブジェクト及び非物理オブジェクトのいずれか又は両方に関するものとすることができる。
【0007】
説明する実施の一部では、物理オブジェクトは、単に事前に定義されるものではなく、プレーヤが、物理オブジェクトを作成することができ(例えば、壁に損傷を与えているプレーヤキャラクターは、物理オブジェクトになる壁フラグメントをもたらすことができる)、プレーヤは、プレーヤ自身又は他のプレーヤのプレーヤキャラクターを物理オブジェクトに変えることさえ可能である。
【0008】
特定的な例として、オンライン多人数参加型ゲームでは、プレーヤキャラクターは、壁を破壊し、続いてコンクリートの破片を取り上げ、それをドアに押し付け、これを接触時に開くことができる。非プレーヤキャラクターのグループは、次に、プレーヤキャラクターを攻撃することができる。プレーヤキャラクターは、攻撃し返し、非プレーヤキャラクターにコンクリートの別の破片を投げ、多くの方向に非プレーヤキャラクターを投げることができる。1つの非プレーヤキャラクターは、机に衝突し、部屋にわたって机を倒すことができる。このシナリオでは、コンクリートの破片は、壁から生成された動的に作られた物理オブジェクトである。非プレーヤキャラクターは、空中に投げだされた時に物理オブジェクトになり、机も物理オブジェクトである。
【0009】
相乗的かつ創発的効果は、これらの物理オブジェクトの相互作用から生じる場合があり、この効果は事前に定義されていないが、逆に物理オブジェクトの特性自体の相互作用から生じる。一例として、プレーヤキャラクター「A」がプレーヤキャラクター「B」を氷のブロックに凍らせる。プレーヤキャラクターCは、電気でブロックを充電する。次に、プレーヤキャラクターAは、ブロックを取り上げ、感電死し、ブロックは破壊され、プレーヤキャラクターBを解放する。
【0010】
これらの相乗的かつ創発的効果を達成するために、物理オブジェクトは、基本パラメータ、例えば、サイズ、形状、密度、条件、例えば、移動可能又は不動、損傷された又は破壊された条件、及びゲーム効果、例えば、物理オブジェクトに適用されるゲーム機構に関連付けられる。物理オブジェクトは、「武器化」することができ、この場合、物理オブジェクトは、敵のプレーヤキャラクターを攻撃するために使用することができる。聴覚及び視覚効果、例えば、表面損傷、粒子、及び音声は、物理オブジェクトに更に添付することができる。
【0011】
ゲーム環境は、物理オブジェクトの使用程度及び従ってそれに続く破壊性において変えることができる。象徴的な建物のような一部のオブジェクトは、「硬い幾何学的形状」を有することができ、このようなオブジェクトは、移動不能かつ破壊不能であるが、それは、一時的な表面損傷を示すことができる。「柔らかい幾何学形状」を有する他のオブジェクトは、衝突した場合に動くことができ、完全に破壊することさえできる。オブジェクトのこれらのタイプは、時間の経過と共にそれ自身で修復することができる。プレーヤ指示で発生するインスタンスは、これが所定のプレーヤ又はプレーヤのグループに対して個人的かつ独特な環境であることが意図されている場合に、より破壊し易いものとすることができる。これらの場合には、このインスタンスをリセットすることができ、全ての物理オブジェクトは、次のプレーヤが新たに体験することができるように、そのオリジナル条件に復元することができる。
【0012】
多くの変形が可能である。例えば、物理相互作用のタイプは、ゲーム毎に変えることができ、一部は、高いレベルの現実感を要求することになるが、他のものは、より多くのアニメの現実性を表現することができる。
【0013】
1つの態様では、本発明は、シミュレーションにおける仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令を含むコンピュータ可読媒体に関連する。本方法は、シミュレーションにおける仮想3次元オブジェクトの部分集合を物理オブジェクトとして定義する段階と、物理オブジェクトの第1のものに対して第1の値及び第1のタイプによって特徴付けられる少なくとも第1の基本パラメータ及び第1の状態を定義する段階と、物理オブジェクトの第2のものに対して第2の値と第1のタイプとは異なる第2のタイプとによって特徴付けられる少なくとも第2の基本パラメータ及び第2の状態を定義する段階と、相互作用の結果が少なくとも部分的に第1及び第2パラメータ及び第1及び第2の状態に依存する物理オブジェクトの第1及び第2のものの間の少なくとも1つの相互作用を定義する段階と、信号をレンダリング器に送信して相互作用の結果の指示をレンダリングする段階とを含む。
【0014】
本発明の実施は、以下の1つ又はそれよりも多くを含むことができる。少なくとも1つの相互作用を定義する段階は、第1及び第2のオブジェクト間で検出される衝突の発生によって引き起こすことができる。少なくとも1つの相互作用を定義する段階は、第1又は第2のオブジェクトのいずれかとプレーヤキャラクター又は非プレーヤキャラクターによって向けられた発射物との間の衝突の発生によって引き起こすことができる。この少なくとも1つの状態は、移動可能、移動不能、損傷を受けた、破壊された、又は添付されたから構成されるグループから選択することができる。シミュレーションは、多人数参加型オンラインゲームとすることができる。第1又は第2の物理オブジェクトの少なくとも一方は、プレーヤキャラクター又は非プレーヤキャラクターとすることができる。本方法は、第1又は第2の物理オブジェクトの少なくとも一方を柔らかい幾何学形状を有するものとして定義する段階を更に含むことができ、柔らかい幾何学形状を有する物理オブジェクトの状態が損傷を受けた場合、本方法は、この物理オブジェクトを少なくとも2つの物理オブジェクト又は少なくとも1つの物理オブジェクトと1つの非物理オブジェクトで置換する段階を更に含む。本方法は、第1又は第2の物理オブジェクトの少なくとも一方を硬い幾何学形状を有するものとして定義する段階を更に含むことができ、硬い幾何学形状を有する物理オブジェクトの状態が損傷を受けた場合、本方法は、硬い幾何学形状を有する物理オブジェクトへの損傷影響をレンダリングする段階を更に含む。第1及び第2のタイプは、重量、サイズ、形状、密度、及び伝導性から構成されるグループから選択することができる。相互作用の結果は、オブジェクト規則セット又はルックアップテーブルによって判断することができる。本方法は、物理オブジェクトとして以前に定義されていなかった仮想3次元オブジェクトの1つから物理オブジェクトを定義する段階を更に含むことができる。この定義された物理オブジェクトは、プレーヤキャラクターとすることができる。定義された物理オブジェクトは、武器として定義された状態を有することができる。少なくとも1つの相互作用を定義する段階は、少なくとも1つの規則セットを定義する段階を含むことができ、この規則セットは、共通のタイプを有する基本パラメータを有する物理オブジェクトに関するものである。本方法は、物理オブジェクトの少なくとも1つに対する少なくとも1つのゲーム効果を定義する段階を更に含むことができ、トリガが起こった場合に、ゲーム効果が発生する。本方法は、物理オブジェクトの少なくとも1つに対する少なくとも1つの聴覚又は視覚効果を定義する段階を更に含むことができ、トリガが起こった場合に、聴覚又は視覚効果がレンダリングされる。
【0015】
別の態様では、本発明は、シミュレーションにおける仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令を含むコンピュータ可読媒体に関連する。本方法は、シミュレーションにおける仮想3次元オブジェクトの部分集合を物理オブジェクトとして定義する段階と、物理オブジェクトの第1のものに対して第1の値及び第1のタイプによって特徴付けられる少なくとも第1の基本パラメータ及び第1の状態を定義する段階と、トリガの発生時に物理オブジェクトの第1のものが第1の状態から第2の状態に遷移され、遷移の結果が少なくとも部分的に第1のパラメータ及び第1の状態に依存する少なくとも1つのトリガを定義する段階と、信号をレンダリング器に送信して遷移の結果の指示をレンダリングする段階とを含む。
【0016】
本発明の実施は、以下の1つ又はそれよりも多くを含むことができる。トリガは、プレーヤキャラクター又は非プレーヤキャラクターが物理オブジェクトの第1のものに触れること、プレーヤキャラクター又は非プレーヤキャラクターが物理オブジェクトの第1のものに損傷を与えること、プレーヤキャラクター又は非プレーヤキャラクターが物理オブジェクトの第1のものを取り上げたこと、プレーヤキャラクター又は非プレーヤキャラクターが物理オブジェクトの第1のものを投げたこと、又は所定の台本通りのイベントから構成されるグループから選択することができる。少なくとも1つのトリガを定義する段階は、プレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトによって引き起こすことのできる少なくとも1つのトリガを定義する段階を含むことができ、トリガイベントに対して少なくとも1つの限定子を定義する段階を更に含むことができ、少なくとも1つの限定子を定義する段階は、どのプレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトに遷移を引き起こすことを許すか、又はいつ遷移の発生を許すかを定義する段階を含む。シミュレーションは、MMOとすることができる。
【0017】
更に別の態様では、本発明は、シミュレーションにおける仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令を含むコンピュータ可読媒体に関連する。本方法は、非物理オブジェクトとしてシミュレーションにおける少なくとも1つの仮想3次元オブジェクトを定義する段階と、トリガの発生時に少なくとも1つの仮想3次元オブジェクトの遷移が物理オブジェクトである少なくとも1つのトリガを定義する段階と、信号をレンダリング器に送信して遷移の結果の指示をレンダリングする段階とを含む。
【0018】
本発明の実施は、以下の1つ又はそれよりも多くを含むことができる。トリガは、プレーヤキャラクター又は非プレーヤキャラクターが仮想3次元オブジェクトに触れること、プレーヤキャラクター又は非プレーヤキャラクターが仮想3次元オブジェクトに損傷を与えること、プレーヤキャラクター又は非プレーヤキャラクターが仮想3次元オブジェクトを取り上げること、プレーヤキャラクター又は非プレーヤキャラクターが仮想3次元オブジェクトを投げること、又は所定の台本通りのイベントから構成されるグループから選択することができる。少なくとも1つのトリガを定義する段階は、プレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトが引き起こすことのできる少なくとも1つのトリガを定義する段階を含むことができ、トリガに少なくとも1つの限定子を定義する段階を更に含むことができ、少なくとも1つの限定子を定義する段階は、どのプレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトに遷移を引き起こすことを許すか、又はいつ遷移の発生を許すかを定義する段階を含む。
【0019】
更に別の態様では、本発明は、シミュレーションにおいて仮想3次元オブジェクトを管理するためのシステムを含むコンピュータ可読媒体に関連し、媒体は、以下のモジュール、すなわち、オブジェクトが部分的に状態によって定義される物理オブジェクトを含む複数の仮想オブジェクトに関するデータを格納するためのデータベースモジュールと、第1の状態から第2の状態へのオブジェクトの遷移を定義するためのトリガ定義モジュールを含む物理エンジンモジュールとを含む。
【0020】
本発明の実施は、以下の1つ又はそれよりも多くを含むことができる。第1の状態を非物理オブジェクトとすることができ、第2の状態を物理オブジェクトとすることができる。
【0021】
更に別の態様では、本発明は、シミュレーションにおける仮想3次元オブジェクトを管理するためのシステムを含むコンピュータ可読媒体に関連する。媒体は、以下のモジュール、すなわち、部分的に状態によって定義される物理オブジェクトを含む複数の仮想オブジェクトに関するデータを格納するためのデータベースモジュールと、物理オブジェクト間又は物理オブジェクトと非物理オブジェクト間の相互作用を定義するための相互作用定義モジュール及び物理オブジェクト間又は物理オブジェクトと非物理オブジェクト間の相互作用の結果を定義するためのオブジェクト規則セットを含む物理エンジンモジュールとを含む。本発明の実施は、オブジェクト規則セットをルックアップテーブルとすることができることを含むことができる。上述の様々な定義する段階は、ある一定のオブジェクトに対しては開発中に及び他のものに対してはゲーム競技又はゲーム起動中に実行することができる。
【0022】
本発明の利点は、以下の1つ又はそれよりも多くを含むことができる。物理オブジェクトは、単に事前に定義されるのではなく、オブジェクトは、ゲーム競技中に物理オブジェクトに遷移することができる。規則は、どのオブジェクトが物理オブジェクトか、及び遷移がどのように起こるかを定義する。規則はまた、物理オブジェクトが互いにどのように相互作用するかを定義する。得られるゲーム競技は、相乗的かつ創発的とすることができ、かつ予測しない結果をもたらすことができる。
【図面の簡単な説明】
【0023】
【図1】シミュレーション例えば多人数参加型ゲームの例示的な環境を示し、更に、創発的にどのように物理オブジェクトを発生させて他の物理オブジェクトと相互作用させることができるかを示す図である。
【図2】クライアントサーバアーキテクチャを含む多人数参加型ゲームのようなシミュレーションを実施するために利用することができるシステムの論理図である。
【図3】物理オブジェクトのような仮想オブジェクトの部分的なデータ構造を示す図である。
【図4】物理オブジェクト相互作用を実施する方法の流れ図である。
【図5】物理オブジェクト相互作用を実施する別の方法の流れ図である。
【図6】非物理オブジェクトから物理オブジェクトを作成する方法の流れ図である。
【発明を実施するための形態】
【0024】
図1を参照すると、シミュレーション、例えば、多人数参加型ゲームの例示的な環境が示されている。この環境は広く変えることができ、例えば、ファンタジーシミュレーション、サイエンスフィクションシミュレーション、スペースシミュレーション、現実世界シミュレーション、都市シミュレーション、世界終末シミュレーション、スーパーヒーローシミュレーション、及びオフラインゲームなどとすることができる。図1の例示的なシミュレーションは、いくつかのキャラクター32、33、34、及び35を示し、ゲーム環境20内で様々な通り31及び37を横断する同じキャラクターが示されている。図1では、キャラクター32、33、及び35は、プレーヤによって操作されるプレーヤキャラクター(図では「PC」)を表現するものとする。同じキャラクターが、他のプレーヤのプレーヤキャラクター、並びにコンピュータ制御のキャラクター、又は非プレーヤキャラクター(図では「NPC」)と対話する。キャラクター34は、シミュレーション又はゲームエンジンによって制御される非プレーヤキャラクターを表現するものとする。すなわち、非プレーヤキャラクターは、サーバレベルで又はクライアントソフトウエアによってのいずれかでシミュレーションによって制御され、非プレーヤキャラクターは、その非プレーヤキャラクターのためのソフトウエア命令及びデータセットによって命じられるように行動する。プレーヤは、非プレーヤキャラクター又は非プレーヤキャラクターに関連付けられたアイコンをクリック又はそうでなければ起動することにより、非プレーヤキャラクター34と対話することができる。
【0025】
銀行22、市庁舎24、コンビニエンスストア26、及び個人の家28のようないくつかの都市の特徴も示されている。これらの特徴は、利用可能なゲーム環境に従って変わることになる。都市の特徴は、これに関連付けられた形状の所定のタイプを有し、これらの形状は、部分的に物理オブジェクトとのその相互作用にどのように反応するかを定義する。特定の都市の特徴は、それ自体を物理オブジェクトとすることができる。図1では、象徴的な建物のようなこのような仮想オブジェクトが、プレーヤ対話に必要とされ、一定したゲーム競技のために存在する必要があるので、銀行22及び市庁舎24は各々「硬い」形状を有し、及び従って一般的には移動しない破壊できないものである。硬い幾何学形状の構造及びエリアは一定した位置を有し、これらは、一般的に衝突又は損傷の結果として位置を変えることはない。それにも関わらず、このような硬い幾何学形状の特徴に対してプレーヤキャラクター、非プレーヤキャラクター、又は他の仮想オブジェクトが損傷を与えようにとした状態で、このような硬い幾何学形状の特徴は、一時的な表面の損傷を示すことがあるが、一般的には環境における永久的な固定物を今まで通り表している。特定的な例として、悪者のプレーヤキャラクター32は、強盗を働くために銀行22を破壊しようとすることができる。プレーヤキャラクター32は、銀行22を襲撃し、銀行の壁に亀裂を入れて損傷を残すことができるが、銀行22は、破壊されることはない。この例では、硬い幾何学形状を有する銀行22は、同じ位置に常に留まり、銀行に加えられた損傷にも関わらず同じ構造を有することになる。
【0026】
一方、コンビニエンスストア26及び個人の家28の各々は、柔らかい幾何学形状を有し、これは、1つの実施では、特徴の破壊又は損傷がゲーム競技を大幅に中断することなく達成することができるので、コンビニエンスストア26及び個人の家28が損傷を受けるか又は衝突された場合に移動することができ、かつ完全に破壊することさえできることを意味する。これらの損傷又は破壊は、物理オブジェクトの構成部分から物理オブジェクトの作成をもたらすことができる。1つの実施では、柔らかい幾何学形状のオブジェクトが破壊された場合、損傷を伝えるために異なるタイプの破片を作成する。この破片は、その存在がつかのまのものである粒子、及び持続することができる物理オブジェクトとすることができる。上述の実施例では、悪者のプレーヤキャラクター32は、銀行22に入り窓口のカウンタの背後で壁に沿って金庫を探し当てることができる。悪者のプレーヤキャラクター32は、カウンタを銃で撃ち、穴を開け瓦礫を後に残すことができる。この例では、銀行22が硬い幾何学形状を有するとしても、カウンタは、損傷を受けた後に破壊され、木の塊りのような形態で物理オブジェクトを発生させる柔らかい幾何学形状である。
【0027】
勿論、柔らかい幾何学形状を有する特徴及び硬い幾何学形状を有する特徴の選択は、完全に任意であり、開発者の要件に依存する。一部の実施では、ある一定の種類の全てのオブジェクトに同じタイプの形状を持たせることを要求することができる。このようにして、競技の行動を通して、プレーヤは、オブジェクトがどのように損傷を受けるか及びどのオブジェクトを破壊することができるかを学ぶことになる。
【0028】
図1はまた、様々な潜在的な物理オブジェクト、特に、車36、バス38、及び壁42を示している。壁42は、柔らかい幾何学形状を有し、従って、損傷を受けるか又は破壊することができる。図1は、この態様を示し、一般的な矢印の方向47への爆風又は他の破壊力に続いて、現在分離されている構成要素42’、43、及び45を有する破壊された構成の壁を示している。壁42は、破壊の前に物理オブジェクトにしておくことができ、衝突が検出された状態で、壁を物理オブジェクトに変えることができる。同様に、構成要素42’、43、及び45の1つ又は全ては、必ずしも必要ではないが、物理オブジェクトとしてフラグを立てるか又は分類することができる。例えば、壁の構成要素42’は、非物理オブジェクトとして分類することができるが、構成要素43及び45は、物理オブジェクトとして分類することができる。壁の構成要素43及び45はまた、武器にすることができ、すなわち、別のプレーヤキャラクター又は非プレーヤキャラクターに損傷を引き起こすことができる武器として分類又はフラグを立てることができる。矢印47はまた、プレーヤキャラクター35が、非プレーヤキャラクター34に当てるために構成要素43及び45の一方又は両方を投げることができる方向を表すことができる。
【0029】
車36及びバス38も物理オブジェクトとすることができ、図1は、プレーヤキャラクター32が矢印49で示す方向に車36をどのように投げ、車36が銀行22に当たるようにし、車36’によって指示された損傷を受けるか又は破壊された構成でどのように停止するかを非常に略式の方法で示している。この衝撃は、銀行22に一時的な表面の損傷を引き起こすことができるが、この損傷は、急速に回復することができ、このような硬い幾何学形状の構造の作動に影響を与えることはない。
【0030】
一部のシミュレーションでは、品目及び環境の破壊は、珍しくないことになり、この結果、これらの相互作用の処理は、シミュレーション及びユーザの体験の重要な部分になる。例えば、超悪者又は巨大なモンスターキャラクターを有するプレーヤは、たくさんの破片及び車の壊れた破片の作成を要求することができる。
【0031】
物理オブジェクトの相互作用のこれらの及び他の態様は、図3−5に関して以下に説明する。
【0032】
図2は、多人数参加型ゲームのようなシミュレーションを実施するために利用することができるシステム30の論理図を示している。システム30は、ネットワーク48によって通信するMMO又はシミュレーションクライアントコンピュータデバイス71及びMMO又はシミュレーションサーバ64を含む。クライアントコンピュータデバイス71は、ネットワークカード46を通じて又はネットワーク対応プロセッサ(図示せず)を通じてネットワーク48と通信する1つ又はそれよりも多くのプロセッサ44を含む。クライアントコンピュータデバイス71は、ネットワーク48及びサーバ64とのコミュニケーションを可能にするクライアントソフトウエアを実行させる。
【0033】
クライアントコンピュータデバイス71は、キーボード、マウス、ゲームコントローラ、触覚コントローラ、タッチスクリーン、又はコンピュータに入力を提供することができるあらゆる他のデバイスを含むことができる少なくとも1つの入力デバイス67を含む。クライアントコンピュータデバイス71は、シミュレーション、例えばMMOのクライアント作動のための命令を含むプロセッサ44のための命令65を格納するハードドライブ、フラッシュメモリ、固体ドライブなどのようなコンピュータ可読媒体69を更に含む。
【0034】
コンピュータ可読媒体69はまた、グラフィックファイル及び映画ファイルを含むメディアファイルを格納することができる。これらのメディアファイルはまた、サーバ64から要求された時にストリーミングすることができる。一部の実施では、ある一定のメディアファイル、特に、使用されることが多いメディアファイルは、クライアントにダウンロードすることができ、それ以外は、クライアントシステムが混乱しないように、後でストリーミングするためにサーバに保持しておくことができる。プレーヤキャラクターの当座のゲーム設定に関するようなある一定のメディアファイルも、クライアントシステムにおいてキャッシュに入れることができる。
【0035】
クライアントコンピュータデバイス71はまた、サウンドカードのようなサウンドレンダリング器64を含み、それによってゲームサウンドに関する信号は、コンピュータスピーカのようなサウンドデバイス68で再生するのに適する形式にしておくことができる。更に、クライアントコンピュータデバイス71はまた、1つ又はそれよりも多くのGPU又はビデオカード、又はその両方のようなビデオレンダリング器66を含み、それによってゲームビデオに関する信号は、コンピュータディスプレイのようなビデオデバイス72で再生するのに適する形式にしておくことができる。ビデオレンダリング器66はまた、例えば、内蔵のグラフィックを含むことができる。
【0036】
シミュレーションサーバ64は、ゲームを制御し、1つ又はそれよりも多くのプロセッサ63を有し、かつゲームエンジンとユーザインタフェース及び入力/出力構成要素などを含む他の構成要素とを実行するゲームサーバとすることができる。サーバ64はまた、物理エンジン60のようなモジュール、及び部分集合57が物理オブジェクトである仮想オブジェクト58のデータベースを含む。これらの構成要素又はモジュールのある一定のものは、これら及び他の処理を実行するための命令を含むコンピュータ可読媒体62に実施することができる。コンピュータ可読媒体62はまた、クライアントコンピュータデバイス71にダウンロード又はストリーミングするための映画及び他のグラフィックファイルを含むメディアファイルを含むことができる。
【0037】
物理エンジン60は、各々を同じか又は異なるコンピュータ可読媒体62に格納することができるいくつかのモジュール又は構成要素を更に含むことができる。物理エンジンの一部分は、カリフォルニア州サンフランシスコ所在の「Havok、Inc.」から市販されている物理シミュレータソリューションを含むことができる。最初に、オブジェクト状態が、例えば、非物理オブジェクトから物理オブジェクトに変わることを許される状況を判断及び定義するために、トリガ定義モジュール55を利用することができる。どの仮想オブジェクトを判断して制限するか、例えば、どのプレーヤキャラクター又は非プレーヤキャラクターに物理オブジェクト又は非物理オブジェクトの状態を変化させることが許されるか、並びにいつこのような変化の発生が許されるかを判断するために、トリガ定義モジュール55の一部として限定子定義モジュール56を利用することができる。トリガは、物理オブジェクト又は非物理オブジェクトの状態を変えるために利用することができ、非物理オブジェクトを物理オブジェクトに又は同じくその逆に変えるために更に利用することができる。
【0038】
相互作用定義手段59は、2つ又はそれよりも多くのオブジェクト、例えば、2つの物理オブジェクト、2つの非物理オブジェクト、又は物理オブジェクトと非物理オブジェクトが相互作用し、かつ従って結果を判断するために計算を要求する時間を判断して定義するために利用することができる。
【0039】
非物理オブジェクトが物理オブジェクトになるために及び同じくその逆に遷移する方法及び時間を判断及び/又は定義するために、同じく相互作用されたオブジェクトの結果、例えば、物理オブジェクトが互いに相互作用し、物理オブジェクトと非物理オブジェクト及び物理オブジェクトと環境が相互作用した結果を判断及び/又は定義するために、1つ又はそれよりも多くのオブジェクト規則セットを備えたモジュール61を利用することができる。相互作用の結果を判断する場合に利用される1つのこのような例示的な規則では、運動量が衝突において保存されるものとすることができる。ルックアップテーブル54はまた、他の結果のあらゆる数を定義するためにオブジェクト規則セットモジュール61の一部として利用することができ、例示的なルックアップテーブルを以下のテーブルIに示している。例えば、稲妻ボルトがプレーヤキャラクターに投げられた場合、稲妻ボルト武器の特徴は、プレーヤキャラクターが感電死のために損傷を受けるようにテーブルに定義することができる。ルックアップテーブルはまた、プレーヤキャラクターの衣服及び皮膚が同じくやけどによる損傷を受けることになると定義及び判断することができる。これらのモジュールの能力を以下に詳細に説明する。
【0040】
シミュレーションのタイプに応じて、異なる規則セットを利用することができる。より現実感のある物理モデルは、まじめな車シミュレーションのために要求することができ、一方、より精力的かつ「楽しみ」モデルは、アニメ様式の現実感を反映するゲームにより適している。しかし、オブジェクトがどのように物理オブジェクトになることができるか及び次にオブジェクトが他のオブジェクト及びゲームのプレーヤとどのように相互作用するかを定義することにより、ゲームオブジェクトの相互作用は、柔軟性があるものになり、プレーヤの満足度を高めることになる。
【0041】
図3は、物理オブジェクトの部分的なデータ構造40である。非物理オブジェクトは、類似のデータ構造を有することができる。模擬された環境でオブジェクトが相互作用する方法は、その基本パラメータ、条件、及び条件に適用されるゲーム効果、及び他のファクタ、例えば、これらが武器として使用される場合、すなわち、これらが「武器化」された場合を含む表示される時のいくつかのファクタに基づいている。
【0042】
基本パラメータは、物理オブジェクトをプレーヤが予測するようにこれらが見えて行動するように制御するのに使用される。類似の力がかけられた場合に異なる物理オブジェクトがどのように反応するかという例として、スーパーヒーロープレーヤキャラクターが倉庫の中でストリートギャングを追い回している場合、このキャラクターは、多数の大きな輸送のための木枠を投げつけ、これを周りに当てることができる。ペンキバケツのようなより小さなオブジェクトは、乱暴に蹴り飛ばすことができ、ビンのようなより小さなオブジェクトも衝撃で粉砕することができる。これらのオブジェクトは、その基本パラメータにおいて異なり、従って、衝撃による異なる結果を有する。
【0043】
全ての物理特性を定義する必要はないが、重要な影響を有するある一定の基本パラメータ74は、物理オブジェクト40に対して定義され、そのうちの1つだけが分かり易いように図3に示されている。一般的に各基本パラメータ74は、値76及びタイプ78を有することになる。例えば、プレーヤキャラクターの1つの基本パラメータ74は、プレーヤキャラクターが90kgの重さがあるか、又は37℃の温度を有するものとすることができる。基本パラメータは、多数あるものとすることができ、他の一般的なパラメータは、サイズ、形状、密度、及び伝導性を含む。ある一定のパラメータは、重力の影響のような所定のエリアで全てのオブジェクトに共通のものとすることができる。一部の実施では、重力の影響でさえも、物理オブジェクトから物理オブジェクトへと異なるように構成することができる。
【0044】
条件は、物理オブジェクトにおいて抑制力のあるもので、それによって物理オブジェクトは、指定された方法でのみ行動及び反応することができる。これらは、様々な能力性を含むことができ、状態とトリガに分割することができる。
【0045】
第1のものに関して、各物理オブジェクト40は、関連付けられた状態82を有することができる。状態とは、物理オブジェクトが外側の刺激にどのように行動又は反応するか、例えば、物理オブジェクト40が移動可能、移動不能、武器化された、損傷を受けた、破壊された、別のオブジェクトに添付されたなどか否かを指す。この教示が与えられると、当業者は、これらの実施例の多数の変形を理解するであろう。特定的な例として、プレーヤキャラクターは、樽を押そうとすることができ、この樽は容易に移動する。プレーヤキャラクターは、別の樽を押そうとすることができるが、この樽は移動せずに、樽が地面に接着されていることを調査が示す。この例では、1つの樽の状態は移動可能と設定され、他の樽は移動不能と設定される。
【0046】
条件の第2のタイプに関して、各物理オブジェクト40はまた、これに関連付けられた様々なトリガ83を有することができる。トリガは、「接触による」、「損傷による」、「ピックアップによる」、「投げるによる」、又は「台本通りのイベントによる」のようなオブジェクト状態を変化させることのできる状況である。トリガ83は、これに関連付けられた限定子85を有することができ、限定子は、オブジェクトの状態を変えることのできる人又は物、及びこれらの変化を発生させることのできる時間を示している。上述の移動不能樽の例では、プレーヤキャラクターは、樽を叩こうとすることができ、次に、プレーヤキャラクターは、自由に破壊して自由に移動させることができる。この場合、樽に損傷を適用する行動は、樽の状態を移動可能ものに変えるトリガである。
【0047】
別の特定的な例では、スーパーヒーローが、何階か下に広がっている倉庫の大きな開かれた区画の端に犯人を追い詰めることができる。犯人は、下の方の短い距離にある吊り下げられたプラットフォームに飛び移ることができ、スーパーヒーローが後を追うことができる。プラットフォームへのスーパーヒーローの衝撃力は、プラットフォームを揺らし、スイングさせ、かつ傾けて、プラットフォーム上の樽を転がして落とすことができる。プラットフォームを支えているチェーンのあるものは、次に、破壊することができ、スーパーヒーロー及び犯人は、倉庫の床に倒れ、床の上の木枠の山に着地することによってその落下物を破壊させることができる。この例では、プレーヤキャラクターが着地した時にプラットフォームが動く方向は、プラットフォームがどのように吊り下げられているか、例えば、4つのチェーンによって支えられていることの結果になる。樽は、その物理オブジェクトデータ構造40における条件によって転がる。プラットフォームを支えているチェーンは、プラットフォーム上の圧力又は重量の閾値に達した場合に外れるようにトリガされ、これは、ある期間にわたって加えられた損傷として扱うことができる。倉庫の床の上の木枠は、衝撃時に、例えば、落下物から損傷を受けた時に直ちに壊れるようにトリガされる。場合によっては、木枠によって受けた損傷の量は、全体ではないが、プレーヤキャラクター及び非プレーヤキャラクターが落下した距離、並びにプレーヤキャラクター及び非プレーヤキャラクターの重量によって推定することができる。例えば、損傷は、閾値の距離及び/又は重量に達するまで線形(又は他の)方式で上昇することができ、閾値の距離及び/又は重量に達した時点の後に、木枠は、完全に破壊されたものとして分類され、同様にレンダリングされることになる。勿論、環境のタイプに応じて、同じことは、一般的にある時間の後に再発生することになる。
【0048】
各物理オブジェクト40は、トリガに適合したゲーム効果84に更に関連付けることができる。ゲーム効果は、オブジェクトに本来あるもの又は加えられた機構であり、オブジェクトが外側の刺激にどのように反応するかを定義する。例えば、爆発性の樽は、押された場合にあらゆる普通の樽のように行動することになるが、損傷を受けた場合は爆発することができ、この場合、爆発は、樽オブジェクトのトリガされたゲーム効果である。物理オブジェクトに本来あるゲーム効果を与えるために、ゲーム効果は、ゲーム効果データベースからデータ構造40におけるその特性の1つとして物理オブジェクトにリンクさせることができる。
【0049】
一部のオブジェクトには、永続的なゲーム効果を適用することができる。例えば、「マグマ」岩は、永続的に過熱することができ、触れたら常に燃え上がることになる。一定した熱は、オブジェクトに関連付けられたゲーム効果である。通常はオブジェクトに関連付けられていないゲーム効果も、プレーヤによってオブジェクトに適用することができる。特定的な例では、地面に落下した後、犯人は、飛び上がり、走り始めることができる。スーパーヒーローは、電気のボールを充電することができ、これは、犯人の前の積み重なった樽に発射することができる。衝撃により、樽は倒れ、犯人の経路を塞ぐことができる。帯電した樽は、次に、充電によってパチパチ音を立て、磁気的に他のオブジェクトを引き寄せることができる。犯人が樽をよけようとする場合、樽は、稲妻の小さなアークで損傷を受けることになる。この例では、プレーヤは、以前何も有していなかった物理オブジェクトにゲーム効果を適用するために、プレーヤキャラクターの電気パワーを使用している。このゲーム効果は、次に、物理オブジェクトに触れた人に損傷を与え、オブジェクトは、ある方式で、すなわち、類似の材料から作られた他のオブジェクトを引き寄せる磁気で行動させる。
【0050】
各物理オブジェクト40は、トリガに適合した聴覚及び/又は視覚効果86(「A/V効果」と呼ばれる)に更に関連付けることができる。A/V効果86は、一般的に、オブジェクト又はオブジェクトに関連付けられたゲーム効果に関するユーザのビューイング又はリスニングのためにレンダリングされる効果を含む。従って、一部のA/V効果は、相互作用によって引き起こされたゲーム効果に適合されているが、一部のA/V効果は、相互作用がない場合でも物理オブジェクトに存在することができる。A/V効果は、以下の非制限的な例の1つ又はそれよりも多く、すなわち、一般的にはオブジェクトの表面に現れる一時的な損傷である表面損傷、損傷に続いて発生する破片の小さな破片である粒子、損傷からの音声フィードバックであるサウンド、オブジェクトが損傷からばらばらに壊れていく劣化、及び新しいオブジェクトを損傷から作成することができるオブジェクト作成を含むことができる。A/V効果は、オブジェクトの状態に基づいて更に変えることができる。
【0051】
別の特定的な例として、プレーヤキャラクターは、トラックを壊して開け、そのエンジンブロックを取り外すことができる。プレーヤキャラクターは、エンジンブロックを通過している車に投げつけ、その衝撃で車のボンネットをペチャンコにすることができる。エンジンブロックは、現在大きく傷を付けられており、パチパチ音を立て火花を散らし始めている。プレーヤキャラクターは、エンジンブロックを再度取り上げ、これを他のプレーヤキャラクター又は非プレーヤキャラクターに投げつけることができる。地面への衝撃により、エンジンブロックは粉々に壊れることができる。この例では、エンジンブロックは、その状態を伝えるために一連のサウンド及び粒子を使用する。車が衝突した場合、車のボンネット及びエンジンは、表面損傷及び劣化を示している。エンジンブロックはまた、引っ掻き傷で表面損傷を示し、例えば、損傷から発している粒子、例えば、火花及びサウンドを更に示している。エンジンブロックが決定的に破壊された場合、この破壊は、破壊していくのを模擬するために作成することができる新しいオブジェクトと共に、エンジンブロックの外観への大きな変化によって伝えることができる。これらの変化の全てを通して、オブジェクトが受けた視覚的変化を反映してレンダリングするために物理オブジェクトモデルを更新することができる。
【0052】
別の例として、悪者のプレーヤキャラクターは、銀行強盗を働こうとするが、その金庫が密封されていることを見出すことができる。プレーヤキャラクターは、金庫のドアを繰返し叩き、多数の凹部を作ることができるが、金庫を開けることはできない。次に、プレーヤキャラクターは、低い所に吊り下げられている天井の梁をめがけてエネルギを発射することができ、大きなコンクリートの塊りを粉々に破壊し、これが地面に衝突する。この衝撃は、銀行の床を砕き、大量の埃を舞い上げる。天井の梁は壊され、例えば、鉄筋までに縮小され、少量の圧縮されたコンクリートだけが残っている。この例では、金庫のドアは、衝突された時に劣化し、天井の梁は、エネルギの爆風を受けた時に鉄筋まで縮小される。コンクリートの塊りは、それらが着地した時にサウンドを生成する爆風から作成されたオブジェクトである。床は、衝撃から表面損傷の亀裂を受け、埃は、粒子効果である。
【0053】
物理オブジェクトは、以下のタイプの1つ又はそれよりも多くとしてカテゴライズすることができる。いずれの所定のシミュレーションにおいても、全てのタイプを表す必要はなく、物理オブジェクトは、1つよりも多いタイプに属することができる。物理オブジェクトの第1のタイプは、永続的プロップであり、これは、リセットまで環境に留まるオブジェクトであり、これらは、ある一定の目標、障害、目的、又はクエストに必要なある一定の重要なゲーム競技要素を含むことができる。別のタイプは、FXプロップであり、これは、損傷を受けた時に破壊することができるオブジェクトである。別のタイプは、武器化プロップであり、これは、プレーヤキャラクターが武器として取り上げて使用することができるオブジェクトである。別のタイプは、ゲーム効果プロップであり、これは、ゲーム機構が関連付けられるオブジェクトである。別のタイプは、動的プロップであり、これは、開発者によって配置されるプロップとは対照的に、ゲーム中の発生の結果として実行中に作成されるオブジェクトである。動的プロップは、プレーヤキャラクターによって引き起こされた損傷の結果として作成される物理オブジェクトを含むことができる。
【0054】
武器化プロップに関して、物理オブジェクトがこの様式で利用された場合、これらの物理オブジェクトは、武器固有の能力を獲得し、制御された方式で反応することができる。一部の基本パラメータ及び条件は、武器化物理オブジェクトにも適用することができる。これらは、武器の耐久性、ゲーム効果などの特性を含む。
【0055】
別の特定的な例では、犯人は、鉄筋の破片を取り上げていくつかの樽に向けて摺動させることができ、次に、鉄筋の破片によるスーパーヒーロープレーヤキャラクターの攻撃に進むことができる。プレーヤキャラクターは、木枠を取り上げてこれを犯人に対する武器として使用することにより対処することができる。鉄筋は、スーパーヒーローを攻撃する時に最終的には変形することができ、最終的には、使用できないものとしてレンダリングすることができる。相応に、スーパーヒーローは、犯人に木枠を投げつけることができ、木枠を壊して犯人の意識を失わせることができる。この例では、スーパーヒーローと非プレーヤキャラクターの犯人の両方が、物理オブジェクトを武器として使用する。敵の非プレーヤキャラクターの犯人は、その物理オブジェクトをこん棒として使用するが、スーパーヒーロープレーヤキャラクターは、その物理オブジェクトを砲弾として使用する。時間計算による損傷を使用することにより、ゲーム効果として及びA/V効果としての両方で鉄筋の変形を達成することができる。木枠の粉砕は、ある一定のオブジェクトに「ヒットポイント」を与えることによって実施することができる。オブジェクトがゼロのヒットポイントを有した状態で、これは破壊されたと考えられ、相応にレンダリングされる。多くの場合、新しい物理オブジェクト、例えば、動的プロップがその場所で発生されることになる。場合によっては、このような動的プロップは、発生した後に数秒間だけ存在することができるが、他の場合には、このようなオブジェクトを環境に残して行動することを要求することができ、あらゆる他の物理オブジェクトのように使用することもできる。別の特定的な例では、スーパーヒーロープレーヤキャラクターは、通過する車に損傷を適用するためにランプポストを使用することができる。車とランプポストの両方が損傷を受け、ランプポストは、その最上部の近くがポキッと折れている。柱部分に走っている配線は、柱部分の最上部で接続したままになっている。プレーヤキャラクターが再度ランプポストをスイングさせ、その最上部が実質的にランダムに振り回されるが、これと同じことは、有効な武器とすることができる。この例では、ランプポストは、物理学の影響を示す武器化物理オブジェクトを表している。土台がプレーヤによって制御されているとしても、最上部は、緩く反応し易い。物理エンジンは、一部の実施では、運動を(スイングする場合)回転及び更に別の旋回に伴う旋回、すなわち、上に重なる緩んでいる最上部を模擬することができる。
【0056】
物理オブジェクトはまた、ゲームイベントによって発生させることができる。例えば、ゲームイベントは、環境の破壊をトリガすることができ、環境の破壊は、ゲームイベントをトリガすることができる。別の特定的な例では、プレーヤキャラクターは、都市の下水溝を通って悪者を追い詰めている。プレーヤキャラクターは、袋小路のように見える暗い小さな空洞に入る。プレーヤキャラクターがその足跡を引き戻すことができる前に、爆発が起こり、ドアの上の天井が崩壊し、プレーヤキャラクターの経路を塞ぐ。プレーヤキャラクターは、黒い壁の一方に小さな鉄格子を備えた窓があることが分かる。プレーヤキャラクターは、鉄格子に集中熱線を当てるが、これを実行することで隠れた武器の起動をトリガする。この例では、プレーヤがその部屋を離れようにとした時に起こった天井の崩壊は、イベントによって引き起こされた環境の破壊を表している。プレーヤキャラクターが鉄格子を備えた窓の柔らかい幾何学形状を攻撃した場合、この攻撃は、隠れた武器を起動し、この場合、起動は、環境の破壊によって引き起こされたイベントを表している。
【0057】
他の環境ファクタ又は非プレーヤキャラクター又はプレーヤキャラクターのパワーも、MMOのようなシミュレーションにおいて物理オブジェクトに影響を与えることができる。例えば、火山の爆発を提供することができ、火山の爆発は、岩及び溶岩を生成又は飛び散らせることができる。地震も引き起こすことができ、地震は、プレーヤキャラクター及び非プレーヤキャラクターを混乱させることができ、同時に物理オブジェクトを含む様々なオブジェクトを作成することができる。携帯可能という特異性を提供することができ、プレーヤキャラクター及びオブジェクトをその特異性に向けて引き付け、一部の実施では、プレーヤキャラクター又は非プレーヤキャラクターの瞬間移動を更に引き起こすことができる。エアバッグパワー又は効果をプレーヤキャラクターに提供することができ、次に、プレーヤキャラクターは、エアバッグによって囲まれ、プレーヤキャラクターを物理オブジェクト及び損傷から保護するが、プレーヤキャラクターを同様に戦闘において効果のないものにしてしまう。プレーヤキャラクター又は非プレーヤキャラクターに念動の力を提供することができ、それによってオブジェクトに触れることなくオブジェクトを移動させることができる。オブジェクトの部分集合は、「接地」状態を取得することができ、これらは、移動不能又は武器にできないポイントまで極めて重くレンダリングされる。この状態では、風で運ばれるオブジェクトが、地面に衝突することができ、武器化されたオブジェクトは、重すぎて運ぶことができなくなる。重力又は反重力ソースを提供することができ、これらのソースは移動することができ、次に、近いオブジェクト及びプレーヤキャラクター又は非プレーヤキャラクターを攻撃又は撃墜することができる。「はね返り」パワーも提供することができ、それによって物理オブジェクトは、プレーヤキャラクターから発射させることができる。
【0058】
別の特定的な例では、プレーヤキャラクターが通りに踏み出し、近づいてくる車を攻撃し、近づいてくる車をひっくり戻す。次に、プレーヤキャラクターは、車を取り上げ、これを象徴的な非プレーヤキャラクターの大きなブロンズ像に投げつける。車はその像に衝突してはね返り、花壇に落ち花壇を壊す。プレーヤキャラクターは、もう一度車を取り上げようにとするが、車は燃えており、熱くて触れることができない。代わりに、プレーヤキャラクターは、大理石の大きな塊りが噴水を破壊してしまうまで像の近くの噴水を攻撃する。次に、プレーヤキャラクターは、大理石の塊りを取り上げ、これを像に投げつけ、像に損傷を与える。この例では、車が、非プレーヤキャラクターのタイプとして最初に分類されているが、これは、投げられた時に武器化プロップになり、次に、火が付いた時にゲーム効果プロップになる。花壇は、1つ又はそれよりも多くのFXプロップとすることができる。像は、永続的なプロップであり、破壊することはできないが、次のヒーリングの前に、少量の損傷を耐えることができ、又は代わりに除去することができる。噴水は柔らかい幾何学形状であり、その大理石の塊りは、武器になることができる動的プロップである。
【0059】
図4は、物理オブジェクト相互作用を実行する方法50の流れ図である。第1の段階では、仮想オブジェクトの部分集合が、物理オブジェクトとして定義される(段階94)。次の段階では、少なくとも1つの基本パラメータ及び状態が、物理オブジェクトの各々に対して定義され(段階96)、基本パラメータは、1つの値及び1つのタイプを有する。段階94及び96は、一般的に、物理オブジェクトの作成の時に実行することができ、物理オブジェクトの作成の時は、ゲームの初期読込時、その後のあらゆる時間又は開発の時間とすることができる。
【0060】
次の段階は、異なる基本パラメータタイプを有するいずれかの2つ又はそれよりも多くのオブジェクトに対する相互作用の結果、並びに相互作用の結果を判断することである(段階98)。この段階は、いくつかの方法で達成することができる。最初に、ある一定の相互作用は、所定の結果を有することになる。例えば、相互作用の1つのタイプは、衝突の検出及び物理エンジンによって指示された結果によって判断された物理オブジェクト及び/又は非物理オブジェクトとすることができるオブジェクト間の衝突である(段階102)。ここで、衝突はあらゆるオブジェクトの接触とすることができることに注意されたい。相互作用の別のタイプは、物理オブジェクト又は非物理オブジェクトのようなオブジェクトと発射物の間の衝突である(段階104)。この相互作用のタイプは、例えば、戦闘又は長距離兵器により、魔法により、レーザ光又は他の電磁力などにより、物理オブジェクト又は非物理オブジェクトを攻撃するプレーヤキャラクター又は非プレーヤキャラクターに典型的なものとすることができる。
【0061】
上述の衝突の例は、一般的なものである。しかし、相互作用のより多くのタイプを本発明のシステムによって提供することができる。一般的に、相互作用は、ルックアップテーブルの使用を含むことができるオブジェクト規則セットによって判断される(段階106)。ルックアップテーブルは、発生させることができる相互作用の多数のタイプ、並びに続いて起こる可能性がある相乗効果を説明する1つの方法を提供する。このようなテーブルは、以下のテーブルIに示しており、テーブルIは、単に例示的なものであり、このような効果の潜在的な数に比べて非常に制限されていることを理解すべきである。
【0062】
以上の説明は、一般的に、オブジェクトが基本パラメータの様々なタイプを有するオブジェクト相互作用に関する。場合によっては、相互作用は、基本パラメータの同じタイプを有する物理オブジェクトに対して定義されることになる。例えば、2つの物理オブジェクトの各々は、関連付けられた重量の基本パラメータを有することができる。その両方が、互いに打たれることによって又は磁気効果などによって結合された場合、その結果、単一の物理オブジェクトは、個々の重量の和の重量を有することができる。
【0063】
相互作用の指示として、信号は、GPU又はビデオカード又はサウンドカード、又はその組合せに送信することができ(段階108)、次に、信号は、相互作用の指示のレンダリングを生じさせることができる(段階112)。
【0064】
レンダリングは、いくつかの形式を取ることができる。物理オブジェクト又は非物理オブジェクトが、カテゴライズされたか又はそうでなければ硬い幾何学形状を有するものとしてカテゴライズされた場合、損傷効果をレンダリングすることができ(段階114)、例えば、外面の又は表面の損傷効果を時間と共に癒すことができる。オブジェクトが柔らかい幾何学形状を有するものとしてカテゴライズされた場合、オブジェクトがどの程度まで損傷を与えられたかを判断するための計算を実行することができる(段階116)。例えば、少量の損傷は、引っ掻き傷のような表面の損傷にすることができ、一方、大量の損傷は、オブジェクトが、例えば、次に物理オブジェクト又は非物理オブジェクトになる小さなオブジェクトに、更に粒子に、又はその両方に粉々に破壊されることをもたらすことができる。計算を達成する1つの方法は、ヒットポイントをオブジェクトに割り当てることであり、損傷が生じた場合に、ヒットポイントの数が低減する。オブジェクトがゼロのヒットポイントになった状態で、破壊されたと考えられる。構造の粒度、重量、及び容積などのような物理オブジェクトの材料の特性、並びに衝突するオブジェクト、例えば、発射物の弾道及び他の特徴の考察を含む特に高度な計算も利用することができる。
【0065】
相互作用の指示のレンダリングの段階(段階112)の一部として含むことができる方法50の次の段階は、ゲーム効果のレンダリング(段階118)及びA/V効果のレンダリング(段階122)を含む。
【0066】
図5は、物理オブジェクト相互作用を実施するための別の方法70の流れ図である。方法70では、物理オブジェクトは、第1の状態から第2の状態への遷移が行われる。これらの段階の特定のものは、図4の方法と共通である。
【0067】
第1の段階では、仮想オブジェクトの部分集合が物理オブジェクトとして定義される(段階94)。次の段階では、少なくとも1つの基本パラメータ及び状態が、物理オブジェクトの各々に対して定義され(段階126)、基本パラメータは、1つの値及び1つのタイプを有する。次に、トリガを定義することができ(段階128)、このトリガにより、物理オブジェクトが、1つの状態から別の状態に遷移する。次に、限定子、上記に定義された限定子であり、例えば、状態を遷移させるためにトリガを生じさせることができる人及び物は、トリガに対して定義することができる(段階132)。段階124、126、128、及び132は、一般的に、ゲームの初期読込時、その後のあらゆる時間、又は開発の時間とすることができる物理オブジェクトの作成の時に実行することができる。
【0068】
トリガイベントの発生時に、物理オブジェクトは、次に、第1の状態から第2の状態に遷移される(段階134)。遷移の指示の通りに、信号は、GPU又はビデオカード又はサウンドカード、又はその組合せに送信することができ(段階136)、次に、信号が、遷移のレンダリングを生じさせることができる(段階138)。
【0069】
図4のように、レンダリングはいくつかの形式を取ることができる。物理オブジェクトが硬い幾何学形状を有する場合、損傷効果をレンダリングすることができる(段階142)。物理オブジェクトが柔らかい幾何学形状を有する場合、どの程度まで物理オブジェクトに損傷が加えられたかを判断するための計算を実行することができる(段階144)。
【0070】
遷移の指示をレンダリングする段階(段階138)の一部として含むことができる方法70の次の段階は、ゲーム効果のレンダリング(段階146)及びA/V効果のレンダリング(段階148)を含む。
【0071】
物理オブジェクトのような2つ又はそれよりも多くのオブジェクトが相互作用に含まれている場合、上述の方法70は、各物理オブジェクトに対して実行することができ、方法50は、遷移及び相互作用の結果を定義するために更に利用することができる。本方法は、ゲームイベントからの物理オブジェクトへの影響、プレーヤキャラクター及び非プレーヤキャラクターによって引き起こされた損傷、並びに非物理オブジェクトによって物理オブジェクトに起こった損傷及び同じくその逆も判断するために更に使用することができる。
【0072】
図6を参照すると、非物理オブジェクトから物理オブジェクトを作成する方法80の流れ図が示されている。本方法の第1段階は、非物理オブジェクトとして少なくとも1つの仮想オブジェクトを定義することである(段階152)。一般的に、このようなオブジェクトは、3次元オブジェクトとしてモデル化されるが、本方法及びシステムはこれに制限されない。次の段階は、トリガを定義することであり、このトリガ時に、非物理オブジェクトが、物理オブジェクトに遷移することになり(段階154)、更に限定子をトリガに対して定義することができる。トリガ及び限定子は、一般的に、非物理オブジェクトが物理オブジェクトに遷移する場合を除いて、第1の状態から第2の状態に物理オブジェクトを遷移させることに関して上記に定義されたのと同じとすることができる。上述の対応する段階と同様、段階152及び154は、一般的に、ゲームの初期読込時、その後のあらゆる時間、又は開発の時間とすることができる物理オブジェクトの作成の時間に実行することができる。
【0073】
トリガの発生時に、次に、非物理オブジェクトは物理オブジェクトに遷移する(段階156)。特定のトリガ及び遷移は、以下のテーブルIIに示しているが、テーブルIIは、単に例示的なものであり、このようなトリガ及び遷移の潜在的な数に比べて非常に制限されていることを理解すべきである。
【0074】
上述のように、遷移の指示として、信号は、GPU又はビデオカード又はサウンドカード、又はその組合せに送信することができ(段階158)、次に、この信号は、遷移のレンダリングを生じさせることができる(段階162)。レンダリングは、上述の方法のいずれでも実行することができる。
【0075】
物理オブジェクトが損傷を受けたか又は破壊された場合、本発明のシステム及び方法はまた、修復を処理する方法を提供する。特に、修復ルーチンは、相互作用の後にそれ自体の環境リセットを助けるために利用することができる。一般的に、多くのオブジェクトは、時間の経過と共に修復することになる。しかし、特定の例外が存在する。例えば、あるインスタンスでは、インスタンスが再読込された場合に、オブジェクトの全てを自動的にリセットすることができる。一部の実施では、「技術者」としてフラグを立てられた非プレーヤキャラクターが、損傷を受けたオブジェクトを修復することができる。次に、これらのオブジェクトは、その損傷を受けていない状態に戻り、リセットされない。
【0076】
特定的な例では、悪者のプレーヤキャラクターが銀行強盗を働くことができ、銀行の外部及び内部に損傷を与え、次に、逃げることができる。プレーヤキャラクターは、銀行の内部及び外部の両方が完全に回復され、従って、損傷がないことが分かることができる。この例では、プレーヤキャラクターが内側にいる間に銀行の破壊がゆっくりと修復されるように、銀行の外部が、オープンゲーム環境世界の一部である。銀行の内側は、プレーヤキャラクターが去った場合に、銀行の内側のコンテンツが直ちにリセットされるようなインスタンスと考えられる。
【0077】
ゲーム環境内のエリアの様々なタイプは、それぞれ異なる損傷を受け取ることができる。これは、そのエリアが私的であるか公的であるか否かに一部依存する場合がある。
【0078】
例えば、都市は、ゲームの大きな開放的世界区画を表すことができる。このようなエリアは、形状の点で比較的安定したままにしておきたいので、それらは、破壊しにくい環境とすることができる。このようなエリアは、主に、硬い幾何学形状のオブジェクト及び構造を含むことができる。特定の柔らかい幾何学形状のオブジェクトはまた、一部の所定の物理オブジェクトと共に存在することができる。これらのオブジェクト及び構造の全ては、これらに関連付けられたA/V効果の変化する量を有することができる。特定的な例では、悪者のプレーヤキャラクターが、通過する車を取り上げ、これを店の正面に放り投げることができ、店の正面の日よけを落とし店の窓を粉々に壊し潰してしまうことができる。プレーヤキャラクターは、もう一度車を取り上げ、これをアパートの建物の側面に投げつけ、一部のコンクリート型枠を壊して粉々に落としてしまうことができる。車は、音を立てながら歩道に着地する。この例では、車及び日よけは、物理オブジェクトである。店の正面は、柔らかい幾何学形状を有し、従って、変形し、更にガラス粒子効果を生成する。コンクリート型枠は、柔らかい幾何学形状を有し、一方、それが付帯しているアパートの建物は、硬い幾何学形状を有する。コンクリート型枠は、コンクリートの破片の破片を生成し、これは物理オブジェクトであり、車が着地した場合、硬い幾何学形状である歩道は、表面損傷を受ける。
【0079】
インスタンスは、プレーヤ又はプレーヤのグループのためにオンデマンドで作成されるエリアの私的バージョンである。これらが私的であるので、硬い幾何学形状がこれらのエリアの大多数を作り上げることができるが、開放的な公的ゲーム環境よりもより柔らかい幾何学形状を提供することができる。これらの硬対柔の形状エリアの比率は、各インスタンスの設計によって指示されている。インスタンスはまた、かなり多数の物理オブジェクトを有することができ、A/V効果は、多くのオブジェクト内に存在することができる。特定的な例では、プレーヤキャラクターのスーパーヒーローが、観客席で悪者と戦うことができる。悪者は、プレーヤキャラクターのスーパーヒーローを攻撃することができ、プレーヤキャラクターのスーパーヒーローの攻撃を部屋中で開始することができる。プレーヤキャラクターは、後ろの壁に跳ね返る前に後ろの壁に衝撃で亀裂を入れて、座席のいくつかの列、並びに支持柱を破壊することができる。この例では、座席は、物理オブジェクトであり、柱は柔らかい幾何学形状であり、その両方が衝撃で破壊される。後ろの壁は、硬い幾何学形状であり、その亀裂は、損傷を示すためのA/V効果である。
【0080】
損傷効果を開放的世界ゲーム環境とは異なるものにすることができる別のエリアは、アリーナであり、これは、大きな地形を土台にした多人数参加型エリアである。これらのエリアは、プレーヤにその能力及びスキルの全てを生かせるように設計されているので、アリーナにもたらされる破壊は、重大なものとすることができる。物理オブジェクトは、より大きくすることができ、より柔らかい幾何学形状は、その地形及び建物に構築することができる。特定的な例では、プレーヤキャラクターのスーパーヒーローが、敵の非プレーヤキャラクター掩蔽壕に破壊するために近づくことができる。プレーヤキャラクターが攻撃可能範囲に入ることができる前に、敵の戦車は、崖の後ろから出てくることができる。プレーヤキャラクターは、最も近い崖の表面に全力疾走し、これを打ち付け、いくつかの大きな丸石を崖から叩き落とす。次に、プレーヤキャラクターは、丸石を持ち上げ、これを投げつける。丸石は、先頭戦車に当たり、先頭戦車を粉々にし、大きな亀裂を地面に残す。次に、プレーヤキャラクターは、掩蔽壕に突進し、これを攻撃し、大きな屋根の砲塔を不動にし、屋根の砲塔をエネルギの爆風で粉々にする。次に、敵は、掩蔽壕の前面入口から兵力を送り出す。プレーヤキャラクターは、その兵力を失わせ、火力をドアに集中させる。瓦礫のかけらが、バラバラになり落下し始める。ある一定の時間後に、ドアのアーチが入口の前で崩壊する。この例では、崖の表面が柔らかい幾何学形状を有し、硬い幾何学形状の地形の上に位置する。物理オブジェクトである丸石は、柔らかい幾何学形状の崖の表面が損傷を受けた時に生成される。丸石の衝撃は、これも物理オブジェクトである戦車に衝突し、A/V効果を使用して地面に亀裂が入ったように見える。掩蔽壕の建物は、主に柔らかい幾何学形状であり、多くの弱点、例えば、砲塔又はドアなどは、完全に破壊することができるように、かつその破壊時にその一部又は全てを物理オブジェクトとすることができる瓦礫を生成するように構成される。
【0081】
物理オブジェクトの作成及び取扱いのためのシステム及び方法について説明した。相互作用するこれらの物理オブジェクト及びその後のゲーム競技の結合効果は、規定されたというよりも創発的であるように見える。本発明のシステム及び方法は、プレーヤがどう使用するかに基づいて驚くべき方法で相互作用する要素を作成する。プレーヤは、物理オブジェクトを作成し、自ら及び他のプレーヤを物理オブジェクトに変え、かつ単純で所定の相互作用を超える方法でこれらの物理オブジェクト及び力の相互作用により自発的な相乗効果を生成することができる。
【0082】
付加的な変形及び実施も可能である。従って、本発明の範囲は、本明細書に示した特定的な例だけに制限されるものではない。
【0083】
(表1)

【0084】
(表2)

【符号の説明】
【0085】
50 物理オブジェクト相互作用を実行する方法
94 仮想オブジェクトの部分集合が定義される段階
96 少なくとも1つの基本パラメータ及び状態が定義される段階

【特許請求の範囲】
【請求項1】
コンピュータ可読媒体であって、
シミュレーションにおいて仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令、
を含み、
前記方法は、
a.シミュレーションにおける仮想3次元オブジェクトの部分集合を物理オブジェクトとして定義する段階、
b.前記物理オブジェクトの第1のものに対して、第1の値と第1のタイプとによって特徴付けられる少なくとも第1の基本パラメータと、第1の状態とを定義する段階、
c.前記物理オブジェクトの第2のものに対して、第2の値と前記第1のタイプとは異なる第2のタイプとによって特徴付けられる少なくとも第2の基本パラメータと、第2の状態とを定義する段階、
d.相互作用の結果が少なくとも部分的に前記第1及び第2のパラメータ及び第1及び第2の状態に依存する前記物理オブジェクトの第1及び第2のものの間の少なくとも1つの相互作用を定義する段階、
e.信号をレンダリング器に送信して前記相互作用の結果の指示をレンダリングする段階、
を含む、
ことを特徴とするコンピュータ可読媒体。
【請求項2】
少なくとも1つの相互作用を定義する前記段階は、前記第1及び第2のオブジェクト間に検出されている衝突の発生によって生じることを特徴とする請求項1に記載の媒体。
【請求項3】
少なくとも1つの相互作用を定義する前記段階は、前記第1又は第2のオブジェクトのいずれかとプレーヤキャラクター又は非プレーヤキャラクターによって向けられた発射物との間に検出されている衝突の発生によって生じることを特徴とする請求項1に記載の媒体。
【請求項4】
前記少なくとも1つの状態は、移動可能、移動不能、損傷を受けた、破壊された、又は付着されたから構成されるグループから選択されることを特徴とする請求項1に記載の媒体。
【請求項5】
前記シミュレーションは、多人数参加型オンラインゲームであることを特徴とする請求項1に記載の媒体。
【請求項6】
前記第1又は第2の物理オブジェクトの少なくとも一方は、プレーヤキャラクター又は非プレーヤキャラクターであることを特徴とする請求項1に記載の媒体。
【請求項7】
前記第1又は第2の物理オブジェクトの少なくとも一方を柔らかい幾何学形状を有するものとして定義する段階を更に含み、
柔らかい幾何学形状を有する物理オブジェクトの状態が損傷を受けた場合、該物理オブジェクトを少なくとも2つの物理オブジェクトか又は物理オブジェクトと非物理オブジェクトで置換する段階を更に含む、
ことを特徴とする請求項4に記載の媒体。
【請求項8】
前記第1又は第2の物理オブジェクトの少なくとも一方を硬い幾何学形状を有するものとして定義する段階を更に含み、
硬い幾何学形状を有する物理オブジェクトの状態が損傷を受けた場合、硬い幾何学形状を有する該物理オブジェクトに対する損傷効果をレンダリングする段階を更に含む、
ことを特徴とする請求項4に記載の媒体。
【請求項9】
前記第1及び第2のタイプは、重量、サイズ、形状、密度、及び伝導性から構成されるグループから選択されることを特徴とする請求項1に記載の媒体。
【請求項10】
前記相互作用の前記結果は、オブジェクト規則セット又はルックアップテーブルによるものであることを特徴とする請求項1に記載の媒体。
【請求項11】
物理オブジェクトとして以前に定義されていない仮想3次元オブジェクトの1つから物理オブジェクトを定義する段階を更に含むことを特徴とする請求項1に記載の媒体。
【請求項12】
前記定義された物理オブジェクトは、プレーヤキャラクターであることを特徴とする請求項11に記載の媒体。
【請求項13】
前記定義された物理オブジェクトは、武器として定義された状態を有することを特徴とする請求項11に記載の媒体。
【請求項14】
少なくとも1つの相互作用を定義する前記段階は、共通タイプを備えた基本パラメータを有する物理オブジェクトに関連する少なくとも1つの規則セットを定義する段階を含むことを特徴とする請求項1に記載の媒体。
【請求項15】
前記物理オブジェクトの少なくとも1つに対して少なくとも1つのゲーム効果を定義する段階を更に含み、
トリガが起こった場合に、前記ゲーム効果が発生する、
ことを特徴とする請求項1に記載の媒体。
【請求項16】
前記物理オブジェクトの少なくとも1つに対して少なくとも1つの聴覚又は視覚効果を定義する段階を更に含み、
トリガが起こった場合に、前記聴覚又は視覚効果がレンダリングされる、
ことを特徴とする請求項1に記載の媒体。
【請求項17】
コンピュータ可読媒体であって、
シミュレーションにおいて仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令、
を含み、
前記方法は、
a.シミュレーションにおける仮想3次元オブジェクトの部分集合を物理オブジェクトとして定義する段階、
b.前記物理オブジェクトの第1のものに対して、第1の値及び第1のタイプによって特徴付けられる少なくとも第1の基本パラメータと、第1の状態とを定義する段階、
c.少なくとも1つのトリガを定義し、該トリガの発生時に、前記物理オブジェクトの第1のものを前記第1の状態から第2の状態に遷移させる段階、
を含み、
前記遷移の結果が、前記第1のパラメータ及び前記第1の状態に少なくとも一部依存し、
d.信号をレンダリング器に送信して前記遷移の前記結果の指示をレンダリングする段階、
を更に含む、
ことを特徴とするコンピュータ可読媒体。
【請求項18】
前記トリガは、プレーヤキャラクター又は非プレーヤキャラクターが前記物理オブジェクトの前記第1のものに触れること、プレーヤキャラクター又は非プレーヤキャラクターが該物理オブジェクトの該第1のものに損傷を与えること、プレーヤキャラクター又は非プレーヤキャラクターが該物理オブジェクトの該第1のものを取り上げること、プレーヤキャラクター又は非プレーヤキャラクターが該物理オブジェクトの該第1のものを投げること、又は所定の台本通りのイベントから構成されるグループから選択されることを特徴とする請求項17に記載の媒体。
【請求項19】
少なくとも1つのトリガを定義する前記段階は、プレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトによって引き起こすことのできる少なくとも1つのトリガを定義する段階を含み、
前記トリガイベントに対する少なくとも1つの限定子を定義する段階を更に含み、
少なくとも1つの限定子を定義する前記段階は、どのプレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトが遷移を引き起こすことを許されるか、又はいつ遷移の発生が許されるかを定義する段階を含む、
ことを特徴とする請求項18に記載の媒体。
【請求項20】
前記シミュレーションは、MMOであることを特徴とする請求項17に記載の媒体。
【請求項21】
コンピュータ可読媒体であって、
シミュレーションにおける仮想3次元オブジェクトを管理する方法を電子デバイスのプロセッサに実行させるための命令、
を含み、
前記方法は、
a.シミュレーションにおける少なくとも1つの仮想3次元オブジェクトを非物理オブジェクトであるとして定義する段階、
b.少なくとも1つのトリガを定義し、該トリガの発生時に、前記少なくとも1つの仮想3次元オブジェクトを物理オブジェクトに遷移させる段階、
c.信号をレンダリング器に送信して前記遷移の結果の指示をレンダリングする段階、
を含む、
ことを特徴とするコンピュータ可読媒体。
【請求項22】
前記トリガは、プレーヤキャラクター又は非プレーヤキャラクターが前記仮想3次元オブジェクトに触れること、プレーヤキャラクター又は非プレーヤキャラクターが該仮想3次元オブジェクトに損傷を与えること、プレーヤキャラクター又は非プレーヤキャラクターが該仮想3次元オブジェクトを取り上げること、プレーヤキャラクター又は非プレーヤキャラクターが該仮想3次元オブジェクトを投げること、又は所定の台本通りのイベントから構成されるグループから選択されることを特徴とする請求項21に記載の媒体。
【請求項23】
少なくとも1つのトリガを定義する前記段階は、プレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトによって引き起こすことができる少なくとも1つのトリガを定義する段階を含み、
前記トリガに対する少なくとも1つの限定子を定義する段階を更に含み、
少なくとも1つの限定子を定義する前記段階は、どのプレーヤキャラクター、非プレーヤキャラクター、又は仮想オブジェクトが遷移を引き起こすことを許されるか、又はいつ遷移の発生が許されるかを定義する段階を含む、
ことを特徴とする請求項21に記載の媒体。
【請求項24】
前記シミュレーションは、MMOであることを特徴とする請求項21に記載の媒体。
【請求項25】
シミュレーションにおいて仮想3次元オブジェクトを管理するためのシステムを含むコンピュータ可読媒体であって、
a.状態によって一部定義される物理オブジェクトを含む複数の仮想オブジェクトに関するデータを格納するためのデータベースモジュール、及び
b.第1の状態から第2の状態へのオブジェクトの遷移を定義するためのトリガ定義モジュールを含む物理エンジンモジュール、
を含むことを特徴とするコンピュータ可読媒体。
【請求項26】
前記第1の状態は、非物理オブジェクトであり、前記第2の状態は、物理オブジェクトであることを特徴とする請求項25に記載の媒体。
【請求項27】
シミュレーションにおける仮想3次元オブジェクトを管理するためのシステムを含むコンピュータ可読媒体であって、
a.状態によって一部定義される物理オブジェクトを含む複数の仮想オブジェクトに関するデータを格納するためのデータベースモジュール、及び
b.i.物理オブジェクト間又は物理オブジェクトと非物理オブジェクト間の相互作用を定義するための相互作用定義モジュールと、
ii.物理オブジェクト間又は物理オブジェクトと非物理オブジェクト間の相互作用の結果を定義するためのオブジェクト規則セットと、
を含む物理エンジンモジュール、
を含むことを特徴とするコンピュータ可読媒体。
【請求項28】
前記オブジェクト規則セットは、ルックアップテーブルであることを特徴とする請求項27に記載の媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公表番号】特表2011−528947(P2011−528947A)
【公表日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願番号】特願2011−520174(P2011−520174)
【出願日】平成21年7月22日(2009.7.22)
【国際出願番号】PCT/US2009/051434
【国際公開番号】WO2010/011770
【国際公開日】平成22年1月28日(2010.1.28)
【出願人】(506394175)ソニー オンライン エンタテインメント エルエルシー (22)
【Fターム(参考)】