I posted this on javagaming.org also... This is kind of a rant, so forgive me in advance.
People keep asking for proof that Java is good for gaming. Over and over and over... But I think I am getting out of business of being a "java3d gaming missionary"... I guess I am a little bit tired of trying to convince people that java is a technology good for gaming. I know it is, but it seems that people want proof in the form of a commercially successful, performative, good looking, state of the art, bleeding edge, 5 pass, bump mapped product running 110 fps on a Geforce II. Well there is currently no such available proof. If you need that kind of proof then you may have to wait a while, or use C++. Alternatively you could prove it to yourself by coding a prototype, but that may be a frustrating experience if you are not a team with experienced Java programmers. One thing to look at is the likelyhood that your team will complete the project under the various languages. Building a commercial game under C++ is an expensive and time consuming endeavor, in my opinion it is much longer than doing it in java. Guys, I hate to break it to you, but you have to know the chances of any group of "enthusiastic" developers actually completing a project and bringing it to market is extremely slim? And it has nothing to do with the chosen technology, or money, or people. It has to do with project management, deadlines, schedules, design and the sheer will to succeed. It seems to me that people spend too much time arguing about technology and too little time working on their projects. When we started our project 2 years ago there was a number of similar projects being worked on. Most of them have faded away. There have even been some notably large commercial projects that have failed. Most of the these projects were C++/OpenGL and some were Java. We kept in close contact with a few of them. One of them, called Arcanity (http://www.brickhousetrading.com/) got all the way to beta test before they imploded, although I have hopes they will recover. Now there are over 70 MMORPG's under development (according to Gamespy). I am not worried about that, because there are probably something like 500 CRPG's being built right now... and some incredibly small number will ever see the light of day. Don't worry about the competition... worry instead about your ability to get it done. The point is that it seems a bit, well arrogant, for people to be "demanding" proof that Java/Java3d will be able to perform at a competative commercial level. There are plenty of people here who maintain it can. Even if you have doubts, try taking a look at your estimated development time will be. If it is 2 years then why worry about it? If it is less than 2 years then you will be in the minority, since most commercial game projects are longer than that. No one can predict where the industry will be in 2 years. One thing is for certain though.... if you don't finish your game then it doesn't matter where the industry is in 2 years. Back to the arrogance thing. When people come to the list and start judging Java/Java3d through what they have read or some little test case they wrote... what they do is imply that "performance" is somehow important to the success of their project. How many triangles java3d can render per second should be near the bottom of the list of your priorities. It is arrogant to say that you need that extra 10 percent speed to be competative... thats a blatant falsehood and misconception. What you need more than that 10 percent is to finish a fun, playable game! To argue about performance is like stating "I know I can do all I have to do... but can Java3d do what it needs to do?"... and this is really the height of conceit. I think sometimes people unconsiously engage in all these evaluations, judgements and critiques so that they can avoid facing the reality of what is in front of them. My suggestion is to pick the technologies you like working with and feel productive with. If you are a C++ / OpenGL guy then knock yourself out writing a rendering engine and then writing your game. If you have the money just buy NetImmerse or Lithtech if you want to get right to building the game. If you like Java and you know OpenGL, but don't like the restrictions of a scenegraph architecture then try gl4java, but you will still end up writing a rendering engine before you write your game. Flipcode, Gamedev and OpenGl.org are full of hundreds of "groups" building games... games that never get finished. They spend years writing a rendering engine and then stall on the game itself. Many of these people are "experts" in 3d programming and are extremely critical about everyone's work. I have seen them pick apart an image someone posted because the shadow volumes were inaccurately combining to over-darken overlapping areas... something I hadn't even noticed when I looked at the image. People spend a lot of time figuring out how to render their games in some extra special fancy technique so they can be "competative". I agree there is a minimum acceptable quality that games must meet to be purchased, but that is far below some of the techniques which are possible. Do you really need to build all your geometry using subdivision surfaces so that someday you can increase your mesh densisty dynamically and get some berely perceived improvement in tesselation? Do you really need to define all your textures using shaders so that someday when there are 4 texture units on cards you can have runtime dynamic per-pixel lighting with bump-mapping? I think we need to resist the allure of the sexy 3d visuals and concentrate on pulling everything together to finish our projects. David Yazel =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".
