我听说你可以 Hook 窗口句柄并将该窗口用作 OpenGL Canvas 。我知道如何 Hook 窗口,但我找不到如何在此窗口上绘图。
PS。如果有帮助的话我正在使用 Qt。最佳答案
OpenGL 上下文一次只能在一个线程中使用,并且绑定(bind)到进程。因此,需要创建外部进程资源的 OpenGL 上下文。
在 Windows 上,使用一些非常古怪的技巧,这至少在 WinXP 中是可能的(我不知道 Vista 或 7);这通常包括共享大部分进程内存。
在 X11/GLX 上,通过将上下文创建为间接渲染上下文要容易得多(不幸的是,出于某些不正当的原因,OpenGL-3 没有完整的间接 GLX 规范);可以从多个进程访问间接上下文。
无论如何,两个进程必须合作才能完成这项工作。
关于qt - 我可以使用opengl在窗口上画一些不属于我的东西吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7566205/