Newbie needs advice on JOGL and networking interface

Hello everyone, I have been looking at these forums for some months now, thought I would start being more active as of now.

I am an aerospace student and have my own company building internet applications (shopping carts etc.) For my education I do a lot of programming (I am majoring in aerospace simulation). I have good experience with PHP, Matlab, Javascript, C++, openGL, openAL and have been very active with Java now for about 8 months. I made a 3d driving simulator for my internship (still working on it untill april 23) using C++ and openGL,openAL. Before that I have made 2 little games using Java2D

Because I am a big fan of Linux (Ubuntu) I want to make it my goal to make several small and simple games using Java so people on all platforms could play them. I have made a little tank battle game in Java2D in about 2 days which you can download here:
It is my second attempt at making a game in Java and is based on an old NES game called BattleCity
I am planning to expand this game a little more and in my free time I want to make little 2D games like these, however more entertaining of course.

I want to ask a few questions and some advice:

  • Where can I find some free graphics and character animations? I am more into programming and do not like to spend too much time on the graphics, although I can do them pretty well if I have to

  • Does anyone have a good tutorial on how to be able to make a little game with a network and internet (IP) interface, so online multiplaying can be achieved? Is this a realistic goal for me to try this out, or will this take way too long to accomplish?

  • I also want to make a few simple 3D games. However, I have tried out both JOGL and LWJGL. I like them both but they both seem to be pretty platform dependent as they need the native libraries. How exactly can I make it happen that any 3d game I make will work with JOGL/LWJGL on any platform? I am using Netbeans by the way. Can I just add jogl.jar or lwjgl.jar to my project and import them inherently? What do I then do with all the natives from all the different systems? If I link to them, will they also be compiled in my eventual jar file? So the person who tries to play my game will not need to habe jogl/lwjgl installed himself?

  • I saw a GLUT class somewhere in net.games.jogl. but I didn’t see the possibility to really use the glut API like I am used to in C++ for example, I didnt see the glut function to draw a sphere. I am pretty sure GLU has one too though right? Is GLUT still in development for JOGL?

  • Do you think it is realistic for me to make little games in my spare time using Java? With little games I mean small 2d games with the complexity of something like bomberman. I got some ideas of my own too and I want to try to make some original but simple games, such that I can make them on my own, or maybe in a small group of enthousiasts. With 3D I will try to make some simple games too, like a racing game, or a fighting game, maybe a small fps. I am pretty sure I can program it all, I just need to get my hands on some graphics!

Anyways, my main purpose of this post was to get active on these forums. I am looking around on the forums as we speak to find some answers on the questions I posted here.

Thanks in advance :wink:

well, you can look here: http://sprites.fireball20xl.com/
and here: http://www.java-gaming.org/forums/index.php?topic=8246.0

too long depends on what you want to do and what your definition of ‘too long’ is. :stuck_out_tongue: There are numerous threads on this forum about this subject, and basic client/server networking isn’t that hard with java. Basically you have to ask yourself how ‘synchronized’ you want things to be. Personally I would recommend to assume the client has a crappy connection. Keep the game state on the server based on the input of the client, but on the client side interpolate between what you receive from the server. (and assume lost packets and long ping times)

Well, if you use java webstart for example, you can distribute both the lbrary as well as the native files (which are neccessary btw) and only the native files which the user needs through the specification of your webstart. I’ve stopped being afraid of native libraries. Its very easy. In your project, just import lwjgl or jogl. and have the native libraries available on your classpath.

[quote=“Cyclonis,post:1,topic:26651”]
Well, for JOGL I’m not sure, but for LWJGL things have been shuffled around a bit. For example, there is a Sphere class, not a Sphere function. But I bet you can find most of the functionality of GLUT, their location, naming and implementation has just been shuffeled around.

[quote=“Cyclonis,post:1,topic:26651”]
I’m pretty sure all of what you want can be done in your spare time. Especially the more simpler games can be done within a few weeks with only an hour a day. And since you already have that much experience with OpenGL and such it shouldn’t be too much of a problem.

[quote=“Cyclonis,post:1,topic:26651”]
Looking forward to your contributions and games :slight_smile:

Hi,

Thank you for the reply,

Here are my first and second game I made a little while back:

http://www.geocities.com/titanfreeze/SpaceInvaders.zip
http://www.geocities.com/titanfreeze/battlecity.zip

If anyone who also just started is interested in the source code, just let me know :wink:

hi Cyclonis… is it possible that I can have the souce code for your games…

really very intrested of how they works… :slight_smile: