Hello and thanks in advance to your suggestions,

I have taken a few courses on programming, Turbo Pascal and intro to C, about 8 years ago and I'm sure much has changed. So my goal is to get back into programming and learn what a solo programmer can accomplish. The only book I read on gaming is More Tricks of the Game Programming Gurus and yes I was overwhelmed when I read it, which was long ago. But atleast in reading it have seen what some games consist of(ie, graphics engines, GUI, AI, collision, and most importantly the devotion of time and detail.

Here's my checklist of what I would like to accomplish in 2 years:

1. I understand C++ is the way to go. Now how should I go about getting there? (ie, what's a good book for C++ keep in mind I am pretty comfortable with C in many aspects)

2. I do want to get a good compiler, so I would like to purchase a new one with a budget of $200.

3. Other posts have recommended engines to handle graphics. Which one seems to be the best overall and which one seems to be the easiest for beginners. Budget for this is $300, hopefully not that much, but I imagine buying someone's code to be used for your own games will not be cheap.

4. 3D development. Once I get a good grasp of C++, I want to move right too 3D graphics. I'm guessing that whatever engine that's suggested would probably handle the math part of making 3D environments, so what I'm asking here is, what tools can I get to make my characters, maps, and other objects that can be used in the engine suggested above.

I'm already typing too much, so I'll leave the rest out. This looks like a good start for me. If you feel this is not the route to take in 3D game development, I am all ears.



Recommended Answers

All 17 Replies

I would recommend asking for suggestions on GameDev. They have resources for newcomers to game programming that Daniweb lacks.

Go to 3dbuzz at www.3dbuzz.com they have a lot of video tutorials there about how to do 3d there is a game development section there that can get you on your way for some free 3d engines. Also they have some excellent High quality video tutorials for c++ programming that will take you from the basics of C++ to implementing that game into a windows based gui using wxWidgets. The C++ videos cost because of certain circumstances with them, but there is a lot of content that they have over there that is free to download. The community is an excellent one to get involved with and most everyone is willing to help out. We also have some programming forums over there that have lots of help in them with the video tutorials. I highly suggest you check them out i have been a member there for a little over a year now and love the site. Also right now they site is under a reconstruction phase but should be up later today. If not within the next few hours of this post time.

I checked out both of those sites and they have tons of content, thanks guys. I had seen an add for Torque on DaniWeb somewhere and I checked it out too. However, it looks like I need to learn to crawl before I walk. So my plan now is to enroll in a few classes on programming, this WinAPI stuff looks confusing, I no longer know my limits in memory, since before I was limited to a small stack unless you could program in protected. So thanks again, for the links, and I'll soak up what ever content I can from them

1) See the c/c++ books forum
2) DevC++ is free and is quite ample for game production as is the older DJGPP (used for compilation of quake)
3) DirectX is the most powerful graphic library at the moment, however OpenGL is apparently easier to use, I say apparently as DirectX is NOT hard to learn. If you want to get a complete engine look for support for either or even BOTH of these technologies. My advice is build your own from the ground up if you want to learn graphics
4) See 3

What sort of 'games' are you looking to produce? There are specialised techniques and ideas you should learn depending on which 'type' of game you want to create!

1) I have ordered a bunch of books from amazon (ie, C++ Primer Plus 5th edition, Direct3D Programming Kickstart, Schaum's Outline of disctete Mathematics, Code Complete 2nd Edition,& the first Game programming Gems)

2) I just started with DevC++ yesterday and I am happy with it, it's better than my Borland 4.5

3) As far as graphics i'm backing off until I feel comfortable with C++, but not completely, I'll still check out 3D engines and books.

4) I would love to be able to build my own from the ground up and I am taking a Math Primer course.

5) I'm a strategy game fanatic (I got hooked on the original Railroad Tycoon and Civilization on my Tandy 1000), so I would like to make very generic low quality 2d strategy games in the hopes of one day being able to make 3D strategy games.

