3

OpenGL で FBO のステンシル バッファを使用しようとしましたが、機能しません。深度ターゲットとステンシル ターゲットの両方について、depth24_stencil8 テクスチャを FBO にバインドしました。簡単なテストとして、私は試しました:

/* Enable FBO */

glEnable(GL_STENCIL_TEST);
glStencilFunc(GL_NEVER, 1, 0xff);
glStencilOp(GL_KEEP, GL_KEEP, GL_KEEP);

glBegin(GL_TRIANGLE);
/* Draw some triangles */
glEnd();

glDisable(GL_STENCIL_TEST);

/* Disable FBO and render it on screen as a texture. */

GL_NEVER を使用しているため、何もレンダリングされませんが、三角形が表示されます。これはステンシルがまったくないようなものですが、その理由はわかりません。FBO なしでこのコードを試すとうまくいくので、ステンシル関数を正しく使用していると思います。この問題を解決する方法がわかりません。FBO でステンシルを使用した人はいますか?

4

1 に答える 1

0

残念ながら、ステンシル バッファを FBO に正しく接続していませんでした。奇妙なことに、私の fbo ステータスはエラーや添付ファイルの不良を示していなかったので、大丈夫だと確信しました... この問題は私を夢中にさせましたが、今ではうまくいくようです.

于 2011-12-05T22:03:31.863 に答える