Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Hi Roman, I'm currently looking through my archives for pending submissions and spotted this post from you, it was never formally addressed as a submission though, is it intended to be merged? Could you get things working under svn/trunk and send me the whole files zipped up to avoid the forum mangling the attachments. Thanks, Robert. On 2 November 2012 13:08, Roman Grigoriev grigor...@gosniias.ru wrote: Hi, I followed to advice of David Garcia to modify buffer object as he said but it doesn't work on linux. To use forward context we definitly need VAO. Here is my modified versions to support VAO. In submissions there is GraphicsContextX11.cpp to open true 3.1 and up window. Thank you! Cheers, Roman -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=50952#50952 Attachments: http://forum.openscenegraph.org//files/266_1351861595._536. http://forum.openscenegraph.org//files/bufferobject_202.cpp ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Hi, I followed to advice of David Garcia to modify buffer object as he said but it doesn't work on linux. To use forward context we definitly need VAO. Here is my modified versions to support VAO. In submissions there is GraphicsContextX11.cpp to open true 3.1 and up window. Thank you! Cheers, Roman -- Read this topic online here: http://forum.openscenegraph.org/viewtopic.php?p=50952#50952 Attachments: http://forum.openscenegraph.org//files/266_1351861595._536. http://forum.openscenegraph.org//files/bufferobject_202.cpp ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Robert, Paul, et. al: Has any further discussion or work gone into adding proper VAO support to OSG? I'm interested in contributing if I can, mostly because I'd like to see full 3.2 support for OS X. Craig On Mon, Mar 5, 2012 at 8:22 AM, Robert Osfield robert.osfi...@gmail.com wrote: Hi David, On 4 March 2012 20:55, David Garcia da...@aimsun.com wrote: Yes, I think so too. Unfortunately Apple decides that a VAO is required. I can fill a radar and ask in the developer forums but, for now, what is the best solution? The think that we should implement proper VAO support. I'm not familiar with this new feature yet, but would guess that it should probably sit in osg::Array and osg::BufferData. I'm open to suggestions. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Hi Craig -- as far as I know, no one is using vertex array objects with OSG. I am using OSG built for GL3 in an external OpenGL 3/4 project, but for file loading only, not for rendering. (The external project requires OSG built for GL3 in order to avoid including both gl.h and gl3.h in the same source.) I'm using OSG svn trunk HEAD for this, and it works great on both Windows and OSX (not yet tested on Linux). But the external project does the rendering, not OSG, so my work here doesn't help you with OSG's current lack of VAO support. I think it'd be great to have VAO support in OSG. You might want to post some design ideas here for discussion, and review by Robert (as it would involve changes to core OSG). -Paul On 10/3/2012 9:45 AM, Craig Bosma wrote: Robert, Paul, et. al: Has any further discussion or work gone into adding proper VAO support to OSG? I'm interested in contributing if I can, mostly because I'd like to see full 3.2 support for OS X. Craig On Mon, Mar 5, 2012 at 8:22 AM, Robert Osfieldrobert.osfi...@gmail.com wrote: Hi David, On 4 March 2012 20:55, David Garciada...@aimsun.com wrote: Yes, I think so too. Unfortunately Apple decides that a VAO is required. I can fill a radar and ask in the developer forums but, for now, what is the best solution? The think that we should implement proper VAO support. I'm not familiar with this new feature yet, but would guess that it should probably sit in osg::Array and osg::BufferData. I'm open to suggestions. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Hi David, On 4 March 2012 20:55, David Garcia da...@aimsun.com wrote: Yes, I think so too. Unfortunately Apple decides that a VAO is required. I can fill a radar and ask in the developer forums but, for now, what is the best solution? The think that we should implement proper VAO support. I'm not familiar with this new feature yet, but would guess that it should probably sit in osg::Array and osg::BufferData. I'm open to suggestions. Robert. ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
I believe the poster in that LWJGL thread is mistaken. Vertex array objects are not required in a 3.2 core profile context. See the OpenGL 3.2 core profile spec, which clearly states that a default (ID = 0) vertex array object is used when the app hasn't explicit bound an app-created VAO. If you are not getting correct rendering unless you bind a VAO, then that sounds like a possible driver bug. On Windows, for example, I am able to get correct rendering if I modify osgsimplegl3 as follows: * Change the #version 140 to #version 150 in both shader source strings. * Change the version string from 3.1 to 3.2. * Set the profile bit to 0x1 (WGL's core profile bit). Then, osgsimplegl3 teapot.osg renders correctly without any warnings or errors. Assuming it's a driver bug, I'm not sure how we'd want to work around it. However, I imagine a submission to add VAO support to OSG Drawables might be considered by Robert for inclusion in a future release. -Paul On 3/3/2012 4:08 PM, David Garcia wrote: Paul, Seems that OSG must use VAO. Look at this message for the same error: http://lwjgl.org/forum/index.php?topic=4071.msg22035#msg22035 And then this comment in the next message: Oups... My Bad. OpenGL 3.2 Core REQUIRES the use of VAOs (not just VBOs...) I added VAO instructions, now It work perfectly ! Maybe this will make sense to you :) David On Mar 3, 2012, at 23:58 , David Garcia da...@aimsun.com mailto:da...@aimsun.com wrote: Paul, I cannot help, my knowlenge in GL3 is quite limited. As far as I know Lion implementation is strictly Core profile only and probably OSG is mixing GL3 with older profiles. You can find a bit more information, but not too much, in the Apple Developer forums. My original problem was to use a GLSL 1.5 program in OSG's Mac version. In Windows and Linux the system will create the best profile possible for OSG, automatically and without enabling GL3 explicitly, and, in my case, is version 3.3. In Mac the developer must create explicitly a 3.2 profile. This is not the case in OSG and my app fails. As far as I know my only options are either to code the GLSL function in version 1.2 or run OSG in GL3 mode. Best regards, David On Mar 3, 2012, at 2:56 , Paul Martz pma...@skew-matrix.com mailto:pma...@skew-matrix.com wrote: I'm assuming you are referring to the shader program info log message: Validation Failed: No vertex array object bound. That's a mystery. It doesn't appear on Windows. I find it odd that OS X would require the use of vertex array objects when you open a 3.x context, but that's what the error text appears to imply. I did a quick web search and didn't see any discussion of such a message. -Paul On 3/2/2012 5:10 PM, David Garcia wrote: Following Paul advice I try osgWorks (2.0.0) teapot. I got different errors. In the state I have add to extract more information: gc-getState()-setCheckForGLErrors(osg::State::ONCE_PER_ATTRIBUTE); The output is in the zip file (errors.txt). ___ osg-users mailing list osg-users@lists.openscenegraph.org mailto:osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org * David Garcia* Technical Director signature.gif * David Garcia* Technical Director ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Paul,On Mar 4, 2012, at 20:03 , Paul Martz pma...@skew-matrix.com wrote:I believe the poster in that LWJGL thread is mistaken. Vertex array objects are not required in a 3.2 core profile context. See the OpenGL 3.2 core profile spec, which clearly states that a default (ID = 0) vertex array object is used when the app hasn't explicit bound an app-created VAO.Yes, I think so too. Unfortunately Apple decides that a VAO is required. I can fill a radar and ask in the developer forums but, for now, what is the best solution?Best regards, DavidIf you are not getting correct rendering unless you bind a VAO, then that sounds like a possible driver bug. On Windows, for example, I am able to get correct rendering if I modify osgsimplegl3 as follows: * Change the "#version 140" to "#version 150" in both shader source strings. * Change the version string from "3.1" to "3.2". * Set the profile bit to 0x1 (WGL's core profile bit).Then, "osgsimplegl3 teapot.osg" renders correctly without any warnings or errors.Assuming it's a driver bug, I'm not sure how we'd want to work around it. However, I imagine a submission to add VAO support to OSG Drawables might be considered by Robert for inclusion in a future release. -PaulOn 3/3/2012 4:08 PM, David Garcia wrote:Paul,Seems that OSG must use VAO. Look at this message for the same error:http://lwjgl.org/forum/index.php?topic=4071.msg22035#msg22035And then this comment in the next message:"Oups... My Bad. OpenGL 3.2 Core REQUIRES the use of VAOs (not just VBOs...)I added VAO instructions, now It work perfectly !"Maybe this will make sense to you :)DavidOn Mar 3, 2012, at 23:58 , David Garcia da...@aimsun.commailto:da...@aimsun.com wrote:Paul,I cannot help, my knowlenge in GL3 is quite limited. As far as I know Lionimplementation is strictly Core profile only and probably OSG is mixing GL3with older profiles. You can find a bit more information, but not too much, inthe Apple Developer forums.My original problem was to use a GLSL 1.5 program in OSG's Mac version. InWindows and Linux the system will create the best profile possible for OSG,automatically and without enabling GL3 explicitly, and, in my case, is version3.3. In Mac the developer must create explicitly a 3.2 profile. This is notthe case in OSG and my app fails.As far as I know my only options are either to code the GLSL function inversion 1.2 or run OSG in GL3 mode.Best regards,DavidOn Mar 3, 2012, at 2:56 , Paul Martz pma...@skew-matrix.commailto:pma...@skew-matrix.com wrote:I'm assuming you are referring to the shader program info log message:Validation Failed: No vertex array object bound.That's a mystery. It doesn't appear on Windows. I find it odd that OS X wouldrequire the use of vertex array objects when you open a 3.x context, butthat's what the error text appears to imply. I did a quick web search anddidn't see any discussion of such a message.-PaulOn 3/2/2012 5:10 PM, David Garcia wrote:Following Paul advice I try osgWorks (2.0.0) teapot. I got different errors. Inthe state I have add to extract more information:gc-getState()-setCheckForGLErrors(osg::State::ONCE_PER_ATTRIBUTE);The output is in the zip file (errors.txt).___osg-users mailing listosg-users@lists.openscenegraph.org mailto:osg-users@lists.openscenegraph.orghttp://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org*David Garcia*Technical Directorsignature.gif*David Garcia*Technical Director___osg-users mailing listosg-users@lists.openscenegraph.orghttp://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org___osg-users mailing listosg-users@lists.openscenegraph.orghttp://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org David GarciaTechnical Director ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Paul,I cannot help, my knowlenge in GL3 is quite limited. As far as I know Lion implementation is strictly Core profile only and probably OSG is mixing GL3 with older profiles. You can find a bit more information, but not too much, in the Apple Developer forums.My original problem was to use a GLSL 1.5 program in OSG's Mac version. In Windows and Linux the system will create the best profile possible for OSG, automatically and without enabling GL3 explicitly, and, in my case, is version 3.3. In Mac the developer must create explicitly a 3.2 profile. This is not the case in OSG and my app fails.As far as I know my only options are either to code the GLSL function in version 1.2 or run OSG in GL3 mode.Best regards, DavidOn Mar 3, 2012, at 2:56 , Paul Martz pma...@skew-matrix.com wrote:I'm assuming you are referring to the shader program info log message: Validation Failed: No vertex array object bound.That's a mystery. It doesn't appear on Windows. I find it odd that OS X would require the use of vertex array objects when you open a 3.x context, but that's what the error text appears to imply. I did a quick web search and didn't see any discussion of such a message. -PaulOn 3/2/2012 5:10 PM, David Garcia wrote:Following Paul advice I try osgWorks (2.0.0) teapot. I got different errors. Inthe state I have add to extract more information:gc-getState()-setCheckForGLErrors(osg::State::ONCE_PER_ATTRIBUTE);The output is in the zip file (errors.txt).___osg-users mailing listosg-users@lists.openscenegraph.orghttp://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org David GarciaTechnical Director ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
Paul,Seems that OSG must use VAO. Look at this message for the same error:http://lwjgl.org/forum/index.php?topic=4071.msg22035#msg22035And then this comment in the next message:"Oups... My Bad. OpenGL 3.2 Core REQUIRES the use of VAOs (not just VBOs...)I added VAO instructions, now It work perfectly !"Maybe this will make sense to you :) DavidOn Mar 3, 2012, at 23:58 , David Garcia da...@aimsun.com wrote:Paul,I cannot help, my knowlenge in GL3 is quite limited. As far as I know Lion implementation is strictly Core profile only and probably OSG is mixing GL3 with older profiles. You can find a bit more information, but not too much, in the Apple Developer forums.My original problem was to use a GLSL 1.5 program in OSG's Mac version. In Windows and Linux the system will create the best profile possible for OSG, automatically and without enabling GL3 explicitly, and, in my case, is version 3.3. In Mac the developer must create explicitly a 3.2 profile. This is not the case in OSG and my app fails.As far as I know my only options are either to code the GLSL function in version 1.2 or run OSG in GL3 mode.Best regards, DavidOn Mar 3, 2012, at 2:56 , Paul Martz pma...@skew-matrix.com wrote:I'm assuming you are referring to the shader program info log message: Validation Failed: No vertex array object bound.That's a mystery. It doesn't appear on Windows. I find it odd that OS X would require the use of vertex array objects when you open a 3.x context, but that's what the error text appears to imply. I did a quick web search and didn't see any discussion of such a message. -PaulOn 3/2/2012 5:10 PM, David Garcia wrote:Following Paul advice I try osgWorks (2.0.0) teapot. I got different errors. Inthe state I have add to extract more information:gc-getState()-setCheckForGLErrors(osg::State::ONCE_PER_ATTRIBUTE);The output is in the zip file (errors.txt).___osg-users mailing listosg-users@lists.openscenegraph.orghttp://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org David GarciaTechnical Directorsignature.gif David GarciaTechnical Director ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
Re: [osg-users] OpenGL 3.2 support in OS X 10.7 (Lion)
I'm assuming you are referring to the shader program info log message: Validation Failed: No vertex array object bound. That's a mystery. It doesn't appear on Windows. I find it odd that OS X would require the use of vertex array objects when you open a 3.x context, but that's what the error text appears to imply. I did a quick web search and didn't see any discussion of such a message. -Paul On 3/2/2012 5:10 PM, David Garcia wrote: Following Paul advice I try osgWorks (2.0.0) teapot. I got different errors. In the state I have add to extract more information: gc-getState()-setCheckForGLErrors(osg::State::ONCE_PER_ATTRIBUTE); The output is in the zip file (errors.txt). ___ osg-users mailing list osg-users@lists.openscenegraph.org http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org