【问题标题】:Direct2d offscreen rendering buggy?Direct2d 屏幕外渲染错误?
【发布时间】:2012-12-11 23:17:22
【问题描述】:

我正在尝试使用屏幕外的 bitmaprendertarget 渲染位图,然后将其绘制在屏幕上。它工作得很好,但是当我尝试在其上渲染单独的位图时,就像渲染不起作用,它只会剪辑原始图片。

如下所示:http://img827.imageshack.us/img827/7991/clipped.png

我正在使用兼容的渲染目标和 hwndrendertarget。有趣的是,当我使用屏幕上的 hwndrendertarget 渲染它们时,它们就很好了。

像这样:http://img141.imageshack.us/img141/4825/workingj.png

我正在使用 CopyFromRendertarget 将位图从 Rendertarget 中取出,因为由于某种原因,GetBitmap 不适用于我使用 Bitmaprendertarget。这是在 Visual Studio 2010 C++ 上。

有人知道这里发生了什么吗?

---- 编辑----

需要注意的一个有趣的事情:我尝试在获取位图后进行清除,然后进行EndDraw,但它只获取第一个位图,而其他位图根本不会被绘制。

【问题讨论】:

    标签: c++ visual-studio-2010 direct2d


    【解决方案1】:

    我正在尝试一些东西,并注意到我根本不需要将 EndDraw 放入 bitmaprendertarget 即可获得所需的位图。当我使用离屏 RT 完成后,我可以在其上调用 EndDraw,它工作得很好。

    【讨论】:

    • 实际上,我的自定义函数 EndDraw 已经过时了,它只为 hwndrendertarget 调用它,所以它从未为 bitmaprendertarget 调用 enddraw。所以当我修复它时,它完美无缺。
    猜你喜欢
    • 1970-01-01
    • 2011-04-19
    • 1970-01-01
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多