#### Archived

This topic is now archived and is closed to further replies.

# Possible Gaming Book List

This topic is 5673 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

## Recommended Posts

Hey all. I''ve spent some time on Amazon and some other book sites, and have dug up a sort of game programming book list. I have about 300 bucks to blow on books/learning resources, and I''d rather not pick the wrong ones. If anybody has read the following I''d appreciate your input. Plus if anyone has an addition that might be of interest please throw it in. I''m looking to start from the ground up (C coding -> DirectX/OpenGL -> AI coding -> textures -> game interface/theory -> 3d effects -> -> game physics -> Multiplayer -> 3d/character modelling, etc..), but I have a good basis in general programming (VB6, Java, java-script, Perl). Anyway, here''s the list: Programming Role-Playing Games with DirectX (With CD-ROM) **** http://www.amazon.com/exec/obidos/ASIN/1931841098/qid=1023089822/sr=2-1/ref=sr_2_1/104-8582065-6090325 by Jim Adams 974 pages $59.99 Special Effects Game Programming with DirectX 8.0 (With CD-ROM) http://www.amazon.com/exec/obidos/ASIN/1931841063/ref=pd_bxgy_text_1/104-8582065-6090325 by Mason McCuskey, Andre LaMothe (Editor) 800 pages$59.99 The Zen of Direct 3D Game Programming http://www.bookpool.com/.x/3dp5s61l4n/sm/0761534296 by Peter Walsh 863 pages $36.50 Modeling a Character in 3DS Max http://www.amazon.com/exec/obidos/ASIN/1556228155/qid%3D1023091598/ref%3Dsr%5F11%5F0%5F1/104-8582065-6090325 by Paul Steed 350 pages$59.95 Physics for Game Developers http://www.amazon.com/exec/obidos/ASIN/0596000065/ref=pd_sim_books/104-8582065-6090325 by David M. Bourg 336 pages $27.97 MultiPlayer Game Programming http://www.amazon.com/exec/obidos/ASIN/0761532986/qid%3D1023091245/ref%3Dsr%5F11%5F0%5F1/104-8582065-6090325 by Todd Barron, Andre Lamothe 850 pages$59.99 Real Time Rendering Tricks and Techniques in DirectX http://www.amazon.com/exec/obidos/ASIN/1931841276/qid%3D1023121516/ref%3Dsr%5F11%5F0%5F1/104-8582065-6090325 by Kelly Dempski 821 pages $59.99 Absolute Beginner''s Guide to C (2nd Edition) http://www.amazon.com/exec/obidos/ASIN/0672305100/ref=ase_gamedev/104-8582065-6090325 by Greg M. Perry 432 pages$15.40 Efficient C++: Performance Programming Techniques http://www.amazon.com/exec/obidos/ASIN/0201379503/ref=ase_gamedev/104-8582065-6090325 by Dov Bulka, David Mayhew 309 pages $37.99 Digital Texturing & Painting http://www.amazon.com/exec/obidos/ASIN/0735709181/ref=ase_ultimate3dlinksA/104-8582065-6090325 by Owen Demers, Christine Urszenyi (Editor), George Maestri (Editor) 352 pages$38.50 Photoshop 6 Bible : Gold Edition http://www.amazon.com/exec/obidos/ASIN/0764535978/qid=1023209840/sr=1-5/ref=sr_1_5/104-8582065-6090325 by Deke McClelland, Amy Thomas Buscaglia, Mark Hamburg 1227 pages \$45.49

##### Share on other sites
Well, have you any programming experience? If not, you really need to emphasize on it. That can’t be stressed enough! It’s your basic tool. And in that concern, go for C++. Some of the best C++ books for beginners are:

C++ Primer: http://www.amazon.com/exec/obidos/ASIN/0201824701/qid=1023355856/sr=8-3/ref=sr_8_3/103-5282627-8271038

OR C++ How To Program:

http://www.amazon.com/exec/obidos/ASIN/0130895717/qid=1023355913/sr=1-1/ref=sr_1_1/103-5282627-8271038

