所以MSDN说你可以在两个进程之间共享资源(堆): https://msdn.microsoft.com/en-us/library/windows/desktop/mt186623(v=vs.85).aspx
在OpenGL中是否可以做同样的事情?如果是这样,我可以使用一些函数名称或任何类型的起点进行搜索,因为我还没有找到任何东西。
请注意,我正在尝试避免将数据复制到系统内存并返回到同一设备,因为这是解决此问题的最简单方法。
答案 0 :(得分:0)
通常,GPU资源(纹理,着色器等)受其上下文约束。然后将上下文绑定到其父进程。有一些在Windows上的OpenGL上下文之间共享数据的方法(参见wglShareList),但这可能很困难。
您可能希望仅考虑使用多个上下文。如果必须在上下文之间共享数据,则可以使用PBO从GPU异步复制数据 - > CPU(复制纹理数据的其他方法阻止CPU /父进程)然后将其复制回其他上下文。效率低下,但没有简单的方法。
答案 1 :(得分:0)