2013-10-02 265 views
0

我正在测试Direct2D程序。Direct2D内存消耗

http://msdn.microsoft.com/en-us/library/windows/desktop/ff819062(v=vs.85).aspx

当我编译并运行该程序D2DCircle.exe看任务管理器的存储列,约19兆字节用于(或分配?)

我运行使用一些笔刷稍微大一点的程序和几何图形,任务管理器的内存列显示大约30MByte。

为什么direct2d会使用大量内存?

+0

Direct2D是为了充分利用您机器的资源而编写的。在上个世纪称30MB大量的内存是合适的,它不到现在的0.75%。 –

回答

0

Direct2D可能会缓存内存中的一些渲染原语(如位图)。并非所有的东西都是由GPU直接渲染的。

GDI +在这方面也相当贪婪。

您可以将其与我的Sciter发动机进行比较。如果您只启动sciter.exe,它将使用Direct2D后端,但如果您将其运行为sicter.exe sciter-gfx=gdi,它将使用GDI +。
如果您比较在D2D和GDI +中渲染的东西的速度,您会发现30mb根本就没有。