Internal document from Sun

Ok, I’m with you now.

Graphics: there is wide spectrum - crap-reasonable-stunning. ‘reasonable’ can be reached even today - yet nobody really tried. I don’t say we can deliver crap and compensate that by gameplay.

E.g. Battlefield1942 graphics is not stunning! It’s reasonable. Nevertheless that game sells.

Many games RELY on graphics only. We cannot do that. So we have to combine reasonable graphics with some other added value that can be best done in Java.

I don’t have a recipe how this can look like. Feels like it should be something easy, nothing that requires 250MB on the disc. Something scalable, incrementally loading, extendable, playable from the computer @work, observable from the mobile while being on the train…

I share your doubts concerning deployment - WebStart is really a good mean - given there is Java (and Java3D) installed! If Sun succeeds on court, maybe…

Everything being said so far (and Cas, I happen to agree with you whole-heartedly) seems to lead me towards one idea:

OPEN SOURCE JAVA.

I think Sun needs to do it. I think they need to do it now.

Sun are very very afraid that something or other will happen with Java. I don’t know what it is they’re afraid of but they seem ever so protective of it. It is their intellectual property of course and we are mostly using stuff that they are giving us free because they’re nice like that anyway so it’s not like we’re getting nothing from them and certainly not like they owe us anything. It just seems to me that open-sourcing would probably improve the language as a whole and having gone as far as they have in terms of freely distributing the jre and the rest, it doesn’t seem like that big a step onwards.

Actually, Java is open source already. It hasn’t helped because even if I wanted to delve into the code and start playing with it, my changes would be vetoed.

What Java needs is a tiny team of about 5 engineers who have some serious understanding of what it means to program computers and little interference from business. The business of Java is about marketing add-on libraries such as J2EE. The engineering behind Java should be purely focused on delivering the best of computer engineering to the people that need it.

I would like to send an email to whoever develops Java and say: “I would like you to implement typedefs and structs in Java, so that it becomes easy to interface with external systems and so we can efficiently allocate memory without garbage collection overhead.” And I’d like to get a response in a couple of days from someone who asks me why I want this, in more detail. And when they understand how cool it is, they’d say, “Sure, we’ll do that, it might take a year but we’ll do it, because there’s no good reason not to and plenty of good reasons to do it.”

Cas :slight_smile:

Cas :slight_smile:

You can’t get a decent answer from Sun about what they intend to do with Java3D or even JSR134 so certainly you don’t think you’ll ever get that kind of response from them. To be honest you won’t get that from any business, not Microsoft, not BEA, not Nintendo, not Sony, not Electronic Arts, none of them. The answer is simple - gathering that level of input from the developer community is nigh impossible to coalesce into anything meaningful because the problem is just too large now. Java is large, millions of people depend on it now and making changes to it is really going to only be influenced by people plunking down money through the JCP process - I wish that weren’'t the truth but it is. Heck in our own little community of LWJGL we already see it - now magnify that about ten thousand times.

In terms of the other issue with respect to games, I’ve said it before and I’ll say it again (since I’ve been there on that side of the fence) - if you think its about what technology you’re using and how cool it looks and such, you’re being led by your technical gamer mind. The business side of the house DOES NOT work that way. The business side of the house is concerned with return on investment. If you were to sell them your game for 10k and they saw that they could make 15k with little effort, they’d pick it up regardless of what was running the game. In reality, they really don’t care - so long as it doesn’t cause them a technical support headache. The thing I’ve seen soo many developers do is go on about how cool the technology is and how it will change the face of gaming and how their game will be a million seller so its worth 500k up from with $5 back end royalties and publishers are cool upfront and then throw your CD into the trash when you leave the room. In order to be an indie and be successful, at least from my experience working with the sales and marketing guys who were throwing what I thought were good games into the waste bin, is you MUST ABSOLUTELY understand the business side of it. You must understand the business of retail sales. And you must be willing to establish a partnership with the publisher. Many times this means that the publisher will rape you for your 1st title, and maybe your second as you build your reputation. But sooner or later they will give you reasonable money for your work (if you can avoid them hiring you outright - another classic mistake), and even contract you out to develop works for them (nice money there). But if you don’t understand the business side of the house - in 90% of cases the waste bin awaits.

There’s a reason why absolute shite can make it onto retail shelves and still sell well… product positioning (i.e Deer Hunter), decent marketing partners (i.e. DH->Walmart), and a good market demographic. If you can’t explain these facts to a publisher and convince them that you can make more money than you’re going to cost - you’re wasting your time regardless of if you’re coding for the PC, Mac, Linux, PS2, Gamecube, government simulation Onyx, etc.

