如何或应该将OnAcceleratedPaint用于WPF

时间:2019-02-10 19:09:38

标签: cefsharp chromium-embedded

在寻找有关Cef / CefSharp的WPF性能的讨论时,我偶然发现了新的(我认为最新的更新为71.0)CefSharp API - OnAcceleratedPaint

我是否正确理解WPF的功能,Cef首先呈现HTML“屏幕外”,然后从此处借助Direct3D9创建WPF窗口元素?

编辑/更新的问题 现在Cef是否提供使用D3D10 / 11渲染整个HTML的机会?还是这个新方法只打算渲染例如视频元素。

当前唯一的例子是shown in this example,它在非托管代码中使用d3d11。

看看这些参考文献,似乎可以将D3D10 / 11与WPF Direct3D 10/11 & Direct2D in WPF一起使用,在这里与Introduction to D3DImage一起使用

在第一个引用的链接中,我看到WPF的答案是

  

那么我们如何将D3D10 / 11和D2D渲染到WPF中而没有空域问题?我们只有一个支持Direct3D9的D3DImage类。 WPF团队的优秀人员告诉我,IDirect3DDevice9Ex是在Vista / 7中与D3DImage一起使用的推荐设备,它支持在设备之间共享资源(如果需要,还可以共享进程)。我们可以在Direct3D10 / 11上创建共享的渲染目标,然后通过中间IDirect3DDevice9Ex设备将其拉入。无需复制!我们将这些资源放入9Ex,然后可以将其发送到D3DImage以进行高性能渲染。

无论如何将this thread herethe discussion here结合使用,当前版本仍然无法正常工作,对于使用CefSharp的用户,我们应该等待Cef(上游)首先解决问题。

amaitland在线程中到底是什么意思?

  

Chrome的更改将中断OnAcceleratedPaint的新版本CEF

0 个答案:

没有答案