If Quake 2 can be ported to JavaScript using GWT, I figure I can continue to write in Java or Scala.

JavaScript VMs are getting a lot faster. Not as fast at HotSpot, though (HotSpot really is an awesome technology and it will be hard for any company to catch up with it). But it's decent. For most 2D browser games, it will make no sense to continue using Java if HTML5 Canvas is on every browser.

I really like the JavaFX language, but it's not taking off. The latest demos still crash or freeze my browser, it's never going to run on iDevices, the coolest Java handsets run Android, and some new TVs are going to run Android. Does JavaFX currently run on any devices? Does Sun/Oracle not have the proper connections anymore?

As for downloadable desktop games, as everyone has already said, it would be nice to be able to have a clear, legal way for indies to distribute HotSpot with their games (unless there currently is a way and I didn't know - I haven't been on the board in a while)

Now that Oracle has acquired Java it would be time to step it up a notch?

I generally think Java is too heavy to be used for browser-based applications (Applets, JavaFX). It won't replace Flash nor JavaScript. The focus instead should lie on standalone applications/webstart instead. That's what makes the language great!

You have a point with the Applet/Flash thing... ive been trying to escape the embedded window from the beginning, never really liked having to play in a constrained area. Much more like having fullscreen access at hand. Since OpenGL and Java are widely dispersed, I do wish they would remain coupled and advanced to the console areas. Lwjgl seems pretty good though just started messing with it.C++ remains the breadwinner at the moment for me. Not sure what other major focus Java really has, I have a feeling game developers represent a fairly small percentage of total Java software development.But trying to beat Flash seems kind of hopeless, it is so well entrenched. hmm opera is running applets better these days

Why Sun/Oracle/... must always push it? If you want something you need to work on it, not just wait (forever) for someone else to do it... Sure certain things can be done easier with big company, but the goals can be achieved by different means. For example we (community) can create nice plugin from scratch, it's not that difficult. The real problem is in penetration. You need killer apps for that, that people really want, if people really want something they will install anything, it's just few clicks away anyway. The problem is the same whether you're small or big company. Big company can invest huge amount of resources (developers and money). Small companies can unite. There's always a way.

You might think that consoles are unreachable for small companies, so having JRE would be helping. It wouldn't help actually that much, if you don't have resources (developers and money) for acquiring devkit and license and go through verification process, you won't be able to publish anything anyway

Speaking of a real work, I work on JBullet to provide full blown physics library and PureSwing as continuation of development of original Swing with things done right. LWJGL community folks are toying with virtual machines and/or creating a game-oriented plugin. There are several options when it comes to creating JVM, we can use parts of OpenJDK, Apache Harmony, gcj + classpath, or roll our own JVM or AOT compiler using eg. LLVM (that's what I'm experimenting with in my free time, the AOT compiler).

We could mess with AOT compilers, console support, custom game oriented JVMs and hope that Oracle will do more to push Java for home client side applications (bearing in mind their entire business is in the enterprise domain). You could do that, or you could switch to an environment which already does all of this and more. That is what I intend to do over the next few months as I will be switching to using C# and XNA. This is my after Java.

XNA has a bigger game development community, is actively pushed for game development by a large company, is under active development, is pushed for commercial game development, is available for PC/console/mobile platforms and has a growing indie game market place already setup. The only thing Java has over XNA is applets (XNA is only partially supported in Silverlight thanks to third party libs), but I'd happily trade them in for any of the above (I'm sick of all the applet and version compatability issues of Java).

Flash is still dominant for browser games, is spreading to more platforms and is being improved on every release. This is dispite people saying it will be killed off by the rise of HTML 5 + WebGL. A good alternative to Flash. Over the last 5 years it seems Java is still Java. All of the issues it had, no good support for videos and music, most examples of Java applets still look really poor, 3D graphics is still just bolted on and not included or standardised in the JVM and the examples of truly awesome Java apps are still entirely server side. The only memorable event I can remember is that Java 2D, on Windows, doubled in speed.

Note this is just my opinion, I'm not saying everyone else should follow and drop Java for games.

We could mess with AOT compilers, console support, custom game oriented JVMs and hope that Oracle will do more to push Java for home client side applications (bearing in mind their entire business is in the enterprise domain). You could do that, or you could switch to an environment which already does all of this and more. That is what I intend to do over the next few months as I will be switching to using C# and XNA. This is my after Java.

That's good pragmatic approach, but with one big downside: you'll lock yourself into Microsoft only world. For indies, it has been discovered that support for other platforms (Mac and Linux) is surprisingly benefical to sales and other things despite much lower number of users compared to Windows. Good article about this: http://blog.wolfire.com/2008/12/why-you-should-support-mac-os-x-and-linux/

We have 90% of what's needed to make a brand new open sourced plugin that addresses the whole applet problem apart from 1 small thing ("installed base"). The cut down VM I've already done and done well - under 2.5mb compressed - and with LWJGL on top of it it's about 3mb payload. There's just the NSAPI plugin bit to do and installation gubbins.

<edit>Using OpenJDK, natch. The whole thing can be GPL2'ed with Classpath exception and that'd suit everybody down to the ground.

We have 90% of what's needed to make a brand new open sourced plugin that addresses the whole applet problem apart from 1 small thing ("installed base"). The cut down VM I've already done and done well - under 2.5mb compressed - and with LWJGL on top of it it's about 3mb payload. There's just the NSAPI plugin bit to do and installation gubbins.

<edit>Using OpenJDK, natch. The whole thing can be GPL2'ed with Classpath exception and that'd suit everybody down to the ground.

Cas

This sounds excellent and does solve the size issue with Java desktop deployment. But the skeptic in me can't help thinking this (or an equivalent) should be provided already.

