[Interest] Integrating with WPF through ANGLE's IDirect3DSurface9

Constantin Makshin cmakshin at gmail.com
Sat Jan 25 18:53:39 CET 2014


Lines 309–313 of
https://chromium.googlesource.com/angle/angle/+/0af35c748e210290e4a4d51e0958baef867bf9e7/include/EGL/eglext.h(I
chose a specific commit instead of "master" to be sure everyone will
see
the same file no matter how much time passes) suggest there's no way to
enforce Direct3D 9 backend. And, to be honest, I don't see any good reason
for Qt to expose that part of EGL context creation — it's not Qt's business
what EGL/GLES implementation is actually used (IMHO everything that's
supposed to use OpenGL ES should rely exclusively on its specifications
with conformance being a concern of particular implementation's developers).


On Sat, Jan 25, 2014 at 7:39 PM, Thomas Sevaldrud <thomas at silentwings.no>wrote:

> Thanks, I'll take a look at that extension. It could definitely be what
> I'm looking for :-)
>
> It is a concern with the backend being either DX9 or DX11 though, but at
> least when using ANGLE directly I think you can choose which backend you
> want to use. Not sure if/how that is exposed through Qt or the EGL APIs
> though.
>
> - Thomas
>
>
> On Sat, Jan 25, 2014 at 2:01 AM, Constantin Makshin <cmakshin at gmail.com>wrote:
>
>> Ah, ignore my previous message, I misunderstood the original question
>> (really shouldn't be wandering around the Internet at ~5AM :) ).
>>
>> Function eglQuerySurfacePointerANGLE() from ANGLE's EGL extension "
>> EGL_ANGLE_query_surface_pointer" may be what you're looking for.
>> On Jan 24, 2014 8:57 PM, "Thomas Sevaldrud" <thomas at silentwings.no>
>> wrote:
>>
>>>  Hello,
>>>
>>> I know that what I'm about to ask is somewhat of a heresy, but is there
>>> a way to access to the IDirect3DSurface9 used as a back buffer by the ANGLE
>>> OpenGL Wrapper in Qt?
>>>
>>> The ultimate goal of this hack is to integrate a QWindow into a WPF
>>> application. I know this sounds real evil, but the WPF requirement is way
>>> out of my control, and I would really like to avoid copying the frame
>>> buffer via system memory. By using the D3DSurface I can simply plug it into
>>> a D3DImage in .NET (I've done this with other D3D applications before, so I
>>> know it works)
>>>
>>> I've been digging around in the Qt code but this far I haven't been able
>>> to figure out exactly how ANGLE is initialized and where it fits into the
>>> rest of everything.
>>>
>>> Any insight into this would be greatly appreciated.
>>>
>>> - Thomas
>>>
>>> _______________________________________________
>>> Interest mailing list
>>> Interest at qt-project.org
>>> http://lists.qt-project.org/mailman/listinfo/interest
>>>
>>>
>> _______________________________________________
>> Interest mailing list
>> Interest at qt-project.org
>> http://lists.qt-project.org/mailman/listinfo/interest
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20140125/b474fad4/attachment.html>


More information about the Interest mailing list