Linked by Thom Holwerda on Mon 5th Feb 2007 16:23 UTC, submitted by Marvin
Java Version 1.0 of the LWJGL has been released. "The Lightweight Java Game Library is a solution aimed directly at professional and amateur Java programmers alike to enable commercial quality games to be written in Java. LWJGL provides developers access to high performance crossplatform libraries such as OpenGL and OpenAL allowing for state of the art 3D games and 3D sound. Additionally LWJGL provides access to controllers such as Gamepads, Steering wheel and Joysticks."
Order by: Score:
v Haha
by stestagg (2.8) on Mon 5th Feb 2007 18:42 UTC
RE: Haha
by kap1 (3.24) on Mon 5th Feb 2007 18:49 UTC in reply to "Haha"
kap1 Member since:
2006-05-12
Fans: 0

What are you on about?

its not an article its a news post which refers to the library reaching version 1.0 yesterday(at the time of this reply). Just shows that you didn't read what was on the link before flaming it based on an out of date, decade old argument.

As for being light and fast for gaming, Java is perfectly capable nowadays.

Edited 2007-02-05 18:58

RE[2]: Haha
by stestagg (2.8) on Mon 5th Feb 2007 20:32 UTC in reply to "RE: Haha"
stestagg Member since:
2006-06-03
Fans: 2

