ゲームグラフィックスがアニメーション映画ほど美しくないのはなぜですか?


60

トゥームレイダーの事前レンダリングされた予告編を見て、それらのグラフィックスがゲーム自体に含まれることを願っていました。

トレーラーと実際のゲームの間に大きな違いがあるのはなぜですか?ゲームは完全に異なる概念であり、パイプラインが異なり、さまざまな種類のプレーヤーとのやり取りなどを経なければならないことを理解しています。

これまでのところ、ゲームとアニメーションムービーの作成には、3Dモデルの作成、レンダリング(ゲーム内でのみ行われるなど)など、いくつかの基本的なワークロードを共有することがわかっています。アニメーションムービーは長時間レンダリングされ、事前にレンダリングされたシーンのみが表示されます。私が知っているのはそれだけですので、その観点から答えていただければ幸いです!

ゲーム内でのライブレンダリングはあまり美しくありませんが、アニメーションムービーを何時間も何時間もレンダリングするとどうなりますか(一般的な観点から)?


1
私は、受け入れられた答えがあなたの質問のポイントを本当に満たしているか本当にわかりません。あなたがそれから理解したことの要約としてここにコメントを残せますか?すなわち、今まであなたが理解していなかった問題を理解するように、それはあなたにどんなニュースをもたらしましたか?
ボグダンアレクサンドルー14

4
あなたが混乱しているものがわからない。質問はタイトルです。受け入れられた投稿がその質問に答えます。
ジョッキング14

2
実際、答えから80%を理解しました。残りは20%をカバーしました。特に、@ Vladimirの回答から多くのことを学びました(以下を参照)。いくつかの答えは、たとえばレンダリング後に詳細を追加するなど、私が考えていなかったことについても議論しました。そして、あなたの質問に答えるために、私はそれがより深いレベルの理解をもたらしたと思うので答えを選択しました(彼はポイントだけでなく、その背後で機能するアルゴリズム/概念も述べました)。そして、私がこれを読み終えたとき、他の答えも驚くべきものでした!どれがベストかを選ぶのは大変でしたが、人々もそれを好むようです!私はそれらをすべてチェックします!
カウボーイサイフ14

おそらく、ゲーム開発者は$ 50,000,000をエフェクトに費やすことに興味がないからでしょう-最近映画製作者が日常的に行っていることです。
ピーターギアケンズ14

回答:


109

あなたはすでに中心点の1つである時間について言及しました。

高忠実度アニメーションのレンダリングの背後にあるプロセスでは、複数の異なるアプローチとアルゴリズムが使用され(通常は「グローバルイルミネーション」という用語の下で組み合わされます)、レイトレーシングは最も一般的なものの1つです(その他にはラジオシティアンビエントオクルージョンが含まれます))。

レイトレースでは、シーンを通過する(通常は多数の)光線をシミュレートし、異なるマテリアルのオブジェクトに衝突したときのパス、反射、屈折を計算します。その結果、異なるマテリアルは異なる物理的特性を持ち、光線に対して特定の反応を引き起こします(たとえば、あるオブジェクトから反射する光の量は、光沢のあるオブジェクトに比べて光沢のあるオブジェクトの方が多くなります)。

別のポイントは物理学です:物理的に正しい方法で数千の髪の毛をシミュレートするのは時間がかかります。これが、古いゲームでは、髪を非常に粗いメッシュで近似し、髪の印象を与えるためにテクスチャ化することが多い理由です。

また考慮されるべき:メモリと帯域幅。シーン内のオブジェクトに適用されるテクスチャの品質が高いほど、ゲームでロードして使用するためにより多くのメモリが必要になります。しかし、システムにはデータを保持するのに十分なメモリが必要であるだけでなく、このデータも利用可能な帯域幅を使い果たすために転送する必要があります。メモリと帯域幅が制限されているため、達成可能な最大数があります。

