Creating a GLProfile in an Applet

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Creating a GLProfile in an Applet

pjcozzi
Hi,

I am using the following code to create a GLProfile inside the init() function of my JApplet:

   GLProfile profile = GLProfile.get(new String[] { GLProfile.GL4bc, GLProfile.GL3bc, GLProfile.GL2 });

I then create a canvas, and start making GL calls.  If I run the applet from Eclipse, a call to glGetString with GL_VERSION returns the following:

   4.0.10243 Compatibility Profile Context

If I run the applet in a web browser, I get:

   3.0.10243 Compatibility Profile Context

I'm sure the different is because I am using a more recent version of JOGL on my development machine than the signed version served by jogamp.org.

My questions are:
   * How often do the signed JOGL jars get updated?
   * Why do I only get a 3.0 context, not a 3.3 context?  Can I change my code to get a 3.3 context?

Thanks,
Patrick
Reply | Threaded
Open this post in threaded view
|

Re: Creating a GLProfile in an Applet

gouessej
Administrator
Hi!

The JARs are very old (April? May?) whereas the latest autobuild has been done in September.

Why don't you use GLProfile.getDefault() or GLProfile.getMaxFixedFunc()?
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Creating a GLProfile in an Applet

pjcozzi
Thanks for the response.

GLProfile.getMaxFixedFunc() isn't in the JOGL jars available to applets yet:

    java.lang.NoSuchMethodError: javax.media.opengl.GLProfile.getMaxFixedFunc()Ljavax/media/opengl/GLProfile

I also tried GLProfile.getDefault(), but it only returns a 3.0 context when ran from Eclipse, where as, when I pass GLProfile.GL4bc to GLProfile.get(), I can get a 4.0 context (only when ran from Eclipse with recent JOGL jars.  In the web browser, it still creates a 3.0 context).

Perhaps there is still a bug in GL_PROFILE_LIST_ALL, as hinted in the javadoc.

Is it possible to create anything greater than a 3.0 context in an applet in a web browser at this time?  It's not a big deal if we can't, I just want to know the limitations.

Thanks for the help,
Patrick
Reply | Threaded
Open this post in threaded view
|

Re: Creating a GLProfile in an Applet

gouessej
Administrator
I really advise you to build JOGL 2.0 beta from the source because the JARs are so obsolete. You can get a GL4 backward compatible context in an applet with the version on the trunk.

Building JOGL on Linux is very simple, it is a bit tricky on Windows especially if you want to use Visual Studio but I gave some indications to do so.
Julien Gouesse | Personal blog | Website
Reply | Threaded
Open this post in threaded view
|

Re: Creating a GLProfile in an Applet

pjcozzi
In reply to this post by pjcozzi
I'm using Eclipse on Windows.

I wanted to use the hosted JARs because they are signed, and I want my applet to run in a sandbox.  I'm not sure what is involved in signing them myself.

I can certainty wait for new hosted JARs to get a 4.0 context.  I was just wondering if there are plans to update the hosted JARs, or maybe applets are always supposed to contain their own JOGL JARs?

I'm obviously quite new to applets ;).

Regards,
Patrick
Reply | Threaded
Open this post in threaded view
|

Re: Creating a GLProfile in an Applet

gouessej
Administrator
This post was updated on .
pjcozzi wrote
I'm using Eclipse on Windows.
Ok you will need to change the default Ant version used by Eclipse (go from 1.7 to 1.8.0) and you will need Microsoft Visual Studio or MinGW Compiler Suite, have a look at the "how to build" section in the wiki.

pjcozzi wrote
I wanted to use the hosted JARs because they are signed, and I want my applet to run in a sandbox.  I'm not sure what is involved in signing them myself.
You can use your own signature, you can sign all JARs including JOGL ones with it.

pjcozzi wrote
I can certainty wait for new hosted JARs to get a 4.0 context.  I was just wondering if there are plans to update the hosted JARs, or maybe applets are always supposed to contain their own JOGL JARs?
As far as I know, there is no public plan of updating these JARs whereas it would be fine. I assume Sven has good reasons not to update them now.

Edit.: the autobuild works anew thanks to Sven. I advise you to use the latest available build :)
Julien Gouesse | Personal blog | Website