(57)【要約】時間の進み方及び／又は物理法則がゲームキャラクタの状態によって変化する。例えば、ゲーム世界が遅くなることは、ゲームキャラクタに、「ゲーム世界」時間のとても短い期間、速く動く特別な能力を与える。
2007536993.tif 000002
【特許請求の範囲】
【請求項１】
ゲームプレイの間に、複数の異なるホストに乗り移る及びそこから離脱することの出来るゲームキャラクタと、
前記ゲームキャラクタが前記ホストの内の１つに乗り移るか又はそこから離脱するかによって、ゲーム世界において時間が経過する速さが変化する時間変更効果とを備える、ビデオゲーム。
【請求項２】
前記ゲームキャラクタが前記ホストの内の１つに乗り移るか又はから離脱するかによって、前記ゲーム世界における物理法則が変化する、請求項１に記載のビデオゲーム。
【請求項３】
前記ゲームキャラクタが前記ホストの内の１つから離脱する時に、前記ゲーム世界において時間が経過する速さが遅くなる、請求項１に記載のビデオゲーム。
【請求項４】
前記ゲームキャラクタが前記ホストの内の前記１つから離脱する時に、前記ゲーム世界において時間が経過する速さが、所定の比率で遅くなる、請求項３に記載のビデオゲーム。
【請求項５】
前記ゲームキャラクタが前記ホストの内の１つに乗り移る時に、前記ゲーム世界において時間が経過する速さが速くなる、請求項１に記載のビデオゲーム。
【請求項６】
前記ゲームキャラクタが前記ホストの内の前記１つに乗り移る時に、前記ゲーム世界において時間が経過する速さが、所定の比率で速くなる、請求項５に記載のビデオゲーム。
【請求項７】
前記ゲームキャラクタが幽霊キャラクタである、請求項１に記載のビデオゲーム。
【請求項８】
ビデオゲームをプレイするためのグラフィックスシステムによって実行可能となるビデオゲーム命令を記憶する記憶媒体であって、前記ビデオゲームが、
ゲームプレイの間に、複数の異なるホストに乗り移る及びそこから離脱することの出来るゲームキャラクタと、
前記ゲームキャラクタが前記ホストの内の１つに乗り移るか又はそこから離脱するかによって、ゲーム世界において時間が経過する速さが変化する時間変更効果とを備える、記憶媒体。
【請求項９】
手持ち型グラフィックスシステムによって前記ビデオゲーム命令が実行可能となる、請求項８に記載の記憶媒体。
【請求項１０】
ビデオゲームコンソールによって前記ビデオゲーム命令が実行可能となる、請求項８に記載の記憶媒体。
【請求項１１】
パーソナルコンピュータによって前記ビデオゲーム命令が実行可能となる、請求項８に記載の記憶媒体。
【請求項１２】
エミュレータプログラムを実行するパーソナルコンピュータによって前記ビデオゲーム命令が実行可能となる、請求項８に記載の記憶媒体。
【請求項１３】
前記ゲームキャラクタが前記ホストの内の前記１つに乗り移るか又はそこから離脱するかによって、前記ゲーム世界における物理法則が変化する、請求項８に記載の記憶媒体。
【請求項１４】
前記ゲームキャラクタが前記ホストの内の１つから離脱する時に、前記ゲーム世界において時間が経過する速さが遅くなる、請求項８に記載の記憶媒体。
【請求項１５】
前記ゲームキャラクタが前記ホストの内の１つから離脱する時に、前記ゲーム世界において時間が経過する速さが、所定の比率で遅くなる、請求項１４に記載の記憶媒体。
【請求項１６】
前記ゲームキャラクタが前記ホストの内の１つに乗り移る時に、前記ゲーム世界において時間が経過する速さが速くなる、請求項８に記載の記憶媒体。
【請求項１７】
前記ゲームキャラクタが前記ホストの内の前記１つに乗り移る時に、前記ゲーム世界において時間が経過する速さが、所定の比率で速くなる、請求項１６に記載の記憶媒体。
【請求項１８】
前記ゲームキャラクタが幽霊キャラクタである、請求項８に記載の記憶媒体。
【請求項１９】
ゲームプレイの間、ゲームキャラクタがホストに乗り移るように制御すること、
前記ゲームキャラクタが前記ホストの内の１つに乗り移る時に、ゲーム世界において時間が経過する速さを速くさせること、
前記ゲームキャラクタが前記ホストの内の前記１つから離脱するように制御すること、
前記ゲームキャラクタが前記ホストの内の前記１つから離脱する時に、前記ゲーム世界において時間が経過する速さを遅くさせることを含む、ビデオゲーム方法。
【請求項２０】
ゲームプレイの間、ゲームキャラクタがホストに乗り移るように制御すること、
前記ゲームキャラクタが前記ホストの内の１つに乗り移る時に、ゲーム世界における第１の物理法則を設定すること、
前記ゲームキャラクタが前記ホストの内の前記１つから離脱するように制御すること、
前記ゲームキャラクタが前記ホストの内の前記１つから離脱する時に、前記ゲーム世界における第２の物理法則を設定することを含む、ビデオゲーム方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は一般的にビデオゲームに関し、より特定的には、時間の遅れ効果を持つビデオゲームに関する。本願は、またこのようなビデオゲームのソフトウェアを記憶する記憶媒体についても記述している。
【背景技術】
【０００２】
本願は、２００４年５月１０日に出願された米国仮出願第６０／５６９，２４９号明細書の利益を請求するものであり、その全内容を本明細書に引用したものとする。
【０００３】
私達の多くは、いかにも本物らしい恐竜、エイリアン、アニメーションのおもちゃ、及び他の架空の生物が登場するフィルムを見たことがある。このようなアニメーションはコンピュータグラフィックスにより可能となる。このような技術を用いて、コンピュータグラフィックスのアーチストは、各オブジェクトがどのように見えるべきか及び外観が時間と共にどのように変化するべきかを指定することが出来るとともに、コンピュータはこれらのオブジェクトを形作り、テレビやコンピュータ画面等のディスプレイにこれらを表示する。表示される画像の各部分が、ある場面における各オブジェクトの位置及び配向、各オブジェクトに光が当たって見える方向、各オブジェクトの表面のテクスチャ、及び他の要素に基づいて適切な色と形状を有することを確実にするために必要な多数のタスクを行うための処理をコンピュータは行う。
【特許文献１】米国特許第６，６７６，５２０号明細書
【特許文献２】米国特許出願公開第０９／８１４，９５３号明細書
【特許文献３】米国特許第６，７０７，４５８号明細書
【特許文献４】米国特許第６，６０９，９７７号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００４】
コンピュータグラフィックスの生成は複雑であるために、ほんの数年前まではコンピュータで作られた３次元（３Ｄ）グラフィックスは主に、非常に高価な専門性の高いフライトシミュレータ、高性能のグラフィックスワークステーション、及びスーパーコンピュータに限られていた。一般の人々は、これらのコンピュータシステムによって生成された画像の一部を映画や費用をかけたテレビ広告で見ることはあっても、ほとんどの人は、グラフィックスの生成を行っているコンピュータと実際に対話は出来なかったであろう。これは、例えばニンテンドー・ゲームキューブ（登録商標）等の比較的低価格の３Ｄグラフィックスのプラットフォーム及びパーソナルコンピュータで現在使用可能な種々の３Ｄグラフィックスカードが容易に入手出来るようになったため、大きく変わってきた。現在では家庭やオフィスにおいて、比較的低価格のコンピュータグラフィックスシステムでエキサイティングな３Ｄアニメーション及びシミュレーションと対話することが可能になっている。
【課題を解決するための手段】
【０００５】
本願は、３Ｄグラフィックスのプラットフォームでプレイすることの出来るビデオゲームの一例を説明する。この例のビデオゲームは、プレイヤがまるで本人自身の目で見ているようかのようにゲームをする一人称ゲームであるが、本願はこれに限定されない。このビデオゲームには幽霊が登場し、その幽霊はゲームキャラクタ及びゲームオブジェクト等の種々のホストに「乗り移る」ことが出来ることでゲームの目的を達成する。幽霊がホストに乗り移ると、ゲームの視界は乗り移られたホストの視界に移る。つまり、プレイヤは乗り移られたホストの目すなわち視点を通してゲーム世界を見ることになる。一例であるこのビデオゲームのひとつの局面では、プレイヤが幽霊の形態でいる時は、その幽霊はゲームの他のキャラクタよりもはるかに速く動くことが出来る。これをシミュレートするために、「現実のゲーム世界」の時間の進行を遅くする。ゲーム世界が遅く進むことで、幽霊には、「ゲーム世界」時間の非常に短い時間で、素早く動く特別な能力が与えられる。それによって、幽霊は例えば、罠を仕掛ける又は他のキャラクタを助けるために、他のキャラクタを猛スピードで追い抜くことが出来る。
【０００６】
一例であるこのビデオゲームの別の局面では、プレイヤが幽霊の形態でいるのか又はホストに乗り移っているのかによって、物理法則が変化してもよい。例えば、プレイヤが幽霊の形態であり、現実のゲーム世界が遅くなった場合に、視覚効果を高めるために、運動法則に一定の変更を加えてもよい。例えば、遅くなったゲーム世界では、爆発により吹き飛ぶオブジェクトが、通常のゲーム世界での視界と比べて、より高く及びより遠くに飛ぶように見えるようにしてもよい。なおこの例においては、時間の進み方が遅くなることと物理法則の変化を組み合わせて用いているが、勿論実際にはこれらの特徴をそれぞれ別々に用いてもよい。
【０００７】
これら及び他の特徴及び効果は、添付図面と照合して、以下の詳細な説明からより一層、十分に完全に理解されるであろう。
【発明を実施するための最良の形態】
【０００８】
図１は、インタラクティブ３Ｄコンピュータグラフィックスシステム５０の一例を示しており、本明細書で説明するビデオゲームはこのシステムで実行することが出来る。システム５０を用いて、関心を引くようなステレオサウンドを伴ったインタラクティブ３Ｄビデオゲームをプレイすることが可能となる。更に、システム５０は、他の種々の用途にも用いることが出来る。この例では、システム５０は、３Ｄ世界のデジタル表現又はモデルをインタラクティブにリアルタイムで処理することが出来る。システム５０は、この世界の一部又は全てを任意の視点で表示することが出来る。例えば、システム５０は、手持ち型コントローラ５２ａ、５２ｂ又は他の入力装置からのリアルタイム入力に対応して、その視点をインタラクティブに変更することが出来る。これによりゲームプレイヤは、世界の内部又は外部の者の目を通して世界を見ることが出来る。システム５０は、リアルタイム３Ｄ対話型表示を必要としない用途（例えば、２次元（２Ｄ）表示生成及び／又は非対話型表示）のために用いることが出来るが、高品質３Ｄ画像を素早く表示出来るということを利用して、非常にリアリスティックでエキサイティングなゲームプレイ又は他のグラフィカルインタラクションを生み出すことが可能となる。
【０００９】
システム５０を用いてビデオゲーム又は他のアプリケーションを実行するために、ユーザすなわちプレイヤはまず、メインユニット５４を自分のカラーテレビ５６又は他の表示装置に、ケーブル５８でそれぞれの間を繋いで接続する。メインユニット５４はカラーテレビ５６を制御するための映像信号及び音声信号を生成する。映像信号はテレビ画面５９に表示される画像を制御し、音声信号はテレビのステレオスピーカ６１Ｌ、６１Ｒを通して音声として再生される。
【００１０】
更にユーザはメインユニット５４を電源に接続する必要がある。この電源は、標準の家庭用の電気の壁面コンセントにプラグ接続する従来のＡＣアダプタ（図示せず）でよく、家庭電流をメインユニット５４に電力供給するのに適した直流低電圧信号に変換する。他の実施においては電池を用いてもよい。
【００１１】
ユーザはメインユニット５４に入力を行うために、手持ち型コントローラ５２ａ、５２ｂを用いてもよい。制御器６０ａ、６０ｂを用いて、例えば、テレビ５６に表示されるキャラクタが３Ｄ世界内で動くべき方向（上又は下、左又は右、近づくか又は遠ざかるか）を指定することが出来る。制御器６０ａ、６０ｂは、他の用途（例えば、メニュー選択、ポインタ／カーソル制御等）の入力を行うために用いることも出来る。コントローラ５２は様々な形態を取ることが出来る。この例では、各コントローラ５２は、ジョイスティック、押しボタン、及び／又は方向スイッチ等の制御器６０を具備する。コントローラ５２をケーブルによって、又は電磁（例えば、電波又は赤外線）波による無線によって、メインユニット５４と接続することが出来る。
【００１２】
各コントローラ５２は更に、メインユニット５４からの制御信号に応じて選択的に駆動される１つあるいは複数の振動装置（図示せず）を具備してもよい。駆動されると、これらの振動装置は振動を生じ、その振動がコントローラを把持しているプレイヤの手に伝達される。このようにして、ゲームをしている時に振動生成イベントが生じると、プレイヤに触感が伝わるであろう。振動生成イベントの例としては、衝突、荒れた路面上での移動、加速等が挙げられる。振動装置を用いたコントローラの例の更なる詳細は、米国特許第６，６７６，５２０号明細書及び米国特許出願公開第０９／８１４，９５３号明細書に記載されており、それらの全内容を本明細書に引用したものとする。
【００１３】
ゲーム等のアプリケーションを実行するには、ユーザは、実行したいビデオゲーム又は他のアプリケーションを記憶している適切な記憶媒体６２を選択し、メインユニット５４の記憶媒体収容部６４にその記憶媒体を挿入する。記憶媒体６２は、例えば、専用に符号化及び／又は暗号化された光及び／又は磁気ディスクでありうる。グラフィックスシステムの他の実施においては、半導体メモリ等の他の記憶装置を用いてもよいことは言うまでもない。更なる他の実施において、ユーザは、インターネット等の通信ネットワークを通じて、ゲームソフトウェアを記憶するリモートコンピュータに接続してもよい。図１の実施において、ユーザは、電源スイッチ６６を操作してメインユニット５４の電源を入れ、記憶媒体６２に記憶されているソフトウェアに対応したビデオゲーム又は他のアプリケーションをメインユニットに実行させてもよい。ユーザは、コントローラ５２を操作して、メインユニット５４に入力を行うことが出来る。例えば、制御器６０を操作することによってゲーム又は他のアプリケーションを開始させてもよい。他の制御器６０を動かすことによって、アニメーションのキャラクタを別々の方向に動かしたり、又は３Ｄ世界におけるユーザの視点を変更したりすることが出来る。記憶媒体６２内に記憶されている特定のソフトウェアによって、コントローラ５２の種々の制御器６０はいろいろなタイミングでいろいろな機能を行うことが可能となる。
【００１４】
システム全体の電子機器部品の例
【００１５】
図２は、システム５０の構成部品を例示したブロック図である。主要な構成部品は、メインプロセッサ（ＣＰＵ）１１０、メインメモリ１１２、グラフィックス・オーディオプロセッサ１１４などである。この例では、メインプロセッサ１１０（例えば、ＩＢＭ  ＰｏｗｅｒＰＣ（登録商標）７５０の発展系）は、グラフィックス・オーディオプロセッサ１１４経由で、手持ち型コントローラ５２（及び／又は他の入力装置）からの入力を受ける。メインプロセッサ１１０はインタラクティブにユーザの入力に応答し、例えば、光ディスクドライブ等の大容量記憶アクセス装置１０６を経由して外部記憶媒体６２によって供給されるビデオゲーム又は他のプログラムを実行する。一例として、ビデオゲームプレイのコンテキストの中で、メインプロセッサ１１０は、種々のインタラクティブ及び制御機能に加え、衝突の検出及びアニメーション処理を行うことが出来る。
【００１６】
この例では、メインプロセッサ１１０は３Ｄグラフィックス・オーディオコマンドを生成し、それらをグラフィックス・オーディオプロセッサ１１４へ送信する。グラフィックス・オーディオプロセッサ１１４は、これらのコマンドを処理して、ディスプレイ５９上に関心を引くような画像を生成し、ステレオスピーカ６１Ｒ、６１Ｌ又は他の適切な音声生成装置で関心を引くようなステレオサウンドを生成する。
【００１７】
例としてシステム５０はビデオエンコーダ１２０を具備し、このビデオエンコーダ１２０は、グラフィックス・オーディオプロセッサ１１４から画像信号を受信し、その画像信号を、コンピュータモニタ又は家庭用カラーテレビ５６等の標準的な表示装置に表示するのに適したアナログ及び／又はデジタル映像信号に変換する。更にシステム５０は、デジタル化された音声信号を圧縮及び展開し、必要に応じてデジタル音声信号方式とアナログ音声信号方式の間で変換を行うことも出来る、オーディオコーデック１２２を具備する。オーディオコーデック１２２は、バッファ１２４経由で音声入力を受信し、それらを、グラフィックス・オーディオプロセッサ１１４へ供給し、処理（例えば、プロセッサが生成する他の音声信号及び／又は大容量記憶アクセス装置１０６のストリーミング音声出力端子経由で受信する他の音声信号とミキシングする等）が行われうる。この例では、グラフィックス・オーディオプロセッサ１１４は、音声に関するタスクに利用可能な音声関連情報を、音声メモリ１２６に記憶することが出来る。グラフィックス・オーディオプロセッサ１１４は、結果として生じた音声出力信号を、（例えば、バッファ増幅器１２８Ｌ、１２８Ｒを経由して）スピーカ６１Ｌ、６１Ｒによって再生出来るようにアナログ信号への展開及び変換のために、オーディオコーデック１２２に供給する。
【００１８】
グラフィックス・オーディオプロセッサ１１４は、システム５０内に存在するであろう追加的な種々の装置と通信することが出来る。例えば、パラレルデジタルバス１３０を用いて、大容量記憶アクセス装置１０６及び／又は他の構成要素と通信することが出来る。シリアル周辺バス１３２は、例えばプログラマブルリードオンリーメモリ及び／又はリアルタイムクロック１３４と、モデム１３６又は他のネットワークインターフェース（これらにより、システム５０は、インターネットまたは他のデジタルネットワークのような電気通信ネットワーク１３８に接続して、プログラム命令及び／又はデータをダウンロード或いはアップロードすることができる）と、フラッシュメモリ１４０とを含む、種々の周辺装置或いは他の装置と通信することが出来る。
【００１９】
さらなる外部シリアルバス１４２を用いて、追加的な増設メモリ１４４（例えばメモリカード）又は他の装置と通信してもよい。種々の装置とバス１３０、１３２，１４２を接続するためにコネクタを用いてもよい。
【００２０】
グラフィックス・オーディオプロセッサの例
【００２１】
図３は、グラフィックス・オーディオプロセッサ１１４の一例を示すブロック図である。グラフィックス・オーディオプロセッサ１１４は一例として、シングルチップＡＳＩＣ（特定用途向け集積回路）でありうる。この例では、グラフィックス・オーディオプロセッサ１１４は、プロセッサインターフェース１５０、メモリインターフェース／コントローラ１５２、３Ｄグラフィックスプロセッサ１５４、音声デジタル信号プロセッサ（ＤＳＰ）１５６、音声メモリインターフェース１５８、音声インターフェース・ミキサ１６０、周辺コントローラ１６２、及び表示コントローラ１６４を具備する。
【００２２】
３Ｄグラフィックスプロセッサ１５４は、グラフィックス処理タスクを行う。音声デジタル信号プロセッサ１５６は、音声処理タスクを行う。表示コントローラ１６４はメインメモリ１１２からの画像情報にアクセスし、表示装置５６で表示するためにビデオエンコーダ１２０にそれを供給する。音声インターフェース・ミキサ１６０は、オーディオコーデック１２２にインターフェース接続し、別々のソースからの音声（例えば、大容量記憶アクセス装置１０６からのストリーミング音声、音声ＤＳＰ１５６の出力、及びオーディオコーデック１２２経由で受信される外部音声入力）をミキシングすることも出来る。プロセッサインターフェース１５０は、メインプロセッサ１１０とグラフィックス・オーディオプロセッサ１１４との間のデータ及び制御インターフェースを提供する。
【００２３】
メモリインターフェース１５２は、グラフィックス・オーディオプロセッサ１１４とメモリ１１２との間のデータ及び制御インターフェースを提供する。この例において、メインプロセッサ１１０は、グラフィックス・オーディオプロセッサ１１４の一部であるプロセッサインターフェース１５０及びメモリインターフェース１５２を経由して、メインメモリ１１２にアクセスする。周辺コントローラ１６２は、グラフィックス・オーディオプロセッサ１１４と上述の種々の周辺機器との間のデータ及び制御インターフェースを提供する。音声メモリインターフェース１５８は音声メモリ１２６とインターフェースをとる。
【００２４】
グラフィックスパイプラインの例
【００２５】
図４は、３Ｄグラフィックスプロセッサ１５４の一例の更なる詳細を示す図である。３Ｄグラフィックスプロセッサ１５４は、他にもいろいろあるが、コマンドプロセッサ２００及び３Ｄグラフィックスパイプライン１８０を具備する。メインプロセッサ１１０は、コマンドプロセッサ２００にデータのストリーム（例えば、グラフィックスコマンドストリームとディスプレイリスト）を通信する。メインプロセッサ１１０は、メモリレイテンシを最短にするために２レベルのキャッシュを具備し、さらにグラフィックス・オーディオプロセッサ１１４用にキャッシュされないデータストリームのためのライトギャザリングバッファを具備する。ライトギャザリングバッファは、部分キャッシュラインを集めて全キャッシュラインにし、バス使用量を最大にするために１回につき１キャッシュラインのデータをグラフィックス・オーディオプロセッサ１１４へ送出する。
【００２６】
コマンドプロセッサ２００は、メインプロセッサ１１０から表示コマンドを受信し、それらを解析し―表示コマンドを処理するために必要な任意の追加的なデータを共有メモリ１１２から得る。コマンドプロセッサ２００は、頂点コマンドのストリームをグラフィックスパイプライン１８０へ供給して、２Ｄ及び／又は３Ｄ処理及びレンダリングが行われる。グラフィックスパイプライン１８０はこれらのコマンドに基づいて画像を生成する。結果として生じる画像情報をメインメモリ１１２へ転送して、パイプライン１８０のフレームバッファ出力をディスプレイ５６に表示する表示コントローラ／映像インターフェース装置１６４がこれにアクセスしてもよい。
【００２７】
図５は、グラフィックスプロセッサ１５４の論理流れ図である。メインプロセッサ１１０は、グラフィックスコマンドストリーム２１０、ディスプレイリスト２１２、及び頂点配列２１４をメインメモリ１１２に記憶し、バスインターフェース１５０を経由してコマンドプロセッサ２００へポインタを送ることが出来る。メインプロセッサ１１０は、グラフィックスコマンドを、メインメモリ１１０内に割り当てた１つ又は複数のグラフィックス先入れ先出し（ＦＩＦＯ）バッファ２１０に記憶する。コマンドプロセッサ２００がフェッチするのは、（１）同期化／フロー制御及び負荷バランシングのためのグラフィックコマンドを受信してバッファリングするオンチップＦＩＦＯメモリバッファ２１６経由のメインメモリ１１２からのコマンドストリーム、（２）オンチップコールＦＩＦＯメモリバッファ２１８経由のメインメモリ１１２からのディスプレイリスト２１２、及び（３）頂点キャッシュ２２０経由の、メインメモリ１１２内のコマンドストリームから及び／又は頂点配列２１４からの頂点属性である。
【００２８】
コマンドプロセッサ２００はコマンド処理動作２００ａを行い、この動作では属性の種類を浮動小数点形式に変換し、結果として生じた完全な頂点ポリゴンデータをグラフィックスパイプライン１８０へ送り、レンダリング／ラスタライズが行われる。プログラマブルメモリ調停回路１３０（図４参照）は、共有メインメモリ１１２へのアクセスを、グラフィックスパイプライン１８０、コマンドプロセッサ２００、及び表示コントローラ／映像インターフェース装置１６４の間で調停する。
【００２９】
図４に示すように、グラフィックスパイプライン１８０は、変換装置３００、セットアップ／ラスタライザ４００、テクスチャ装置５００、テクスチャ環境装置６００、及びピクセルエンジン７００を具備することが出来る。
【００３０】
変換装置３００は、種々の２Ｄ及び３Ｄ変換、及び他の動作３００ａを行う（図５参照）。変換装置３００は、変換処理３００ａで用いられるマトリクスを記憶するための１つ又は複数のマトリクスメモリ３００ｂを具備してもよい。変換装置３００は、モデルビュー（登録商標）マトリクスを用いて、入力されるジオメトリを頂点単位でオブジェクト空間又はモデル空間から同次の視覚空間へと変換し、そして（必要に応じてクリップ空間におけるクリッピング３００ｄを行った後に）遠近法による拡大縮小及び画面座標変換を行い、結果として生じる画面空間の（ｘ、ｙ、ｚ）の３値を供給してラスタラズする。更に、変換装置３００は、入力されるテクスチャ座標を変換し、射影テクスチャ座標（３００ｃ）を算出する。ある例示的実施形態においては、変換装置３００ｂがさらに行うライティング処理３００ｅでは、最大８つまでの単独の光のライティング算出を頂点単位で行う。更に、変換装置３００は、浮き出し型のバンプマッピング効果を出すためのテクスチャ座標生成（３００ｃ）を行うことも出来る。
【００３１】
セットアップ／ラスタライザ４００は、セットアップ装置を具備し、このセットアップ装置は、変換装置３００から頂点データを受信し、エッジのラスタライズ、テクスチャ座標のラスタライズ、及び色のラスタライズを行う１つ又は複数のラスタライザ装置（４００ｂ）へ３値のセットアップ情報を送信する。
【００３２】
テクスチャ装置５００（オンチップ埋め込みＤＲＡＭテクスチャメモリ（ＴＭＥＭ）５０２を具備してもよい）はテクスチャリングに関する種々のタスクを行う、例えば、メインメモリ１１２から色及びｚテクスチャ５０４を検索すること、テクスチャ処理（５００ａ）、バンプマッピング処理、及び間接的なテクスチャ処理（５００ｃ）等を行い、テクスチャ処理は、例えばマルチテクスチャ処理、ポストキャッシュテクスチャ解凍、テクスチャフィルタリング（例えば、リサンプリングを行って非均一及び／又は非線形なテクスチャマッピングを行う）、エンボス処理、射影テクスチャを用いた陰影付け及びライティング、及びアルファ透明性及び深度を用いたＢＬＩＴ等であり、バンプマッピング処理ではバンプマッピング効果、擬似テクスチャ効果、及びテクスチャタイリング効果（５００ｂ）を得るのためのテクスチャ座標変位を算出する。一般的には、テクスチャリングはある画像、関数、又は他のデータを用いて表面の各位置の見え方を調整する。一例として、煉瓦壁の各煉瓦のジオメトリを精密に表現するのではなく、煉瓦壁の２次元カラー画像をひとつのポリゴンの表面に貼り付ければよい。ポリゴンが表示されると、ポリゴンが配置されている場所にそのカラー画像が現れる。
【００３３】
テクスチャ装置５００は、フィルタ処理されたテクスチャ値を、テクスチャ環境処理（６００ａ）を行うためにテクスチャ環境装置６００に出力する。テクスチャ環境装置６００は、ポリゴン及びテクスチャの色／アルファ／深度をブレンドし、反転領域に基づいたフォグ効果を得るために、テクスチャフォグ処理（６００ｂ）を行うことも出来る。テクスチャ環境装置６００は、例えば色／アルファ変調、エンボス処理、ディテールテクスチャリング、テクスチャスワッピング、クランピング、及び深度ブレンド処理に基づいた、興味深い種々の他の環境に関連した機能を、複数の工程を踏むことで行うことが出来る。簡潔に述べると、この例示的実施形態において、テクスチャ環境装置６００は、頂点単位でライティング、テクスチャ、及びコンスタントカラーを組み合わせてピクセルの色を作り、続いてフォグ処理と、ｚテクスチャのためのｚブレンド処理等のブレンド処理とを行う。ある例示的実施形態においては、色及びアルファの構成要素は、個別制御の独立したテクスチャ環境装置回路を備えている。ハードウェアに実装された１組のテクスチャ環境色／アルファ結合器は、マルチテクスチャリング又は他のブレンド機能を実行するためのテクスチャ環境工程（各々が個別に制御される）と呼ばれる複数周期にわたって繰り返し使用される。
【００３４】
ピクセルエンジン７００は、カラーフレームバッファ及び深度バッファを具備する埋め込み（オンチップ）ＤＲＡＭ（１ＴＳＲＡＭ）フレームバッファメモリ７０２に、色及び深度データを記憶する。ピクセルエンジン７００は、深度（ｚ）比較（７００ａ）及びピクセルブレンド処理（７００ｂ）を行う。ｚ比較７００ａ’は、現在有効であるレンダリングモードに応じて（例えば、アルファ閾値処理が必要でない場合）、グラフィックスパイプライン１８０の初期の工程において（つまりテクスチャリングよりも前に）行うことも可能である。しかし、ｚバッファリングはパイプラインの終端に行うことが、必須ではないが望ましい。ピクセルエンジン７００は、表示／映像インターフェース装置１６４のアクセスのためにオンチップフレームバッファ７０２をメインメモリ１１２に定期的に書き込むコピー動作７００ｃを含む。このコピー動作７００ｃを利用して、動的色合成又はｚテクスチャ合成のためにメインメモリ１１２のテクスチャに、埋め込みフレームバッファ色情報又はｚ情報をコピーすることも出来る。アンチエイリアシング及び他のフィルタリングはコピー動作中に行うことが出来る。（最終的にはメインメモリ１１２に記憶される）グラフィックスパイプライン１８０のカラーフレームバッファ出力は、表示／映像インターフェース装置１６４によってフレーム毎に読み出される。表示コントローラ／映像インターフェース１６４は、デジタルＲＧＢピクセル値を提供してディスプレイ１０２に表示する。
【００３５】
グラフィックスシステム５０の例の更なる詳細は、米国特許第６，７０７，４５８号明細書及び米国特許第６，６０９，９７７号明細書に記載されており、その各々の全内容を本明細書に引用したものとする。
【００３６】
ビデオゲームの例
【００３７】
グラフィックスシステム５０例を用いてプレイすることの出来る一人称幽霊ゲームの一例のコンテキストに沿って以下説明する。例示の実施形態では、このビデオゲームのための実行可能な命令（プログラム）が、グラフィックスシステム５０と動作可能に接続される記憶媒体６２に記憶される。言うまでもなく、ここで説明する技術及び方法は、この例の幽霊ゲーム又はこの例のグラフィックスシステムに限定されるものではなく、これらの技術及び方法は、多数の異なる種類のビデオゲーム及びグラフィックスシステムに容易に適用可能であることは容易にわかるであろう。例えば、これらのグラフィックスシステムは図１に示すようなコンソールシステムに限定されるものではなく、手持ち型装置、パーソナルコンピュータ、及び手持ち型装置又はパーソナルコンピュータで作動するエミュレータ等であってもよい。例えば、エミュレータはグラフィックスシステム５０のハードウェア及び／又はソフトウェア構成（プラットフォーム）とは異なるハードウェア及び／又はソフトウェア構成（プラットフォーム）を提供してもよい。エミュレータシステムは、アプリケーションソフトウェアが書き込まれたシステムのハードウェア及び／又はソフトウェア構成要素の一部又は全てをエミュレート又はシミュレートする、ソフトウェア及び／又はハードウェア構成要素を有してもよい。例えば、エミュレータシステムは、手持ち型装置又はグラフィックスシステム５０のハードウェア及び／又はファームウェアをシミュレートするソフトウェアエミュレータプログラムを実行するパーソナルコンピュータ等の汎用デジタルコンピュータを具備することが出来るであろう。
【００３８】
この例の幽霊ゲームは、一人称ゲームであり、プレイヤがまるで本人自身の目で見ているかのようにゲームを行う。この幽霊ゲームの例において、プレイヤは、広大な敷地のどこかで謎のうちに生かされている物体を探す。隙間をすり抜け、電子機器を妨害し、物体を動かす等が出来るということを利用して、実際上は見られないように人間世界の中を移動することが出来る幽霊として、プレイヤは敷地を探検することが出来る。幽霊は、複数の異なるキャラクタ又はオブジェクト（「ホスト」）に「乗り移る」ことが可能であり、その後ホストの武器、装備品、スキル、及び記憶さえも利用して目標を達成することが出来る。例えば、幽霊は、他のキャラクタと戦うために戦士のキャラクタに乗り移ることが出来る、又は人間キャラクタでは近づけないであろう領域へ立ち入るために犬やねずみのような動物に乗り移ってもよい。幽霊は、武器や機械の制御器等のオブジェクトにも乗り移ることが出来、これらのオブジェクトを制御してゲームの目的を達成してもよい。これにより、このゲーム例では、プレイヤは幽霊であり、その幽霊はゲームキャラクタ及びゲームオブジェクト等のホストに「乗り移る」ことを行い又はそれらに住み着いて、ゲームの目的を達成する。幽霊があるホストに乗り移ると、ゲームの視界はその乗り移られたホストの視界へと移る。
【００３９】
一般的には、ホストが所定の「オーラ」を持っている時に幽霊はそのホストに乗り移ることが出来る。ゲームキャラクタの場合、これらのオーラはキャラクタの感情の状態を示す。このゲーム例では、プレイヤが幽霊の形態でいる時には、その幽霊には候補となる乗り移り可能なキャラクタの感情の状態がオーラの色でわかる。オーラは、乗り移り可能なホストの少なくとも一部を、目に見えるように囲む。図６Ａは白色のオーラ６０４を持つキャラクタ６０２を示し、図６Ｂは黄色のオーラ６１４を持つキャラクタ６１２を示し、図６Ｃは赤色のオーラ６２４を持つキャラクタ６２２を示す。上述のように、キャラクタのオーラの色は、そのキャラクタの感情の状態を示す。例えば、白色のオーラ６０４は、キャラクタ６０２が自信を持っている感情の状態にあることを示す。黄色のオーラ６１４は、キャラクタ６１２が警戒した感情の状態にあることを示す。赤色のオーラ６２４は、キャラクタ６２２が怯えた感情の状態にあることを示す。
【００４０】
これらの色及び感情の状態は、例として挙げたものであり、これらに限定されないことは言うまでもない。また、３つの感情の状態で説明するが、異なった数の感情の状態を用いてもよい。例えば、キャラクタが自信を持った又は怯えた感情の状態のいずれかを持つように限定し、２つの異なった色のオーラを用いてこれら２つの異なった感情の状態を表してもよい。あるいは、２つの異なった感情の状態の場合、キャラクタがその感情の状態の一方あるいは他方にある時にのみ、１つのオーラを与えるようにしてもよい。更なる例では、異なるキャラクタは別々の数及び／又は種類のオーラを持ってもよい。
【００４１】
幽霊は、候補となるキャラクタを怯えさせてそのオーラを白又は黄から赤に変化させることによって、ホストに乗り移ることが出来る。一例として、候補となるホストは、図６Ｂに示すキャラクタ６１２であり、最初は白の（自信を持った）オーラを持っているであろう。幽霊は、例えば、スチームパイプに乗り移る又は住み着くことで、図６Ｂに示すように該スチームパイプから蒸気を放出させてもよい。これによって、キャラクタ６１２のオーラは黄色になり、キャラクタが現在警戒する感情の状態にあることを示すようになる。キャラクタは蒸気の放出を止める又は蒸気が放出されている部屋から逃げることが出来ないので、引き続いてオーラは赤色になり、その時点で幽霊はこのキャラクタに乗り移ることが出来る。更なる例では、候補となるホストは、ラップトップコンピュータでタイプをしているキャラクタであってもよい。幽霊は見られることなく、例えばラップトップに乗り移る又は住み着いてから、キャラクタがタイプをしている最中にラップトップを閉める又はその電源を切って、キャラクタを怯えさせてキャラクタのオーラの色を白から黄に変化させることが出来る。そしてキャラクタは、自分が仕事をしていた部屋から逃げようとするであろう。もし、幽霊がドアの鍵を閉めていたら、キャラクタのオーラは黄色から赤色に変化するであろう。この時点で幽霊はこのキャラクタに乗り移ることが出来る。
【００４２】
キャラクタは好ましくは、黄色又は赤色のオーラを所定の期間だけ維持する。例えば、キャラクタ６１２のオーラが黄色に変化した後に蒸気の放出が止められるとしたら、そのオーラは好ましくは、ある所定の期間（例えば１０秒）の後に白色に戻るということになる。同様に赤色のオーラは、所定の期間の後に黄色のオーラに戻ることになる。
【００４３】
上述のように、候補となるホストキャラクタを怯えさせるために、武器、コンピュータ、蒸気メータ等のオブジェクトに乗り移ることが出来る。ある場合には、これらのオブジェクトにはいつでも乗り移ることが可能であり、その場合、これらは常に赤色のオーラを持つか又はオーラをまったく持たないようにするとよい。他の場合には、オブジェクトを乗り移り可能にするためには、ある特定の目的及び／又は目標を達成しなくてはならないこととしてもよい。この場合、その目的又は目標を達成した後に、オブジェクトが乗り移り可能であるということを示すためにオブジェクトのオーラを１つの色（例えば白色）から別の色（例えば赤色）へと変化させてもよい。このように、オブジェクトの場合は、オーラは通常「感情の状態」を示すのではなく、そのオブジェクトが乗り移り可能か否かを示すことになるであろう。
【００４４】
ある一実施例においては、コントローラ５２の位置決め制御器を用いてカーソル又は他のインジケータをキャラクタの上に置いて、コントローラの「乗り移り」キーを押して乗り移るべきキャラクタを選択することで、乗り移りが達成されてもよい。図６Ｃに示すように、例えば、ゲームディスプレイの右上部に案内情報を出して、コントローラ５２の「Ａ」キーを押すと幽霊がキャラクタ６２２に乗り移るということを示してもよい。案内情報は、現在プレイヤが利用可能なアクションに関連するようにコンテキストに応じたものであってもよい。このようにして、乗り移られうるホストがいる時に、ホストに乗り移るための案内情報が表示されることになる。ホストが乗り移られている時には、ホストから「離脱する」ための案内情報を表示してもよい。
【００４５】
上述のように、ゲームプレイの間、プレイヤは幽霊の形態でいる又は種々のホストに乗り移ることが出来る。例のビデオゲームでは、幽霊がホストに乗り移った時、ゲーム世界における時間は通常通りに経過する。しかし、プレイヤが幽霊の形態でいる時は、幽霊以外にとってゲーム世界での時間の進み方は遅くなる。これにより幽霊は、他にもいろいろあるが、ゲームの中の他のキャラクタよりも速く動くことが出来る。この時間の進み方が遅くなることは、幽霊キャラクタの表示を生成する部分以外のゲームプログラムコードの部分に与えられる時間変化値を調整することにより、実際には実行が可能となる。
【００４６】
図７Ａ〜７Ｄを参照して、時間の進み方が遅くなることを更に説明する。図７Ａ及び７Ｂにおいて、幽霊はホストキャラクタ８０２に乗り移った。結果として、上述のようにゲーム世界における時間は通常通りに経過する。従って、図７Ａにおいて、乗り移られたキャラクタ８０２はキャラクタ８０４を追いかけており、ある時間Ｔ後の図７Ｂにおいては、キャラクタ８０２はまだキャラクタ８０４に追い付いていない。図７Ｃ及び７Ｄにおいて、キャラクタ８０２は幽霊であり、幽霊はキャラクタ８０４を追いかけている。しかし、実際の世界では時間の進み方が遅くなっているため、図７Ｂに示すのと同じ地点にキャラクタ８０４が到達するまでに、幽霊８０２はキャラクタ８０４に追い付く及びそれを追い抜くことが出来る（図７Ｄ参照）。この例では、幽霊８０２がキャラクタ８０４の２倍の速さで動くように、キャラクタ８０４の時間変化値を調整することが考えられる。この調整の特定な例は、例として挙げたものであり、これに限定されないことは言うまでもない。
【００４７】
こうして、幽霊から見た時、ゲーム世界は遅く進む。一実施例では、幽霊がホストから離脱する時、時間の進み方が遅くなることは急激に起こるのではなく、所定の比率で遅くなる。同様に、幽霊がホストに乗り移る時も、時間の進み方は急激に速くなるのではなく、所定の比率で速くなる。本発明を限定するものではなく一例によると、約１秒間から１０秒間かけて時間の進み方が速くなる又は遅くなるように、これらの比率は決定されてもよい。時間の進み方が遅くなること及び／又は速くなることが場合によってはかなり不快になるように、又は遅くなること及び／又は速くなることが比較的滑らかになるように、これらの所定時間は調節が出来る。
【００４８】
また、遅くなったゲーム世界を、ゲームプレイに組み込むことが出来る。例えば、幽霊はキャラクタを怯えさせるためにホスト（生命のないオブジェクト）に乗り移ることが考えられる。怯えさせられた結果として、キャラクタは例えば廊下を走り出す。もしプレイヤが、キャラクタが走っている間にホストに乗り移り続けるのだとすれば、キャラクタはその場面から去ってしまい乗り移られるべき時間内には追い付かないこともありうる。しかし、ここで説明するビデオゲームの例では、乗り移られたホストから幽霊が去るとすぐに、時間の進み方は遅くなり、幽霊は走っているキャラクタに追い付く及び／又はそれを追い抜くことが出来、そして例えばキャラクタに乗り移ることが出来る。
【００４９】
時間の遅れ機能の利用の別の例示としては、発射体に乗り移るということが考えられる。例えば、ホストに乗り移っているときにプレイヤが武器を撃ち、その後にホストから離脱するということもありうる。離脱の後には実際の世界における時間の進み方は遅くなっているため、幽霊は武器から撃たれた発射体に追い付き乗り移ることが出来る（発射体が乗り移り可能なホストとして、ゲームプログラムによって定義されていると仮定して）。一旦発射体が乗り移られると、それはより正確な照準に向けてプレイヤによって操縦及び制御される。実際に発射体は、武器を撃ったホストに照準を定めるべく操縦されることさえありうる。
【００５０】
例のビデオゲームでは、幽霊がホストに乗り移る時にゲーム世界時間の進み方は遅くなる。また別の実施においては、幽霊がその他のキャラクタより遅く動くために、幽霊が幽霊の形態でいる時にゲーム世界時間の進み方が速くなるということも考えられる。幽霊がゲーム内のある地点において幽霊の形態でいる時にゲーム世界時間の進み方が速くなる、及び幽霊がゲーム内のある他の地点において幽霊の形態でいる時にゲーム世界時間の進み方が遅くなるようにすることも出来る。例えばゲームレベルの違いによって、これらの地点は異なってもよい。
【００５１】
時間がより遅く進むことに加えて、プレイヤが幽霊の形態で又は乗り移られたホストを通して、のどちらで世界を見ているかによって「物理法則」を少なくとも部分的に変更してもよい。例えば、プレイヤが幽霊の形態で世界を見ている時には、乗り移られたホストを通してプレイヤが世界を見ている時と比べて、オブジェクト又はキャラクタは爆発によってより遠くへ及び／又はより高く吹き飛ばされることが考えられる。プレイヤが幽霊の形態で世界を見ている時のこの物理法則の変更は、ゲームプレイの間、より良い視覚効果を可能にする。この物理法則における変更を、単により良い視覚効果を提供する以外の目的に用いてもよいのは言うまでもない。例えば、プレイヤは幽霊として、この変更した法則を用いて、幽霊がホストに乗り移っている時には達成することの出来ない（又は多大な労力をもってしか達成することの出来ない）目的を達成することが出来る、という具合にゲームプレイにこの変更を一体化させることも可能である。そうすることによって、例えば幽霊の形態でいる幽霊は、幽霊がホストに乗り移っている時に可能な距離と比べて長い距離を、敵に向けて武器を撃つことが出来るようにする等すればよい。
【００５２】
物理法則に関して、ゲームプログラムは、幽霊の形態で見ている世界及び乗り移られたホストを通して見ている世界における法則を決定する命令及びパラメータを具備してもよい。例えば、乗り移られたホストを通して見る運動は、通常のニュートンの運動法則によって規定されることが考えられる。しかしながら、幽霊の形態で見る運動は、上述の効果及び他の効果を生み出すために変更された運動法則によって規定されることが考えられる。例えば、発射体がより高い場所に達し及び／又はより遠い場所へ行くために、発射運動のための方程式における万有引力定数を、通常値の２／３に減じればよい。あるいは、幽霊が幽霊の形態でいる時の方が、幽霊がホストに乗り移っている時と比べて、発射体は大きなエネルギーを与えられるようにしてもよい。このより大きなエネルギーによっても、発射体はより高所へ達する及び／又はより遠い場所へ行くことが可能となる。
【００５３】
この実施例では、プレイヤがキャラクタから離脱する及びそれに乗り移る時に時間の進み方が速くなる及び遅くなる速さは、ビデオゲームプログラムのパラメータ及び命令に応じて決定される。しかしながら、このビデオゲームは本発明を限定するものではなく、これらの遅くなる／速くなる速さはユーザにおいて設定可能にしてもよい。また速くなる／遅くなる速さは、互いに等しくする必要はなく、必要であればホストごとに異なってもよい。
【００５４】
同様にこの実施例では、遅くなった世界における物理法則は、ゲームプログラムのパラメータ及び命令に応じて決定される。また同じく、物理法則用のこれらのパラメータ及び命令はユーザにおいて設定可能にしてもよい。
【００５５】
本発明を、現在最も実際的で好ましい実施例と考えられているものと結び付けて説明したが、本発明は説明した実施例に限定されるべきではなく、むしろ添付の特許請求の範囲の精神及び範囲を超えることのない種々の修正及び同等の構成を包含することを意図するものと理解されるべきである。
【００５６】
本特許に関するファイルには、カラーで作成された少なくとも１つの図面が含まれる。カラーの図面を含む本特許の写しは、請求に応じて及び必要な料金を支払うことによって、特許商標庁より入手することが出来るであろう。
【図面の簡単な説明】
【００５７】
【図１】インタラクティブコンピュータグラフィックスシステムの一例を示す全体図
【図２】図１の例のコンピュータグラフィックスシステムのブロック図
【図３】図２に示す例のグラフィックス及びオーディオプロセッサのブロック図
【図４】図３に示す例の３Ｄグラフィックスプロセッサのブロック図
【図５】図４のグラフィックス及びオーディオプロセッサの論理流れ図の一例
【図６Ａ】オーラを持つゲームキャラクタを示す図
【図６Ｂ】オーラを持つゲームキャラクタを示す図
【図６Ｃ】オーラを持つゲームキャラクタを示す図
【図７Ａ】本例のビデオゲームの時間遅れ効果を示す図
【図７Ｂ】本例のビデオゲームの時間遅れ効果を示す図
【図７Ｃ】本例のビデオゲームの時間遅れ効果を示す図
【図７Ｄ】本例のビデオゲームの時間遅れ効果を示す図
【図１】
2007536993.tif 000003
【図２】
2007536993.tif 000004
【図３】
2007536993.tif 000005
【図４】
2007536993.tif 000006
【図５】
2007536993.tif 000007
【図６Ａ】
2007536993.tif 000008
【図６Ｂ】
2007536993.tif 000009
【図６Ｃ】
2007536993.tif 000010
【図７Ａ】
2007536993.tif 000011
【図７Ｂ】
2007536993.tif 000012
【図７Ｃ】
2007536993.tif 000013
【図７Ｄ】
2007536993.tif 000014
【国際調査報告】
2007536993.tif 000015