Or if you have experience programming in another language you might want to get Accelerated C++:

http://www.amazon.com/exec/obidos/ASIN/020170353X/qid%3D1023355940/ref%3Dsr%5F11%5F0%5F1/103-5282627-8271038

Probably the best book in the whole wide world on C++ is the one from the creator’s hands (but it’s hard to learn from if you’re new to the whole programming paradigm):

http://www.amazon.com/exec/obidos/ASIN/0201700735/qid=1023356005/sr=2-2/ref=sr_2_2/103-5282627-8271038

Now, after you’ve churned through one of these C++ books, you can turn you attention towards DirectX or OpenGL and you might want to look into one of the following (thought at the time you’ve learned to master C++ there might be some new books out!!):

http://www.amazon.com/exec/obidos/ASIN/1931841098/qid=1023356107/sr=2-1/ref=sr_2_1/103-5282627-8271038

for DirectX and, for OpenGL I can recommend:

http://www.amazon.com/exec/obidos/ASIN/1571691642/qid=1023356159/sr=2-3/ref=sr_2_3/103-5282627-8271038

But really, start by putting your effort into C++.

A year spent in artificial intelligence is enough to make one believe in God.

[edited by - rohde on June 6, 2002 5:47:14 AM]

[edited by - rohde on June 6, 2002 5:47:56 AM]

##### Share on other sites

Check out bookpool.com before you buy on amazon.com. You can find many of those books for around 20 to 40 percent off. And with those kinds of savings you should be able to buy an additional 3 books with the money your willing to spend

##### Share on other sites
I think there is too many books on your list focused on APIs. You should focus rather on the underlying theories and tools. In general, books that have title like this:

< theory topic > programming with < API or technology >

is bad and should be avoided. They try to teach many things but extremely often fail at both. They are, in essence, what I consider books for loosers.

If you insist on learning DirectX from a book only buy a single one. The rest should be theory only books.

Also, you have a lot of artist books on your list. That is not about game programming. Don't buy those, if you want to focus on game programming - we can't learn it all.

Here is the books I would recommend (instead of those you suggest). I assume you have basic programming experience:

Programming:
- Kernighan and Ritchie: The C Programming Language
- Lippman: C++ Primer
- Stroustrup: The C++ Programming language
- (More) Effective C++
- Gamma: Design patterns

Graphics:
- Heines: Real-time Rendering
- Foley: Computer Graphics - Principles and practice
- Woo: OpenGL Programmer's Guide (Red book)

