在一个应用程序中组合DirectX 9和DirectX 11渲染

时间:2018-02-19 10:17:14

标签: c++ rendering directx-11 directx-9

我目前正在为我工​​作的游戏公司开发C ++渲染器,我只能使用DirectX 9库。这是因为我们的游戏运行的目标硬件要求我们的游戏创建和使用他们可以通过dll挂钩的Dx9设备,以便在我们的游戏上进行一些自定义的叠加图。

令人沮丧的是,硬件能够运行DirectX 11(我们已经尝试过并测试过),但由于我们的硬件提供商不会更新绘制叠加层的dll,因此使用Dx9设备会遇到困难我们甚至无法升级到扩展设备,这限制了我们可以对着色器和Dx11带来的其他改进所做的事情。

我想知道是否有可能让Dx11和Dx9设备在同一个应用程序中同时运行,Dx11设备在幕后工作,同时使用Dx9设备呈现Dx11的渲染目标管道。这样我们就可以实现Dx11着色器,但仍然有一个Dx9设备进行“绘图”以屏幕显示第三方dll仍然可以挂钩并绘制叠加层?我在考虑将Dx9设备纹理设置为Dx11管道的渲染目标,但我不确定这是否可行?

关于这些想法是否有可能的任何反馈,评论或建议,或者是否有任何我不想的替代方案都会受到欢迎。

提前致谢。

0 个答案:

没有答案