But to my knowledge no one has contributed code to make it work on OS X or
Linux. Please do so, if you need that functionality.
-Paul
> *
> *
>
>
> _______________________________________________
> osg-users mailing list
> osg-...@lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
_______________________________________________
osg-users mailing list
osg-...@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Am 01.03.12 21:45, schrieb Paul Martz:
> But to my knowledge no one has contributed code to make it work on OS X
> or Linux. Please do so, if you need that functionality.
Besides the specific CMAKE_VARIABLES to get Open GL 3 support on OS X
GraphicsWindowCocoa needs some love when creating a graphics context.
Just setting the NSPixelFormat to
NSOpenGLPixelFormatAttribute pixelFormatAttributes[] =
{
NSOpenGLPFAOpenGLProfile, NSOpenGLProfileVersion3_2Core,
0
};
when compiling for Open GL 3 should help.
cheers,
Stephan
> 3) Setting the pixel format as Stephan suggests.
>
> In bool GraphicsWindowCocoa::realizeImplementation():
> attr[i++] = NSOpenGLPFAOpenGLProfile;
> attr[i++] = NSOpenGLProfileVersion3_2Core;
>
> In bool PixelBufferCocoa::realizeImplementation()
> attr[i++] = NSOpenGLPFAOpenGLProfile;
> attr[i++] = NSOpenGLProfileVersion3_2Core;
When you have tested and are satisfied with the changes mentioned in items 1 and
3, I hope you'll submit them to osg-submissions. It will be nice to have GL 3
support on something other than MS Windows.
> By the way, executing osgsimplegl3 I got lots of errors:
> Warning: detected OpenGL error 'invalid enumerant' at Before Renderer::compile
> Warning: Material::apply(State&) - not supported.
> Warning: TexGen::apply(State&) - not supported.
> Warning: Material::apply(State&) - not supported.
> Warning: TexGen::apply(State&) - not supported.
If you attempt to render a scene graph that uses functionality that is
deprecated in GL3, such as Material and TexGen StateAttributes, then OSG
displays warnings so that you (or your app) can take steps to address that
situation.
-Paul
The OSG is designed to check for extensions at runtime, so even if you
compile the OSG against OpenGL 1.1 it will still be able to load up
OpenGL 3.2 features at runtime and use them.
The CMake option to compile specifically against OpenGL 3 is for when
you want to compile against OpenGL 3 without the backwards
compatibility to OpenGL 2.x, this disables all the fixed function
pipeline. This is something you might want, but it's mostly not
necessary.
Robert.