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

4
我正在使用C#中的Direct2D来为我的研究项目渲染一个小型GUI框架。我不太习惯在Windows上工作或使用DirectX。我正在使用Windows Forms控件创建渲染目标,并且msdn警告说,由于它使用BindDC,渲染目标越大,性能就越差(当我最大化窗口时,帧速率约为15 fps),请问有更好的方法来创建Direct2D的渲染目标吗?是否有一种直接创建窗口并直接进行渲染而不是先将其渲染到控件缓冲区,然后再进行渲染的方法?如果有,应该如何实现?
抱歉如果我的英语不好,这不是我的母语。
1个回答

2
你应该使用CreateHwndRenderTarget,使用控件的Handle属性。要完全正确地执行此操作,请创建自己的控件并覆盖OnHandleCreated()方法。覆盖OnPaintBackground()并什么也不做。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接