[Development] Qt 'minimal' platform no rendering alpha/opacity.
Sean Harmer
sean.harmer at kdab.com
Mon Apr 20 11:03:37 CEST 2015
On 20/04/2015 08:25, Paul Knopf wrote:
> Thanks a lot! This worked. I now have a valid alpha component that I
> can send to my hard vendors API for FPGA video overlay.
>
> With this said, I would REALLY like to support OpenGL (for Qt Quick
> 2/qml). Here is an image <http://i.imgur.com/hhlcbb9.jpg> of what I am
> trying to essentially do. What are your thoughts implementing this in Qt?
>
> Here is what I need my monitor output to be.
>
> The original buffer: size w / h : [R G B A][R G
> B A][R G B A][...]
> The output i want: size (w*.25) / (h*.25): [R G B][A R G][B A
> R][G B A][...]
>
> My thoughts are to Render OpenGL off screen (not using framebuffer),
> then have a thread that periodically captures the output (RGBA) and
> sends it my linux framebuffer. My output doesn't need high FPS. I
> understand that sending the extra alpha will increase the size of my
> resolution by 25%.. The FPGA component/board will identify itself as
> having a resolution of 1350 (1080 * .25) so that it can internally
> translate to 1080 with an alpha channel. Does the EGLFS support
> off-screen rendering? Maybe then, I could create 1080 opengl context
> off-screen, and then output it, including alpha, to the 1350 framebuffer.
OpenGL supports offscreen rendering as long as the QPA supports OpenGL.
* Create a QOffscreenSurface
* Create a QOpenGLContext
* Create a suitable Framebuffer Object with a colour texture attachment
and most likely a depth and stencil attachment.
* Bind the FBO as the GL_BUFFER (both read and write binding points)
* Draw stuff
* Read back the texture attached to the FBO as needed
If you are wanting to use this approach to render Qt Quick 2 content,
then take a look at the QQuickRenderControl class and accompanying
example that ships with Qt.
Cheers,
Sean
--
Dr Sean Harmer | sean.harmer at kdab.com | Managing Director UK
Klarälvdalens Datakonsult AB, a KDAB Group company
Tel. Sweden (HQ) +46-563-540090, USA +1-866-777-KDAB(5322)
KDAB - Qt Experts - Platform-independent software solutions
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20150420/7a8a90e9/attachment.html>
More information about the Development
mailing list