Cas,

Of course I recognize that the library source code for most, if not all of Java, is available. By OSS I was heading towards the idea that Sun needs to stop owning it.

Take a look at other technologies for example, where the ownership isn’t held (not necessarily not led by, but not HELD) by a single entity, but in fact that change could be made by anyone.

And thus, yes, here comes the anarchy involved with managing such a beast, as gamers will want X, business developers want Y, and mobile programmers want Z, where X, Y, and Z might actually be mutually exclusive.

So one has to ask what went wrong with JSRs and the Java Community Process that was supposed to prevent all this?

Don’t worry, I’ve got my finger on the pulse as far as business is concerned - I’ve been running my own business for 6 years now and I’ve probably made more money (and spent it :smiley: ) in that time than most people will ever earn in their entire lives - but the issue I have is: can I write games quickly enough to make a living from it?

I think that in order to make the same kind of money from games programming as a being a contract whore, I’d probably need about 10 games published over the next 5 years. This means I need to be able to develop good games in about 4-6 months. If the technology is getting in the way of doing that, why, then I have to switch technology or I’ll be skint, and that’s a fairly harsh business reality.

Now the question is: if I am having trouble with making a living programming Java games, then aren’t a lot of other developers going to have a similar take on this? In the business world of games studios, they’d have to take a long hard look at Java and determine the risks in using the technology. I can state that I suspect I’m no further ahead writing a game now in Java than I would have been in C++, because I have spent so much time writing glue code, working my way around major syntactical deficiencies, worrying about floating point performance, etc. It’s still all risk and no gain from switching. In order to redress the balance I think there needs to be some canny technology that’s not cool, just necessary to push Java firmly into a position where it can fight its corner on level ground and not just be “as fast as C++” but “as fast as C++ and easier to use to write games.”

Gergis: the JCP is a political invention, and thus inextricably tied with large amounts of money. And that goes to explain, in a nutshell, why it’s no use to the likes of us. It’s been said that the only people who should be prevented from ruling the world are the people that want to do it; likewise, anybody who runs the JCP isn’t there to suit us, they’re there to suit themselves. I’ve already been advised that starting a JCP to sort out my issues with Java Games is an unwise move, and will cost me money, so I should jolly well keep my nose out of it. Imagine the political friction it would cause - whatever happened to JSR134 people would ask? Etc. In fact, it would be so publicly embarrassing the JSR would be vetoed from the outset.

Cas :slight_smile:

I don’t think you will find a reason to do a mainstream game in Java. No way. No reason that holds on any commercial valuable scale.

The scenario has to be that there is an existing, extraordinary and promising game concept and a technical analysis shows it HAS to be done in Java. THEN Java MIGHT be a candidate to head for.

‘I want to make it in Java bc. Java is so cool and easy to use’ is absolutely not relevant in a commercial context.

Otherwise it is interesting for enthusiasts, hobbyists, spare-time-game-coders. researchers. Most people here fall into these categories :slight_smile:

I have a feeling that’s not what Chris & Jeff intended when they started to evangelise Java for gaming. There’s a multi-billion dollar industry behind gaming now, bigger than Hollywood and unusually in these trying economic times it’s still growing, so I’m surprised the Sun execs haven’t sat up and taken notice - and a large slice of that money comes from consoles and AAA titles. And Java doesn’t seem compatible with either of those right now. That’s not to say that you aren’t right, because given the current state of play, you’re spot-on, but I don’t think its where we want to remain.

Cas :slight_smile:

I doubt they ever targeted the console or the desktop market. Many things point to J2ME, Sun claims to be THE network company (‘the net is the computer’) so I think they emphasized on mobile gaming. There, indeed, Java is quite strong - yet it isn’t a multi-billion$ business right now.

Having that in mind we have to look for the right game concepts. For the Java platform is scalable from micro-devices to super-computers, there might be the chance do something other platforms cannot do. And this might include desktop action gaming - but maybe only as a part of bigger concept.

Its funny to note that this much talked about memo is apparently 2 years old. :wink:

http://news.com.com/2100-1001-984529.html?tag=lh

whats even more funny is that it is just as valid today…

[quote]I doubt they ever targeted the console or the desktop market.
[/quote]
Ummm…in fact, the original target for JSR134 was for consoles and PCs. J2ME CDC not CLDC, which is for mobile phones.

And for commercial arguments for using Java, the developers of Law and Order actually convinces Universal that using Java was the right thing to do because they saved so much money in development (code and time) that they were able to pour more money into assets. So there is a REAL business advantage to using Java for commercial games. Maybe not all games, but quite a few :slight_smile:

-SG