Advertisement

stressed out newbie (where do I go now?)

Started by March 03, 2003 05:25 PM
8 comments, last by docyoung83 21 years, 8 months ago
Ok, I''ve got questions, so hopefully you''ve got answers. These aren''t technical questions though. More along the lines of "where do I go next?" (Sometimes it seems more like I''m asking "where do I even start?") My ultimate goal is, and always has been, to make a Win32 game, no matter how simple or what language. I started off writing C++ back in high school, but I never got too great at it, and I never got farther than writing console apps. So now I''m in college and I''m using Java (since that''s what our computer science department uses). I must admit, I really like Java a lot better (mainly because of the pointer issue). Easier for me to use and, as far as I''m concerned, it can hold its own with C/C++. (This might make the hardcore gamers cringe, but whatever.) Anyway, it feels like my head is about to explode trying to figure out what to do next. I wanted to do graphics, so I started looking at OpenGL, but I then realized that''s based mostly on C++. So then I''d have to go and get really proficient at C++ and abandon my beloved Java. Then I realized that I need some Windows programming background in order to use OpenGL (since I need to create a window to display OpenGL graphics in the first place). I mean, it''s not like I didn''t know this would happen. I knew I would need to know all this programming info sooner or later. It''s just that it seems like it''s all hitting me at once. Anyway, I''ve been in this programming limbo for a couple of years now, and before I put my head through my monitor I was hoping someone could give some instruction. Thanks in advance. Book suggestions are also much appreciated. Currently my best C++ book is Accelerated C++ and my best Java book is TY Java in 21 Days. How proficient would I need to get at either language to take my programming to the next level? And what do I do once I get there?
I think you can use OpenGL with Java, but I don''t use Java so I can''t tell you how.
Chess is played by three people. Two people play the game; the third provides moral support for the pawns. The object of the game is to kill your opponent by flinging captured pieces at his head. Since the only piece that can be killed is a pawn, the two armies agree to meet in a pawn-infested area (or even a pawn shop) and kill as many pawns as possible in the crossfire. If the game goes on for an hour, one player may legally attempt to gouge out the other player's eyes with his King.
Advertisement
You can do decent games in Java, but it would be kind of useless to try to do any fast performance games.

If you want to stick with Java, you can, just look into double buffering. I dont remember the function calls in java, but if you look into Java Graphics, it will be there.

If you want to do high performance games, I would suggest first picking DirectX or OpenGL and starting to work with it. Just go with it!

Start with a window, move up to a triangle render etc.

Good books? Sites (all for c++)
OpenGL:
a free on is called the Red Book, and just look at google and I am sure you will be able to find a link for it.

Good Tut Site: NeHe

DirectX:
A good book is Programming Role Playing Games in DX8 (JimAdams)
also Tricks of the Windows Game Programming Gurus

Good Info site : www.mvps.org/directx/

good tutorials
www.myran.com/enilno/
www.andypike.com


TechleadEnilno, the Ultima 2 projectwww.dr-code.org/enilno
You're right. It is possible to do OpenGL with Java. I've seen some examples on NeHe's site. But C++ is still by far the favored language. I dunno...maybe I should just go back and give C++ another shot. It might make things easier in the long run.

Also, referring to Tricks of the Windows Game Programming Gurus. I've seen the book, and I actually thought it was a pretty good read. However, like you said, it utilizes DirectX. Would it be better to start out with TWGPG and then move on to OpenGL, or learn OpenGL first and then do Tricks? By the way, I have Windows Game Programming for Dummies, which is similar to Tricks. Is it OK to start out with this one, or should I buy Tricks and start there?

I'm guessing it's also safe to assume that I don't really ever need to learn true Windows programming. I've heard many people say that all you need to know is the standard "plumbing" that you must put in all Win32 applications (WinMain, WndProc, etc), but then just add your own stuff on top of that.

[edited by - StonieJ on March 3, 2003 7:05:48 PM]
I would start by picking one and learning it. Dont try to do both right away! 1 at a time!

I started with DX, but it is entirely your choice.

I have kind of a ground up tutorial series at

www.myran.com/enilno , but these are still at beginner level.

If you choose Open GL, I would higly recommend the RedBook!
TechleadEnilno, the Ultima 2 projectwww.dr-code.org/enilno
Here are a few suggestions from a fellow newbie.