Games:
- Game Programming Gems 1+2
- Tricks of the Windows Game Programming Gurus (I haven't read this but it is highly praised by many)

AI:
- Russell and Norvig: Artificial Intelligence - A modern Approach.

Algorithms/scripting/compilers:
- Cormen: Introduction to Algorithms
- Aho: Compilers - Principles, Techniques and Tools

Basic Math:
- Garnier: Discrete Mathematics for New Technology
(the other books you mention in math might also be good but I don't know them)

And then we don't even cover subjects such as networks, assembler programming (and computer architecture) and the more advanced algorithms.

BTW, to put some weight in my statement. I am pro game developer and have M.Sc. in CompSci and am specialized in GameDev. If you read the above books you will be among the cool game programmers out there.

[edited by - felonius on June 6, 2002 7:06:04 AM]

[edited by - felonius on June 6, 2002 7:07:36 AM]

##### Share on other sites
Great! Thanks for all the input everybody.

Rhode: Yeah. I have a good background in programming and programming theory, but just not in c/c++. I was thinking about taking some time this summer and taking a c class, but I personally don''t like the style in which most programming classes teach. I''d rather just learn it myself.

Felonius: Thank you. I wasn''t sure whether or not these kind of books were just hype or actually helped. I read the reader reviews on all of ''em, but they weren''t too helpful. Thanks for putting some light on the subject.

Once I get and read some of these I''ll try and post some reviews in Books & Software. Oh BTW felonius, since you''ve been down this path and figured out what it takes, can you suggest a good path in which to learn game development (with an end result of 3d/isometric real time programming). Oh, and another thing, how do employers in the insdustry weight degrees from places like DigiPen and FullSail? I''m looking into DigiPen up here in Redmond, but I don''t want to spend that much money if it''s not worth it. Thanks.

##### Share on other sites
quote:
Original post by cyssis
Felonius: Thank you. I wasn''t sure whether or not these kind of books were just hype or actually helped.

I am not sure exactly what books you refer to, but I can assure you that the books I suggest are not hype but really useful. I can''t make garantees for the book about Tricks for the Windows Game Programming gurus since I haven''t read.

Note that the books I mention is just what I consider the best among the essentials. If you want to strip down the list remove the Effective C++ and Design Patterns books. They are good but not vitally essential.

Concerning amazon, Amazon has some small guides next to some books. Look at this:

http://www.amazon.com/exec/obidos/tg/guides/guide-display/-/1R0M2S83ZMUGF/103-2914553-7242201

Curiously enough I and that author suggests many of the same books.

A few notes: There is a book about called Efficient C++ that you mention above, this is *not* the same as the book Effective C++ by Scott Meyers which is the classic. Do not confuse those two.

I also hear good things about Accelerated C++ (also recommended by rohde above) but I haven''t read it (yet).

quote:

Oh BTW felonius, since you''ve been down this path and figured out what it takes, can you suggest a good path in which to learn game development (with an end result of 3d/isometric real time programming).

What exactly do you mean by path?

quote:

Oh, and another thing, how do employers in the insdustry weight degrees from places like DigiPen and FullSail? I''m looking into DigiPen up here in Redmond, but I don''t want to spend that much money if it''s not worth it.

I don''t know. We don''t have any people from either of those places and the industry seem no to agree on whether they can do anything. But I wouldn''t risk my money on it. But don''t take my word for it - it is better to ask some people that has been educated there - try asking at the IGDA forums (www.igda.org). As mentioned many times in this forum the de facto education of a game programmer is to get a degree in tradional computer science and then learn all you can about games while you are at it.

##### Share on other sites
BTW, here is some tips that can help you identify quality vs. crap books (it is almost always true - exceptions do exist.)

Tip 1.
If the book contains a disk or a CD then it almost certainly crap.

Tip 2.
If the book contains code listings longer than 1 - 2 pages max. it is almost certainly crap.

Tip 3.
Look at the publisher. Each publisher decides what books to publish and high ranking publishers therefore get the books of the highest quality. Here is a little list I have compiled:

Good publishers: IEEE, ACM, Springer-Verlag, Addison-Wesley, Prentice Hall, Morgan Kaufmann, MIT Press, Academic Press.
Average publishers (some good some bad books): Microsoft Press, O''Reilly, Premier Pr., Charless River Media.
Bad Publishers: SAMS, M&T, Sybex (this one is very bad), AP Professional, IDG, Wordware.

I hope this helps you. Feel free to ask more.

##### Share on other sites
quote:
Original post by felonius
Good publishers: IEEE, ACM, Springer-Verlag, Addison-Wesley, Prentice Hall, Morgan Kaufmann, MIT Press, Academic Press.
Average publishers (some good some bad books): Microsoft Press, O''Reilly, Premier Pr., Charless River Media.
Bad Publishers: SAMS, M&T, Sybex (this one is very bad), AP Professional, IDG, Wordware.

That''s SO true. Stay the hell away from Sybex!!!

*************

A year spent in artificial intelligence is enough to make one believe in God.

##### Share on other sites
I looked a little into Digipen, Fullsail and Gameintitute just for interests sake. I know my conclusions is not exact since I haven''t attented the schools, but by going through their course plans and looking at what you learn here is what I conclude (If I was the one to decide who to hire this is what I would say):

Digipen: Seems very good for game programmers assuming that you take the 4-year RTIS Bachelor of Science program. That seems to be good and covers many important subjects that people otherwise would have missed. Thumbs up.

Fullsail: This looks populistic and doesn''t go to proper depth. Does not give a recognized academic degree. Thumbs down.

Gameinstitute: This is also quite populistic and only covers a narrow set of topics. Does not give a recognized academic degree. Thumbs down.

If anybody here attends on of these schools please don''t flame me. Think of me as the ignorant employer considering whether you are any good when you get out. And remember, formal education is not everything - having something to show of is also important.

##### Share on other sites
quote:
Original post by felonius

Tip 1.
If the book contains a disk or a CD then it almost certainly crap.

Tip 2.
If the book contains code listings longer than 1 - 2 pages max. it is almost certainly crap.

Tip 1: I don''t agree with at all. Many good programming books come with CDs. This allows you to view source code, try out demos, etc.

Tip 2: This is sometimes true, but there are great books with long code listings, Programming Windows has some pretty long ones yet it is an excellent book.

##### Share on other sites
Felonius: THANKS! You have been an incredible help. By path I meant the path to a good solid knowledge in game development. And my question probably should have been "In which order should I learn game development techniques if I want to gain a true knowledge of the subject." I don''t want to be just another pathetic coder who blindly copies snippets of code. Another question that occured to me was: "Generally (or from your experience) how long did it take for you to get to the: text based game; 2d shape; 2d sprite; basic 3d; 3d w/ models; basic 3d effects (shadows, lighting, fog); advanced 3d effects (blurring, cel-shading, etc..), and by ''get to the subject'' I mean get a basic & solid grasp of the topic."

BTW: With your help in mind, I went online and got one book out of each one of the subjects on your list (minus the AI, I figure I won''t be needing to get too indepth with AI coding for a while.) Hopefully they should get here in a couple days and I can begin learning in ernest. (I''m sixteen and working at a dry-cleaning drop off site that my brother owns, so I have about 6 hours at work to practice/learn the code and about 4 hours at home. God I love being a kid. )

##### Share on other sites
"If the book contains a disk or a CD then it almost certainly crap"

why would u say that? i think its good that they give u source examples.

cause otherwise u end up with source examples in the book that u can neva get to work (if ur new like me). and u become lost and give up trying! ... if they give u the source file and the exe. then u can look through and figure out what u did wrong in yours.

im using tricks of the windows game programming gurus and it came with a cd with ms vc++, paintshop, and truespace demos... which are helpfull cause he explains somewhat how to do some of the things in ms vc++ ... which if i didn't have it id be lost (dunno where to find good compilers).

also tricks is with SAMS, which u put on ur bad list... but i think tricks is a very good book, and alot of others thought that too (i was reccommended this book by people on this forum)

[/edit]

[edited by - stickman on June 7, 2002 2:08:00 AM]

##### Share on other sites
I can see where you''re comming from, but I also agree w/ felonius... It''s not that the CD''s are a bad idea, it''s just that the books that generally acompany them are horrible. I''ve had that problem w/ VB, Perl, and Java books alike. Generally if a book says something along the lines of "CD-Rom included!" it usually isn''t as high of quality as others which put their entire effort into the book itself. I agree that the source examples are great, but for some reason it just seems that you can get one or the other, but not both...

##### Share on other sites
On the cd included thing:
The game programming gems ( and graphics gems I believe ) contain cds and are excellent books. My favorite general c++ reference, the Deitel book has an excellent cd.
I used to feel they were crap when all I saw that they pulished were the "teach yourself Blah in N time" books. But they do sell some pretty good books, on which the sams logo is extremely small, almost like they know their reputation is crappy. Books like efficient c++ and some software engineering books, not to mention "tricks of the windows..." which I think is ok, I give it a B.

##### Share on other sites
Well put cyssis, it is not the CD-ROMs themselves that are bad. In fact in same cases they supplement the books very well. There just seem to be a higher tendency to include a CD-ROM with a computer book if it a bad book.

BTW, I see that the publisher Wordware is on my list of Bad publishers. That is an error - it should be among the Medium Publishers.

Concerning putting SAMS on the list of bad publishers I insist on this. I know there might be exceptions (which I pointed out above) and Tricks of the Windows Game Programming Gurus might very well be one of them but of the 6 books I have read from SAMS I consider them all crap - and this includes the original Tricks of the Game Programming Gurus also by LaMothe (it is the predessor to TotWGPG). It could just have been so much better even for its time.

Anyway, I noted that the local (the largest in Copenhagen) IT-bookstore only sells books from my bad and medium list these days and only if they are less than 2 years old. They say they can''t IT books otherwise. Somehow people must think that they are better. I am baffled. Isn''t this odd?

And again I must emphasize that the tips I provided only are tendencies. Tip 1 is probably the one that fail to be true most often and Tip 2 comes next while Tip 3 practically always are true. Very good books that that I have read that defy tip 1 and 2 are:
* Jeff Prosise: Programming Windows with MFC (Microsoft Press)
* Andrew Troelsen: Developer''s Workshop to COM &ATL 3.0 (Wordware)
so they do exist and mainly in the "medium" publisher category.
(but they should not be first books one should buy to learn game programming, mind you)

And cyssis, concerning path I don''t think there is such a clear path. Just read the books in the order you fancy (which did you order?). It can be hard to appreciate the substle details of a subject in isolation. For insteance, many C++ programming techniques can probably only be truely understood if you have already some practical experience with somewhat large projects and that you can''t get without some of the other fields too. So read a little bit of each switching among them making sure it stays fun. Read some (non-programming) theory in one book and then try to implement it thereby getting better at programming. That way you can learn programming and theory at the same time.

I am always pleased to help people that truely show a will to learn the serious way. And you seem very mature about this things for a 16 year old. I didn''t have that maturity until I was about 19. I am impressed.

##### Share on other sites
>> But they do sell some pretty good books, on which the sams logo is extremely small, almost like they know their reputation is crappy. Books like efficient c++ and some software engineering books, not to mention "tricks of the windows..." which I think is ok, I give it a B.

lol. This might be true. I don''t know. I haven''t dared read any new books from them for a couple of years now. They might have improved

##### Share on other sites
Hmm... Let's see. I have a book named The C Programming Language lying around. I've talked to several developers and they swear by it (I believe that it was developed for Boing engineers), so I've decided to stick with it and see how things go. As for the others, I purchased:

Foley: Computer Graphics - Principles and practice
Heines: Real-time Rendering
Game Programming Gems 1 (I figure I might as well start at the beginning, and I doubt I'll be getting to either one of these books any time soon)
Cormen: Introduction to Algorithms
Physics for Game Developers (I decided on this one because I have a VERY solid foundation in math (algebra through calc) and I think I'd rather just look at how it applies to gaming in particular.

Thanks for clearing up that learning path question. I actually prefer nonlinear learning, but it appeared to me that everybody learned completely sequentially (I was actually dreading it, now it doesn't seem so bad).

Oh, and as for local bookstores, I feel your pain... I normally live in Roswell, New Mexico (no... I haven't seen any aliens) and the general expresion when you ask for a book on programming in C/C++ is a mix between a deer caught in headlights and a hungover college freshman realizing he has a calc final in an hour... *Sigh* It's okay though... Seattle has a GREAT selection of IT books.

>>1)I am always pleased to help people that truely show a will to 2)learn the serious way. 3)And you seem very mature about this things for a 16 year old. I didn't have that maturity until I was about 19. I am impressed.

1)Trust me, I can't thank you enough for your help. I would have dumped 300 bucks into 2000 pages of crap and been furious.
2)I have found out that being thourough is a much better idea than skimming through things. Even if it does take longer...
3)Thanks for the compliment man. I'm just trying to get ready for life after highschool, and I figure that whining "It's toooo haard! Don't they just have a program for this?" isn't going to get me anywhere.

