我正在使用 glDrawPixels 来显示图像。我知道,我可能应该使用纹理,但我没有这样做是有原因的。至少现在不是。无论如何,正在显示的图像经常被更新,就好像它正在被扫描一样。只要我让它坐下来完成“扫描”,它就可以正常工作,但是,如果我在“扫描仍在进行中”时单击屏幕我的 glDrawPixels 出现 AccessViolation 异常。
Gl.glDrawPixels(mImageWidth, mImageHeight, Gl.GL_LUMINANCE, Gl.GL_UNSIGNED_SHORT, mDisplayBuffer);
mImageWidth 和 mImageHeight 是预期值,因此它们不是这个问题。
在 glDrawPixels 调用之前,我放置了一个 for 循环来查看 mDisplayBuffer 中的每个元素。这里没有发生任何问题,因此访问冲突似乎不是来自 mDisplayBuffer。
所以它一定是 glDrawPixels 中的东西吧?
我正在使用 TAO 框架,以便可以使用 C# 和 OpenGl。