首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >跟踪Direct2D渲染

跟踪Direct2D渲染
EN

Stack Overflow用户
提问于 2014-03-31 20:30:32
回答 2查看 146关注 0票数 1

默认情况下,在功能EndDraw之后,屏幕上会显示Direct2D图片。

出于调试目的,我需要在绘制任何绘制基元后在屏幕上显示该图片。

这在Direct2D中是可能的吗?在GDI中,出于这些目的,我使用了GdiSetBatchLimit(1)

EN

回答 2

Stack Overflow用户

发布于 2014-04-02 21:55:00

这不可能。你需要对每个原语进行BeginDraw/EndDraw。如果你有图层或剪辑,你也需要在每个图元周围设置和删除它们。

Drawing operations can only be issued between a BeginDraw and EndDraw call.

票数 0
EN

Stack Overflow用户

发布于 2014-04-11 14:28:41

您可以在D2D目标(Direct2D and GDI Interoperability Overview)上呈现GDI内容。

或者你可以尝试一个循环,在Begin/ end中封装一个原语(然后是两个,然后是三个,直到你的绘图代码结束),就像下面的伪代码一样:

代码语言:javascript
复制
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.
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22761594

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档