Currently I'm studying up on Classes, I checked out the Irrlicht Engine and I ran into this :: operator or whatever it is, didn't realize it was for C++ class objects, I thought it was something Irrlicht implemented. Had never seen one in C, and it seems classes are a major feature of C++, which I have never used until the past few days.

Currently I'm studying up on Classes, I checked out the Irrlicht Engine and I ran into this :: operator or whatever it is,

the "::" is called the scope resolution operator

Hello, Acidburn

This is such an old post perhaps you are well on your way by now, but anyway. This first thing you need when starting a game would be a good script, (more a manual) of what this game is going to be and all of the elements to it. You have to lay it all out before you do anything, the reason for this is simple, it will tell you what you will need, how it will be done and how big the team will have to be. Any good game will have to be entertaining and have a good balance of fear and challenge to keep you on your toes, also, don't let anybody kid you, graphics and sound play a BIG role here. After all, do you really need 64 bits for a word processesor, no, you need them for the games. And don't let me get started on the budget, money for this and for that.

here we go again.
the best book to start learning c++ from is accelerated c++ by koenig and Moo.
Work through that.
Then I would advise this selection....
c++ standard library a tutorial and reference by josuttis.
c++ templates by josuttis and vandervoorde.
effective stl by meyers.
c++ coding standards by sutter and alexandrescu

these would be a good idea to at the very least read....
effective c++, more effective c++ by meyers
exceptional c++, more exceptional c++, exceptional c++ style by sutter

If you make it through that lot then these come highly recommended....

modern c++ design by andrescu
large scale software design by lakos
elements of reusable software by gamma and co. affectionately known as "the gang of four book"

Make it through that lot and you should have the necessary skills to adapt libraries such as directx and opengl etc totally to your own needs.

You forget the mandatory book for all serious C++ programmers, Stroustrup's classic "The C++ Programming Language".
As long as that book is too complicated for you don't even think about writing games, especially 3D games with AI, physics engines, etc. etc. (which you shouldn't start out with anyway, start with something simple like Pong or Tetris, or a small text adventure).

Please forgive me, you see I saw the post, "Rookie in game development. Where should I start", I thought he wanted to know how you start out a project, you see, I am a 3d graphic artist, I really did not wish to make you upset about any of this. Maybe on day you will need some helpful pointers from my field and I will talk to you as warmly as you to me. It is still a very nice forum, and again, thank you for putting me in my place, after all, I am new here and you are the pro's.

i deliberately didnt mention stroustrop. theres not much in it thats not covered in easier to understand language in the other books mentioned. Sure its a good book, the info is there but the organisation of it and the language used and even the code samples are lacking. Its a good book, but I dont count it among the greats.

Kraken, if you're wanting to write a game you need a lot more experience than basic programming and 3D design.
You'd be surprised at the number of kids who come into places like this with no programming experience at all (or at most an introductory class) and state their intention to write the next great 3D game from scratch as their next (read first major) project.
Of course you never hear from them again as they quickly give up.
If we sound harsh it's because we've seen it all before and want to prevent people from getting on that path without the proper knowledge under their belt.

Stoned, Stroustrup is a must read. Other books may contain some of the same information but in a less formalised manner. They're often ambiguous or wrong in the tiny details. Stroustrup IS the de facto language specification, what he writes must work in any ANSI compliant compiler (which admittedly means it might need slight adjustments for different compilers as there's AFAIK no compiler that implements the complete ANSI spec fully).
It's not meant as a tutorial, which you seem to have tried to use it for causing your disappointment.

By all means use other books to learn, but always have Stroustrup at the ready as a reference and final arbiter.

Hello, jwenting

Actually, I am a 56 year old and have been retired from the industry for the last 2 years, I have 30 years experience in film and some in games. You are right, I am not a programmer, but I do managment, right now, others have baited me out of retirement for one last effort, so here I am. The reason they wanted me, though I really wish they did not, was to setup and get things organized, and the way to do this has always been the tried and true method of a plan, or Script. This is nothing less than a manual by which to work by. This is the way all of the production houses here work, this starts long before anyone is even brought on board, we take the idea, develope it and get a working plan together, then bring in those that will form management. Then we drink a lot of coffee, some drink other things, and figure out the staff and then the budget, then we get going. Where I am at now, we are just in the planning stage.
You also must under stand, that mroe than 65% of my projects, did not use programmers, CG is like that, but where I have, these were really good people, and proud of what they do, I see that in you two, and you were just doing what you think best. I really would like to be friends with you, thats why I use forums. Thank you

>They're often ambiguous or wrong in the tiny details.
Have you read any of the books that Stoned_coder recommended? Are you knowledgeable enough with C++ to expose these "tiny details"? I can't speak for Stoned_coder, but I have a very hard time finding legitimate errors in the books he talked about, and I like to think I know a thing or two about C++.

>what he writes must work in any ANSI compliant compiler
Wrong, unfortunately, because a lot of people are misled as you have been. "ANSI" compliant compilers must conform to the C++ standard, and nothing else. The standard isn't even based on TC++PL, it's based on the ARM. Even worse, there are quite a few places where the venerable Stroustrup has written one thing only to be contradicted by what the standard says, and the standard always wins. If you don't believe me, and feel confident that you can understand the differences, feel free to compare the formal definition of istream::sync() with what TC++PL tries to palm it off as.

>By all means use other books to learn, but always have Stroustrup at the ready as a reference and final arbiter.
The final arbiter is the standard, as any expert will tell you. Stroustrup is wrong in the "tiny details" with uncomfortable frequency, doesn't delve far enough into advanced features to my satisfaction, and the rest of the language is simple to understand. Therefore, while it was an invaluable tool when I was learning the basics, I rarely consult it anymore.

Hello, Narue
You must not understand me, I am a graphics artist, but first I am in management, I do not need to know code or the tiny details, the final product is the goal, management tells the coders this is how it will go and they make it, if they cannot, new coders. You can write all of the engines you want, but you still have to put it to use, we are not talking about a team of want to be's here, this is a company. People are to do what is expected of them, they have a time table by which to work on and that is that. No game company is made up of coders alone, nor with just graphics. It is all about the final goal, and takes a lot more people than just the coders. We really do not think of just coders and graphics, it is a team of one and all. After all, I do not think of myself any better that a coder, we are on the same team. Thank you so much for senting me straight on this though, what a wonderful world we live in. Tell me, just how have you started a game and made final product? How did you do it with just the code.

Careful, Kraken.
I know you mean well, but Narue's post was correcting jwenting.
This is a forum primarily for the language, and so when you ask a question, it's only reasonable to expect a technical answer. These answers, unfortunately, can be blunt or even acidic reactions to bad ideas.

You are correct; your experience in team-based development environments where many people have a vested interest in producing a product is the best way to approach development of a game.

Unfortunately, the original topic was not asking about teamwork as much as it was asking where to start.

There is, after all, a great deal of educational value in coding games that have been written before, so you can become familiar with how to fit pieces together. Once you have a good knowledge base (as a coder), then you bring in everyone else for graphics, sound, and story (if applicable) development, and start working together as you describe.
Or, once you have experience, something to show, then you (as a coder) are brought in to a team that needs coders.

But right now, Auto wants a place to start from in learning to be a game coder. The days of a single programmer turning out a game are almost gone, but the place to start is almost always alone with supervision and guides.

That's what the discussion is; It's helping auto by suggesting the best way to go about learning to code games, the mindset and techniques that work.
Jwenting brought up that the reference for C++ as a language is a vital book, but got a little overzealous. Narue corrected him.

EDIT: Of course, this is rather moot because of the thread was pretty dead after may. I wonder if Auto is still around...

Fare enough, thank you for the reply.

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.