2012-02-05 34 views
0

我有一个C#的GUI与c + +的Windows DLL做的opengl的东西。我想在Mono的Linux下运行它,并计划将C++ dll变成真正的跨平台dll/.so,并使用本地Unix opengl初始化。如何在本机Linux OpenGL环境中使用来自Mono的C#HWND?

而不是学习QT或WxWidgets,我想继续使用C#gui。我如何使用Windows窗体HWNDs,我目前传递给windows opengl glw,并将它们传递给Linux opengl glx并转换为Window对象?

回答

2

如何使用windows窗体HWNDs,我当前传递给windows opengl glw并将它们传递给Linux opengl glx并转换为Window对象?

呃,你没有/不能。

你必须实现两个代码路径,一个覆盖GLX,一个覆盖Windows GDI。从概念上讲,wgl和GLX是相似的(wgl是在GLX之后设计的)。但内部数据结构非常不同。