Full description not available
G**Y
Excellent coverage of Direct3D retained mode features
Peter Kovachs book is the current best book for Direct 3D that is or has been published Period. I know, I have them all. If you can program in C at all and any familiarity with the Windows interface, this book can take you from beginner to highly capable Direct3D retained mode programmer.In addition, it covers sufficient advanced concepts and I/O to enable you to construct your own initial 3D game programs.It also has an intro to Direct3D retained mode, but it is not sufficient by itself to qualfy you as a retained or combined mode programmer. It is also out of date now as DirectX 6 and 7 include several enhancements.Sometimes it is necessary to re-read several times and to experiment in order to fully grasp what Peter is teaching you, but Direct3D is a monstrous and powerful beast (why do you think books with impressive titles like "DirectX Complete" skip talking about Direct3D completely) Main reason, D3D has more to it than the entire rest of DirectX put together, and they dont know how to use it either.I'm sure his new book Inside Direct3D will be even better, I have it on preorder.You want to program Direct3D. This book will get you started and give you some good tools to work with.
A**Y
Why wont it compile!
I bought it, and when I compiled the first program I was excited, but then I found some serious typo's that kept me from following his chapters. He refers to some files which just don't even exist on the CD, "makefile" was one such file, and this file was to be used to create all subsequent files in the book. I finally thought I had figured out how to compile his code and then I got linker errors. Maybe there is a library I needed to include or something, but he didn't explain anything about setting up Visual C++. So all in all I never got past chapter 3. Sad but true, I think the author had done a good job, maybe I needed something a bit more fundamental.
Z**R
If you like reading ugly code, this is a great book
Generally when I read reviews on Amazon.com that simply say "This book is horrible, don't waste your money", I tend to ignore them. I find that probably half the people posting the reviews don't know how to program anyway, and so when they see a few lines of code they freak out and automatically decide the book sucks. That's the reason I bought this book, because not many of the reviews actually backed up their complaints with valid arguments. I have a slightly higher opinion of the book than most of the other reviewers, but I still find the book to be fairly bad. Specifically, the author has got to have some of the worst general programming skills I've ever seen. Maybe I'm spoiled because I'm a professional in the games industry, where code is usually very clean, efficient, and professional looking, but the code in this book is just absolute garbage. Every time I look at his code I get sick to my stomach. Some of the stupidest things I've seen in this book include (but are not limited to), the following:1) The use a global "Info" object to describe the state of D3D and the window. Even though it's global, the author uses SetWindowLong() to attach it to the window "so that it's always accessible". I've never seen anything so ridiculous in my life.2) The use of static C functions ALL OVER THE PLACE. Not static class member functions, but plain old static C functions (not that the use of static member functions all over the place would be any better, but I don't think I've ever used a static C function in my life). In fact, the sole PURPOSE of declaring a non-member function static is so that it's not visible from any other file, so that you can use the same function name in other files. I really hope I don't need to explain why that's bad.4) The inconsistency used throughout the book. Sometimes return values are compared to D3DRM_OK, sometimes SUCCEEDED()/FAILED() is used. He may as well not indent his code at all either, because sometimes he indents line and sometimes he doesn't. All in all it's very inconsistent, and I've decided that I absolutely hate looking at his code. If I ever had to work with this guy I'd probably beat him with a 2x4 for making my life hell.5) The way in which he wrote the main windows message loop was probably the dumbest implementation I've seen. It was just downright silly.6) The use of the hPrevInstance parameter to WinMain(). Anybody who's ever done anything for windows knows that this parameter is always NULL under Win32.7) The way the code on the CD is COMPLETELY out of sync with the book. He uses code from the way later chapters very early on, and code from the early chapters later on, while the chapters mention nothing of this code. It's clearly not supposed to be there, and not alot of work was put into making sure the CD was correct.8) The way he wrote his CreateLight() function. Of all the bad programming habits I've found in this book, this one was just flat out absurd, and makes it blatantly obvious that he's never worked on anything high performance. There are 5 types of light, and he wanted to write a generic CreateLight() function that would create any of the 5 types, based on a parameter. So he decides to pass in a *STRING*, which was ASSUMED to be one of the following: "DIRECTIONAL", "SPOT", "POINT", "PARALLELPOINT", or "AMBIENT". Every time I think about this I laugh. I really don't think there's a more inefficient way to do this, especially considering that Direct3D already comes with an enum specifically for specifying the type of light to create.Now that I'm done ranting about this guy's pathetic ability to write C/C++ code, I guess I should say that he does give a fairly good explanation of *SOME* aspect of Direct3D. Not many, but some. As most people have said, most is pulled directly out of the SDK docs, verbatim. Not one changed word. Some of the stuff, however, is actually explained in a mediocre fasion.I'm going to finish reading this book because I've already bought it, but for everybody else who is considering buying it, please don't. There have GOT to be better books out there. I'm actually learning the material because I'm a good enough programmer to where I can figure out how to rework his trash into something neat, clean and efficient, but I would much rather have just purchased a book where it CAME neat, clean, and efficient.
M**)
Reasonable- but incomplete on DrawPrimitive functions
Generally this is a complete, up-to-date book on DirectX v5.0. However probably THE key new feature with this new release of DirectX is the DrawPrimitive functions - a concession by Microsoft to the greater beauty and elegance of OpenGL - this book describes these enlightening eatures in 3 and-a-half pages! Reciprocally the author spends many orders of magnitude more pages descriping execute buffers - this is a bit like writing a book on history spending most of it describing the dark-ages and adding a foot note on the renaissance. In summary - from the 3D end of things this is a good book if you want to descend into the dank, byzantine caverns (and soon to be obsolete(I hope)) underworld of execute buffers.
H**N
Good.....but not interesting....
I bought this book four months ago. However, I have started read five weeks ago. Why?When I read pg. #3 four months ago, I was embarassed. On pg. #50, I saw too many aliens. Finally on pg. #60 I became an dead man. At that time, I was perfactly beginner on computer graphics and Kovach's book looks terrible and like alien. However, now I would like to say "Thank You" to Kovach for writing such a wonderful book.After reading an elementary stuff on graphical mathmatics, DirectDraw and so on, I can understand what the alien is and how it works.It is the point what I want to say that this book is good for intermediate reader who are familiar with WIn32 programming and have some basic skills on DirectDraw, but if you are completely beginner at computer science or Win32, this book make you mad.All thing have pros and cons. All codes on this book is not so good to read and understand.
Trustpilot
1 week ago
3 weeks ago