「分割レンダリングについて」の編集履歴(バックアップ)一覧はこちら

分割レンダリングについて」(2011/03/12 (土) 00:31:02) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

&sizex(7){分割レンダリング} ここでは簡単に分割レンダリングについて説明しています。 Xbox360では、Xenonと呼ばれるATiが開発したGPUが主なレンダリング処理を行っています。 行っています。このGPUがアクセスできるメモリ領域は512MBですが、 実際にレンダリング(描写)を行えるのはXenon上にあるeDRAMとよばれる10MBの領域上のみです。 つまり、Xbox360のメモリは512MBあっても、1フレームレンダリングするのに必要な容量を最大10MB以内に収めないといけないのです。 10MBを超えた場合どうするかというと、分割レンダリングという方法をとります。 どういうふうにするかというと、名前どおり一度に1フレームをレンダリングせず、 分割(半分半分)にして二つに分けてレンダリングを行います。 ここで、「なら問題ないじゃん」と思われるかもしれませんが、大間違いです。 SPへの負担が1.2倍~1.4倍になるなどの問題もありますが、 実際には、 ①半分レンダリング     ↓ ②レンダリングに必要な新たなデータをeDRAMへの転送 となり、この転送がコストをくうためフレームが落ちてしまいます。 ここからは余計ですが、上で示したとおりかなりここら辺が360では制限になっているところで、 ここが唯一普通のPCと違う部分です。
&sizex(7){分割レンダリング} ここでは簡単に分割レンダリングについて説明しています。 Xbox360では、Xenonと呼ばれるATiが開発したGPUが主なレンダリング処理を行っています。 行っています。このGPUがアクセスできるメモリ領域は512MBですが、 実際にレンダリング(描写)を行えるのはXenon上にあるeDRAMとよばれる10MBの領域上のみです。 つまり、Xbox360のメモリは512MBあっても、1フレームレンダリングするのに必要な容量を最大10MB以内に収めないといけないのです。 10MBを超えた場合どうするかというと、分割レンダリングという方法をとります。 どういうふうにするかというと、名前どおり一度に1フレームをレンダリングせず、 分割(半分半分)にして二つに分けてレンダリングを行います。 ここで、「なら問題ないじゃん」と思われるかもしれませんが、大間違いです。 SPへの負担が1.2倍~1.4倍になるなどの問題もありますが、 実際には、 ①半分レンダリング     ↓ ②レンダリングに必要な新たなデータをeDRAMへの転送 となり、この転送がコストをくうためフレームが落ちてしまいます。 ここからは余計ですが、上で示したとおりかなりここら辺が360では制限になっているところで、 ここが唯一普通のPCと違う部分です。 ここまで来ると解ると思いますが、[[ここ>http://www44.atwiki.jp/hachinetsu/pages/31.html]]にあるようなことは不可能です。 なぜなら、GPGPUもテッセレータも多くのメモリ帯域とメモリを必要とするからです。 普通のレンダリングでも大変なのに、これ以上一度にメモリが必要になるというと、とても効率が悪くなりゲームなんか動かせません。 しかもGPGPU・テッセレータ分野の処理は、ATiのGPUが最も苦手とする分野で、処理が遅い上、 そこの部分は最新世代のHD6xxx世代でも大きくnVidiaと離されている部分でもあります。 ここまで説明すれば、それよりも数世代前の設計のXenonが、まともにテッセレータGPGPUなどを使える訳が無いことがわかるはずです。

表示オプション

横に並べて表示:
変化行の前後のみ表示: