[Development] Quick2 and Directx11 backend (Angle)

Loaden loaden at gmail.com
Sun May 20 17:02:28 CEST 2012


It's great if it work. I am very glad to hear even it's only a beginning.
That It's possible Nokia qt-term take and improve it?
It's a new hope from Windows side. (from Star War IV :))
Well done!

2012/5/20 Corentin Jabot <corentin.jabot at gmail.com>

> So, There is the patch.
>
> * First, checkout and build ANGLE as explain here
> http://code.google.com/p/angleproject/wiki/DevSetup ( require directx sdk
> &  visual studio )
> * Then, edit qtbase/mkspecs/features/win32/opengl.prf and change the
> include and library path of angle ( or just build angle in C:\\angle)
> * Run configure.exe with the option "-opengl es2"
> * Build qtbase, it should works fine.
> * Build and test some examples.
>
> examples\opengl\hellowindow work just fine.
> The others do not : black screen, crash, etc.
> I'm not so sure where the problem really is, that is why I seek help
>
> How does it work ?
> When configured with -opengl es2,  the windows QPA will use an EGL
> contexts and surfaces instead of opengl. the EGL calls are
> converted transparently by ANGLE into directx calls.
>
> Remaining work :
> * Try and fixes the black screen, crashes, and others issues ( like
> ui unresponsiveness)
> * Clean the code
> * Integrate nicely with QSurfaceFormat and find optimal options.
> * Ensure QtDeclarative and other modules works fine on top of angle
>
> Limitations:
> * I thought of including ANGLE in the Qt sources, so it
> can automatically be build via some configure option, but sadly ANGLE is
> not designed to compile with MINGW.
> * ANGLE provide an OpenGL ES 2.0 API, not an Opengl API. So examples,
> applications or features that specifically require a full opengl api are
> not supposed to work.
>
>
> I'm convinced that this kind of work is really important for QML adoption
> since a lot of final Windows users do not have a working opengl support  -
> mostly because they use outdated drivers, and they can be hard to update,
> especially on laptops.
> The ultimate solution would be to use ANGLE as a fallback if
> the initialization of a classic opengl context fail, but that seems a
> really laborious task.
> Also, Thiago mentioned a cpu-rasterization project, I guess that would
> make ANGLE useless, but I'm not sure there is people working on that.  And
> the performance of such solution wouldn't be so great.
>
>
>
> Please note that patch is very unstable and experimental. The patch is
> quite ugly, I put some code in place it does not belong (see
> QEGLPlatformContext constructor ) and added a lot of logs to figure what go
> wrong.
>
>
> _______________________________________________
> Development mailing list
> Development at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/development
>
>


-- 
Please don't ask where I come from, It's a shame!
Best Regards
Yuchen
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20120520/78c62d55/attachment.html>


More information about the Development mailing list