Compras Nikon Bluetooth |
Beware this book is thick and dense, and will take time to absorb but you cannot help it if you want to learn something interesting and enjoyable about game programming.
The second edition is coming out, probably updated to the latest
release of DirectX, so watch out for it!
I just want to stress something that the other reviewers haven't mentioned - this book is *not* for experienced programmers who are working seriously on their own rpg already! It cannot be used as a reference on how to implement those things you haven't done yet because the book tries to cover so much that it only presents very specific solutions for all the topics. There is only *one* type of combat covered for example, and that's a FF7 style turn-based combat. If you're planning for something else this book will be useless for you on this subject. And the same can be said about all the other topics: item management, engine design, level management, automapping, AI etc. Each topic is quickly breezed over and then a specific solution is presented. Take it or leave it. In my case I didn't take any of them...
So in summary: Might be interesting for newbie rpg programmers who wants a guide through an example rpg. But any experienced programmer should leave this book alone!
Now forward to about 2 months ago, I started to actually code up some of this stuff. I began coding some DirectX graphics. Wow, this was a very painful experience. The first thing I noticed was that the book's code was slightly different from the source code on the cd. The problem I found with this is that the author tells you in the book to use this code, but when you check the actual source code it's different. However, I'm not blaming the author here since he tells you in the book that it is a whirlwind tour of directx. So if you plan on picking this book up to learn directx, expect a lot of pain. You will have to spend lots of time going through the directx documentation learning about materials and other graphics concepts. The book simply doesn't do a good enough job on it. This book also tries to teach you how to use meshes and how to animate them in about 20 pages. Let me tell you, you will not learn how to animate meshes in 20 pages. The author tells you that you should look in his source code that he's commented very well. I did and I'll tell you what I found. I found that all the code he wrote to wrap up the directx api was equal to the amount of code he wrote to make the meshes work. To make the meshes work is about 3000+ lines of code. Plowing through this is ridiculous (now there's a book about meshes he's written). I think the original intent of the author was to have you use his code and for you not to program your own, but my objection to this is that you have to understand the theory behind it before you can even use the code. I know that I didn't know enough theory from his book to make meshes work. I'm sorry this is a giant rant, but this is the lessons I want to pass this on to you:
-Have the hardcore nature to read through lots and lots of code.
-Learn DirectX before you use this book since it is the foundation for this book.
-Know data structures such as linked lists since the author uses them frequently.
-Know Object Oriented Programming since all he uses is classes.
-Have a lot of time since this book will take years to master.
-Have lot of money since you will have to buy other books to supplement this.
Something I feel that is really misleading about this book is the user level beginner/intermediate. This is not a beginner book! As a computer science major soon to be a senior in college I still can't get through this book since I don't know enough, and I'm an A-B student.
Well, one of these days hopefully in about a year or so I will finally get to the actual rpg programming aspect of this book.
I agree with what the other reviewers said. This book moves FAST. What other books in the series does in 5 paragraphs this book does in about two sentences.
What I didn't like was the fact that it really glossed over some of the advanced DirectX graphics stuff, like multitexturing. That shouldn't be too much of a problem though if you pick up another DirectX book, but it would have been nice had the author included it here.
If all you want to do is to make simple RPGs this book comes very close to being the all-in-one that you are looking for. However, game engines are rarely just bunch of written functions. If you truly want to get into heavy RPG programming, you'll need to learn Windows Programming to develop your own level design tools.
Each segment has enough detail for light work and simple projects, but if you want to get more in depth there are entire books written on those topics, and I highly recommend you get them, as well as OpenGL and OpenAL books.
After finishing this book, you'll gain the knowledge of RPG development, but to seriously use it for profit, you'll need the more advanced books that I hinted above.
If your trying to choose either an opengl or directx book, I strongly suggest that you buy this book and learn directx. I have been using opengl for a short while, mainly because it seemed easyer to use (even though I would have rather learned directx). That's not the case with this book. The author explains the material in a way that makes directx easyer to understand. Even some opengl issues that were unclear to me have been cleared up with this book.
Overall, the author does an incredible job of explaining the material. I am 250 pages through the book and understand every bit of code. I don't think I've ever been happier with a programming book. I can't put it down.
The first thing you'll need to do upon buying his book is install the DirectX SDK off the CD. I should mention that the DirectX version is 8.0, and it may poop out half-way through the installation. If it doesn't, don't fret, you should be installing DirectX 8.1 from Microsoft's site anyway. Then, download the DX 8.1 updates from his less-than-impressive web site. Sound like a hassle yet? Read on.
As others have mentioned, the first few chapters are a complete waste, as Jim hops on his creative high-horse and gives tips on how to make a plot -- imagine this -- multi-layered and interesting. Gee. Thanks, Jim.
Then he goes into a superficial overview of C++. Why, I don't know. If you're a beginner at C++, his whirlwind tour isn't going to help you make sense of anything. If you're familiar with the language, he's only stating the obvious. But the part I found to be unbelievable (but sadly true) is that he spends a good deal of time talking about how GREAT classes are, then doesn't even bother to use them for the first 10 chapters of examples. He uses structures in his examples, contradicting his own advice, then applies pressure in Chapter 10 to use his GameCore for all your programming efforts.
He weaves snippets of code between concept overviews, which always end in him saying, "See, it's that simple." But very seldom does his code work as printed. You can expect your compiler to maul you with error messages when running his code, but after weeding out his sloppy mistakes (type mismatches, lack of header/library references, etc.), you may actually get a working program.
This book is the perfect example of an author undergoing an identity crisis: meaning, he couldn't quite identify his audience. Perhaps it's not all Adams' fault... the book should clearly identify the skill level for which it is intended. Regardless, there is no excuse for the number of errors, oversights, and assumptions made in this book -- nobody should have to read someone's work and discern what's accurate and what isn't.
Very nice intro to C++.
I am looking forward to the new book by Jim Adams.
Here is the TOC:
Chapter 1 - A World of Role-Playing
Chapter 2 - Exploring RPG Design Elements
Chapter 3 - Story-Writing Essentials
Chapter 4 - Starting with C++
Chapter 5 - Programming with Windows and Application Basics
Chapter 6 - Drawing with DirectX Graphics
Chapter 7 - Interacting with DirectInput
Chapter 8 - Playing Sound with DirectX Audio
Chapter 9 - Networking with DirectPlay
Chapter 10 - Creating the Game Core
Chapter 11 - Using 2-D Graphics
Chapter 12 - Creating 3-D Graphics Engines
Chapter 13 - Mixing 2-D and 3-D Graphics Engines
Chapter 14 - Implementing Scripts
Chapter 15 - Defining and Using Objects
Chapter 16 - Controlling Players and Characters
Chapter 17 - Working with Maps and Levels
Chapter 18 - Creating Combat Sequences
Chapter 19 - Getting Online with Multiplayer Gaming
Chapter 20 - Putting Together a Full Game
Chapter 21 - Marketing and Publishing your Game
I will admit, I will probably never read the entire book. It covers the standard n00b stuff that no one wants anymore. What it DOES provide is a valuable reference book and samples to look at when I run into a problem. It covers pretty much all aspects of game programming, and they can be applied easily towards other types of games. (I am actually using certain things from it for my FPS).
So here's the lowdown: Great book, some useless stuff, but there actually is USEFUL stuff. I'd buy it if I were you. Advanced topics are there, and the author does a good job with them. The other books you should look into are Multiplayer Game Programming (by Todd Barron), which is not bad, but could be more advanced, and I hear Isometric Game Programming (by Ernest Pazera) is good, and what I have seen seems good.
All I can say is, of all of the game programming books i've seen, this one is #1! All of the samples are excellent, and work. The final game, The Tower, is impressive for a game created for a book, although i'm sure expert programmers could improve it quite a bit.
The author does go into some basic ideas at the front of the book, but I don't feel the technical material covered is enough to completely educate a pure novice and is too simple for an intermediate programmer. Although ineffective, I don't subtract from my review ratings for additional information.
I felt the author's technique was pretty well thought in this regard however. Someone reading the book finds the foothold where they first understand everything easily. This allows the author and reader to find the common stride needed for the reader to move forward.
There is some issues with the book code that had to be solved, but the author has a website with all the changes. The big problem is more Microsoft's fault rather than the author's. The book was released with DirectX 8.0 and the MS team decided to change a few things with DirectX 8.1. Not to worry, the author has updated his entire book code with an easily downloadable patch.
In Summary,
Best book I've read so far. From Graphics, Sound, Networking, Input and much more, this monster of a book will make you a better game programmer if the time is spent with it. (Beginner to Intermediate C++ knowledge required. A small trip through the DirectX SDK tutorials a plus.)
First off the book assumes that the reader has a through knowledge of C programming and that you have some experience with coding. And has, like the rest of the series, quite a few pages devoted to C++... (The best thing with this book is you actually make a rpg game following the book and it's practices!)
The first part of the book covers what is role-playing, desiging role-playing games and some basic story-telling. The Jim covers basic programming with C++ as well as some engine architecture that is different from most other books - ex. Tricks from the Windows Game Programming Gurus. It introduces concepts like state managers, process managers and data packages - some great stuff for programming big games. The third part covers basic DirectGraphics concepts ("a whirlwind tour", according to the author). The code does the job really well and the concepts are well-explained.
After that the book covers information about DirectInput and DirectSound, the chapter on DirectInput includes information on programming joysticks, and other information in the book includes: wrappers for Direct3D, DirectSound and DirectInput, and followed by that, octrees and quadtrees, 2d tile engines, mixed 2d/3d engine, collison detection and so on.
The only problem I see is some of the real super newbies will see the book go at a fast rate... It has great explainations but he does move fast. And the author likes to leave out the obvious - so you have to pay attention in the beggining or you'll be turning pages back into the book to see whats up.
Basicaly, pick up this book if you are starting DirectX, pick up the book if you plan on crreating RPG games. The book is great, you'll have a working RPG game after going through the book, you will learn alot about DirectX and storytelling at that! 5 Stars.
...
What an amazing book! I read this book cover to cover over a weekend and am preparing to go through it again at the computer. It answers a lot of questions I've had concerning game development that weren't covered in other books.
Sometimes the author mentions things that there wasn't room for in the book (It is a huge book already), but guess what? It is all in fully commented code on the CD. That is not even mentioning the fact that the author has a web site where he is posting new ideas, updates, and other examples.
This book gives everything the "Programmer" needs to get a solid foundation to an RPG going. This includes developing tools and scripts to assist you in your game development.
I'm giving the book 5 stars because that is what it deserves. The book does include some rudimentary introductions to C++ and Windows programming that could have been left out (or just put on the CD), but that's for me, and I don't take away points for including information. This book is great for people who are having problems with 3D concepts such as Vectors, Matrix Math, Transformation Matrices, etc. This book by far teaches these better than any other source I've found.
Like I said, I can't wait to go through this book again!
The first 4 or 5 chapters are a waste. They cover things like "how to write stories" and basic C++ concepts. These subjects should be in their own book, plus it would take 150+ pages off the size of this monster.
The marketing hype on this book holds true, you can make a full "game" with this one! You still need to put the effort into turning it into a real one, but it's a very good start.
I give it 4 stars because the author's programs all run in a window instead of full-screen. The book should also be around 200 pages shorter.
The tree of research must from time to time be refreshed with the blood
of bean counters.
-- Alan Kay
Intellect annuls Fate.
So far as a man thinks, he is free.
-- Ralph Waldo Emerson