Hi,

regarding the system framebuffer problem: The uikit platform plugin solves it 
by subclassing QGLPaintDevice and setting m_thisFBO in its constructor to the 
framebuffer object that was created for the UIView's EAGLContext. The plugin is 
asked by the lighthouse system for its paintdevice, and returns an instance of 
the subclass.

"GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES"
This sounds like the creating of the framebuffer object is incorrect. Where is 
that done?

I have never tried to get QGLWidget running, I don't know what the interaction 
with the lighthouse platform plugin is in this case (it needs to ask it to 
create a gl context for it at least, I suppose), and it might also need fixes 
in Qt. I think your best course of action is to ask on the #qt-lighthouse IRC 
channel on irc.freenode.net for more details.

Br, Eike

--
Eike Ziller
Principal Software Engineer

Nokia, Qt Development Frameworks

Nokia gate5 GmbH
Firmensitz: Invalidenstr. 117, 10115 Berlin, Germany
Registergericht: Amtsgericht Charlottenburg, Berlin: HRB 106443 B
Umsatzsteueridentifikationsnummer: DE 812 845 193
Geschäftsführer: Dr. Michael Halbherr, Karim Tähtivuori

________________________________________
From: interest-bounces+eike.ziller=nokia....@qt-project.org 
[interest-bounces+eike.ziller=nokia....@qt-project.org] on behalf of ext 
Wuerfel, Hannes [hannes.wuer...@student.hpi.uni-potsdam.de]
Sent: Wednesday, January 25, 2012 22:17
To: interest@qt-project.org
Subject: [Interest] Lighthouse iOS OpenGL framebuffer object problem

Hi,

I've tried the uikit from qt4.8 this week and got it finally running on 
simulator and device.
I've already red the post on 
http://labs.qt.nokia.com/2011/08/09/update-on-uikit-lighthouse-platform/ . I've 
succesfully built the qt opengl es 2 example for the simulator but the QtGL 
Widget stays black and I've got this error message: "Failed to make complete 
framebuffer object 8cd6". I've searched for the hex code and got 
"GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT_OES".

The post states: "Qt’s Open GL ES 2 code path resets the used frame buffer in 
between to a default value, in the unmodified case to the system frame buffer 
(0) – which doesn’t exist on iOS (all rendering done in FBO’s). The workaround 
is to override this by setting QGLPaintDevice::m_thisFBO (a protected member) 
in a custom subclass class and using that instead." as a possible workaround 
but I need some more information to actually try this out.

My Questions:
When I'm going to subclass QGLPaintDevice how do I set up the frame buffer 
correctly?
Which other files of the QtOpenGL module are currently using this "private" 
class?

What I've found out so far is that:
qgl_p.h
qglframebufferobject_p.h
qglpixelbuffer_p.h
qpaintengineex_opengl2_p.h
qpixmapdata_gl_p.h
qpixmapdata_x11gl_p.h
qwindowsurface_gl_p.h

include QGLPaintDevice.

Thanks in advance.
Best regards.
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest
_______________________________________________
Interest mailing list
Interest@qt-project.org
http://lists.qt-project.org/mailman/listinfo/interest

Reply via email to