OpenTK中的模板缓冲深度

时间:2013-03-21 14:42:02

标签: c# opengl opentk tao-framework

我正在使用OpenTK进行OpenGL和C#。

我需要使用模板缓冲区,目前想知道如何设置StencilBuffer深度。

正如我之前所知道的那样是TaoFramework,它的控制权具有可以选择这种深度的属性。

但是现在在OpenTK的openGlControl中我找不到这样的属性。据我所知,当前的seted缓冲区深度可以通过调用GL.GetInteger()方法传递给它的特殊参数来获得。 当我这样做时,它返回0.这意味着当前模板缓冲区深度为零,因此任何操作都会获得结果,直到一些缓冲区深度被选中。但我不知道该怎么做。

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:5)

看起来你在创建图形上下文时进行了设置:

http://www.opentk.com/doc/graphics/graphicscontext

靠近该文档的顶部,它给出了以下示例:

// Creates a 3.0-compatible GraphicsContext with 32bpp color, 24bpp depth
// 8bpp stencil and 4x anti-aliasing.
GLControl control = new GLControl(new GraphicsMode(32, 24, 8, 4), 3, 0);

这是典型的--OpenGL基本上将此类事情归咎于特定于操作系统的上下文创建任务......所以,如果您不使用OpenTK,则必须使用wgl和windows api进行设置。