ゲームは、多くの場合、近くのオブジェクトに高解像度のテクスチャを使用することで少しチートし、遠くのオブジェクトには低解像度の画像を使用し(用語:MipMapping)、必要な帯域幅を削減します。 (AppleのOpenGLESプログラミングガイドのMipMappingに関するセクションを参照してください)。

同様に、ゲームではオブジェクトの距離に応じて異なるメッシュを使用することもよくありますが、遠くのオブジェクトはあまり詳細ではありません(用語:LoD = 詳細レベル)。

結論:リアルタイムグラフィックス(ゲームやシミュレーションなど)では、この詳細で複雑なレンダリングプロセスはもちろん、滑らかで滑らかなシーンを生成するためには機能しません。人間の目の滑らかなアニメーション/動きの効果を得るには、少なくとも毎秒20フレームのレンダリングが必要です。一方、アニメーションムービーで単一のフレーム(!)をレンダリングすると、レイトレースで使用されるレイの数やアンビエントのサンプル数などの多くの要因に応じて、数時間から数日まで簡単に処理できます。オクルージョン( 16対256サンプルのスクリーンショットについては、これらのPixarページ1 / Pixarページ2参照してください)および目的の映画の解像度(より多くのピクセル=より多​​くの計算される情報)。こちらの記事もご覧くださいPixarのMonsters Universityアニメーションムービーの背後にあるプロセスについて、興味深い洞察を提供し、フレームあたり29時間のレンダリング時間にも言及しています。

一般的に、達成される忠実度/リアリズムが高いほど、通常、より多くの反復/バウンス/サンプルが必要になり、その結果、より多くのリソース(時間および/または計算能力/メモリの両方)が必要になります。違いを視覚化するには、この例の屈折計算のバウンス数に基づいてレンダリング結果を確認してください。Keyshotからのダイヤモンドバウンス

ただし、当然ながら、リアルタイムアプリケーションの品質は次の2つの理由で常に向上します。

  1. より強力なハードウェア:(ゲーム)コンピューターが良くなる(=より多くの[並列]コンピューティングパワー、コンピューターコンポーネント間のより高いデータ転送、より多くの高速メモリなど)ほど、視覚的な忠実度も増加します。リアルタイムシステムで実行可能になります。
  2. レイトレーシングを必要とせずにかなりフォトリアリスティックな効果を作成できる、より巧妙なメソッド/式が開発および実装されています。多くの場合、これには近似が含まれ、場合によっては事前に計算されたデータが含まれます。いくつかの例:


4
@cowboysaifいいえ、「そのまま」GPUで実行することはできません。専門のハードウェアを取得する必要があります。ただし、CUDAまたは同様のテクノロジーを使用して、リアルタイムのレイトレーシングを行う試みがあります。
ウォンドラ14

4
プロ品質のシネマティクスを作成する場合、オフラインレンダリングで使用されるレイトレーシング以外にも多くのテクニックがあります。しかし、あなたが言うように、彼らは単にリアルタイムのレンダリングには実用的ではない高価なレンダリング、ライティング、シェーディング技術を使用しています。
MrCranky 14

40
この答えは、事前にレンダリングされたアニメーションに非常に長い時間がかかるが、実際にはスケールの感覚を与えない理由を説明しています。違いは大きい!ゲームは1/30秒未満でフレームをレンダリングする必要がありますが、映画では各フレームをレンダリングするのに通常数日かかります。
ジョーク14

9
「日数」は確かに時間スケールの上限ですが、はい映画は1つのフレームをレンダリングするのに1日以上かかる場合があります(たとえば、venturebeat.com / 2013/04/24 /…を参照)。レンダリング時間はフレームごとに半日程度ですが、ゲームがレンダリングする必要があるよりも長くなります。映画全体がレンダリングに10年もかからない理由は、レンダリングファームがあるからです。数百台のマシンが同時にレンダリングします。
jhocking

