[osg-users] Specifying the GL context version to request

Robert Osfield robert.osfield at gmail.com
Tue Aug 22 00:17:52 PDT 2017

HI Sandro,

On 21 August 2017 at 18:50, Sandro Mani <manisandro at gmail.com> wrote:

> That's a good enough answer for me, ultimately I just want to understand
> what needs to be fixed where. From your answer I gather that OSG should be
> okay now and that I'll take up the rest with osgEarth upstream.

The change to use DisplaySettings::instance() by default in Triats is
something I'm not comfortable with as it changes the behaviour which may
catch some OSG users out, and if they did find problems they would be hard
to diagnose.

For osgEarth it does sound like the Capabilities mechanism needs tightening
up to make sure the same context, or at least type of context, is used for
the viewer is used when when checking the driver capabilities.

>From your description it looks like the Capabilties mechanism would work
fine on drivers that don't have multiple behaviours, so link to a standard
GL context and then you can query all the features/extensions just fine
(this is how GL has traditionally worked over the years) but fails to
handle newer GL drivers that allow for specific generations of
functionality to be split i.e. you get a GL3.x context with no backwards
compatibility or a GL1.x context with no forwards computability.

When expressed this way it shows that the GL core profile approach that the
ARB took really fundamentally changes OpenGL, breaking one of it's greatest
assets as programmer developing software that is long lived.  NVidia for
sure have maintained the old way and remain easy to manage, but Apple and
Intel/MESA have taken the opportunity for use non compatibility to break
the old way of doing things, and breaking approaches like

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20170822/293c6e54/attachment.htm>

More information about the osg-users mailing list