gpt4 book ai didi

c++ - 没有或有静态设备上下文的 OpenGL 加载纹理?

转载 作者:行者123 更新时间:2023-11-30 05:35:21 25 4
gpt4 key购买 nike

我想创建 opengl 2d 库,其中纹理和窗口都被封装为对象。是否可以创建虚拟静态 DC 并在加载纹理时使其成为当前状态?所有窗口都将具有与静态窗口相同的 PIXELFORMATDESCRIPTOR。这样,库的用户就不必在加载纹理或将窗口作为参数传递给纹理之前创建窗口。

最佳答案

Is it possible to create dummy static DC and make it current when loading textures?

有点。只要设备上下文的视觉格式相互兼容,您就可以将为此视觉格式创建的 OpenGL 渲染上下文绑定(bind)到这些设备上下文中的任何一个。

因此您可以完美地创建一个窗口,其 DC 从未显示在屏幕上(始终保持隐藏状态,大小为 0×0),并将其用于后台 OpenGL 操作。您还可以创建一个辅助 OpenGL 上下文,让它与主上下文共享其命名空间,使其在单独的工作线程上的隐藏窗口中处于当前状态,这样您就可以在主上下文运行时异步执行 OpenGL 操作(如加载纹理)用于其他事情。

关于c++ - 没有或有静态设备上下文的 OpenGL 加载纹理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33921905/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com