Actually, I did read the article, the 55 days thing was a lame attampt at a joke (see: http://en.wikipedia.org/wiki/Joke).

I keep being told so, so I tried out Jedit again today. Once it's started up, it's not too bad, but then I noticed that it runs at system startup, meaning that the Java VM is in memory all the time. So I killed the VM and suddenly Jedit it took quite a while to start up.

Likewise, I downloaded one of the LWJGL projects (Diamond Crush) to try out. This thing was a simple tetris-style game, but took a similar time to start up as Counter-Strike, for a tetris game!

RE[3]: Haha
by Matzon (3.32) on Mon 5th Feb 2007 20:41 UTC in reply to "RE[2]: Haha"
Matzon Member since:
2005-07-06
Fans: 1

seriously, upgrade!
my P4 2.4GHz (@ 2.7) shows a window in 3 seconds, and the game 1 second later, total time from launch to playability = 4 seconds.

Running the game a second time, its all running within a second.

Perhaps you're running an old VM ? - latest is 1.6

RE[3]: Haha
by kap1 (3.24) on Mon 5th Feb 2007 20:41 UTC in reply to "RE[2]: Haha"
kap1 Member since:
2006-05-12
Fans: 0

how about your try some of the better LWJGL projects like Tribal Trouble, and see how performance can be up to par with other native languages. Rather than trying just one odd game and basing your opinion on that. You can also try Titan Attacks which was a winner in multiple indie game awards last year.

Also i recommend you try out http://www.tiltilation.com for yet another example of a great java game using LWJGL, this one has been compiled with GCJ, so its completely native with no jre.

Edited 2007-02-05 20:44

RE[4]: Haha
by stestagg (2.8) on Mon 5th Feb 2007 20:50 UTC in reply to "RE[3]: Haha"
stestagg Member since:
2006-06-03
Fans: 2

I'm actually downloading TT and Devastro as we speak.

It's amazing how one tongue-in-cheek post can cause so much heat. This level of defensiveness is usually an indication of a certain ammount of insecurity about the point being defended, of course in this issue, I'm sure that that isn't the case. :p

RE[3]: Haha
by rayiner (3.76) on Mon 5th Feb 2007 21:17 UTC in reply to "RE[2]: Haha"
rayiner Member since:
2005-07-06
Fans: 27

Of course, it should be noted that if simple C programs had to bring into memory the whole C runtime each time (about 12MB on my machine), they'd take a while to load too. Java has the misfortune of dealing with OSs that are geared towards, at the linking and loading level, programs that look like the output of a C compiler.

In a Java OS, you'd do thinks differently, and buy back a lot of performance in return. For example, since you need the compiler around anyway, you don't need fancy conventions for shared libraries in order to get around the fact that you can't recompile the code. You can simply cache the results of a JIT, updating the code when a library is installed or upgraded. That'd actually end up being faster than the system traditional OSs use now, because you wouldn't need to perform shared symbol resolution at program load-time (just at JIT-time), and you wouldn't need position-independent code.

RE: Haha
by Alleister (3.12) on Mon 5th Feb 2007 19:13 UTC in reply to "Haha"
Alleister Member since:
2006-05-29
Fans: 0

Lightweight in this context means that there aren't things like scenegraph libs or object loaders.

Java has quite a big memory footprint and the way the garbage collector is specified without any guarantees is a little bit disturbing.

But that doesn't mean you can't write games with it that will perform ok on avarage Hardware. The Java port of Quake 2 runs fine on an 400 MHz PC and that overhead isn't going to grow linear, so you could do Quake 3 quite probably on 500-600 MHz P3 with 128MB Ram (if you are using an adequate Operating System for that kind of Hardware, not if you run Vista on that kind of Box).

So please, don't flame around if you don't know what you are talking about.

v RE[2]: Haha
by stestagg (2.8) on Mon 5th Feb 2007 20:51 UTC in reply to "RE: Haha"
RE[3]: Haha
by Alleister (3.12) on Mon 5th Feb 2007 22:05 UTC in reply to "RE[2]: Haha"
Alleister Member since:
2006-05-29
Fans: 0

I prefer other languages. I'm not a Java groupie but i am a proud owner of a thing called "brain" and thus capable of independent thought and don't have to rely on stupid second hand forum-bullshit.

Repeating useless prejudice isn't the definition of truth.

There are reasons that go against Java and there are reasons for Java, but that "Java is to slow" thing isn't valid anymore.

RE[4]: Haha
by stestagg (2.8) on Tue 6th Feb 2007 01:32 UTC in reply to "RE[3]: Haha"
stestagg Member since:
2006-06-03
Fans: 2

Wow Alle, put some hair-gel in those hackles. T'was only meant as a light jibe.

stupid second hand forum-bullshit
...However, isn't what I was basing my comments on. My opinion on Java programs is formed from actually using them a year or so ago, Eclipse and Jedit most notably. The performance of both of these sucked terribly when I tried to use them regularly and thus have tended to avoid java programs as much as possible since.

Now if things have changed (as it appears they have) since then, (Although I still won't bother with Eclipse) then I'm happy to stand corrected by anyone who is willing to reasonably argue their point, as has been elsewhere.

RE[4]: Haha
by Eric Martin (0.84) on Tue 6th Feb 2007 21:01 UTC in reply to "RE[3]: Haha"
Eric Martin Member since:
2005-11-11
Fans: 0

Java uses alot of resources.

Thats what he means by slow.

Slow = many meanings when talking about java.

lwjgl games
by Matzon (3.32) on Mon 5th Feb 2007 20:09 UTC
Matzon
Member since:
2005-07-06
Fans: 1

Check out these lwjgl games to see some of the library's capabilities:
http://puppygames.net/
http://oddlabs.com/
http://lwjgl.org/projects.php

Harumph
by Sphinx (2.84) on Mon 5th Feb 2007 20:39 UTC
Sphinx
Member since:
2005-07-09
Fans: 12

Even with the more than acceptable java performance these days I would still deride the use of the term, "lightweight", whenever you have the runtime equivalent of an elephant hiding behind the curtain. Granted it may mean something else in this context but they should have come up with a better description.

RE: Harumph
by rayiner (3.76) on Mon 5th Feb 2007 21:22 UTC in reply to "Harumph"
rayiner Member since:
2005-07-06
Fans: 27

Of course, "lightweight" cannot really be applied to C/C++ either. Besides the multi-megabyte libc that everyone takes for granted, there is also the virtual memory system, which takes up tens of MBs in the form of complex VM code, physical page arrays, and page tables, all the while imposing a substantial performance overhead in the form of page table lookups, TLB flushes, etc. These are of course not strictly necessary to run C code, but are practically necessary in modern environments where it's not acceptable for user processes to randomly read and write each other's memory.

Java code, which is safe by nature, could do quite happily without this memory-hogging infrastructure ;)

lwjgl in action: Quake II in Java
by Ford Prefect (3.04) on Mon 5th Feb 2007 21:02 UTC
Ford Prefect
Member since:
2006-01-16
Fans: 6

Try it out yourself before groundlessly picking at Java:

http://bytonic.de/html/jake2.html

Wow
by OfficeSubmarine (3.08) on Tue 6th Feb 2007 03:43 UTC
OfficeSubmarine
Member since:
2006-12-14
Fans: 0

I have to admit to being rather pleasently surprised. I tried out some of the games mentioned in this thread, and the performance was fantastic. If not for a bit of swing in some of them, I'd never have known they were even using java.

Interested in benchmarks
by SReilly (3.64) on Tue 6th Feb 2007 11:39 UTC
SReilly
Member since:
2006-12-28
Fans: 7

I'm downloading the Java implementation of the Quake 2 engine to test it out. After having spent some time with Java devs talking about performance I'm very interested in seeing if their is any over head at all these days.

I know that many games development houses still swear by C/C++ but many developers, not only Java developers, I have spoken to seem to think that latetly, the pros are outweighing the cons.

Now if I could only get a copy of the original Quake 2 to do some benchmarks...

Anybody else tried this yet?

RE: Interested in benchmarks
by ahmetaa (2.52) on Tue 6th Feb 2007 13:55 UTC in reply to "Interested in benchmarks"
ahmetaa Member since:
2005-07-06
Fans: 1

yes it is almost identical in terms of speed. But i cant say it is a decent java code.