【问题标题】:Open a windows with OpenGL context [closed]打开带有OpenGL上下文的窗口[关闭]
【发布时间】:2017-02-23 22:00:35
【问题描述】:

我曾与 SDL 合作过。我想知道如何在 windows 上使用 opengl 上下文打开窗口

【问题讨论】:

  • OpenGL 不了解 windows。 glu.h 可以完成一些工作。但是您仍然需要使用本机 API 来创建绘图表面。 OpenGL 所能做的就是在上下文中绘制(简化)。鼠标/键盘等取决于本机操作系统。
  • 我知道你可以在代码块中找到一个模板,但我什么都不懂
  • Code Blocks 是一个 IDE,您不会进行同类比较。
  • 所以我只想让你知道如何使用 gl.h 和 glu.h 在 windows 上创建一个带有上下文的窗口。
  • OpenGL 是图形库,而不是显示库。它指定像素的颜色,而不是它们应该如何显示。您必须要么使用库(更好的方法),要么使用目标平台的 API。如果您正在寻找图书馆,请查看 GLFW。相信我,如果你时间不够,学习一个库比学习一个图形 API 更好。 (我知道至少 Windows API 很糟糕。)

标签: c++ opengl


【解决方案1】:

OpenGL 本身不承认窗口的存在,或任何有意义的窗口概念。您需要一个窗口 API。然后,OpenGL 将通过窗口 API 将渲染上下文传递给它。

<windows.h> 是适用于 Windows 的 WIN32 API,也是首次在 WinOS 计算机上编写 OpenGL 应用程序时创建窗口的典型首选 API。我不知道 MACOS 和 Linux 的等价物是什么(可能是 X11?),但它们有自己的风格。

由于多种原因(即这些 API 陈旧、晦涩难懂且难以使用),有很多 API 都围绕着原生 Windowing API,并且非常适合初学者。 GLFW 就是这样一个例子,也是我个人的偏好,因为它适用于 Windows、Mac 和大多数 Linux 窗口 API。 SDL 是另一种主食,尽管我感觉它最近已经失宠(似乎它试图自己做“太多”)。

我不知道<glu.h> 的功能,但鉴于整个东西已被弃用,我不建议使用它。

【讨论】:

    猜你喜欢
    • 2014-10-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-21
    • 2014-07-20
    • 1970-01-01
    相关资源
    最近更新 更多