32 used & new from $3.93

Have one to sell? Sell yours here
 
 
Game Programming All in One
 
See larger image
 
Tell the Publisher!
I’d like to read this book on Kindle

Don’t have a Kindle? Get your Kindle here.
 
  

Game Programming All in One (Paperback)

~ Jonathan S. Harbour (Author)
3.5 out of 5 stars  See all reviews (46 customer reviews)


Available from these sellers.


15 new from $3.93 17 used from $3.93

Formats

Amazon Price New from Used from
Paperback --  
Paperback, June 17, 2004 --  
There is a newer edition of this item:
Game Programming All in One Game Programming All in One 3.9 out of 5 stars (7)
$28.57
In Stock.
What Do Customers Ultimately Buy After Viewing This Item?

Customers Who Bought This Item Also Bought


Editorial Reviews

Review

"Game programming is without a doubt the most intellectually challenging field of computer science in the world. However, we would be fooling ourselves if we said that we are 'serious' people! Writing (and reading) a game programming book, should be an exciting adventure for both the author and the reader." Andre LaMothe, Series Editor --This text refers to an out of print or unavailable edition of this title.

Product Description

Create your own high-caliber games with some of the same tools used by professional game developers! If you have a working knowledge of C or C++, then "Game Programming All in One, 2nd Edition" can get you started on your journey. It uses hands-on projects to explain each new subject and includes many sample programs to reinforce the material in each chapter. Begin by learning about cross-platform game programming, writing code that will run under Windows®, Linux®, Mac OS® X, and many other systems. Enhance your skills by working through the core features of the Allegro game library and writing code to load images, manipulate sprites, scroll the background, use double-buffering, read a joystick, detect collisions, and implement other core features of any game. You will gain experience by creating a complete game and adding features to it in each new chapter. You will also learn how to write a scrolling platform game and a vertical shooter.

