2016-10-09 2 views
4

남자. C++로 작성된 OpenGL 라이브러리가 있습니다. 나는 Angle을 사용할 수 있다는 것을 압니다. 그러나 이것 때문에 C++로 코딩해야합니다. UWP에서 C++ opengl을 사용하고 C#을 주 언어로 사용하는 방법이 있습니까?opengl에 대한 UWP 지원

+0

어쩌면 [this] (http://stackoverflow.com/questions/32015682/how-to-use-c-class-in-windows-10-c-sharp-universal-app) 도움이됩니다. 상호 운용성에 대한 많은 정보는 MSFT 문서에서 찾을 수 있습니다. –

답변

4

UWP에서 C++ opengl을 사용하고 C#을 주 언어로 사용하는 방법이 있습니까?

현재 ANGLE은 OpenGL API를 UWP에서 실행하는 유일한 방법입니다. 자세한 내용은 this thread을 참조하십시오.

C#에서 ANGLE을 사용하려면 interop을 통해 직접 작성할 수 있습니다. 저수준 OpenGL을 C++로 작성하고 래퍼하여 논리 레벨에서 C#으로 호출 할 수 있습니다.

다행히도 여러분과 같은 요구 사항을 가진 사람들은 며칠 전 GitHub에서 문제를 만들었고 @mattleibow에서 샘플을 받았습니다. @mattleibow는 그의 코드를 this thread에 들려주었습니다. 자세한 내용은 OpenGL surface from SwapChainPanel declared in XAML in C#을 참조하십시오.

또한 ANGLE은 실제로 OpenGL ES를 DirectX로 번역하기위한 것입니다. 그래서 대신 Win2D을 사용하는 것이 좋습니다. Win2D는 Windows 8.1 및 Windows 10에서 XAML 응용 프로그램을위한 새로운 직접 모드 2D 드로잉 프레임 워크입니다. DirectX의 고성능 토대 위에 구축되었지만 C# 및 .NET 개발자가 기대하는 편리함과 사용 편의성을 제공하도록 설계되었습니다. 자세한 내용은 this video을 참조하십시오.

+0

고마워,하지만 이미 C++로 작성된 OpenGL 라이브러리가 있고이 라이브러리를 어떻게 든 UWP에 통합해야한다. DirectX로 다시 작성하는 데는 많은 시간이 걸립니다. –

+0

@RustamIbragimov [C#의 XAML에서 선언 된 SwapChainPanel의 OpenGL 표면] (https://github.com/Microsoft/angle/issues/89)을 참조하십시오. –