Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
I code the java project that using JOGL 2.3 library, but I encounter a strange problem.
when I type the "GL3 gl = drawable.getGL().getGL3();" at function display() in class that extends GLCanvas. I will get the exception like below: Caused by: com.jogamp.opengl.GLException: Not a GL3 implementation at jogamp.opengl.gl4.GL4bcImpl.getGL3(GL4bcImpl.java:39005) at display.Displayer.display(Displayer.java:236) at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:691) at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:673) at com.jogamp.opengl.awt.GLCanvas$11.run(GLCanvas.java:1421) at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1277) I have coded some Qt project using OpenGL 3.3 function, and it run well. so I think it is not the hardware updating issue. Have anyone encountered this problem before? If solved, pls help me. |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
How do you create the GLProfile?
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by danpcl
Hi
GL4bc is a sub-interface of GL3, it should work. Do you use JOGL 2.3.2? Please be very accurate.
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by danpcl
Does drawable.getGL().isGL3() return true?
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by danpcl
Sven wrote this several years ago:
http://jogamp.org/log/irc/jogamp_20140926050545.html#l87 You probably use the default profile instead of requesting a GL3 profile. Call GLProfile.getMaxProgrammable(true).
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Many OSX machine do not support OpenGL 3 compatibility profiles at all (only core profiles) so make extra sure what type of profile you request. Later versions of OSX only supports OpenGL 4.1 or OpenGL 2.2 (depending on the HW).
https://developer.apple.com/opengl/capabilities/index.html |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
This post was updated on Mar 30, 2016; 8:18am.
In reply to this post by gouessej
Yes, I use jogl-2.3.2
"GLProfile.getMaxProgrammable(true)", this function where should I call? In the override function "display()" ? sharedCaps is a object of GLAutoDrawable. this line "sharedCaps=new GLCapabilities(GLProfile.getDefault());" that I get the default profile. Should I modify the argument to create instance of GLCapabilities ? By the way, my graphic card is "Intel HD Graphics 5000". |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
You should use the right profile each time you create a (shared or not) context, a canvas or a window, when creating a GLCapabilities instance. It can't work if you use the default context (probably supporting only OpenGL 2.1 under OS X 10.11).
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
In reply to this post by danpcl
You told me that you get a 0x502 OpenGL error. It means that the profile doesn't support a particular kind of texture format.
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
drawable.getGL().getGL3() return false.
I think that my graphic card doesn't support Opengl 3.X. Maybe I will try to use Opengl 4 or later to implement my project. |
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Administrator
|
Your GPU supports OpenGL 4 but I'm not sure that your driver under OS X supports it. Please use GLProfile.getMaximumProgrammable(true) or GLProfile.getMaximum(true) as early as possible when creating your first canvas or window, otherwise you have no chance to get any support of OpenGL core as your default seems to be OpenGL 2.1.
Julien Gouesse | Personal blog | Website
|
Loading... |
Reply to author |
Edit post |
Move post |
Delete this post |
Delete this post and replies |
Change post date |
Print post |
Permalink |
Raw mail |
![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Newer Macs (last couple of years) with latest OSX should support OpenGL 4.1, they just don't support OpenGL 3.3 anymore which is strange but there you are :-) |
Free forum by Nabble | Edit this page |