<< 1 >>
Rating:  Summary: A classic! Review: First off, this book is VERY well written and easy to follow. It is one of the only game programming books that I actually had a blast reading. What really strikes me about this book is that it is the only one (that I know of) that concretely discuses cross-platform game programming with Allegro, a library more powerful and easier to use than DirectX. It's almost hilarious how fast Harbor gets into the 'good stuff' without losing the reader.My only question is, why hasn't someone written a book like this before???
Rating:  Summary: Covers 2D programming with Allegro library Review: 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, 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 maybe in another book? Please ?
Rating:  Summary: Great book for beginners Review: I been searching for a book like this ever since i started learning how to do C++. My goal is to create a really fun text adventure and all the other books i bought were good for learning the basics but this book had exactly what i needed. here's a short list of my pro's and con's.
Pros:
- easy playback for .wav files
- easy function to display a .bmp picture
- tells me how to insert text in any graphics mode to any part of the screen.
- book is based mainly in use with DEV-C++
- shows easy way to make side-scrolling games and animate sprites.
- easy way to do collision detection.
- easy way of stretching your animations giving it a 3d effect based on distance.
- you can really make the old Doom from scratch with this book.
- screenshots made easy.
- all the stuff is royalty free.
- no major header writing headaches when playing with the graphics and sound.
Cons:
- I couldn't find anything on how to store data in a separate file to be read from, like a database of weapon names, item names and monster stats to be read from a file to be used in the main program.
- couldn't find any easy way of making words scroll upwards for my text adventure game. I may need to create a routine for that. luckily this book shows even how to make screenshots really easy and i can just use that principal to make it work.
Summary:
I highly recommend this book to any newbie game developer. even experienced developer will find this book a great asset.
Rating:  Summary: So much to learn, and so little of it in this book Review: I find myself nearly reluctant to review this book with such a low score, however I cannot justify anything higher.
What this book does well. It gives a very good overview of the Allegro freeware game library. It will show you how to use other freeware tools. It will teach you about sprite manipulation within the allegro library and with a couple of more universal concepts.
Perhaps most importantly it gives you an idea of how to go about building a game with a complete game library. Replace the "Allegro" references and function calls with the appropriate items from whichever library you are using.
All the examples are programmed in C and will generally be easy to comprehend for even a mostly novice programmer. There are a few exceptions where he uses unusual commands (such as volatile or LOCK) but that is very rare.
The Allegro library does seem very robust, although getting it setup in any environment beyond the Dev-C++ freeware/opensource IDE will challenge most normal people and the book, despite devoting a large number of pages to the process, is very little help.
This is all well and good if you want to use Allegro and the various freeware/open source tools for your your game and you don't mind mindless typing in code that the author will provide no indepth discussion on.
"Type in this collision code for collision" is about the best you can expect.
If you are looking for something beyond a - not terribly detailed - Allegro library reference, buy another book. This book does not go into any depth or questioning of what you want to know if you wanted to really grok what it means to create an effective game algorithem or foundation system.
The author also barely explains the calls being made to the library. He barely explains what the purpose of somethings are. For example I read the couple sentences he used to explain doublebuffering several times but I still don't really understand it beyond "Well he said its a good thing so I guess I should do it."
This book provides very little information behind the hows and whys of game programming. The considerations and the algorithems, and thats what I was hoping to find in this book.
For instance: I was looking for a book that tells me the hows and whys and some examples of when to utilize what types of AI, maybe with a pointer to some helpful tools.
I wanted a book to help explain collision detection on a high level, then maybe drill into functions and code that would demonstrate the pro's and con's of various implementations.
Perhaps its my fault for expecting some intellegent conversation about game development out of a book called "Game Programming All in One".
However at some point the author MUST have asked himself "I need to create a collision system for the tank war example, what questions need answers to do this and how do I programatically construct it?"
Why that thinking process wasn't included in what is supposed to be a fairly comprehensive book baffles me. I would find that far more valuable than the "Type this in understand later (if ever)" system the author utilized.
Rating:  Summary: Well worth the time and cost Review: The author of this book, Jonathan Harbour, is a versitle and flexible writer and programmer. His style is so easy to connect with that you will enjoy every moment you spend reading this book. Though C knowledge is required to get you started, he does better than teaching the language and explains the segments of knowledge you will need to create your own 2D based games.
This book is my second favorite book. (first one being Code Complete)
Rating:  Summary: A note from the author Review: 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
<< 1 >>
|