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

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

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

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

最佳答案 您应该能够使用CreateHwndRenderTarget,使用控件的Handle属性.要完全正确,请创建自己的控件并覆盖OnHandleCreated()方法.并重写OnPaintBackground()并不执行任何操作.

点赞