2014-03-31 44 views
1

默認情況下,Direct2D圖片在​​功能EndDraw後顯示在屏幕上。跟蹤Direct2D渲染

爲了調試的目的,我需要在繪製任何繪製圖元后在屏幕上顯示圖片。

這是可能的Direct2D? 在GDI用於這些目的我使用GdiSetBatchLimit(1)

+0

雖然它不會顯示在屏幕上,您可以通過定期調用來隔離錯誤['ID2D1RenderTarget :: Flush'(http://msdn.microsoft。 COM/EN-US /庫/窗/臺式機/ dd316801%28V = vs.85%29.aspx)。 –

回答

0

可以渲染在D2D目標GDI含量(Direct2D and GDI Interoperability Overview

要不然你可以用一個循環,將封裝一個原語(然後二,然後是三個,直到你的繪圖結束嘗試代碼)在開始/結束。就像下面的僞代碼:

for (i=0; i<number of primitives; i++) 
{ 
    Begindraw; 
    Drawprimitive0; 
    if (i == 0) 
    { 
     EndDraw(); 
     continue; 
    } 

    Drawprimitive1; 
    if (i == 1) 
    { 
     EndDraw(); 
     continue; 
    } 

    Drawprimitive2; 
    if (i == 2) 
    { 
     EndDraw(); 
     continue; 
    } 

    etc. 
}