7
いくつかの事実:レイトレーシングはどこでも使用されていますが、決してニッチな手法ではありません。VRayはCPUのみです。VRayRTはGPUのみです。シーンは通常多くのGBのRAMを使用し、GPUに収まらないため、GPUは生産にはあまり適していません(ただし、場合によっては役立ちます)。独自のショットは、ハイエンドCPUで1フレームあたり1〜2時間かかり、それほど長くはありません。JackAidleyは完全に間違っています。
Calvin1602 14

44

時間的要因に加えて、映画では、アーティストが視聴者が見ているものと見ないものを完全に制御できることに注意する価値があります。

典型的な映画シーンでは、カメラは天井に向けられたり、部屋の暗いコーナーに向けられたり、誰かの足首に向けられたりするのに多くの時間を費やさないため、これらの要素のポリゴンとテクスチャリングの予算はかなり低くなります。

シーン全体が1つの見晴らしの良い場所から行われる場合、仮想セット(実際のフィルムセットなど)にカメラの背後にあるパーツを含める必要はありません。ほとんどのゲームでは、プレーヤーはいつでもどこでも自由に見ることができます。つまり、品質予算は実際に見られるものに集中できるということです。(たとえば、God Of Warシリーズなどの一部のサードパーソンゲームは、制限付きカメラを使用します。そのビジュアルは、より多くのフリーカメラゲームのビジュアルよりも特に優れている傾向があります。


12
過小評価されない点。フレームの固定セットをレンダリングすると、それらのフレームのみに完全に焦点を合わせることができ、個々のフレームで問題を引き起こすものはすべて手動で処理できます。
aaaaaaaaaaaa 14

9
ちなみに、これは多くの場合、カットシーンを「エンジンでライブ」するゲームで使用されます。そのため、カットシーンの見栄えはよくなります。
trlkly 14

私見でこのルールを破るゲームの1つは、兄弟:二人の息子物語です。開発者は、カメラが正しい場所に収まり、自然に感じられることを確認します。
基本的な14

12
ゲーム内でのライブレンダリングはあまり美しくありませんが、アニメーションムービーを何時間も何時間もレンダリングするとどうなりますか(一般的な観点から)?

違いは単にレンダーにあると仮定しています。アニメーションムービーでは、事後に編集する機会もあります。元のエンジンで達成するのが困難だった効果を合成したり、少し調整したりすることがあります(たとえば、アニメーションを高速化/低速化するために10フレームごとに削除または繰り返します)。

チャンスがあれば、「ラフネス:The Starship Trooper Chronicles」DVDの1つを掘りますショットをリサイクルしますが、軸を反転させて、それほど明白ではありませんでした、色補正、好きではないものを隠す、爆発を追加するなど


ゲームエンジンもそれを行います!;-)
エイドリアン・メール

@AdrianMaire:彼らは他のことをするかもしれませんが、編集者として行動し、必要なときに調整する人間がそこにいません。私は彼らが物事を微調整する方法について言及したことは知っていますが、私の主なポイントは、事前にレンダリングされたものに関与する人間がいたということでし
ジョー

10

すでにあなた自身の質問に答えているようです。アニメーション映画は通常、個々のフレームごとに長いレンダリング時間を引き起こす、より高い詳細レベルを通常持っています。

一方、ゲームは1秒間に30回以上レンダリングする必要があるため、ゲームにはそれほど詳細がありません。それはまた、開発者ができるだけ多くのアセット(テクスチャ、モデルなど)を再利用しようとする理由です。なぜなら、同じオブジェクトを2つの位置にレンダリングすることは、すべてが一意である場合よりもはるかに高速だからです。また、モデルで多すぎるポリゴンを使用しないように注意する必要があります。代わりに、ライティング、テクスチャ、バンプマッピング、その他の手法を使用して、奥行きの印象を達成しようとします。

映画にはその問題はありません。シーンを思い通りに作り、探しているシーンを実現するために必要なだけ多くの詳細なテクスチャ、モデル、ジオメトリを使用します。

ゲームが追いついていると主張するかもしれません。最近の最高のゲームのいくつかを見ると、それらは以前ほど映画の品質から遠くはありません。もちろん、ゲームよりも事前にレンダリングされたシーンにより詳細な情報を詰め込むことができますが、数年後にはその違いはそれほど顕著ではないと思います。


