如何为Direct2D提供不同的渲染目标?

时间:2010-04-16 10:56:38

标签: c# winforms directx direct2d

我在C#中使用Direct2D为我的研究项目渲染一个小的gui框架。我不习惯在Windows或DirectX上工作。我正在使用Windows窗体控件来创建渲染目标,并且msdn警告说,因为它使用BindDC,渲染目标越大,性能就越差(当我最大化时,这会产生巨大的差异)窗口,我得到15帧左右。)

为Direct2D创建渲染目标的更好方法是什么?有没有办法创建一个窗口并直接渲染它,而不是先渲染到控件的缓冲区,然后渲染它?如果是这样,怎么样?

对不起,如果我的英语很糟糕,而不是我的母语。

1 个答案:

答案 0 :(得分:2)

您应该能够使用CreateHwndRenderTarget,使用控件的Handle属性。要完全正确,请创建自己的控件并覆盖OnHandleCreated()方法。并覆盖OnPaintBackground()并且什么也不做。