Advertisement

[java] Creating a Java Tutorial

Started by June 09, 2000 10:20 AM
22 comments, last by ManaSink 24 years, 5 months ago
Many people say that the chances of seeing a cutting edge 3D game running in a JVM are pretty slim, and I would tend to agree. Games today are usually written in C/C++ using DirectX or OpenGL libraries. These are almost requirements for writing a cutting edge 3D game, as you need to put every CPU cycle to good use. You''ll hear a lot of similar arguments against real-time strategy games in java. How many of you have played Heroes of Might and Magic III? For those of you who haven''t you might check out the review and demo on GameSpot: http://www.zdnet.com/gamespot/stories/reviews/0,10867,2537588,00.html I thought it was a damn good game. Good graphics and sound, rock solid gameplay. Funny though, it isn''t a 3D game. It isn''t a RTS. Hmmm.... Now that I think about it, I still find myself playing old DOS games that have HORRIBLE graphics and sound compared to today''s stuff, because they are still great games. [Point coming here] Cutting edge technology is NOT a requirement of a great game, so great games CAN be written in Java. -------------------- With that being said, I would like to start up a tutorial project. The end result should be a reasonably complex java game (fun being a huge plus!) with its creation documented from start to finish. My goal is to help people new to java and java game programming get past struggling with the basics and move on to the artistic aspects of java game design. Right now I''m looking for: Affirmation that I''m not the only one interested in this... Guru''s willing to verify that my work isn''t bad advice... People interested in my advice (after Guru modification). Anyone else who might want to get involved. //Artists, sound engineers, etc. Lots of ideas and suggestions. ManaSink ManaSink@hotmail.com
You might want to check out the FAQ... I think you might find some affirmation there, including some examples of games developed in Java that back your statement.

http://games.cpbinc.com/faq/



Advertisement

I was looking for affirmation that people are interested in creation of a java specific game tutorial. I haven''t found many existing ones, and feel that another may be a good thing.

The FAQ is great, and has a link to Gamelan''s Graphical Workbench, one of the few places I *have* found a java game tutorial.

ManaSink
quote: Cutting edge technology is NOT a requirement of a great game, so great games CAN be written in Java.

I agree 100%. We used to have great games on those ancient 8-bit computers and surely the power of Java under todays average PC is many times greater than that.

If you can find the people needed for the tutorial, I'd be very interested in porting it to my own GameFrame for Java library. I've been writing some tutorials for the library on my own, but I don't yet have a full game...

What kind of a game have you been thinking?

Edited by - JavaNerd on June 10, 2000 5:18:16 PM
-Pasi Keranen
I''d be interested in seeing something like this expecially if it''s in Java3D. I''m currently working in java3D because it allows me to focus on the game and not on learning a new api. I learned the java3D api in a couple days with the tutorial.

Anyway I''d like too see this, expecially to see how a pro would squeeze out the performence. I have a problem I''d like to see addressed and that is a inconsistant frame frame rate. I am having the frame rate jump back and forth between two numbers and it happens for me in java2d and java3d. Also some collision tutorials and general game development on java3d are really lacking. There''s none. So I think you''ll have a market. Good luck on the tutorial,can''t wait to read it.
Yes, I''ve seen a few java game tutorials, but they are really... i dunno.. lacking. They don''t show you how to make a game at all. The one attempt I can think of is at east coast game''s web site. They have many tutorials on making complete games in other languages, but the java one stops after a hello world example (not a game). So I would deffinately like to make a good game and document every thing that we did, visio graphs, UML, diaries, all that good stuff.

I think people have a real fear of other people saying that their code sucks. Because there''s not a lot of code examples out there, people can''t defend sloppy code by saying "Well I just copied it from so & so, so it isn''t really mine." I''m willing to show my code and share my ideas with people who really want to step up and do something, it''s just really hard to find those people.
Advertisement
Well, it may be a little early to mention this, but such a project as you mentioned is under way. Our web page isn't done yet because of my trip to Cancun, but I will provide a little back ground info to see if anyone is interested. Three of the four current project members are regular participants on this board (Archon, BigToe, and myself).