1
この答えを愛する!それで、誰が主犯人になるべきですか?ポリゴンレベルまたはレイトレーシング?ゲームエンジンはzバッファを使用する傾向があります。または、レイトレーシングは深度の計算よりも多くの仕事をしますか?
カウボーイサイフ14

2
光線追跡だと思います。フィリップはこれについて私よりもはるかに知識があるようですが、私が知る限り、それは基本的に光線をシミュレートする方法です。 、 等々。シーンにファー、ヘア、またはその他の重いシミュレーション(流体など)がある場合、物理学もパフォーマンスが高くなります-また、これらの事柄は再びレイトレーシングの複雑さに影響します。
クリスチャン14

2
レイトレーシングアプリケーションには、他のオブジェクトとどのオブジェクトがオクルードするかを判別して保存するために、Zバッファーのようなものも必要です。しかし、レイトレーシングはリアルタイムアプリケーションよりもはるかに詳細です。これは、クリスチャンと私が既に述べたすべてのことを実行するためです。 、物理的な髪のレンダリング、間接照明、アンビエントオクルージョンなど(ただし、これらの部分の一部は、最近述べたようにリアルタイムアプリケーションで近似することもできます)。
フィリップアルガイエ14

7
ムービーは、フレームごとに約10〜12時間の計算時間でレンダリングされます。そして、Blinnの法則により、計算能力が向上するたびに、シーンにさらに多くのものを追加するだけで、実際に高速化することはありません。また、ムービーレンダリングは、すべてのレンダリング方程式に閉じた形式の「正確な」ソリューションを使用する傾向があります。ゲームでは、ムービーよりも100万倍高速である必要があるため、ゲームは多数の近似を行います。
チャックウォルボーン14

2
これまでにブリンの法則を聞いたことがない、そのリンクは素晴らしかった
14

8

他の答えは生のグラフィックスの問題を詳細にカバーしていますが、ゲーム対映画やトレーラーのリアリズムの重要な部分、アニメーションとカメラの動きについては言及しません。

映画や予告編では、人物やカメラの動きを慎重に調整して、その瞬間にぴったりの感情を見せることができます。繰り返す必要はありません。ビデオゲームでは、ゲームはプレイヤーの動きに即座に反応できなければならず、可能な限りゲーム時間を無制限に埋めるために、ストックアニメーションの小さなプールを再利用する必要があります。

問題トレーラーからのこの例は、セラピストがうなずいて「悪くない」笑顔を与え、ララが肘掛けをつかむ、足を揺らす、またはa 敬の念を抱いて洞窟を見るときです。これらの小さなもの(またはそれらの欠如、および関連する「プラスチック」キャラクター)は、わずかなグラフィックの改善よりも、知覚されるリアリズムにはるかに影響します。

他のグラフィックの違いとは異なり、これはより多くのコンピューティングパワーを投入することで解決できる可能性のある問題ではありません。スクリプト化された世界とあらゆるアクションに応答する世界の根本的な違いです。この特定の点で、今日の予告編のリアリズムは、近い将来、すべてのゲームプレイを上回ると予想しています。


8

すでに投稿されている他の素晴らしい答えに加えて、ゲームが必要とする高速処理時間を達成するために、ゲーム開発者は視覚効果の多くを単純なテクスチャとして焼く必要があることに注意する価値があります。これは、うまく焼けない効果を避けるために細心の注意を払う必要があることを意味します。

ビデオゲームで焼くのが難しい重要な効果の1つは、表面下散乱(SSS)です。残念ながら、この効果は、リアルに見える人間の肌を生成する上で本当に重要です。それが、多くの「現実的な」ビデオゲームキャラクターがプラスチックのように見える理由です。

開発者がこの問題を回避する1つの方法は、プラスチックの外観を損なうようにキャラクターを意図的に明るい色にするか、顔に多くの影とテクスチャの詳細(ひげなど)を追加して、そうでなければ大きくて連続的なセクションを分割することです肌。


2
映画のアニメーションに使用されるすべての後処理作業は言うまでもありません。多くのものは、レンダリング後に一緒にレイヤー化する必要がある複数の別々のシーンとしてレンダリングされます。そのため、多くのアニメーション映画では、前景でキャラクターが動いている比較的静的な背景がよく見られます。
ウラジミール14

6

OPがコメントで尋ねた質問の1つに答えるには:

「だれが主犯人になるべきか?ポリゴンレベルまたはレイトレーシング?」

この質問は見た目よりも難しいです。良い経験則は次の式だと思います(ちなみにそれを作り上げました):

number of calculations = {polygons} * {light sources} * {effects}

基本的に、これは、比較的少ない特別なマテリアル(つまり、ミラー、サブサーフなど)を持たないモデルの場合、ポリゴンの数によって計算時間が長くなることを意味します。これは通常、非常に単純なビデオゲームグラフィックスの場合です。

ただし、実際には、より新しいハイエンドゲーム、特に映画では、犯人は「通常」レイトレーシングです。どうして?2つの理由があります。最初に重要な理由を説明し、最後に本当の理由についての私の意見を述べます。


マシーの理由:

更新:この重要な説明は完全に正確ではない場合があります。詳細については、コメントのCrazyCastaの説明を参照してください。

1000個のポリゴンと3つの光源があるとします。実行する必要があるレイトレースの最小数は3 * 1000です。

状況を過度に単純化し、1つの光線追跡= 1の計算(全体的な過小評価)と仮定すると、3000の計算が必要になります。

しかし今、あなたも反射が欲しいと仮定しましょう。

フリーウェアプログラムBlenderのリフレクションのデフォルト設定は次のとおりです。

max reflections  = 2
ray length limit = None
...

これらの設定では、最良のシナリオでは、この非常に単純な反射によりモデルの計算コストが2倍になると推測できます。

しかし、前に言ったように、この例は非常に単純化されており、屋根からレンダリング時間を撃つ非常に多くの効果を見つけることができます。

ケースとポイント:gloss=1(Blenderのデフォルト)で反射をレンダリングしてから、光沢を0.01に下げて、2つのレンダリング時間を比較します。光沢が0.01の方がはるかに遅くなりますが、モデルの複雑さはまったく変更されていません。


私の定性的だがより現実的な理由:

メッシュの複雑さを増やしても、モデルの品質がある程度向上するだけです。数百万の顔を通り過ぎた後、実際に顔を追加してもそれほど多くはありません。スムージングを使用すれば、ほとんどの一般的な目的のために、わずか数百の顔で逃げることができるということまで言えます。

しかし、ほとんど常に違いを生むものは、照明、マテリアルエフェクト、レイトレーシングです。それが、映画が現実世界の美しい複雑さに近づけようとして、これらの多くを使用する傾向がある理由です。


これらすべてのことを体感するのに最適な方法は、最新のディズニーの長編アニメーションの最後にあるキャストリストを確認することです。照明とテクスチャの人がどれだけいるのか、きっと驚くでしょう。


2
これは私が探していたポイントです。それは私の質問ではありませんでした(私は何を求めるべきか少し混乱していました)が、これはそれだと思います!
カウボーイサイフ14

1
@cowboysaifよろしくお願いします!:)
ウラジミール14

1
現実には、物事は私がそれらを思わせるほど素晴らしいものではありません。しかし、これは一般的なアイデアを得るのに役立つと思います。私は通常、試行錯誤に頼っています。長いシーン(100以上のフレーム)をより長くレンダリングする場合、最初に1つまたは2つのフレームをレンダリングするので、処理速度と速度が低下する効果を確認できます。
ウラジミール14