[edited by - cyssis on June 7, 2002 3:30:21 AM]

##### Share on other sites
Hmm. That''s a great list! I''m gonna bookmark it and come back when I have some more cash. Thanks for the link fruny.

##### Share on other sites
To bad that ACCU book list isn't ranked. Just in the category of advanced C++ there is 26 books - this makes it hard to know which to buy if I just want the essentials...

quote:

Foley: Computer Graphics - Principles and practice
Heines: Real-time Rendering
Game Programming Gems 1 (I figure I might as well start at the beginning, and I doubt I'll be getting to either one of these books any time soon)
Cormen: Introduction to Algorithms
Physics for Game Developers (I decided on this one because I have a VERY solid foundation in math (algebra through calc) and I think I'd rather just look at how it applies to gaming in particular.

* Concerning math. I am not 100% into the US school system but I don't think high school math is enough. When I said basic math I meant math including something like the freshman college level. I guess you know how to integrate a function. Do you know matrix algebra? vector math? predicate logic? some basic group theory? If you find Cormen is to hard you might have to return and learn more math. It is just so you know.
* I think you should buy a book that introduces one of the two main graphics technologies available, directx or opengl. That can be either Tricks of the Windows Game Programming Gurus (for DirectX)(Inside DirectX is way outdated) - or the OpenGL Programming Guide (for opengl). It is important to keep motivation high by doing cool stuff and to have a good testbed to try theory on.
If you have to cut one of the other ones I would cut either:
-- Game Programming Gems 1 since it might be to high level for you for now for you to appreciate fully, OR
-- Heines: Real-time Rendering, since that and Foley has a lot of duplicate material so I would start with just one of those and of Heines and Foley I personally prefer Foley, but that is a matter of taste.

(if they are not dispatched yet you can still change your order)

[edited by - felonius on June 7, 2002 4:02:30 AM]

##### Share on other sites
So those two overlap quite a bit? Hmm... Which would you say is more usefull in the long run?

As for the math: I haven't been enrolled in a public school math class since the 5th grade (they're a disgrace. for all that America has achieved you'd figure they'd actually invest in their future *sigh*.), and I don't know exactly how deep into mathematics one needs to delve, but I think I should have a good foundation. So far I've taken classes (and passed) on:
Calculus and Analytic Geometry I
Calculus and Analytic Geometry II
Differential Equations
Elementary Matrix and Linear Algebra

If there's other branches of math that are useful, please tell me. I want a strong grasp of the concepts before I dive into the development side of programming.

On second thought though, predicate logic doesn't sound too familiar. Does the "Discrete Mathematics for New Technology" book cover that? If so do you think I should get it? (If I eliminate one of those other two books, then I should be able to buy it.)

[edited by - cyssis on June 7, 2002 4:37:46 AM]

##### Share on other sites
>> I haven''t been enrolled in a public school math class since the 5th grade

lol!!!!

I think you will do just fine with what you already know. If not you can always supplement it later on.

>> So those two overlap quite a bit? Hmm... Which would you say is more usefull in the long run?

The big difference between the two books is their abstraction level. Foley covers low-level details such as rendering a triangle in detail and how to do various kinds of hidden surface removal. Many of these things are taken over by hardware these days, but knowledge of these things are (in my opinion) still essential to understanding why the hardware performs and acts as it does. Heines focuses more on higher level issues and implicitly assumes you have hardware acceleration at your disposel. So I think you should have both (abnd many more) eventually. But to the real underlying theoretical fundamentals you should choose Foley. (I just love that book)

##### Share on other sites
quote:
Original post by felonius
But to the real underlying theoretical fundamentals you should choose Foley. (I just love that book)

*LOL* That book lies under my pillow when I go to sleep every night.

It can be a tough book at times, and its very low level but it gives you such a good and basic foundation for CG. Without doubt one of the best (if not THE best) book on basic, low-level CG out there.

A year spent in artificial intelligence is enough to make one believe in God.

##### Share on other sites
hehe, it seems we agree on many things rohde - even what country to come from. Do we know each other? I am a graduate from diku; have you attended there, since you know Foley? (The graphics professor there swears by it). Your profile doesn''t give a name - is it a secret