Я пытаюсь использовать трафаретный буфер FBO в OpenGL, но не могу заставить его работать.Я связал текстуру deep24_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, ничто не должно отображаться вообще, но я могу видеть треугольники.Это как если бы вообще не было трафарета, но я не могу понять почему.Попытка этого кода без FBOs работает, поэтому я думаю, что я использую функции трафарета правильно.Я понятия не имею, как решить эту проблему.Кто-нибудь уже использовал трафарет с FBO?