是否可以在已经使用GDI +的窗口中使用OpenGL?

时间:2009-05-18 20:43:24

标签: windows opengl drawing gdi openglcontext

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

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

1 个答案:

答案 0 :(得分:1)

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

基本上,你必须:

  1. 创建一个窗口
  2. 注册窗口
  3. 获取窗口绘图区域的设备上下文
  4. 设置设备上下文的像素格式
  5. 调用wglCreateContext
  6. 致电wglMakeCurrent
  7. 显示窗口
  8. 如果您已有权访问设备上下文,请跳过前两个步骤。

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