|
|
1
3
是的,您可以使用此处描述的技术在D3D9Ex和HttpClient0设备之间共享资源: Feature Summary (Direct3D 9 for Windows Vista) - Sharing Resources 请注意,GPU对共享曲面的访问是不同步的——例如,如果您在两个设备上同时渲染到同一个渲染曲面,则会出现各种损坏和竞争。 为了解决这个问题,请确保一个设备在另一个设备使用它之前完成了对共享曲面的渲染。一个选项是事件查询(IDirect3DQuery9),另一个是对一个小曲面执行StretchRect并锁定它(如果锁定成功,GPU将完成之前的所有工作) |
|
|
2
0
您可以在设备或进程之间共享Direct3D9资源。 Feature Summary (Direct3D 9 for Windows Vista) - Sharing Resources
这 GameDev.net topic 详细讨论了D3D9Ex和HttpClient0之间的共享。该主题的结论似乎是,虽然基于文档,这应该是可能的(有一些限制),但在实践中根本不起作用(也许限制太严重了,它们阻碍了任何实际使用场景?) |
|
|
3
-1
如果我错了,有人会纠正我,但是,不,不。 你有什么打算?在两台设备上有静态纹理吗?如果是这样,通过将相同的纹理两次加载到两个不同的默认池中,可以很容易地实现。请注意,修改一个并不一定会修改另一个。
如果你想在另一个设备上显式使用从一个设备生成的纹理,你必须从源设备下载它,并在每一帧上传到目标设备。这将是缓慢的,但如果绝对必要,可以这样做。 |