Product Details

  • Paperback: 752 pages
  • Publisher: Course Technology PTR; 2 edition (June 17, 2004)
  • Language: English
  • ISBN-10: 1592003834
  • ISBN-13: 978-1592003839
  • Product Dimensions: 9.1 x 7.4 x 2.1 inches
  • Shipping Weight: 3.2 pounds
  • Average Customer Review: 3.5 out of 5 stars  See all reviews (46 customer reviews)
  • Amazon.com Sales Rank: #477,196 in Books (See Bestsellers in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Tags Customers Associate with This Product

 (What's this?)
Click on a tag to find related items, discussions, and people.
 

Your tags: Add your first tag
 

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

 

Customer Reviews

46 Reviews
5 star:
 (16)
4 star:
 (8)
3 star:
 (9)
2 star:
 (7)
1 star:
 (6)
 
 
 
 
 
Average Customer Review
3.5 out of 5 stars (46 customer reviews)
 
 
 
 
Share your thoughts with other customers:
Most Helpful Customer Reviews

 
30 of 35 people found the following review helpful:
5.0 out of 5 stars A note from the author, January 12, 2005
Please note: Amazon combined all of the reviews from the 1st and 2nd editions of this book when the 1st edition went out of print. These are essentially two totally different books. The first was a tutorial on C++ and DirectX. The second covers C and Allegro and game development.

This book is the second edition to the bestselling Game Programming All In One. This new second edition is a complete rewrite of Game Programming All In One with a completely new direction, new goals, new assumptions, and new development tools. All In One 2E has done away with the C++ tutorials, Windows programming tutorials, and DirectX tutorials. In fact, this book does not cover Windows or DirectX at all. Instead this book focuses on game programming using a cross-platform game library called Allegro. This library is extremely powerful and versatile. Allegro opens up a world of possibilities that are ignored when focusing specifically on Windows and DirectX. A full quarter of the first edition was devoted to a C++ language primer, while another fourth of the book focused on Windows and DirectX basics. I decided that for this second edition we did not need to cover those subjects again, and thus this book uses the standard C language and the sample programs will compile on multiple platforms.

The Windows version of Allegro uses DirectX, as a matter of fact, but it is completely abstracted and hidden inside the internals of the Allegro Game Library. What we are provided instead is a basic C program that includes the Allegro library and is capable of running in fullscreen DirectDraw mode using any supported resolution and color depth.

Additionally, Allegro provides a uniform interface for sound effects, music, device input, which are implemented on the Windows platform with DirectSound, DirectMusic, and DirectInput. Specifically, Allegro supports DirectX 8. Imagine writing a high-speed arcade game using DirectX, and then being able to recompile that program (without changing a single line of code!) under Linux, Mac, Solaris, FreeBSD, Irix, and other operating systems? Allegro is a cross-platform game library that will double or triple the user base for your games with the help of this book.

This book will teach you to write complete games that will run on just about any operating system. Specifically, we focus on three compilers: Visual C++, Dev-C++, and KDevelop, and the sample programs will be written using both Windows and Linux, with screenshots taken from both operating systems.

You will have the opportunity to use your favorite development tool in all likelihood since Allegro supports several C compilers, including Borland C++, Borland C++Builder, Apple Development Tools 2002, and several other compilers on various platforms.

The target audience are beginning to intermediate programmers who already have some experience with C or C++, or someone who wants to learn to develop with a C or C++ compiler, and will use this book as an entry-level guide. The material is not for someone new to programming, but just to game programming. I must assume the reader has already learned C or C++, because there is too much to cover in the game libraries, interfaces, and so on, to focus on the basic syntax of the actual language. It was difficult enough to support three different compilers and integrated development environments without also explaining every line of code. Intermediate-level experience is assumed, while extreme beginners will definitely struggle.

This book is not extremely advanced--the source code is straightforward, with no difficult libraries to learn, per se, but I do not explain every detail. I do cover the entire function library built into Allegro, since that is the focus of this book, but do not explain any standard C functions. The goal is to get up and running as quickly as possible with some game code! In fact, you will be writing your first graphics programs in chapter 3, and your first game in chapter 4. You DO need a basic understanding of C or you will quickly get lost.

Someone who has done some programming in Visual C++, CodeWarrior, Watcom C, Borland C++, GNU C++, or even Java or C# will understand the programs in this book. Those with little or no coding experience will benefit from a C primer before delving into these chapters. The emphasis of this book is on a cross-platform, open-source compiler, integrated development environment, and game library. The reader will not need to learn Windows or DirectX programming, and these subjects are not covered.

The primary IDE is an open-source (freeware) program called Dev-C++, and is included on the CD-ROM. The game library is called Allegro; it is also freeware, open-source, and included on CD-ROM that accompanies this book. The reader has all the free tools needed to run the programs in the book. This book is highly accessible to all C programmers, regardless of their platform of choice.

This book's source code and sample programs will run, without modification, on all of the following systems: Windows 9x/2k/ME/XP/2003, Apple MacOS X, Linux (any version), BeOS, QNX, Unix (Irix, Solaris, Darwin, FreeBSD), and believe it or not, these programs will also run under MS-DOS (DJGPP, Watcom C). So, that is just about every computer system out there.

At the same time, the Windows version supports DirectX, so it is future-proof as well. The programs will run in fullscreen or windowed mode with full support for the latest video cards. As you can see from the table of contents below, this is a very 2D-oriented book, with many chapters devoted to sprite programming. There is no coverage of 3D--none. But these chapters are perhaps some of the best you will find on the subject of 2D sprite programming and background scrolling anywhere.

Part I: Introduction To Cross-Platform Game Programming
1: Demystifying Game Development
2: Getting Started with Dev-C++ and Allegro
3: Basic 2D Graphics Programming with Allegro
4: Writing Your First Allegro Game
5: Programming The Keyboard, Mouse, and Joystick

Part II: 2D Game Theory, Design, and Programming
6: Introduction To Game Design
7: Basic Bitmap Handling and Blitting
8: Basic Sprite Programming: Drawing Scaled, Flipped, Rotated, Pivoted, and Translucent Sprites
9: Advanced Sprite Programming: Compiled Sprites, Collision Detection, and Animation
10: Programming Tile-Based Backgrounds with Scrolling
11: Timers, Interrupt Handlers, and Multi-threading
12: Creating A Game World: Editing Tiles and Levels
13: Vertical Scrolling "Arcade Games"
14: Horizontal Scrolling "Platform Games"

Part III: Taking It To The Next Level
15: Mastering The Audible Realm: Allegro's Sound Support
16: Using Data Files To Store Game Resources
17: Playing FLIC Movies
18: Introduction to Artificial Intelligence
19: The Mathematical Side of Games
21: Publishing Your Game

Part IV: Appendices
Appendix A: Chapter Quiz Answers
Appendix B: Useful Tables
Appendix C: Numbering Systems: Binary and Hexadecimal
Appendix D: Recommended Books and Web Sites
Appendix E: Configuring Allegro for Visual C++ and Other Compilers
Appendix F: Compiling The Allegro Source Code
Appendix G: Using the CD-ROM

Help other customers find the most helpful reviews  
Was this review helpful to you? Yes No


 
7 of 7 people found the following review helpful:
5.0 out of 5 stars Covers 2D programming with Allegro library, July 2, 2004
I admit I am excited about this book, which covers game programming with the open source, multi-platform allegro library. Much easier to use than Direct X, Allegro and this book get you up and going pretty quick. Topics include sprites, sound and AI for your games. The code examples are written in C (not C++), and a copy of Dev-C++ and Allegro come on the enclosed CD.

My only complaint is no coverage of 1st person 3D topics, but as the author states, the reason is 3D engines and games built on that engine are difficult for a single programmer to create alone in a reasonable amount of time, if at all. The focus of the book is on a single developer creating quality 2D shareware and freeware games with good game play. Emphasis on incorporating other freely available tools and libraries to help an individual programmer or small team reduce the amount of coding and resources and to get the title completed is another theme, and he discusses the issues surrounding getting the game published in a small chapter at the end.
Help other customers find the most helpful reviews  
Was this review helpful to you? Yes No


 
26 of 33 people found the following review helpful:
4.0 out of 5 stars Overall a good book with some mistakes, March 16, 2002
This book will be a good introduction for anyone who is interested in programming computer games and knows very basic C++. It does give you a tutorial on C++, but there are a fair amount of errors that would bewilder a complete newbie. One of the things I noticed right away was that many of the screenshots are in the wrong spots, and many times in different sections! This would definetely have confused me had I not had basic skills in C++.

I also thought that it was strange that the author teaches about Direct3D BEFORE he teaches about DirectX. Another issue is that some of the programs on the CD from later chapters will not run, but rather will give you a run-time error. A few programs have syntax issues as well.

The content of the book and the teaching style makes up for these errors however. The author writes with a style that explains the details, not giving you the "You don't need to know how it works, just that it does" line LaMothe is famous for. I found the "pointers" section to be very well-explained and it gave examples of situations where they would be useful, which is something I have not seen in other C++ books. The book also gives you complete game examples throughout the book, utilizing many of the covered topics, which I found to be a plus compared to other books which teach you the techniques, but leave you clueless as how to use them. The author also lists his e-mail address and invites you to contact him with any questions you may have, which I thought was a nice gesture.

Overall, I would recommend that you get this book if you have competent enough computer skills to overlook these basic problems. I would also recommend that you have BASIC C++ skills, or that you at least be able to recognize where there is a mistake and be able to work through it.

Help other customers find the most helpful reviews  
Was this review helpful to you? Yes No

Share your thoughts with other customers: Create your own review
 
 
 
Most Recent Customer Reviews

5.0 out of 5 stars 2nd Edition by Mr. Harbour
Being one of the very few books on Allegro game programming, this book is excellent. Mr. Harbour walks you through Allegro using the C programming language. Read more
Published 1 month ago by Mark Griffeth

3.0 out of 5 stars Hard to get into
I made the mistake of getting this book with no experience, It has alot of fluff(I hate fluff) and not enough work on telling you how to code.
Published 9 months ago by Leigh Zipf

5.0 out of 5 stars An excelent learning tool.
Harbour presents everything in a simple manner with very little presumptions. He provides useful information on entering the game industry and making money from your games... Read more
Published on February 26, 2007 by Nimnengil

4.0 out of 5 stars a pretty good book
I think this is a great starting point for someone who already knows the basics of c++ and wants to learn the allegro library. Read more
Published on February 15, 2007 by Georgia G. Brown

3.0 out of 5 stars I would advise against it
I first would like to say that this book is most definitely not for people with no programming experience (but you could have figured that out from the rest of the reviews)... Read more
Published on February 12, 2007 by C. Feda

3.0 out of 5 stars software did not work
first, the book was great . organized in text book fashion it would be great for a high school level course on game programming. Well organized and an easy read. Read more
Published on January 7, 2007 by Harry Silva

5.0 out of 5 stars Very informative
I bought this for my 15 year old son. He says it is very informative.
Published on January 5, 2007 by K. Whicheloe

4.0 out of 5 stars Yeah I'm a kid, and I figured it out.
Yes, this is a kid reveiw, and I figured it out. Acually I'm 13, but that is about the minimum age for intelect that you would need to get this book. Read more
Published on June 26, 2006

5.0 out of 5 stars 2CD Edition--Not the 1st- This one is great
The first comment in the above "Most Helpful Comments" section about this book is misleading. Notice that guy is talking about the FIRST edition of this book (check the date of... Read more
Published on May 18, 2006 by Joshua Suarez

3.0 out of 5 stars Games, Yes... a good way to start?, No
well i bought this book togther with the "Game Programming C++ For Beginners", before that i already had some knowlegde in C programming... Read more
Published on May 4, 2006 by Guy Zaidanband

Only search this product's reviews



Customer Discussions

This product's forum
Discussion Replies Latest Post
No discussions yet

Ask questions, Share opinions, Gain insight
Start a new discussion
Topic:
First post:
Prompts for sign-in
 


Active discussions in related forums
Search Customer Discussions
Search all Amazon discussions
   



So You'd Like to...


Create a guide


Look for Similar Items by Category


Look for Similar Items by Subject

 

Feedback

If you need help or have a question for Customer Service, contact us.
 Would you like to update product info or give feedback on images?
Is there any other feedback you would like to provide?

Your comments can help make our site better for everyone.



Your Recent History

 (What's this?)

After viewing product detail pages or search results, look here to find an easy way to navigate back to pages you are interested in.