[Development] QT5 OpenGL question

Sean Harmer sean.harmer at kdab.com
Fri Aug 2 14:21:51 CEST 2013


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



More information about the Development mailing list