Exactly. Sun have made quite a song and dance about my little games and never once has anyone moaned about my deployment "techniques". And now finally they're actually addressing the issue I have by producing a mini-VM. Sweet. Cas
Do any companies who develop commercial games use Java? If so, who? Also, since Java is cross-platform, powerful, and easy to use, why isn't it popular?
Several companies do... theres mine, Oddlabs, the Runescape guys, the people who did IL-Sturmovic, the ones that did Vampyre Masquerade (I think). It's not popular because a) it doesn't run on any consoles which sort of negates its popularity in games dev business right now as two thirds of the money is in the console market and b) a continuing reluctance for prima donna games engineers to accept their own failings and understand that someone else has solved their problems to a large extent Cas
Smartypants But you're a prime candidate for using Java, given the GUI-intensive nature of your games, and total lack of ability to port them to the Mac Cas
yeah cliffky... I am making a bussines app in java and with $100 and a very nice skin my gui elements looked way better (in 5 minuts) than gui in your games (now I will hide in a hole and throw away the shovel) //and I don't think statically better (like better bitmaps) but they animate, shade in real time glow reflect and all that desk2.0 stuff
Indeed. And Java people don't have to deal with shit like this: http://forums.indiegamer.com/showthread.php?t=10408
yeah just shit like this http://forums.indiegamer.com/showthread.php?t=9481&highlight=java+bug Anyways, all kidding aside, whenever I have had the time to work on my game, it's using the LWJGL library which I couldn't be more happy with..
Now that I read that thread again... it could be the hdd starting to spin. With win2k I get a complete 5 second freeze whenever that happens (you can't even move the mouse pointer etc). Usually that's pretty audible tho. Well, there are certainly a lot less mistakes to make with a managed language. And those mistakes, you can still do, are easy to track down. Unless it's a flow glitch, but then again... no language can protect you from those.
The way I see it, this "consumer JRE" possibly gets rid of one of the three main bugbears of Java, the other two being the huge memory footprint and slow startup time. Even the smallest Java game I play seems to use about 80MB of RAM. Now, in these days of 2GB RAM for $80 maybe that will become less of an issue. The slow startup time is a real problem. I dunno how that can be solved. Oh yeah, there is another bugbear - the fact that each Java app kicks off a new VM. Is that being worked on? Regardless, I still find developing in Java a pleasure, mainly because the IDEs are a magnitude more effective than Visual Studio.
Hi, Slow startup time is twofold : - cold startup : this one is really slow - warm startup (java at least launched once since last computer reboot) : this one is usually bearable (takes at most a few seconds, generally less than one on a recent computer) Cold startup is addressed (well it seems so) by consumer JRE by putting main java files in the disk cache. According to Sun's blogs, this could help a lot cold startup and put it on par with warm startup. Lilian
Well, even JRE cold start is not that bad as the .NET cold start... It takes more time to launch VS 2005 then Netbeans or Eclipse I benchmarked the cold startups and these are results (top is the fastest): 1. Mono 2. JRE 1.5 3. .NET 2.0 It's not that bad to wait 3 seconds for a java application to startup, the main issue, I believe is the redistributable size of JRE, especially for games (you never know if the user has the correct jre version on his/her computer).
Startup time was also addressed with 1.6. Well, the subjective side of things. There is a -splash switch now, which allows you to show some kind of image. They used a native lib for that, which means that it can be shown quicker... way before the VM is actually loaded. Of course your program doesn't start any faster, but it feels a lot more responsive thanks to that little trick. Once the VM is actually up and running you can start drawing over that splash screen, showing some loading progress or whatever. There is of course some drawback: it pulls AWT dependencies in. But maybe it will be sorted out by someone, now that Java is opensource.
If Sun was smart (or just thought like I did) they would position Processing as an XNA competitor and get in league with Nintendo (or Sony, or both) to get a good JVM running on the Wii and\or PS3... It would at least make me really happy .