C#wpf中的sharpGL无法生成缓冲区

时间:2013-08-10 18:10:11

标签: c# opengl sharpgl

这个简单的代码给出了系统异常,我无法跟踪它,因为我无法在wpf中输出到控制台。

OpenGL gl = new OpenGL();
// OpenGL gl = openGLControl.OpenGL; doesnt change result
uint[] buf = new uint[1];
buf.Initialize();
gl.GenBuffers(1, buf); //commenting this line out, makes the exception vanish

什么可能导致GenBuffers方法在SharpGL.dll中引发系统异常?

使用针对VS2012的最新版本的sharpGL和.Net 4.0。

我应该为C ++安装opengl并在C#中使用它的包装吗?

1 个答案:

答案 0 :(得分:1)

我会将此作为评论发布,但我没有足够的代表:尝试将RenderContextType设置为DIBSection,以禁用硬件加速并查看它是否仍然抛出异常。

        uint[] buf = new uint[1];
        buf.Initialize();

        var cn = new OpenGLControl();
        cn.RenderContextType = RenderContextType.DIBSection;
        cn.OpenGL.GenBuffers(1, buf);