amazon.com:
Develop the essential skills you need to take your game ideas from concept to reality! Whether you want to create simple games for your own enjoyment or you are ready to create prototypes that will help you get your foot in the door professionally, Beginning Game Programming, Second Edition contains the techniques to help you reach your goals. If you have a basic understanding of C, this unique guide covers everything you need in order to create your own 2D and 3D games in C and DirectX 9. You’ll learn how to develop each element of your game-- from creating your own 3D models and loading them with DirectX 9 code to enhancing the artwork and creating sound for your game. Using the skills you learn within each chapter, you’ll develop your own game library-- a tool which reaches far beyond the pages of this book and can be used for future game projects. Put each of your newfound skills to use as you create your own complete, fully functional 3D game, using collision detection, with real 3D models. If you’re ready to turn your ideas into actual games, then your journey begins here!
amazon.com:
Learn the essential skills needed to demystify game programming and harness the power of Windows® and DirectX®. "Beginning Game Programming" teaches you everything you need to know to write 2D and 3D games with C and DirectX 9 without any complex mathematics. Ease your way into this exciting new world by learning to write simple Windows programs, and then tap into the power of Direct3D! Each chapter teaches important new skills (such as basic 3D programming with vertices, polygons, and textures), culminating in a simple DirectX game library?great for your own game projects! Learn the basics of 3D modeling with the Anim8or modeling program and then learn how to load and use 3D models in your own games. The complete game project in this book runs in fullscreen or windowed mode, and features mouse support, sound effects, 3D models, texture-based sprites, and 3D collision detection. Brace yourself for an exciting introduction to game programming!
amazon.com:
Learn the essential skills needed to demystify game programming and harness the power of Windows® and DirectX®. "Beginning Game Programming" teaches you everything you need to know to write 2D and 3D games with C and DirectX 9 without any complex mathematics. Ease your way into this exciting new world by learning to write simple Windows programs, and then tap into the power of Direct3D! Each chapter teaches important new skills (such as basic 3D programming with vertices, polygons, and textures), culminating in a simple DirectX game library?great for your own game projects! Learn the basics of 3D modeling with the Anim8or modeling program and then learn how to load and use 3D models in your own games. The complete game project in this book runs in fullscreen or windowed mode, and features mouse support, sound effects, 3D models, texture-based sprites, and 3D collision detection. Brace yourself for an exciting introduction to game programming!
Ok book but some BIG drawbacks
22 May 2008 @ amazon.com
Besides the few mistakes that make it difficult to compile code etc. the book is very good for beginners. It starts with the basics of windows programming framework then adds DirectX, onto 2d graphics then finishes with 3d. Each chapter has questions to test your knowledge and it CLEARLY states the answers are in the Appendix which ISN’T included. I have contacted them and they just state, "nope no appendix sorry". So if you are unsure of an answer your never going to know the answer. It also has a program he uses called meshview which doesn’t come with ALL SDK’s (maybe I have a newer one that has it removed). So the whole section on optimizing mesh’s is worthless to me (I have searched for it on the SDK ON THE BOOK’s CD!! and online to no avail) Things like that throughout the book make it just a so so book to me. Anyhow don’t expect a complete 100% thorough book.
excellent
13 Oct 2007 @ amazon.com
Jonathan S. Harbour is an excellent author. His books are very informative and very easy to read. He has a knack for taking subject matter that would put you to sleep, and making it fun to read.
An Excellent Introduction to Game Programming
07 Dec 2006 @ amazon.com
I’ve had this book for two days now and am already half-way through it and the examples. Please NOTE*** Something that is reiterated throughout the beginning chapters is that this book is an introduction to GAME programming using directx, not an introduction to game PROGRAMMING. The code in this book is developed using a C/C++ compiler, and the brilliant author uses Microsoft Visual C++. As the author mentions many times, you should be knowledgable in C/C++ to really have a good understanding of the code. That being said, even his explanations of every line of code shouldn’t confuse someone at least familiar with some programming.
The writing style might be somewhat "cheesey" to some readers, but I felt myself so enthralled in the book that I couldn’t put it down. Mr. Harbour inspires you to want to develop games.
While I haven’t yet reached the 3D part of the book, I really liked the explanations on Windows programming, and the eventual directx programming. One of the best "features" of this book is how the author explains what the different lines of code actually do. Too many books give you code without telling you what it does.
I recommend this book especially if you have no idea how a game is programmed. I do have a lot of programming experience, but not low-level windows programming. I had no idea how to display a window, or to ’blit’ a surface. Now I do!
Lastly, I’ve seen some people said they had trouble with compiling the source code. I haven’t tried it with the given compiler, but if you download the FREE MS Visual C++ Express, make sure you aren’t using a UNICODE character set, then you shouldn’t see any problems.
Difficult to understand
20 Oct 2006 @ amazon.com
This book has exellent information, but the author spends little time emphasizing the basics. I am about halfway through the book and i have just stopped reading it becuase it is so confusing. I am very experienced in php, and know basic C and C++, and was surprized i found it so difficult to understand. If you can catch on quick enough though then im sure the information given is great, i expecially loved the first few chapers before the code, where he explained about api’s and how directx works...
Confusing and not very well written.
16 Sep 2006 @ amazon.com
I was very disappointed with this book. There was insufficient instruction regarding the installation of the DirectX SDK. Most of the source code is incompatible with the included compiler. After manually entering the source code into the Visual C++ IDE, most of the programs would not compile. Thinking I may have made some typographical errors or overlooked some of the code, I then copied the source code directly from the included CD and became even more frustrated that this code would not compile either. Don’t waste your money on this book.
What You Would Expect
24 Jun 2006 @ amazon.com
If you are like me - knowledgable about C++ - you will appreciate this book if you are trying to get started with Windows DirectX programming. I have read a lot of introductory gaming books and I can honestly say that Harbour gives the beginning chapters the attention they desperately need. I have read too many gaming books that go over WinMain and WinProc so fast you have no idea what they actually do. True - they really don’t play that big of a role in the full span of game development. Here is the thing, though, if you are typing things like "HINSTANCE" and "LPTSTR" and don’t know what they mean, it is likely you are just memorizing everything you see in the book; what good is that? As a programmer, you need to know what is going on so that random letters suddenly make sense and you know what is going on. Never program blindly - it is the first step to failure! Harbour explains everything in concise, well-rounded chapters that make coding even easy for beginner programmers. I have another book called Beginning DirectX 9, and the author starts out by giving over a page worth of code with hardly sufficient explainations. Harbour’s book is not like that! He is very ambitious and will direct a reader to actually learn something - not everything - but anything a serious programmer needs to pick up another books that will be more challenging. His only fault may be that he repeats himself too much, but it never takes away from the quality and it really stresses the important things. If you are sick of programming books that just aren’t working out for you, this is your last caveat. Enjoy learning something for a change. :- )
Caution!!!!!!!!!!!!!!!!!!
23 Sep 2005 @ amazon.com
If you intend on running any of the examples in the book, you’re gonna have to buy Microsoft’s Visual C++ 6 or .NET. The book does come with a free compiler (Bloodshed’s Dev-C++), but not all of the examples in the book work with it. At least in my opinion, if you’re buying the book, you should get a compiler that works with it...
If you’ve already purchased the book and don’t want to shell out more money for VC++, the author has a support website with forums that discuss the some of the problems and offer some solutions.
If you already have VC++, then the book is definitely worth reading, but there are probably a few other books that are more in-depth and informative.
A Valuable and Worthwhile Book
12 Jul 2005 @ amazon.com
I liked this book. Don’t be fooled by the author when he says in the beginning that "This is a book all about game programming". It seems like its goal is to do everything with DirectX but make games. You spend the first 9 chapters making neat little programs to demonstrate basic Windows code and the various components of DirectX. However, the games come eventually; you make a sort of Pong clone in chapter 10, and a 3D version of Breakout to finnish the book. You also walk away with a fully functional game "framework" you can apply to your projects for a while to come. BE WARNED: the compiler included with this book is Dev-C++, an environment I have found very difficult to use with DirectX. Your better off using MSVC (the compiler that is actually covered in the book). To sum up: I gained a knowledge of how to make games with C and DirectX from this book, so I’m satisfied. Definitely valuable, worthwhile, and a great place to start for the novice game programmer.
Quick and dirty, but a nice lite intro
27 Feb 2005 @ amazon.com
This book is a very quick and dirty intro to DirectX 9.0b programming (it’s very odd that directx is not in the title; perhaps the publisher felt it was redundant with their other begnning directx books). The book seems like it was written in a weekend using a dictation machine, but I forgive it this sin because it’s very quick to read. Think of it as an example game source with heavy comments.
Note: you’ll need to be familiar enough with pointers to understand the peculiar way the DirectX API immitates class objects in C (without using C++ features); I wish the author commented on this and why a class-based interface isn’t offerend in the first place; I’m guessing it’s so they don’t have to write the API twice to support both C and C++. Nor does he address the more general question of ’are classes really so bad for performance?’.
In sum, my only real complaint with the book is its cost: for $30 bucks it should be more complete.
BTW, what’s with the repeatedly redundant parts where he goes through setting up the visual studio project? He should have saved that hand-holding for the actually difficult concepts.
A note from the author
12 Jan 2005 @ amazon.com
When I set out to write this book, my goal was to reach the inexperienced programmer and give him or her some of the foundational knowledge needed to get started in the fascinating world of game development. This book is not a work of art, nor it is witty or cunningly imaginative; instead, this book is pragmatic in it’s focus on providing just what you need--and nothing more. You will need MS Visual C++ 5/6/7 or a comparable Windows compiler such as Borland C++Builder, and the DirectX 9.0b SDK (provided on the CD-ROM). There is not a single frivolous page in this book, for--as your can see--the very first chapter will have you learning the fundamentals of Windows and DirectX. By the 4th chapter, you will have learned about Windows messaging, the DirectX interfaces, and will be writing windowed and fullscreen Direct3D programs.
I focused entirely on the C language, so I encourage you to learn at least the basics of C before trying to work through this book, because I assume you already understand the basics of the language. Although there is really no complex code in this book, I still urge you to read a C primer first (I suggest Michael Vine’s C for the Absolute Beginner as a companion to this volume).
The book quickly escalates into Direct3D surfaces and textures, and then on to animated sprites (which are pulled from a tiled bitmap image and loaded into a texture). Before rounding out the basics of DirectX, you will learn how to program sound, music, and input devices.
The last four chapters are the true gem of this book, for you will learn how to create your own 3D models. As a non-artist myself, I understand how difficult it is for a budding game programmer to come up with the artwork for a game. The truth is, there is no good source for free 3D models or textures that will suit your needs, so the best approach is to create your own. After a brief introduction to 3D graphics theory, you will have the opportunity to create a 3D model of a car from scratch using the powerful Anim8or 3D modeling program (full version provided on the CD). You will then learn how to tweak the model in various ways, and then load it into your own program.
You will then put these new skills to work in creating a complete game--a 3D version of Breakout, complete with a 3D mouse cursor, sound effects, scoring, the works! You will gain valuable skills while creating this game, as you will see exactly how the 3D models were created for the walls, the paddle, and other objects in the game. In the end, you will have gained that foundation of knowledge, will have a solid understanding of how a game works, and will be ready for the next step in your education. I believe that you will be able to pick up any advanced game programming book after completing this one, and will be able to make sense of it--and that is the most valuable thing that you will have gained from this book.
Part I: Windows Programming
1: Getting Started With Windows And DirectX
2: Windows Programming Basics
3: Windows Messaging And Event Handling
4: The Real-Time Game Loop
Part II: DirectX Programming
5: Your First DirectX Graphics Program
6: Bitmaps and Surfaces
7: Drawing Animated Sprites
8: Advanced Sprite Programming
9: Jamming With DirectX Audio
10: Handling Input Devices
Part III: 3D Programming
11: 3D Graphics Fundamentals
12: Creating Your Own 3D Models With Anim8or
13: Working With 3D Model Files
14: Complete Game Project