我正在给桂玩娜娜图书馆。
我也必须使用opengl,但是对于opengl有一个例子,那就是windows。链接
我使用的是ubuntu。上面的例子调用reinterpret_cast<HWND>(fm.native_handle());
我终于找到了。
根窗口连接到操作系统/窗口系统本机窗口,native_handle返回本机窗口的句柄。在某个系统中,可以将native_window_type转换为系统本机句柄类型。
auto reinterpret_cast<HWND>(root_widget.native_handle()); //Windows
auto reinterpret_cast<Window>(root_widget.native_handle()); //Linux/X11我可能会在窗户和HWND之间得到提示。
如果我使用窗口(X11),可以在nana库上实现opengl吗?
发布于 2018-05-26 19:20:32
要创建一个使用OpenGL的应用程序,您需要非常简化,至少有四件事情:
wglChoosePixelFormatARB.在Linux中,glXChooseFBConfig。wglCreateContextAttribsARB需要一个HDC,在Linux中需要一个Display,这与窗口不一样。如果您发现OpenGL版本< 3.2有关这些问题的文档,请不要使用它。坚持“现代”OpenGL。
nana的问题在于,您所链接的示例在Windows中似乎运行良好(但使用旧的OGL)。关于Linux,我们什么都不知道。我认为您应该深入研究nana的源代码,查找它在native_handle()上返回的内容。更好的是你更喜欢在论坛上提问。
上述函数是不可直接使用的,您必须查询它们的函数指针。
许多现代OGL函数也需要检索它们的函数指针。请参阅维基
https://stackoverflow.com/questions/50540691
复制相似问题