代码之家  ›  专栏  ›  技术社区  ›  jay.lee

用GDI绘制opengl/D3D?

  •  2
  • jay.lee  · 技术社区  · 14 年前

    我想知道是否有可能用GDI绘制opengl/direct3D曲面?如果是的话,怎么做呢?

    我知道最好的方法是连接并使用渲染器/游戏本机使用的任何东西,不管是opengl还是direct3d,但是我把GDI看作是opengl和D3D都放在设备上的上下文,我希望可以用GDI来吸引它们。

    2 回复  |  直到 14 年前
        1
  •  4
  •   Jerry Coffin    14 年前

    你通常不能直接做。理论上,当且仅当OpenGL/DirectX设置为使用单缓冲时,可以将GDI与OpenGL或DirectX混合使用,

    我会尝试其他的方法,比如用无边界绘图 layered window .

        2
  •  1
  •   user2668920    11 年前

    您可以使用CreateCompatibleDC、CreateCompatibleBitmap、SelectObject和GetDIBits在中央内存缓冲区中使用GDI绘图。 注意:兼容的DC速度很慢(没有2D加速)。

    对于文本,可以将所有ASCII字符复制到一个纹理中,然后使用D3D纹理函数复制每个字符。对于单空间US-ASCII字体来说应该足够简单。