c++ - 如何在WinAPI应用程序中集成OpenGL和GLU?

标签 c++ winapi opengl

我对使用 WinAPI 创建应用程序的任务感兴趣,能够在带有 OpenGL 图形的窗口中使用它以及 WinAPI 元素。
例如,一个窗口占用一半的窗口带有图形,第二个是 WinAPI 的一些元素。

最佳答案

解决此问题的最简单方法是为 OpenGL 区域创建一个子窗口。使用 CS_OWNDC 类样式和 WS_CLIPSIBLINGS 窗口样式创建,以便有一个单独的设备上下文可用,并且可以将同级窗口(用于按钮等)放置在其顶部在 Z 堆栈上。剩下的就是照常初始化像素格式和 OpenGL 上下文,但在该子窗口上。

  1. 选择像素格式
  2. 设置像素格式
  3. wglCreateContext
  4. wglMakeCurrent

请注意,如果您想要现代 OpenGL,您还需要一个代理 OpenGL 上下文,以检索基于属性的格式选择函数。这是described in detail在官方 OpenGL wiki 中。

关于c++ - 如何在WinAPI应用程序中集成OpenGL和GLU?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57044884/

相关文章:

c++ - 如何在 Eigen 中获取系数矩阵?

c - 使控制台窗口右上角的关闭按钮变灰的可行方法?

c++ - Windows 8/10 中事件窗口的进程名称

C++:一个作者/多个读者访问 unordered_map 线程是否安全?

c++ - Emacs 自动完成功能无法正常工作

opengl - 使用 GLSL 计算着色器渲染纹理时遇到问题

opengl - 有效的 OpenGL 上下文

c++ - 在opengl中在z方向上更改将2d纹理应用于单个立方体表面

c++ - 分配一个我不想等于任何可能输入的变量是什么?

c++ - 什么是无效,更新方法在 VC++ 中做什么