That's good pragmatic approach, but with one big downside: you'll lock yourself into Microsoft only world. For indies, it has been discovered that support for other platforms (Mac and Linux) is surprisingly benefical to sales and other things despite much lower number of users compared to Windows. Good article about this: http://blog.wolfire.com/2008/12/why-you-should-support-mac-os-x-and-linux/

Cross-platform Java support is far from perfect. I'm usually scared to show Mac users the demo's on my site because I've had the same work perfectly on one machine whilst they and crash Safari on another.

That's good pragmatic approach, but with one big downside: you'll lock yourself into Microsoft only world. For indies, it has been discovered that support for other platforms (Mac and Linux) is surprisingly benefical to sales and other things despite much lower number of users compared to Windows. Good article about this: http://blog.wolfire.com/2008/12/why-you-should-support-mac-os-x-and-linux/

Keep in mind that the reason why games sell better on the Mac side is because there are generally fewer available. Apple has put together resources for developers to freely advertise their games for the platform, and people are hungry to buy. However, now with Apple "slacking off" on their side, and with Steam coming to the Mac in just a few weeks time, I'm curious how that advantage is going to hold up.

There still won't be very many steam games. At first, it'll just be the Valve games.Other games (except for the dosbox ones and the flash ones) will require a lot of manual work to port, and the Direct3d ones probably won't get ported like ever.

It would good to know the progress with java store. No update in multiple months. It seems to be dead, for now. If it's not dead then that might be an interesting opportunity for java games on the desktop.

There still won't be very many steam games. At first, it'll just be the Valve games.Other games (except for the dosbox ones and the flash ones) will require a lot of manual work to port, and the Direct3d ones probably won't get ported like ever.

Lots of 3D games are built on top of middlewear which abstracts them away from the graphics allowing it to be run using Direct3D or OpenGL for rendering. Even for those that don't, there are some small game development houses that specialise in porting other companies Windows games to Mac and Linux.

I believe EA have also been porting their backlog of games to the Mac for a year or two, or are at least very interested in doing it. I think it's big publishers like them who will have the biggest impact.

Uh uh. Take a look at Unity3D, then add C# and JavaScript to that list.

No, Unity3D is not allowed, and neither is C#. I did have Javascript in my list.

This is the relevant part of the license agreement:

Quote

3.3.1 — Applications may only use Documented APIs in the manner prescribed by Apple and must not use or call any private APIs. Applications must be originally written in Objective-C, C, C++, or JavaScript as executed by the iPhone OS WebKit engine, and only code written in C, C++, and Objective-C may compile and directly link against the Documented APIs (e.g., Applications that link to Documented APIs through an intermediary translation or compatibility layer or tool are prohibited).

Lots of 3D games are built on top of middlewear which abstracts them away from the graphics allowing it to be run using Direct3D or OpenGL for rendering. Even for those that don't, there are some small game development houses that specialise in porting other companies Windows games to Mac and Linux.

I believe EA have also been porting their backlog of games to the Mac for a year or two, or are at least very interested in doing it. I think it's big publishers like them who will have the biggest impact.

I believe EA have also been porting their backlog of games to the Mac for a year or two, or are at least very interested in doing it. I think it's big publishers like them who will have the biggest impact.

So why haven't they been ported yet? I wouldn't hold my breath.

EA has already ported over a few of their big titles to mac (spore, sims, warhammer, battlefield, c&c, etc). However all the ports have been done by the third party company TransGaming, which basically just uses an advanced fork of wine to get the games to run on mac.

Well, personally, I still think Java is the language for me. It's possible that something might look better latter on, but right now nothing does. Javascript is ubiquitous but would drive me insane (I code JS at work and it's evil).

When people say that client side java is "dead" what do you mean? Applets and Webstart are hardly the definition of "clientSide". Java client side in terms of applications that run on the "clients" computer are anything but dead. In fact I can't stand applets/webstart much at all. C/C++ is popular but doesn't have these "deployment" methods.

Quote

As for downloadable desktop games, as everyone has already said, it would be nice to be able to have a clear, legal way for indies to distribute HotSpot with their games.

There is. Unless i am missing something, I can distribute the full JRE+hotspots with my game without getting extra licenses or anything. They only rule. I can't change it to be "M$ java" for example.

I have no special talents. I am only passionately curious.--Albert Einstein

When people say that client side java is "dead" what do you mean? Applets and Webstart are hardly the definition of "clientSide". Java client side in terms of applications that run on the "clients" computer are anything but dead. In fact I can't stand applets/webstart much at all. C/C++ is popular but doesn't have these "deployment" methods.

There is. Unless i am missing something, I can distribute the full JRE+hotspots with my game without getting extra licenses or anything. They only rule. I can't change it to be "M$ java" for example.

Yeah you can distribute the proprietary JRE version along your application as long as you don't modify it. There is limited option to remove some files as described in the readme file, but doesn't help that much for size reduction. You can also (download and) install system-wide JRE if needed from your application installer.

When people say that client side java is "dead" what do you mean? Applets and Webstart are hardly the definition of "clientSide". Java client side in terms of applications that run on the "clients" computer are anything but dead. In fact I can't stand applets/webstart much at all. C/C++ is popular but doesn't have these "deployment" methods.

On home computers C/C++ games generate less revenue than web based games written in Flash. This trend is increasing. Games are polarizing between hard-core big budget console gaming and light, casual, web-based pc and mobile gaming.

On home computers C/C++ games generate less revenue than web based games written in Flash. This trend is increasing. Games are polarizing between hard-core big budget console gaming and light, casual, web-based pc and mobile gaming.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org