2013-08-10 1 views
0

이 간단한 코드는 시스템 예외를 발생시키고 wpf에서 콘솔로 출력 할 수 없으므로 추적 할 수 없습니다.C# wpf의 sharpGL은 버퍼를 생성 할 수 없습니다.

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 

무엇 SharpGL.dll의 시스템 예외를 발생하는 GenBuffers 방법을 일으킬 수 있을까?

sharpGL 및 .Net 4.0의 최종 버전을 대상으로 VS2012를 사용했습니다.

C++ 용 OpenGL을 설치하고 C#에서 해당 래퍼를 사용해야합니까?

답변

1

I는 주석으로이 게시 한 것입니다,하지만 난 그것에 대해 충분히 대표가 없습니다 : 하드웨어 가속을 해제하고 여전히 예외가 발생하는지,하여 DIBSection에 RenderContextType을 설정해보십시오.

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

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

당신의 노력에 감사드립니다. 그러나 이것은 동일한 오류 (SharpGL.dll의 시스템 예외)를 제공합니다. –