Yes, it's finally here!
This is the first beta and as such, might still have some issues. We will be working on updating the documentation/examples with some of the new features. If you want to help with the wiki, please contact me.
LWJGL 2.0 changes
Major changes
* fmod and devil removed
* dropped support for windows 9x
* glu moved to lwjgl_util
* glu now uses buffers instead of arrays
* New Display.setParent() feature allows you to embed the Display into an existing AWT canvas.
For example, this allows for an existing LWJGL based application to be used in an applet without porting to AWTGLCanvas.
This means the death of AWTInputAdapter
* Mac OS X: Added support for x86_64
* Linux: Using openal-soft instead of the creative (was more or less broken anyway)
* Support for lzma and pack200 in appletloader
Minor changes
* no more processMessages at isCloseRequested, isVisible, isDirty and isActive
* Removed 2D OpenGL initialization code from Display. It messes with the implicit, but well-defined, opengl default state and doesn't fit well with multiple context types (gl3 and d3d)
* NV_conditional_render extension added
* Lots of input/focus fixes
Get it here (https://sourceforge.net/project/showfiles.php?group_id=58488&package_id=54362&release_id=593726)
Remember to donate (http://lwjgl.org/donations.php) ;)
oh, and special thanks to kappaOne for his work on the AppletLoader - much appreciated!
the macosx build I was provided is not beta 1, I will publish a new version later tonight (and update this thread accordingly) fixed
Nice, dl it this evening. Just had the alpha4 for testing. Gonna try the Display.setParent() feature. Sounds neat :)
Keep up the good work, guys. 8)
I'm gonna try this out when I get home.
Woohoo!
Awesome stuff guys..going to definitely try out some of my ideas with this version! :D
incase you guys haven't already seen, nice demonstration of the applet stuff over at jgo http://www.javagaming.org/forums/index.php?topic=18539.0
*Tucks DirectX source code back into CVS*
SOLD!
*creates new repository*
As usual, I have also updated the Eclipse plugin. Since a plugin's version number must be numeric, I have called this version 1.9.1.
See http://www.fernuni-hagen.de/se/personen/pilgrim/gef3d/lwjgl.html (http://www.fernuni-hagen.de/se/personen/pilgrim/gef3d/lwjgl.html) for update site and more information.
BTW: I've noticed that Vectorxx.add(..) (and all the other static methods) still requires Vectorxx parameters instead of ReadableVectorxx. Do you plan to change this in the final release?
Quote from: jpilgrim on April 24, 2008, 12:30:17
As usual, I have also updated the Eclipse plugin. Since a plugin's version number must be numeric, I have called this version 1.9.1.
See http://www.fernuni-hagen.de/se/personen/pilgrim/gef3d/lwjgl.html (http://www.fernuni-hagen.de/se/personen/pilgrim/gef3d/lwjgl.html) for update site and more information.
thanks
Quote from: jpilgrim on April 24, 2008, 12:30:17BTW: I've noticed that Vectorxx.add(..) (and all the other static methods) still requires Vectorxx parameters instead of ReadableVectorxx. Do you plan to change this in the final release?
No, there are some performance issues with accessing it interface wise.
Ok, my first issues :-)
Concern the Display.setParent(Canvas) way of life:
-after Display.setParent(canvas), the Canvas' AWT Event System is just stone dead. That holds even if I do not create Mouse and Keyboard, also if I explicitely invoke Mouse.destroy(), Keyboard.destroy(). Canvas.processEvents() just don't receive anything.
-with a Canvas as parent Display.swapBuffers() stalls at first OS event (eg. Click on Window). Replacing by Display.update() works. I also overriden the Canvas' paint() and update() empty to not interefere GL.
Platform: WindowsXP.
Otherwise, looks nice :-]
Are you sure that 2.0b1.zip/native/linux/libopenal.so is the openal-soft one? The one I compiled (http://emanuelgreisen.dk/stuff/libopenal.so) works fine with lwjgl but the bundled one is as bad on Linux as earlier releases :-)
Also you might have to enable Alsa when you compile it. At least most modern Linux distros (with sounds cards) have alsa.
Ok... big question:
Would you consider this version safe for an official game release?
I'm just about to release my latest game, but am thinking I want to move up for the better Linux sound and the option of eventually going with an applet.
I had a little trouble with it - mostly because of a broken Mac native which wasn't mentioned (bah). It seems fixed now and stable.
Cas :)
Quote from: princec on May 09, 2008, 08:25:24
I had a little trouble with it - mostly because of a broken Mac native which wasn't mentioned (bah)
http://lwjgl.org/forum/index.php/topic,2607.msg14546.html#msg14546 :-*
What is the most appropriate way to load textures without DevIL?
Should I use java ImageIO API?
the recommended replacement for both Devil and Fmod in lwjgl 2.0 is "slick-util" it can be found at http://slick.cokeandcode.com/downloads/util/
with javadoc being at http://slick.cokeandcode.com/javadoc-util/
I think I found a bug.
On my Mac, Keyboard.KEY_TAB doesn't seem to be mapped properly.
This code:
if (Keyboard.isKeyDown(Keyboard.KEY_TAB) || mapisover) {
drawScores();
}
Returns false no matter what. I tried changing the key to something else, and then it worked.
Update: Looks like TAB doesn't return anything at all. It's like a dead key according to LWJGL.
@ Tab bug, confirming - used to work
I'm having some trouble with the lzma stuff in the 2.0b1 version of appletloader.
The Java Console shows:
Opening connection to: http://www.paulscode.com/source/SoundManager/13APR2008/Helicopter.jar
Opening connection to: http://www.paulscode.com/source/jpct/jpct.jar
Opening connection to: http://www.paulscode.com/source/lwjgl/JARs/lwjgl.jar.pack.lzma
Fatal error occured (4): Could not verify signing in resource: http://www.paulscode.com/source/lwjgl/JARs/lwjgl.jar.pack.lzma
Here is the html I am using:
<applet code="org.lwjgl.util.applet.AppletLoader"
archive="http://www.paulscode.com/source/lwjgl/JARs/lwjgl_util_applet.jar,
http://www.paulscode.com/source/lwjgl/JARs/lzma.jar"
codebase="." width="640" height="480">
<param name="al_title" value="Helicopter">
<param name="al_main" value="Helicopter">
<param name="al_logo" value="http://www.paulscode.com/source/lwjgl/paulscodelogo.png">
<param name="al_progressbar" value="http://www.paulscode.com/source/lwjgl/paulscodeprogress.gif">
<param name="al_jars"
value="http://www.paulscode.com/source/SoundManager/13APR2008/Helicopter.jar,
http://www.paulscode.com/source/jpct/jpct.jar,
http://www.paulscode.com/source/lwjgl/JARs/lwjgl.jar.pack.lzma,
http://www.paulscode.com/source/lwjgl/JARs/jinput.jar.pack.lzma,
http://www.paulscode.com/source/lwjgl/JARs/lwjgl_util.jar.pack.lzma,
http://www.paulscode.com/source/lwjgl/JARs/res.jar.lzma">
<param name="al_windows" value="http://www.paulscode.com/source/lwjgl/JARs/windows_natives.jar.lzma">
<param name="al_linux" value="http://www.paulscode.com/source/lwjgl/JARs/linux_natives.jar.lzma">
<param name="al_mac" value="http://www.paulscode.com/source/lwjgl/JARs/macosx_natives.jar.lzma">
<param name="al_version" value="0.4">
</applet>
The lzma files I am using are the ones distributed in lwjgl_applet-2.0b1.zip. Anyone know what might be causing this problem?
this may be related to is because of http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6697988
try adding a .htaccess file or similar
Quote from: Matzon on May 17, 2008, 11:40:57
this may be related to is because of http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6697988
try adding a .htaccess file or similar
Yep, that fixed it. Here is a more detailed explanation on how to fix the problem, for anoyone else who's a noob like me ;D
1) Create a text file named ".htaccess".If you are running Windows, it will complain, because that is not a valid filename, according to Bill. You'll have to name it something like ".htaccess.txt", then rename it later after uploading it.2) Edit the file you created, with notepad or other text editor. Add the line:AddType application/x-lzma .lzma
3) Save your file, and FTP it to wherever lwjgl_util_applet.jar and lzma.jar are located. If necessary, rename your file ".htaccess" (remove the ".txt" extension)Make sure you are allowed to use .htaccess before doing this! Some of the things that .htaccess is able to do can compromise a server configuration. For this reason, some web hosting companies may require them to be set up by an admin, so don't get in trouble. You should CHMOD your .htaccess file to 644 (RW-R--R--) to prevent people from messing with itThat's it. Thanks for the help, BTW! My only suggestions would be to have a document related to the fix, included in the appletloader bundle. Also, the plain old JAR's should be included, not just the LZMA's, just in case some users are not allowed to use .htaccess files -- at least until the Java bug is fixed.
The latest version of appletloader (svn) includes a workaround for this so you don't have to worry about .htaccess files in future releases.
Quote from: ScratchBoom on May 09, 2008, 21:59:33
What is the most appropriate way to load textures without DevIL?
Should I use java ImageIO API?
I found that it is still possible to use DevIL with LWJGL 2. I simply copied the jar and dll files from the old archieve LWJGL 1.4 and everything seems to work.
Also, it is my opinion that we could use a library that offers a bit more than Slick currently does. Standard algorithms for image processing and more exotic formats (than just RGB 8bit, PNG, JPG etc.) is often needed for developing some cutting edge stuff.
Quote from: ndhb on May 18, 2008, 04:19:10
Also, it is my opinion that we could use a library that offers a bit more than Slick currently does. Standard algorithms for image processing and more exotic formats (than just RGB 8bit, PNG, JPG etc.) is often needed for developing some cutting edge stuff.
What ya need? DDS, TGA?
For TGA i posted long time ago some stuff http://lwjgl.org/forum/index.php/topic,2439.msg13498.html#msg13498 and the DDS stuff i have is quite old too. You can take a look at DDS loading here: http://www.evil-devil.com/dlfiles/dds_loader.rar
Anyway, as i have to redo alot for my current project prototype i thought of making the textureloading stuff as own lib. Only think that really make me worry is how i do this without breaking my engine design. Maybe someone have some good ideas. My current engine attempt is multithreaded for gameloop, sound and ressource loading ;)
Maybe the textureloader itself don't have to be part of the lib, only the loading routines. Guess that might be enough at all. Any comments/thoughts about?