[Development] QT5 OpenGL question

Jiergir Ogoerg f35f22fan at gmail.com
Fri Aug 2 20:35:47 CEST 2013


Thanks both of you, I see now, GL is old (1993 I guess) and it shows, e.g.
it requires creating a context on windows before even being able to query
GL info etc.

What do you think of the new Linux GL ABI proposal from Nvidia:
https://github.com/aritger/linux-opengl-abi-proposal

I recall doing some WebGL work a month ago (I forgot about) and I ran into
the same issue - couldn't use the same "gl" on multiple GL canvas on an
html5 page,
but in WebGL the function names are stripped of the "gl" prefix so you
don't have to repeat yourself like gl.glUseProgram, just gl.UseProgram -
with
Qt5 I'd have to use the former, unfortunately, but not a big deal.



On Fri, Aug 2, 2013 at 3:21 PM, Sean Harmer <sean.harmer at kdab.com> wrote:

> Hi,
>
> On Friday 02 August 2013 15:01:05 Jiergir Ogoerg wrote:
> > Thanks, but it's better to use functions wrapped in namespaces when it's
> > possible (for example - according to Google's C++ coding style) instead
> of
> > static methods in classes or methods of class instances or any other
> > solution when you can just use functions wrapped in namespaces.
> > And no, Qt5 doesn't allow using glew.
> >
> > On your later point - could you please elaborate on why you need the GL
> > function addresses to be context-specific? I've used freeglut and GLFW
> > before and never cared of had issues with this.
>
> Please see:
>
> http://www.opengl.org/wiki/Load_OpenGL_Functions
>
> and
>
>
> http://msdn.microsoft.com/en-us/library/windows/desktop/dd374386(v=vs.85).aspx
>
> Cheers,
>
> Sean
>
> >
> > On Fri, Aug 2, 2013 at 1:44 PM, Sean Harmer <sean.harmer at kdab.com>
> wrote:
> > > On Friday 02 August 2013 10:05:56 Sze Howe Koh wrote:
> > > > On 2 August 2013 08:16, Jiergir Ogoerg <f35f22fan at gmail.com> wrote:
> > > > > Hi,
> > > > > I'm willing to switch to QT5 with GL,
> > > > > afaik in Qt5 the GL functions are encapsulated into a class that
> > >
> > > extends
> > >
> > > > > QAbstractOpenGLFunctions and you can't use the GL calls outside
> that
> > >
> > > class
> > >
> > > > > unless you pass each time a reference to this class.
> > > > >
> > > > > Why doesn't it publish the GL functions publicly (not inside a
> class
> > > > > instance) like glew and other tools do?
> > > > >
> > > > > I'm asking because I have a lib of mine that uses GL calls, what
> > >
> > > should I
> > >
> > > > > do, pass an instance of OpenGLFunctions class to each method in the
> > >
> > > lib? -
> > >
> > > > > that's cumbersome.
> > > >
> > > > Hi,
> > > >
> > > > To answer your second question, you could use a global pointer to a
> > > > QOpenGLFunctions_X object -- no need to pass it as around as an
> > > > argument.
> > >
> > > Or set it as a member variable in that class. Or inherit your class
> from
> > > QOpenGLFunctions_blah. Or you could resolve global functions yourself.
> Or
> > > maybe use GLEW - although I've not tried that with Qt for a while now.
> > >
> > > The reason we have these functions on a class rather than globally is
> that
> > > the
> > > function addresses can be context-specific.
> > >
> > > Cheers,
> > >
> > > Sean
> > > --
> > > Join us in October at Qt Developer Days 2013 -
> https://devdays.kdab.com
> > >
> > > 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
> --
> Join us in October at Qt Developer Days 2013 - https://devdays.kdab.com
>
> 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/20130802/9e446610/attachment.html>


More information about the Development mailing list