2008-10-30 69 views
1

我正在使用glDrawPixels來顯示圖像。我知道,我應該可以使用紋理,但有一些理由我不是。至少現在不行。不管怎樣,正在顯示的圖像經常被更新,就好像它正在被掃描一樣。只要我讓它坐下並完成「掃描」,這種方式就可以正常工作,但是,如果在「掃描仍在進行時點擊屏幕我得到一個AccessViolation異常在我glDrawPixels。glDrawPixels導致AccessViolationException

Gl.glDrawPixels(mImageWidth, mImageHeight, Gl.GL_LUMINANCE, Gl.GL_UNSIGNED_SHORT, mDisplayBuffer); 

mImageWidth和mImageHeight是預期值,因此他們沒有這個問題。

我把一個for循環,着眼於mDisplayBuffer每個元素glDrawPixels打電話之前這裏沒有問題,所以訪問衝突似乎不是來自mDisplayBuffer。

所以它一定是glDrawPixels中的東西吧?

我正在使用TAO框架,以便我可以使用C#和OpenGl。

回答

1

mDisplayBuffer的類型是什麼?當glDrawPixels正在進行時,它是否可以被另一個線程更新,或者被垃圾收集器重新定位(嘗試圍繞DrawPixels調用的範圍鎖定)?

相關問題