6

私はVBOの使い方を学んでおり、本に書かれているように、

「...頂点データをGPUのOpenGLメモリに移動することでCPUメモリを解放できます。」

さて、GPUはこの点で正確に何を処理できますか?「OpenGLメモリ」が数百万のポリゴンの頂点データを保存できると仮定することは許容されますか?モバイルデバイスのGPUはどうですか?

開発者はCPUのメモリ制限の基準枠を持つことに慣れていますが、GPUとそのハードウェアに何を期待するかについてはよくわからないため、OpenGLの学習は部分的に困難です。ですから、上記のような漠然とした発言を読むと、緊張します。

4

2 に答える 2

11

OpenGL には、抽象デバイスとメモリ モデルがあります。技術的には、OpenGL の世界には CPU と GPU メモリではなく、クライアントサーバーのメモリがあります。OpenGL バッファ オブジェクトはサーバー側に存在します。サーバー、これは単に OpenGL ドライバーが抽象化するすべてのものを意味します。また、OpenGL ドライバーは、キャッシュのように機能する GPU メモリが十分でない場合、GPU から CPU にデータをスワップ アウトすることが完全に許可されています。したがって、あなたの本は次のように述べています。

「...頂点データを GPU 上の OpenGL メモリに移動することで、CPU メモリを解放できます。」

OpenGL バッファ オブジェクト内のデータは CPU メモリに常駐している可能性があるため、完全に正しいとは言えません。

于 2013-02-28T15:13:49.193 に答える
1

仕様には最小限の要件がありますが、一般に、GPU メモリの量は、PC を購入するときに確かに気づいた非常に広く入手可能な情報です (売り手によって過大評価されています)。ただし、@datenwolf が言ったように、データが実際にどこにあるかを実際に知ることはできません。重要なのは、一時バッファーを破棄できることだけです。

使用するテクノロジに関係なく、対象となるハードウェアの機能を考慮する必要があります。

于 2013-02-28T16:08:53.173 に答える