2
過去に486でPOVRayを使用していた古いトリック-シーンのどの部分が最も高価かを知りたい場合は、すべての俳優と小道具を所定の位置に置いてステージ全体の複数のビューをレンダリングし、遅くなる部分を見てくださいクロールするレイトレーサー。これらの部分を拡大して、最悪の場合のパフォーマンスを把握し、レンダリング予算の大部分をこれらの要素を組み込んだフレームに費やすことで把握します。厳しいレンダリングスケジュールがある場合は、いくつかのショットを再構成することを検討してください。
トムB 14

1
@TomB良いアドバイス!さらに、特定のシーンが遅くなることが予想される場合は、Web経由でそれを整理し、他のすべてをローカルでレンダリングできることを付け加えます。
ウラジミール14

4

通常、映画のアニメーションは、知覚された動きをより滑らかにするために、かなりの視覚的なトリックを行うことを追加する価値があります。

アニメーターは、たとえば、スミア、倍数、ワーピングなど、通常はリア​​ルタイムレンダリングで使用されない従来のハンドアニメーション手法を使用して、映画のフレームレートが低いにもかかわらず、より滑らかな動きを生成します(いずれにしても、最近まで) )に表示されます。特にスミアと倍数の使用は、メッシュの使用によって複雑になります。そのようなメッシュの歪みのためにメッシュの変形を生成する必要があり、3Dビデオゲームでそれが見られたとは思いません。

高速で移動するオブジェクトが通過するフレームは、異なるフレームレートでレンダリングされた後、再び結合されてシーン全体にモーションブラーが生成されます。モーションブラーは、最近のリアルタイム3Dグラフィックスではかなり一般的な手法です。通常、モーションブラーを偽造することはレイヤーごとに複数の後処理ステップを非常によく必要とするという事実により、効果は通常、数十個のプロセッサを自由に使えるアニメーションハウスで得られる高品質ではありません(上記の「時間」の回答を参照)。多数の中間フレームが非常に流動的です。

この種の視覚的手法を使用して、リアルタイムグラフィックスで知覚品質を向上させるには、出力フレームレートを、利用可能な最大のバックグラウンドレンダリング中間フレームを大幅に下回るレートに制限し、合成して最終フレームを生成する必要があります。このようなテクニックを使用することで視覚的な忠実度がわずかに向上しても、フレーム予算を失う価値があるかどうか、特に非常に難しい場合は、おそらく複数の考え方があります。

質問の一面に対処するには:

ゲーム内でのライブレンダリングはあまり美しくありませんが、アニメーションムービーを何時間も何時間もレンダリングするとどうなりますか(一般的な観点から)?

主に職人。リアルタイムアーティストには、各フレームを微調整したり、1回限りのギミックを作成してシーンの全体的な外観や反応を改善する機会が与えられません。実用的な制約の。双方向性のコメントで述べたように、プレーヤーはおそらく毎回まったく同じことをするわけではありませんが、映画は毎回同じように再生されます。

つまり、ビデオゲームアーティストは、モデルの品質と最終的なレンダリングの品質に関する、映画アーティストとは非常に異なる優先順位を持っています。どちらも膨大なスキルを必要としますが、それぞれ異なる技術が必要です。消費者レベルのレンダリングハードウェアが進歩し続け、SIGGRAPHとGDCでさらなる数学の天才が出現し続けるにつれて、これらの技術がますます収束することを期待しています。


1
おっと、私が話したいことを話し合ったところです。メッシュ変形?メッシュ修飾子とも呼ばれますか?ユニティ3Dをいじりながら使用した修飾子があります。これはmega- fierswest-racing.com/mf/?page_id=2)と呼ばれます。Unity 3Dはボーンベースのアニメーションのみをサポートしていますが、ゲームテクノロジーがようやく対処したと思いますか?私は他のゲームエンジンについても知りません!
カウボーイサイフ14

