Quake2 Ported to Java, Play Via the Web
casemon writes "Quake2 fans unite! Thanks to German software developer ByTonic software, you can now play Quake2 via the web with Jake2 a java port of ID Softwares seminal Quake2. ByTonic claims performance is similar to original C version. From the Jake2 website;
"Jake2 is a Java 3D game engine. It is a port of the GPL'd Quake2 game engine from idSoftware. To use the Jake2 engine you need either the data files from the original game or from the demo version available for download from ftp://ftp.idsoftware.com."
You actually don't need to get the data files, they've set it up to automatically download the 38Mb demo assets using WebStart. Just click the Play Now button and away you go. Most features supported, even multiplayer server!"
http://www.bytonic.de/html/jake2.html just thought it might be, you know, handy?
Brain(s): 0.0% user, 1.3% system, 0.1% nice, 98.6% idle
I saw it at swing sightings. I tried it with the original game files and didn't notice any difference in speed with the original binaries.
And this with a not so fast computer: PIII 800, TNT 2, 384 MB RAM.
Anyway if you wanna see benchmarks with older computers look at their web.
Oh you mean like SDL?
http://sourceforge.net/projects/sdljava/
Runs great on my 1.2 GHz G4 with 640 MB of RAM in OS X 10.4.3. Running the web start version downloads a file which starts up as a separate java program.
This is the coolest use of Java I've ever seen.
dupe
Check out the benchmarks. Similar frame rates to the C version on the same hardware.
I've not tried it myself yet. Might get in trouble at work.
Java already has an OpenGL interface (presumably what this is using). I don't know what this guy is using for sound (although the Java Media Framework might work), or input, but presumably all of the pieces are already there.
Yes, probably JOGL for the OpenGL. For sound, core Java can handle raw PCM, and JOAL (Java Bindings for OpenAL) can sit on top of that. Java Media Framework is useless and effectively dead. Input can be handled by JInput.
Jvm apps can be faster than their compiled counterparts, specially when compared to those made with non specialized compilers like GCC. The "virtual machine = slow" myth is no longer true.
The real issue is startup time and initial memory consumption. Java is not suitable for applets that run in the background because your basic app will require about 20 megs of RAM minimum to start. Another issue is swing. You can disagree with me, but please wake me up when it gets clear type fonts on windows.
Cheers,
Adolfo
Mustang (Java 6) which is under Open development (not quite open source license) already has wider support for clear type than Microsoft... So you are right its a bit late but people have invested work into that.
Swing is not slow or bloated, it just can't be compared to the native OS size since it duplicates its functionality so its memory usage seems high in the task manager. Startup time and cold start is improving with every release and building serious client side Java applications is becoming a very real option.
Here are some screen shots, coz that's most important and what people really want and shit...
In theory, the JIT should be able to produce code that runs as fast or faster than C/C++. The JIT compiler has much more knowledge of the execution environment (CPU, memory, graphics) and should be able to optimize the program exactly for this one computer. It has't happened yet though. I'm waiting for it though because Java 5.0 is a fantastic language and I would love to drop C++ for it.
Right now, SWT is the only thing I've found that makes Java UIs bearable for the majority of programs. There are always exceptions to the rule and I'm sure there are some applications where the developers have been able to get decent speed with Java, but the typical C++ program has a considerably more responsive UI than the equivalent Java program when written by programmers of similar talent.
The benchmarks clearly show that the java version is as fast as the original C version.
I've had a pretty good experience with jEdit, a Java-based programmer's editor on both Linux and OS X. It's mostly replaced emacs for me now. Although I've only tinkered with Eclipse so far, it's been pretty responsive for everything I've tried. On the Mac, NeoOffice/J (the OS X port of OpenOffice.org, which relies on Java for access to the Cocoa API) seesm to run pretty well. Granted, these are all editing apps, but they're all produced by different dev teams, and all seem to work well.