使用D3D10 / 11和MDI窗口的性能

时间:2011-07-08 00:23:54

标签: winforms performance mdi slimdx direct2d

我正在开发一个MDI应用程序,可能会有很多(> 40)实时(30 fps)更新图表;每个图形都必须在其中呈现3D几何体。我尝试使用SlimDX(每个窗口)为每个窗口使用Direct2D但是当添加超过16个窗口时性能下降非常糟糕。任何人都有这方面的经验,其反馈可能有用吗?

  • 我目前正在使用D3D10 / 11 API,根据文档,每个窗口有一个交换链。在D3D9文档中,您可以在出现之前切换窗口,这是建议的用法。我应该尝试切换到D3D9吗?这可能是交换链转换问题吗?
  • 如果它不是交换链问题,我可能更好的方法是跳过D2D并管理我自己的顶点缓冲区并使用D3D进行渲染吗?

问候!

1 个答案:

答案 0 :(得分:0)

一个大窗口/上下文划分为> 40个单元格,每个都有一个图表(你可以使用剪刀测试来强制执行单元格边界),你会得到什么样的性能?

如果情况不佳,则需要降低复杂性或以某种方式优化绘图。

如果单个窗口可以足够快地呈现所有内容,请考虑这样做 - 一个窗口。实现自己的最大化/可拖动分割器行为并不是那么难。