ユニティインタビュー仕上げ

1 DrawCallは何ですか、あなたは減らすことができますどのような方法がありますDrawCall

   drawcallは何ですか?実際には、基礎となるグラフィックプログラム:(などのOpenGL ESなど)を呼び出し、画面上に何かを描画するためのインタフェース。

 -------------------------------------------------- ----------

各呼び出しの前に呼び出して描画し、CPUはその上のデータ、ステータス、コマンドとを含む、GPUへのコンテンツの多くを送信する必要があります。この段階では、CPUは、レンダリングの状態をチェックするように、多くの作業を行う必要があります。一度これらの製剤のCPUを完了し、GPUはこのレンダリングを開始することができます。GPUレンダリング能力が非常に強く、300と3000の三角形メッシュをレンダリングすることは、通常は差はありませんので、レンダリング速度は、多くの場合、より高速なCPUの速度がcommitコマンドをよりです。ドローコールの数が多すぎた場合、CPUはCPUに過負荷を引き起こし、描画呼び出しコマンドを提出するに費やした多くの時間をかけます。

DrawCallを削減

    1)使用して、呼び出し元のバッチで描かれているコールのバッチ処理を、描画します。ユニティ一部のオブジェクトは、それによってそれらをレンダリングするための呼び出しで描画、実行時にマージすることができます

             コールバッチ処理自体を描画するだけでなく、2種類に分け。

             静的バッチ処理静的バッチ

             それでは、どのようにそれを呼び出す静的バッチの使用を描く削減するには?あなただけ明確に被写体がまだ何であるかを示し、ゲーム、回転、拡大縮小に動くことはありませんする必要があります。図に示すように、これをしたい、あなただけ(インスペクター)検出器を必要とすることは、静的にチェックボックスをチェックすることができます。

             

            動的なバッチ処理ダイナミックバッチ

            確かに、我々はフォローアップダイナミックバッチについて話す必要があり、そこに静かがあり動きがある、陽があるYINので、静的なバッチを超える話。まず第一に、それは明らかUnity3Dは、描画呼び出しダイナミックバッチエンジンメカニズムを手動でバッチとして静的として静的に設定することなく、自動であることを確認します。

 

   2)   テクスチャアトラスにパックを通して材料の使用を最小限に抑えます。

          オブジェクトは二つのオブジェクトのメッシュモデルの同じ材料「バッチ」を使用するために必要とされているので、それはレンダリングを同時に実現することができるように、同じ目的で、それは、テクスチャです。したがって、同じ材料を確実に、それは同じにテクスチャをレンダリングされることを保証することです。したがって、一つに二つの異なるテクスチャに、我々は、テクスチャアトラスにパッケージされ、上記第2工程を必要とします。合わせたこの場合の特定、2つのテクスチャ合成は、テクスチャです。我々は2つの材料だけではなく、材料の前に使用できるように、

   3) そのオブジェクトが繰り返し誇張されたようになりますので、反射友人、影のような友人の使用を最小限に抑えます。

   

おすすめ

転載: www.cnblogs.com/jiwen/p/11267076.html
おすすめ