1
この種の効果は、頂点シェーダーで数学的なモデル全体の歪みを使用している限り、あらゆる種類のアニメーション手法と互換性があります(「メガファイアー」が行っていることでしょう)。他のいくつかのアプローチは次のとおりです。*完全に歪んだ2番目のメッシュである「ターゲット」メッシュを使用し、頂点シェーダーを使用してメッシュ内の頂点を2番目のメッシュ内の一致する頂点に移動します。*変形をモデル自体に焼き付け、キーフレームアニメーションを使用する。必要に応じて*余分な骨を置く専用の骨格アニメーションを使用して歪みをやって...
トム・B

1
私はこの種のアニメーションがしばらくの間可能であり、ある程度はすでに使用されていると確信していますが、ほとんどの場合、ブロビークリーチャーと柔軟なモデル(Gish、Tower of Goo、Octodadなど)のゲームのインスタンスしか思い出せません。難しい部分は、エフェクトをいつ使用するか、特に複数またはスミアを使用する場合にわかります。カメラの動きの方向は、結果の多重またはスミアの外観に影響します。手作業のアニメーターが使用するガイドラインは良い出発点になると思いますが、実験で得られるすべての楽しみを考えてください!
トムB

3

アニメーション化された1つのムービーが、マシンの1つの獣でレンダリングされるのに何年もかかる場合があります。事前にレンダリングされているため、シーンに追加するライトバウンス、シャドウなどの費用のかかる影響は問題ではありません。これらの映画は通常、何千ものPCがリンクされて同じジョブで動作するレンダーファームによってレンダリングされます。

リアルタイムで同じ品質を達成できない理由は、マシンが約16ミリ秒で現在のフレームをレンダリングして60のFPSを実現する必要があるためです。

ゲームでは、グラフィックスのほかに、他にもたくさんのものがあります。各フレームには大量の計算があります。簡単に言うと、アニメーション化されたムービーでは、ロケットランチャーからプレイヤーが受けるダメージを計算する必要はありません。ジブをアニメーション化するだけで、ポリゴンがレンダリングされます。

幸いなことに、この惑星上を歩き回る天才的な人々がいます。より多くのポリゴンとより大きなテクスチャをレンダリングできる優れたPCのほかに、通常のマップのように作成されたいくつかの独創的な発明があります。

映画を作るこれらの高価な効果のいくつかは、その余分なフレアを持っています。

  • 軽いバウンス。実生活では、光は、反射した表面に完全に吸収されるまで反射します。光源ごとに計算を行う必要があります。白い紙の横に色の付いたオブジェクトを保持しようとすると、紙の上に色がにじんで見えます。
  • ゲームでは、使用するポリゴンの量に厳しい制限があり、プリレンダリングムービーにはこれらの制限はなく、レンダリングに時間がかかります。光の跳ね返りに戻ります。ポリゴンが増えると、さらに優れた視覚効果を得るための光の計算が増えますが、コストが指数関数的に増大します。
  • テクスチャサイズ、グラフィックカードには一定量のデータしか保持できず、このデータの切り替えには費用がかかります。すべてのシェーダーマップを含む一般的な1024x1024テクスチャは、1GB GFXカードの数パーセントを簡単に占有できます。カードがデータを切り替える必要がある場合、これにはコストがかかります。明らかに、映画をプリレンダリングするとき、これについてはあまり気にしません。また、映画では、カメラが近づく高解像度のテクスチャが必要です。ゲームでは、プレイヤーが近づくことができる各オブジェクトに対してこれが必要です。
  • PathfindingはCPUに非常に厳しいです。たとえば、経路探索アルゴリズムを使用すると、敵に自分に向かう経路を見つけさせたり、どこかをクリックしたときにプレイヤーが道を歩いたりすることができます。これらの経路探索は、10000のウェイポイント(100 m x 100 mのマップ上の各平方メートル)がある場合、コストがかかる可能性があり、単一フレームでこれらすべてのウェイポイントを何度もトラバースする必要がある場合があります。ニーズに応じてこれを安くする方法は多数ありますが、実際には、事前にレンダリングされたシーンにはこれを必要としません。

簡単に言えば、ゲームの見栄えを良くするために「安い」トリックを考え出す必要があります。しかし、人間の目はだますのは難しい。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.