Slashdot Mirror


Sun Pushes Java For Games Market

mysterious_mark writes "Sun has a new initiative promoting Java for game development, according to a story at CNET News." Interestingly, the company is trying to convince game makers that you can make state-of-the-art titles in Java as easily as simpler browser or phone games: "Java also has been used to build a number of simple online PC games, such as card games, but the language can be used to create sophisticated graphics for A-list games, Melissinos said. 'Some people may have the misconception that Java can't do great, high-performance graphics, and that's absolutely not true.'"

6 of 76 comments (clear)

  1. Re:It's a hardware problem by Kethinov · · Score: 4, Insightful
    hardware doesn't exist to run them at any reasonably acceptable speed.
    You forget that not all games are first person shooters. A good game of chess online can be done just as fast in Java as it can be in C++ if you're running a reasonably modern computer. Take it a step further and consider empire building games such as Civilization. Those are also easy on the system. Java can handle it quite nicely. Java was built with crossplatform compatability in mind. It's slowness is minimal and a wonderful tradeoff for the fact that I can run a java app in Windows, Mac, Linux, Unix, or any other major OS.
    --
    You're right, I wouldn't steal a car. But if it were possible, I sure as hell would download one!
  2. Re:It's a hardware problem by Golthar · · Score: 4, Insightful

    Obviously trolling.

    When you are creating a full feature game in Java, you will steer well clear from things like Swing/AWT and libs that will slow down a lot.

    Also, as you can't manipulate hardware from Java, you will always need a library which can do some of the really high speed work for you.

    Java3d can be used, but recently a very popular lib named LWJGL" has come out to deliver direct bindings to OpenGL/AL

  3. Re:Java3D not available on Mac by halfnerd · · Score: 2, Insightful

    Actually Sun should spend much more time reviewing the Java3D architecture. It is much slower that for example the GL4Java bindings (which should be available for pretty many platforms). I don't know if this has changed, but this information is based on this report.

  4. Sucess in Mobile games? by idries · · Score: 5, Insightful

    Java has already caught on as the dominant format for making games for mobile phones, but the language has yet to be widely used for PC-based games.

    Not so. Mobile games are still an evolving area, and J2ME is already dying out in favour of C++ SDK's for specific platforms. The limited kind of games that J2ME has given us are not products that people are willing to pay for.

    This is because *real* games need platform specific assets. Sounds that match the sound playback hardware, graphics at the right sizes and colour depths, models with the right LOD for the renderer etc.

    Once you're providing a platform specific set of assets, there's very little benefit in having platform independant code. Mobiles don't have alot of CPU or RAM, and if you're not going to have platform portability anyway, then there's really no point in using Java. You're much better off programming on the metal. Native phones like the SPV and the N-Gage already allow this, and offer C++ SDK's, which mobile game developers are using.

    SDK's like this are not available on phones without operating systems (because they don't have memory protection so you can't let 3rd party executables onto them, an issue neatly side-stepped by J2ME). However this problem will be overcome by implementations like BREW or by just adding memory protection. It just a matter of time.

    Having said all that, I now write PC games and I think that Java could have a bright future there. Not in games written entirely in Java, but with Hybrid games. Java will never compete for speed. It's a fact, live with it. But 90% of a games' CPU time is spent curring around 20% of the games' code (i.e. the renderer, routefinder etc.). If that 20% is written in C/C++/asm and some percentage (large)of the rest in Java, the speed issue will of little consequence.

    The real question here is why? C++ works very well thank you and the tools and API's required to create a hybrid game such as this are a real pain (when compared to just hitting F7 in VC++). No kind of marketing speak from Sun is going to make programmers go through that pain, just for the sake of 'using Java'. If the tool's were better and Sun put alot of effort into supporting this kind of deployment then game developers might well take it up. Not for platform independance, but for memory managment and the other *real* benefits of Java (simplified inheiretance, useful RTTI, serialisation etc.). That's were Java can be useful and that's what Sun should be talking about.

    Also, if you really want game developers to use your technology, it's got to work on X-Box and PS/2. FACT. So get to it Sun, you've got plenty to sort out before you start nagging us with your marketing hounds.

  5. Re:It's a hardware problem by the+eric+conspiracy · · Score: 2, Insightful

    You're right, Java can't compete with stuff like C++ for overall power.

    The problem with C++ is that it cost twice as much to develop the same program in it, and it is far more likely to have memory leaks, double frees, stack overflows and so forth when you are done. Clearly the correct solution is to go low level only when you need max performance through external libraries that are hand optimized mixtures of assembly/C.

  6. Sun: Put up or shut up by metamatic · · Score: 3, Insightful

    Show me three good games written in 100% Pure Java.

    As of today, I've only seen one decent application written in 100% Pure Java, and that's a text editor.

    My yardstick here is that the software has to be good enough that you'd never guess it was written in Java if you didn't know.

    --
    GCHQ Quantum Insert installed. If only our tongues were made of glass, how much more careful we would be when we speak