Michael Bien's Weblog
NetBeans OpenGL Pack is evolving
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
This weblog has moved to a new location.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
The NetBeans OpenGL Pack is slowly evolving to a set of useful integrated tools, demo applications and editors for Java OpenGL development.
The features currently included are:
- Editor for the OpenGL Shading Language (GLSL) with compiler error annotation, code folding, syntax highlighting, auto completion and documentation.
- Easy access to the GLSL compiler and linker of your graphics driver integrated in the editor
- OpenGL Capabilities Viewer
- Integration of JOGL GUI components into the Matisse GUI builder
- JOGL project templates
- Ready to run JOGL demos and examples of the OpenGL Programming Guide (also known as Red Book)
We are currently fixing the last bugs and hope to build the first release soon. The early access version is available via Update Center in the download section of the project page.
------------
The project has also been recently mentioned in the NetBeans Magazine [issue four] covering NetBeans 6 features. Geertjan Wielenga interviewed me about the GLSL editor in the Schliemann section of the magazine.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
This weblog has moved to a new location.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Posted at 06:43PM Dec 11, 2007 by mbien in NetBeans OpenGL Pack | Kommentare[11]
Hi, thank you very much for your work on the NetBeans OpenGL Pack. Do you have any plan to support 64 bit Windows versions?
Currently, the pack ignores this platform, limiting a bit its usefulness for me (I'm on Vista x64).
Massimiliano
Gesendet von Massimiliano Bussi am January 13, 2008 at 04:36 PM CET #
Hello Massimiliano,
I am aware of that issue but it is actually not easy to fix (because of several reasons).
JOGL's 32 and 64 bit natives have identical names and can't be deployed in the same folder. Additional to that there is no mechanism to specify the library path of a NetBeans lib wrapper module.
Last but not least, natives are always loaded with VM scope. Which causes version conflicts if you have a different JOGL build in your project (eg in the Matisse GUI Builder preview)
see:
http://www.netbeans.org/issues/show_bug.cgi?id=118951
or a part of the discussion (there is more on the NB dev mailing list):
http://www.javagaming.org/forums/index.php?topic=17220.0
I don't expect a solution from the NetBeans corner. We will probably try to solve that from JOGL's point of view.
This bug has pretty high priority because it causes a lot of problems. But I have currently no time to fix it (-> exams), so you have to be patient (or a volunteer ;) )
Gesendet von Michael Bien am January 13, 2008 at 07:45 PM CET #
possible workarounds for you:
-run NetBeans with a 32bit JVM
-or copy the 64bit natives into <your home>/.netbeans/6.0/modules/lib/ and the jars into <your home>/.netbeans/6.0/modules/ext/
Gesendet von Michael Bien am January 13, 2008 at 07:51 PM CET #
Hi Michael, that's exactely what I did (I copied the libs into .netbeans/6.0/modules/lib directory.
If you want, I can help you develop/adapt the module, but since NetBeans module development is something I have never done, you will have to guide me.
Massimiliano
Gesendet von Massimiliano Bussi am January 14, 2008 at 09:13 PM CET #
Sorry - I have currently no time to guide you how to fix the NetBeans native library loading issue for us.
I will look into it in around 3 weeks
(but thanks)
-michael
Gesendet von Michael Bien am January 18, 2008 at 07:56 PM CET #
I am getting an error GLException: "Unable to lock surface" when I try to view a JFrame that contains a GLCanvas from the design view of the Netbeans GUI editor. I have read online that this particular exception can occur when a GLCanvas is added to a component before setVisible(true) has been called for the component. I believe this is happening in this case because the netbeans gui editor adds all components to the frame before setVisible(true) is called. I should mention that my program runs fine at runtime. The only problem I am having is with the Design view. I tried calling setVisible(true) before the call to initComponents() but this did not fix the problem with the Design view. Do you have any suggestions on how to fix this problem?
Gesendet von Russell Bolles am February 15, 2008 at 12:34 AM CET #
Hello Russel,
I never noticed this issue. I am always adding the (GL) components before setting the root component to visible and I also think this could be considered "best practice".
Does the GL capabilities viewer work for you (Tools | OpenGL Capabilities). This tool has been designed with matisse and the component designer and preview worked for me.
https://netbeans-opengl-pack.dev.java.net/source/browse/netbeans-opengl-pack/trunk/gl-capabilities-viewer/src/net/java/nboglpack/glcapabilities/GLCapabilitiesPanel.java?rev=330&view=markup
Gesendet von Michael Bien am February 15, 2008 at 10:57 PM CET #
Hi Michael,
Installed the pack on linux (gentoo) amd64 platform. GL Capabilities viewer failed and so did SimpleJOGL project.
All issues were fixed when I replaced the native libraries at:
"~/.netbeans/6.0/modules/lib"
"~/.netbeans/6.0/libs/jogl.jar-natives-linux-amd64
"~/.netbeans/6.0/libs/gluegen-rt.jar-natives-linux-amd64
with those from jogl-1.1.1-rc6-linux-amd64.
Suspect that the incorrect native library files have been packaged for linux-amd64.
Andrew.
Gesendet von Andrew am February 21, 2008 at 04:51 AM CET #
Thank you Andrew for the Heads Up,
this is related to the issue on 64bit systems Massimiliano pointed out earlier. I will look into it soon (and package a new JOGL build). But at least it works for you after updating the native libraries.
thank you for your comment!
Gesendet von Michael Bien am February 22, 2008 at 03:22 PM CET #
Michael,
I am not sure if this is the right place to post this, so if you can point me in the right direction it would be much appreciated.
Using Netbeans 6.0.1, I can go File > New Project > Simple JOGL Application, and I can compile and run it just fine.
However, if tweak this code, and add some new libraries, those libraries are not found. Output of System.getProperty("java.library.path"):
C:\Documents and Settings\Techport 13 Inc\.netbeans\6.0\jogl-runtime\jogl.jar-natives-windows-i586;C:\Documents and Settings\Techport 13 Inc\.netbeans\6.0\jogl-runtime\gluegen-rt.jar-natives-windows-i586
This is regardless of what I put in the VM Options in the Project properties (-Djava.library.path="C:\windows\system32\" for example).
So, I am interested in knowing how/where the Simple JOGL App modifies the class path, and what I can do about adding my new libraries to it.
Thank you very much,
--- Travis
Gesendet von Travis am April 12, 2008 at 02:27 AM CEST #
hello Travis,
good question;)
could you please re-send your post to the user mailing list?
https://netbeans-opengl-pack.dev.java.net/servlets/ProjectMailingListList
this is probably a bug. But adding your library path to the run-sys-prop.java.library.path property should workaround the problem.
Its in nbproject/project.properties
thank you for your comment!
Gesendet von Michael Bien am April 12, 2008 at 02:26 PM CEST #