|
|||||||||||||||||||||||||||||||||||
|
12 Reviews
|
Average Customer Review
Share your thoughts with other customers
Create your own review
|
|
Most Helpful First | Newest First
|
|
16 of 16 people found the following review helpful:
5.0 out of 5 stars
This is a great beginner's book,
This review is from: Beginning 3D Game Programming (Paperback)
Let me begin by saying that I went through no less than five DirectX game programming books before checking out Miller's book on a friend's recommendation. Most of those other books (some of them decent) used C++ as their code base - as you'd expect. I spent my entire college career coding C++, so I was no stranger to the language. But I found most of those books difficult to crack. DirectX 3D programming in C++ is just not intuitive for beginners.
Enter Tom Miller's book. You should know I had very little experience programming in C# before I got this book. Now I'm a total convert. Middleware aside, I just don't think there's a faster, more intuitive way to create your own 3D games than using Managed DirectX. I found Miller's book to be well written, clear, and having a reasonable learning curve. He starts you out slowly, and adds complexity with each game project. Add in the ease of reading and programming in C#, along with the Managed DirectX sample framework, and you're starting out ahead. That is not to say that Miller's book is perfect. But I found most of the faults lie with Managed DirectX itself (although I suppose Miller should share some of the blame since he's the one creating it :) Because this is "new" technology, the MDX API keeps changing. Your code may not work from one SDK update to the next. Hopefully most of this will settle down with the release of Visual Studio .NET 2005. If you're having trouble getting the source code on the CD to work, don't fret - it works. But depending on the version of the SDK you have installed, you may have to do some minor massaging of his code, specifically to his main game object. If you're annoyed by this, I don't know what to tell you. A quick Google search and some source code cut-and-paste had his code compiling with minimal effort. And this was when I knew NOTHING about C#, DirectX, the sample framework, or Miller's code. I was able to create a fairly complex 3D puzzle game in about 4 months. Honestly, it turned out great and exceeded my expectations. And I based my original code on Miller's simplest game example. Granted by the end of development, there was almost nothing left of his original code. But that's what was so great about it - I could make some minor changes, compile, see what happened. Add a new object, compile, see what happened. I got instant feedback through the entire development process, and that made a HUGE difference for me. I never felt like I was programming into a black hole, hoping I'd get workable code at the end. Again, this book (or Managed DirectX, for that matter) is not perfect. You will have to put in a little effort. But honestly, if you're not willing to put in the effort, why would you be interested in game programming? It's a labor of love, with an emphasis on labor. When it comes right down to it, I just don't think you can do better than this book if you have some programming experience and you'd like to try your hand at creating a 3D game.
21 of 23 people found the following review helpful:
4.0 out of 5 stars
very informative despite all of the errors,
By
This review is from: Beginning 3D Game Programming (Paperback)
This is one of the only books in print which covers Managed DirectX game programming. Many of the other books on DirectX 9 still use C++, leaving those of us who prefer Managed code in the dark. Since Tom Miller is the author of the API, he is one of the best people to introduce you to this material. This book does have quite a few errors, but I still think it's one of the best books around. Despite all of the errata, I'm giving this book four stars because it provides a very comprehensive intro to DirectX 9 and 3D game programming.
If you don't have a good understanding of 3D math, I suggest looking for an additional textbook which covers matrices more comprehensively. Fortunately, DirectX reduces some very ugly matrix multiplication to look like simple math problems and I could see some people using DirectX without knowing much about trigonometry or matrix math. This book also gave me several realizations: 1) I need a computer and graphics card with Pixel Shader 2.0. 2) I need to become a better artist so I can create my own meshes and skins or I have to pay someone else to be the artist. In the beginning of the book, several programs are mentioned for creating meshes. In additional to those professional (and therefore expensive) packages, I thought I'd mention a program called MilkShape which only costs $25 to register and does a pretty good job of creating meshes. It exports into many formats, including DirectX. Unlike Tom's previous book, the code in this book relies on the Sample Framework which ships with this version of DirectX. It does seem to remove some code requirements, but I think it also weighs down the code unnecessarily. I think in some ways it might have been easier to understand the code without the sample framework. The book isn't really a sequel to Tom's other book, but it's more like a repackaging of ideas with a focus on game programming. The code does compile, but you need to make sure that you have the references to the October 2004 release (v9.02.3900). If you have multiple versions of DirectX, the framework is going to default to the newest version. I do have to say that I felt the frustration of the previous poster who found the book to be full of errors. There are many incorrect diagrams, many instances of incorrect code, and even a small error in the section on matrix multiplication (a second edition is definitely needed). Fortunately the source code is correct, so you can always look at the code to find the necessary corrections. The book also claims that VB.Net code is provided in the source code, but I could not find it anywhere (it's all in C#). I'm not sure why the code was never translated, but perhaps it was the unsafe code (some of which could have been avoided using Marshal.SizeOf) or perhaps it's because there are many cases where a variable has the same name as a property but with a different case. In the first project, there is at least one critical line of code that never shows up in the book but is in the source code. Most of the errors relate to references to "device" with need to be replaced with either "e.Device" or "sampleFramework.Device". In the second project, the author leaves you on your own in the middle of the project to figure out the UI design. Normally I wouldn't have a problem with that, but the UI actually uses some classes which aren't discussed until the ensuing chapters. It would be more helpful if the source code provided an incremental copy of the code for each chapter which shows only what's been done up to that point (rather then just the final result). It would also help if at the end of each chapter you could have a definitive result to compile and display (if only to tell that you haven't missed something). As an aside, the collision detection routine is also less than perfect, since you can make the tank go through some walls as well as off the playing field. The third project is not a complete game. It is simply a program that's been started and left for the user to finish (so I take issue with the claim on the back of the book that there are three complete games). The source code is no more complete than what's in the book (whereas the first two games are complete in the source code). But it does teach you some really cool stuff about the programmable pipeline, and if I had a card with pixel shader 2.0 I might be able to view it faster than 0.5 frames per second. I think it would be helpful if the errata were published on line, as well as the source code (for a while I had lost the source code for Tom's previous book and couldn't find it anywhere on line). Tom's blog has some discussions, but I couldn't find errata or source code (nor could I find it on www.samspublishing.com). I've tried sending some comments to him on his blog, but I haven't heard back. To sum it up, this is a great book despite all of the errors. Kudos to Tom for helping bring DirectX to those of use who want to write games using managed code.
14 of 15 people found the following review helpful:
5.0 out of 5 stars
Excellent book covering many topics (see below),
By Phoenixwcu (Winston, NC) - See all my reviews
This review is from: Beginning 3D Game Programming (Paperback)
C# and Managed DX9 are arguably the easiest way to write understandable 3-D code. You don't have to mess with all of the convoluted C++ jargon and strange uses of variables that are initialized after passing them to methods.
I cannot stress enough how useful this book has been in the current game I am working on (a 3-D RTS). The chapters on User Interface and how to write a custom GUI have been particularly useful with where i'm at now. This book would have also saved me tons of time earlier in the development process as he goes over such simple things as handling device lost states (such as when the user minimizes your game) and how to display an accurate framerate (I wasted tons of time on that last year!). Tom also shows you how to write networking code to make a multiplayer game as well as how to do things such as have a nice skybox, multiple levels, loading screens, player selection screens, font output, and even the use of Shaders (to make objects shiny). He also shows how to do mesh animation using mesh hierarchies - which is very important if you want your model to be able to have different moving parts that animate (such as for walking). This book covers a wide breadth of topics that any new programmer to game design will find useful. If you pair it up with his Managed DX9 Kickstart book (which you should read first probably), it will take you to the point where you can write your own framework for just about any game you want to write. It does not cover really advanced topics such as pathfinding algorithms and fancy AI code, but it will give you a broad overview and allow you to write several fun games (I'm especially fond of Blockers).
17 of 21 people found the following review helpful:
5.0 out of 5 stars
Excellent and well-written book,
By
Amazon Verified Purchase(What's this?)
This review is from: Beginning 3D Game Programming (Paperback)
Tom Miller has succeeded once again with writing an excellent book that assists those of us who are using Managed DirectX and C# instead of the more typical C++ with Un-managed interfaces.
This book is fairly easy for the beginner, but does cover other topics such as using DX9's custom interfaces to make GUIs for your games. This has been very helpful with my project that I started after reading Tom Miller's first book (Managed DX9 KickStart), which is also an excellent book for beginning 3-D Game programmers. The source code included is well written and the author is responsive to questions on his blog at: http://blogs.msdn.com/tmiller/
2.0 out of 5 stars
an ERROR on chapter1,
By
This review is from: Beginning 3D Game Programming (Paperback)
i have to say, that for someone who wants to use C# and directX this book is a one stop shop, i think that the general idea of this book totally hit the right point,
yet, there are a lot a lot, of code errors, in the printed text, and when you get an error on the introduction chapter, (the "device" word), you may question, how seriously did these people take them selves, and, when you do not include an Appendix on how to install the SDK's... then with all respect, you cant say this is a book for beginners, if i was a beginner, i would probably leave the book, around chapter1 with the "device" error, and the assmupsetions of a working sdk. the book is very good, but everything around it is very very bad.
5 of 8 people found the following review helpful:
1.0 out of 5 stars
"Beginning" 3D games programming......?,
By disgruntled-IT "DIT" (Newcastle,UK) - See all my reviews
This review is from: Beginning 3D Game Programming (Paperback)
Personally none too impressed with this effort. Tom Miller obviously has the ability to create 3D games, but his attempt at allowing the book buying public the chance to learn some of his skills didn't help me a bit!
Explanations were introduced at a far higher level than I would have liked, and the learning curve seemed to go from 0-200 mph within around 5-6 pages. Examples didn't work, and I actually had to scour the internet for solutions from other readers, in order to progress with the book!.... Save your money!!!!!!
4 of 7 people found the following review helpful:
1.0 out of 5 stars
Hands-on books require hands-on review prior to publication,
By
This review is from: Beginning 3D Game Programming (Paperback)
I see that some readers had good results from this book while others were frustrated. I'm afraid I'm in the latter category. Being new to the whole .NET world, I lack the experience to fill in the blanks regarding details the author omits. I have been unable to see any of the sample meshes, or to get the compiler to locate the DirectX classes. Based on other reviewers' comments, it's clear that these things are possible, but one cannot achieve them by following the instructions in the book.
I don't question the author's qualifications. I think the difficulty lies with the publisher. For hands-on tutorial material, especially when it is aimed at beginners, it is important to do a real hands-on review prior to publication. It isn't sufficient to edit the text for grammatical errors and leave it at that. Had the publisher actually tried to use the book, they would have encountered the same problems as I and others have encountered within the first 15 minutes. It is not acceptable to approve tutorial material for publication unless and until it has been verified accurate and usable by the intended audience. I will be very cautious about purchasing books from Sams Publishing henceforth.
0 of 1 people found the following review helpful:
3.0 out of 5 stars
Book is chock full of errors,
This review is from: Beginning 3D Game Programming (Paperback)
This book is a decent learning tool, especially if you make sure to use the included CD. However, without the CD, you would find yourself completely lost, because the code written in the book is chock full of errors. It's almost as if nobody ever bothered to actually read the book prior to publication. The code on the CD compiles just fine, though, so if you want to learn from this book, you just have to double-check all of the code against what's on the CD.
0 of 1 people found the following review helpful:
3.0 out of 5 stars
Would be 5 stars but marred by errors,
Amazon Verified Purchase(What's this?)
This review is from: Beginning 3D Game Programming (Paperback)
I cannot proceed because of the errors and there is no place to go to get answers. The author needs to offer tech support before I can recommend his book. Except for the errors, I find the book to be easy to follow and I think the examples of 3D games are relevant, understandable, and interesting. The source code and DirectX Managed Code would make it easy to quickly get something running if it weren't for the above mentioned errors. It would have been just what I need for my plans to teach 3D Game Animation to Middle School students. I want them to have working models that they can tweak. A spinning teapot is an excellent place for them to start. The Blockers game is a good next step. The Tank will appeal to many students. The explanation of multi-player games is essential to my curruiculum. A word of warning - Visual Studio is required, don't try it without.
7 of 15 people found the following review helpful:
1.0 out of 5 stars
A waste of the paper it is printed on,
By Daz Moore "Daz" (Manchester, UK) - See all my reviews
This review is from: Beginning 3D Game Programming (Paperback)
I was expect high standards from this book given that is was from Sams Publishing, but it looks like no one proof read this book. There are missing or incorrect images throughout this book. When pointing this out to Sams Publishing, they fobbed me off telling me that they would get in touch with the author to get him to send the missing or incorrect pictures. I am still waiting 2 months later. I would say ignore this book, unless it is second edition. I just find it would be a good book, if someone had check it out first. Nevermind, try again. :(
|
|
Most Helpful First | Newest First
|
|
Beginning 3D Game Programming by Tom Miller (Paperback - December 13, 2004)
Used & New from: $0.38
| ||