[java] Is java a viable language for a 3D environment game?

Started by
31 comments, last by redmilamber 18 years, 7 months ago
I'm new to game design and fairly new to Java, though I'm a fast learner. I've fone one year of basic Java programming as part of my University Computer Science degree and have recently decided to start a project to make my own game. It's the age-old story: Got bored of waiting for someone to release my perfect game so I'm making it myself. I understand that the game will need several total recodes as time goes on, I learn more and technology progresses and it is definitely a long-term project for me. Since I'm only familiar with Java, I think I should ask.. Is java really a viable programming language for a high end game? I've seen games like Runescape created in Java and it's all very simple, graphically. Is Java really capable of using graphics cards well, of producing games of modern graphical quality? And is an application more capable of these things than an applet?
Advertisement
I've heard about people having problems with speed issues concerncing java and 3d.
You could start by looking at some 3d engines created for java. If you go to javagaming.org there's a forum for each of a couple seperate API's. jME, LWJGL, Xith3D etc. Most of these also have their own website on which they often host demos (runnable by webstart).
Thanks. Xith3D looks promising. I was considering java3D but it appears to be incredibly slow and after testing out some of the demos, Xith3D seems to be much faster.

I should explain a bit about my game. It will have a 3D terrain landscape in which the user can move. It will need to be able to detect collisions between polygons, I won't be making everything have a collision box made of cubes as that would ruin the interactivity effect. I think I'll take it a little step at a time. First I need to be able to design a landscape, then I need to design some 3D objects in a 3D modelling tool and be able to import them into the game. Then I'll make the character movable and make it a sphere in 3rd person and work on getting collision with objects and the character to work. Not getting too far ahead of myself, I think this will be a handful in itself.

First though I'll run through some Xith3d tutorials. Any advice?

EDIT: Well... this is infuriating. I can't even get Xith3D installed. Considering the people who made the thing are programmers, you'd think one of them would spare a little time to package everything together and make an installer for the thing. I'm downloading files here and there and putting them in directories as http://xith.org/tiki-index.php?page=Installing is telling me and I still can't get a test program to even compile. This is the most infuriating thing ever.

[Edited by - Nyphur on August 15, 2005 7:38:12 AM]
Yeah, I know, huh -- how dare some guy offer for FREE his hard work, and not even bother to package it up so that some one with an Instant Gratification mindset can't install.

It looks like a typical manual install to me.

What problems are you having? Any error reports? Win OS, or Linux?

L-

[Edited by - Lucidquiet on August 15, 2005 12:07:57 PM]
"Education is when you read the fine print; experience is what you get when you don't." -Pete Seegerwww.lucid-edge.net
Yea, you can do 3d game environments in java. You might have to optimize some of your code to make the program run faster, but it can be done.
Quote:Original post by Lucidquiet
Yeah, I know, huh -- how dare some guy offer for FREE his hard work, and not even bother to package it up so that some one with an Instant Gratification mindset can't install.
It looks like a typical manual install to me.

I absolutely expected at least one response like this. A response that at once dares to decide exactly what type of person I am based on a few lines of text and infers that because someone is doing something for free, that there can be no fault with it. I don't care how good it is and I don't care if it's free, that doesn't remove my right to be annoyed at what it lacks or to voice my opinion on it and frankly, only the forum moderators can remove my right to say that here. Unless you have something more constructive to post, I'd advise not making posts that appear to deliberately annoy people who are clearly not having a good day already.

I do not have an "Instant Gratification mindset", nor do you even know anything about me besides what I've already written so comments like that are baseless and amount to nothing more than insults. Correct me if I'm wrong but this forum is for Java programming in game development. Now, I'm going to talk about the issue at hand and if you have a shred of decency, you'll only reply to the programming issues here and drop the rest. I'm having a hard enough time getting into game development without this crap, I'd greatly appreciate if we could eschew from it :/.

I am unfamiliar with the "manual install" process but I followed the documentation to the letter. I put every file into every associated directory. When it came to compiling a test program in JCreator, I was met with this problem, right at the start with the imports:
"package com.xith3d.scenegraph does not exist"
Previously, I've had problems installing other components where the compiler has told me it can't find the support files for a library, but I've always put them in every directory mentioned. I'm guessing it's a problem with Jcreator or something. Perhaps I have to include the files in a list somewhere in the program or give it extra commands on compiling? Have you ever used JCreator?
EDIT: And I'm on Win2k. Just realised I'd forgotten to mention that.

Double EDIT: Looks like I've solved the problem. I'm not sure which step I got wrong but I took every archive I could find and stuck it in my lib directory :/.
Now to get to work on learning to use this package :).
No insult intended really. I know installing something like that can be frustrating -- try to compile JOGL natively -- that a real chore. (At least it used to be, probably still is). I only ment to chide you a little bit. And remind you that you should post a question WITH your rant, and any information that might help solve the problem.

L-
"Education is when you read the fine print; experience is what you get when you don't." -Pete Seegerwww.lucid-edge.net
Quote:Original post by Lucidquiet
No insult intended really. I know installing something like that can be frustrating -- try to compile JOGL natively -- that a real chore. (At least it used to be, probably still is). I only ment to chide you a little bit. And remind you that you should post a question WITH your rant, and any information that might help solve the problem.

L-


I'm just gld I got it to work. You know why I got so frustrated about it? Because it makes you think "I have no idea what I'm doing here, do I?" and it's not nice to doubt yourself like that :/. I'm going into my second year of Computer Science.

Wait 'till you see, I'll have my game done in no time ;) (estimated date of completion: December 2029). It will be as CPU-heavy as a trojan and it will have all the graphical prowess of a slice of toast :p.
Quote:Original post by Nyphur
Thanks. Xith3D looks promising. I was considering java3D but it appears to be incredibly slow and after testing out some of the demos, Xith3D seems to be much faster.


Xith is good, some parts suck. People are *trying* to work on those bits, but some parts people keep giving up before finishing their fixes - other parts get fixed and improved. Fingers crossed that the last few screwed-up parts will be fixed soon.

More than good enough to write a decent game in, but e.g. don't even try to do any Swing GUI stuff with it now - that part is FUBAR, and it's a complete waste of your time to try and make it work (unless you help the people trying to replace the GUI integration with stuff that Actually Works :)).

You might also want to see how it compares to other alternatives:

http://javagamesfactory.org/views/view-library-category-features?category=Graphics%20Engines - although note that the Xith section is out of date because no-one from the project has bothered to update it :(

Quote:
EDIT: Well... this is infuriating. I can't even get Xith3D installed. Considering the people who made the thing are programmers, you'd think one of them would spare a little time to package everything together and make an installer for the thing.


I have hilighted this issue before, and got the unanimous response "but since only programmers are doing the install, we don't need to make it easy". Go figure. IMHO, they're wrong; your experience backs this up - but maybe you and I were the only exceptions to the rule? Maybe, maybe not.

To be honest, the Xith project has other things to worry about for the time being ;).

This topic is closed to new replies.

Advertisement