We are using JDK 1.3 and Forte community edition for development tools (three of the team members have JBuilder Enterprise, but the other member did not).

We are using TogetherJ white board edition for object modelling. It doesn't handle alot of what we need, such as collaboration diagrams, but it is free. I could not expect the team members to plop down $1000 bucks each for Visio Enterprise.

Our graphics API is Magician 2.1.3. Right now we are using the evaluation version for learning purposes but I have applied for a free liscense under the open source provision. The game will be using the 3D/2D hybrid technique - where game entities are 2D textures painted on 3D primitives such as boxes and spheres. The first revision of the engine used Java3D, but we discontinued that project because of NUMEROUS problems with the API. We will be *trying* to use Java sound for music and the like.

What we are going to do for code revision management is still up in the air. BigToe is working in it. jCVS is an option.

We will be posting all of our notes, diagrams, design diaries, and models. Rather or not we post the resulting engine and tools depends on how good of a job we do. If it turns out to be of decent quality I will release it to the community.

The real work won't begin until I get back from my trip(around June 25th). I still probably need one or two more developers if there are people willing to participate.

If you are interested there are some things you should know:

1 - Two of the project members are professional Java developers and two are hobbyist, but we are all amateur game developers. If you are a highly skilled game developer looking for a fast moving project you should look else where. There is going to be a step learning curve for all of the current members.

2 - You have to be willing to document the heck out of what you do. Think of this project as a research effort. To start with we will be building the engine and tools - we won't even begin on the 'game' portion until this is done. If we never end up with a working game that will be fine as long as we come out with a lot of good information and documentation.

3 - This will never turn out to be a virtual company or have any commercial value. Where are just amateurs doing this for fun.

So if I haven't scared everyone away yet please let me know if you are interested in participating by e-mailing me at jg@cpbinc.com. I leave for Cancun tommorow morning, so you may not get a response for sometime.

Edited by - Jerry Lynn on June 11, 2000 3:12:24 PM
go for it.
as long as there is good documentation to go around this would help out all game dev''ers.

Jerry Lynn - This sounds similar to what I was planning to put together. If your team is open-sourcing the project you should have plenty of people interested in helping(including myself).
Enjoy the sun, I''ll talk to you when you return!

Erik_N - Your frame rate problem may be related to garbage collection. What version jdk are you using? You might have better luck with a native binding library, such as javanerd''s GameFrame or Magician. IMHO, using Java3D for games can be touch and go. I think it will improve with time, but doesn''t really cut it right now.

Javanerd - I''m leaning towards a 2D iso or scroller, but will open it up for suggestions and go with the most instructional (not the most popular).

ManaSink
Hi, my frame rate problem is probably not due to garbage collection. I think this because when garbage collection happens the rendering freezes for about 7/10 to 1.5 seconds. That's a complaint I have about java is no gc control. I would much rather have the gc keep pace with itself every frame then wait until neccessary like it does. The delay it brings in java3D is ok for me while I learn, but would be unaccecptable for a game people had to pay for. The second or so pause hurts the immersion level of the game.

Hopefully it is due to my JDK like you suggested, I have only used jdk 1.2.2 so far. This would be a reason why more people don't have this problem. Right now my frame times in my java3D project is like this. .05 seconds then .1 seconds then .05 then .1 then .05, etc.It keeps going with a pattern like this and every 60 or so frames a 1 second frame(when gc happens). Not the best.

I'm going to look into those engines. I hadn't heard about those. I'm kinda suprised I hadn't because I search for java3D sometimes just to see anything related to it. One problem I see about using another api is that Java3D is a collaboration between Sun,SGI,IBM,and Apple. That is a lot of money,power, and expertise involved so it should be far above the competetion. Apparently they're not right now but one would think they will catch up. Even still I'll check out gameframe and magician

Edited by - Erik_N on June 13, 2000 6:34:55 AM

This topic is closed to new replies.

Advertisement