2011-11-14 4 views
1

私のプログラムでは、GLSLシェーダを使用して2D矩形を描画します。 矩形はテクスチャで塗りつぶされています。私の質問は、シェーダの後でシーンのピクセル値(矩形/テクスチャ)にアクセスするにはどうしたらよいですか? unsigned char型*またはピクセルシェーダの後にピクセルを読み取る方法は?

答えて

1

glReadPixelshttp://www.opengl.org/sdk/docs/man/xhtml/glReadPixels.xml

などのデータは、あなたがFBOを使用していることを確認して、それはその後、フラグメントシェーダの頂点を通過した後 は基本的に、それはシーンで何かを描画し、私はそれらのシーンにアクセスしたいですかレンダリングターゲットとしてのPBufferを使用してデータの破損を防ぎます。

+0

ありがとうございます!だから素早い質問です...フレームバッファは現在のシーンのピクセルデータを保持していますか? – user2168

+0

FBOはオフスクリーンフレームバッファ、Googleの「フレームバッファオブジェクト」です。私は通常のウィンドウにレンダリングしますが、リードバックコンテンツはさまざまな方法で破損する可能性があります(これは、OSがウィンドウのどのピクセルもユーザーが見ることができないように処理しないためです)。 – datenwolf

関連する問題