2013-10-02 216 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根本就沒有。