4

Brad Larson は、「シーンをテクスチャ付きフレームバッファにレンダリングする」ための優れたコードをここここで提供していますが、これが残りの描画に使用するフレームバッファと同じであるかどうかは明らかではありません。

レンダバッファをフレームバッファにアタッチする場合、フレームバッファも同じ呼び出しでテクスチャにレンダリングできますか?

4

1 に答える 1

3

FBO の使用法について少し混乱しているようです。必要な場合は、これで始められるはずです: Apple Developer - Drawing offscreenこれも役立つ可能性があります。

Renderbuffer は、FBO (フレームバッファ オブジェクト) にバインドできるものです。FBO は、レンダリングをすぐに表示したくないが、レンダリング結果を読み返したり、追加のレンダリングを実行したりする場合に作成するものです。FBO が OpenGL ES 2.0 で機能する方法では、1 つのカラー アタッチメント ポイントしか使用できず (GL_COLOR_ATTACHMENT0 - フラグメント シェーダー出力変数 gl_FragColor がこのアタッチメント ポイントに接続されます)、1 つのテクスチャまたはレンダー バッファーしかアタッチできません。したがって、最後の質問に答えるために、レンダーバッファーとテクスチャーに同時に色を書き込む FBO を持つことはできません。

質問の最初の部分については、すでに FBO を使用しているか、デフォルトのフレームバッファを使用しているかによって異なります。探している動作は、次のようなものである可能性があります。

  1. FBO をバインドする
  2. FBO にアタッチされたテクスチャに何かをレンダリングする
  3. デフォルトのフレームバッファをバインドします
  4. ステップ 2 のテクスチャを使用して、2 番目のレンダーパスでのレンダリングに影響を与えます。

これがあなたの質問に少しでも答えることを願っています。

于 2013-08-25T14:10:11.133 に答える