0

基本上,我被要求渲染到一个屏幕外 DC,该 DC 设置(我不确定如何)使用 GDI+。当我尝试将 OpenGL 上下文与 DC 相关联时,它只是失败了(即返回零但没有错误)。SetPixelFormat 也失败了(可能是因为它已经设置好了?),再次返回零,而不是错误。

任何人都知道,在这种情况下(即其他人使用 GDI+ 的窗口的屏幕外上下文)是否有可能创建 OpenGL 上下文并使用 OpenGL 进行我自己的渲染?(如果可能,为什么 wglCreateContext 会失败?)

4

1 回答 1

1

本文向您展示了连接 GDI 窗口的所有步骤:http: //nehe.gamedev.net/data/lessons/lesson.asp ?lesson=01

本质上,您必须:

  1. 创建一个窗口
  2. 注册窗口
  3. 获取窗口绘图区的设备上下文
  4. 设置设备上下文的像素格式
  5. 调用 wglCreateContext
  6. 调用 wglMakeCurrent
  7. 显示窗口

如果您已经可以访问设备上下文,请跳过前两个步骤。

在您的情况下,您可能会看到 wglMakeCurrent 是否是您所需要的。否则,您可能希望发布有关您遇到的错误和行为的更多详细信息。

于 2009-05-18T20:50:10.457 回答