我有三个不同的进程在同一台机器上运行。其中一个拥有OpenGL窗口。我希望其他两个能够(快速)渲染OpenGL窗口的不同矩形部分。两个进程可以渲染到一个OpenGL画布吗?
如果我可以保证他们会很好地轮流执行OpenGL命令,这可能吗?
非常感谢
雨果埃利亚斯
我有三个不同的进程在同一台机器上运行。其中一个拥有OpenGL窗口。我希望其他两个能够(快速)渲染OpenGL窗口的不同矩形部分。两个进程可以渲染到一个OpenGL画布吗?
如果我可以保证他们会很好地轮流执行OpenGL命令,这可能吗?
非常感谢
雨果埃利亚斯
我的理解是,这是不可能的任何现有的驱动程序。一个OpenGL上下文仅由一个进程拥有。
对于单个进程中的两个线程,每个线程都将OpenGL调用到单个OpenGL上下文,这甚至是很危险的。 (这不需要如此设计,但它通常是当前驱动程序的问题。)
有没有一个来源讨论与OpenGL的多个线程?这是一个话题,我有一个大的既得利益。 – 2009-01-19 04:58:57
在Windows下,使用相同进程的线程是可能的。
你正在寻找的功能是wglMakeCurrent:
http://msdn.microsoft.com/en-us/library/dd374387%28VS.85%29.aspx
两个不同的过程是不可能的? – Rocketmagnet 2009-02-11 15:27:55
我不知道这是过程与DirectX/Direct3D的? – Naveen 2009-12-27 04:24:26