You can use Open GL with Java with a binding called Gl4Java. Thats what the Java versions of the NeHe tutorials use. You can find out more about GL4Java at:

www.jausoft.com/gl4java.html

Also, if you are looking for help with programming games in Java, the official (I think) Java game programming forum is at:

www.javagaming.org

Thats assuming you want to use Java, which I agree seems like a much nicer language. However, it may make sense to switch to C++ especially if you know something about it, because thats what everyone else uses, and you aren''t faced with the speed issues of Java. Those issues, are being fixed, and Sun seems to be making some effort ot make Java a better option for game programming, so you should keep your eye on that, too.

aleclair
Advertisement
I was in your position a short while ago. Java got too frustrating graphics wise; the info is more difficult to get ahold of. I plan on returning to Java and graphics at some point, but not until I have completed what I consider to be a significant achievement in C++/OpenGL; and at that point, who knows if I will ever go back to writing a trully pure Java game application.

I also have those books you mentioned. I also did most of my programming in Java at college.

I would recommend going to C++ with OpenGL. Make sure you follow that link above to the redbook; it is a great OGL resource. However, it can be a little bit daunting if you have no OGL experience. I prefer reading chapter from it after I have a good understanding of the material; I get the most out of it this way.

On that note, RUN to the store and go buy OpenGL Game Programming. It will get you going in OpenGL rather easily, and eventually cover a full game (that is beyond the damn card games easily found for Java, bleh). I actually bought it last week after finally deciding to get back into C++ and OGL. I also picked up Game programming gems, as I have been meaning to since it was published. I just read interesting articles from it as the need arises (or when I want a break from OGLGP).

You may want to pick up The C++ Programming Language at some point as a reference. Also, google for Thinking in C++ and download volumes 1 and 2. I haven''t actually read them yet, but plan on doing so as they are very highly recommended (and the price is right).

One last note--if you stick with Java, there is a free book covering Java3D online somewhere; but I lost the link so go a googlin''....however, I would still highly recommend getting your background using C++/OGL, where information and support is much much much more readily available.

The Tyr project is here.
The Tyr project is here.
I know this was mentioned before, but the link wasn't posted so....

check out: nehe.gamedev.net

If the only thing stopping you from trying to get into OpenGL is the tiny bit of windows programming you need to do, then look at the NeHe Basecode on that site. It has a framework where you can just replace the components as you learn and not really have to deal with Windows issues on your own just yet.

Also, if you liked Java that much more than C++ and don't mind looking into DirectX (version 9 probably since it's a little easier to read ) then you may want to try and get a copy of Visual Studio .NET Acad. so you can try out C#. It'll feel more comfortable than C++ to you (from what you said) and it has a syntax that is not very different from what you already know.

Just my 2 cents, but I hope that helps!

-Adam

[edited by - AdamMB on March 4, 2003 10:31:38 AM]
The best thing you can do in the long-run is to figure out for yourself what direction to take. We can offer suggestions as to what helped us but it is ultimately up to you to decide which path is best for you. Depending on what it is you are trying to accomplish and how detailed you are about it, your motivation will point you in the direction you need to go. Trust yourself and follow wherever your instincts lead you.
Hey, just wanted to say thank you to all of you for all the advice. It was really quite helpful. I''ve decided at this point to move forward with C++, and if at a later time I want to switch back to Java, I''ll do it then. I just think that for learning OpenGL (and game programming in general), there is too little Java documentation to really help me out. C++ is still the favored language by far. So, I''m re-reading my Windows Game Programming for Dummies book and trying to get a grip on DirectX. The only problem is that it is quite outdated (it''s using DirectX 5.0). Do you think it''s worth it to just skip WGPFD and move on to LaMothe''s new, up-to-date Tricks of the WGP Gurus, 2nd Edition ? I realize that Tricks is DirectX and not OpenGL, but I''d rather know how to just make a simple, 2D game before moving onto 3D stuff. (i.e., It seems to me that learning 3D graphics for a game won''t help you too much until you know the logic behind creating the game itself.)

So, here is the probable course I will take:
0) Finish WGPFD (so I can feel good about getting my money''s worth)
1) LaMothe''s new book, Tricks of the WGP Gurus (2nd edition)
2) OpenGL Red Book
3) OpenGL Game Programming

This topic is closed to new replies.

Advertisement