Introduction To 3D Game Programming With Directx 9.0C: A Shader Approach Paperback – Jun 7 2006
|New from||Used from|
Customers Who Bought This Item Also Bought
No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet, and computer.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
Top Customer Reviews
The book is well organised, with each chapter building on the previous in a logical fashion. The book does not waste pages and pages duplicating source code, but generally shows only the key parts of the source code in the book with relevant parts highlighted. The text explains the concepts and methods clearly if a bit dryly. The samples are kept simple to make the concepts being taught clear, but the text does point out differences and additions that a real application would require.
Basic 3D math is explained first. Next how to do the basic windows and d3d initialisation is shown. A simple but effective framework is used for all the sample code. The book next explains all the key parts of how a 3D image is rendered. A logical progression of techniques is taught with more advanced techniques, such as shadows and displacement mapping covered in later chapters.
Each chapter ends with exercises that will greatly increase your understanding of the chapter's contents. Only the bare minimum of other directX libraries (sound, input, etc...) are covered. This book is strictly for learning Direct3D. Direct Input is briefly touched on, but you will have to seek other sources to learn the other libraries in directX.
This book will teach you all you need to get started creating Direct3D applications.
Most Helpful Customer Reviews on Amazon.com (beta)
The code framework is also pretty good, the naming conventions are decent and the code is clearly written. The framework is consistent throughout the book, and uses inheritance and minor polymorphism which manages to hide a lot of the Direct3D / Win32 initialization, so once you are past these chapters you needn't concern yourself with this code again, and you can intend focus on the code that Frank is trying to explain.
The design is also very modular, a good example of this is found in Chapter 21: Exercise 4 where it asks you to integrate an Environment Mapped sphere for the sky, and Normal mapped water, into a scene which shows a Castle and trees / grass. This was pretty easy, as it just required shifting a few art / source files and tying some loose ends.
The book contains many exercises, a lot of which I found very helpful in understanding the material presented in the text and code samples, they give a good sense of accomplishment and I recommend them if you want to fully understand the concepts taught, and most are generally doable with a bit of research into the DirectX SDK, and rereading the text.
The text also does an excellent job of explaining key DirectX functions, and is usually a lot more approachable than the SDK. It also explains the use of the DirectX texture tool, and Terragen ( a free terrain generator, which is very easy to use)
For anyone looking to learn DirectX 9, HLSL, and the fundamental concepts behind games, then this book will serve as a solid foundation for those willing to take the time to read and understand it.
Having said that, there are two down sides to this book. The first is that although D3D is explained in depth, it sometimes reads like Direct3D reference documentation - endless lists of parameter A does blah, blah blah, parameter B does blah blah blah. This is helpful, don't get me wrong - I just wish it was tucked away in an appendix. Unless the parameters do something surprising, I don't want the obvious explained to me. This may just be a personal preference, and you may actually find it helpful.
The second and bigger problem is that the book really doesn't address game state management or how to structure a *real world* game. It does tell you how to create particle systems, bone animation, texture effects, terrains, etc, but it never tells you how to put it all together, which is really not trivial. I wouldn't fault it for this if the name of the book were "Introduction to DirectX programming", but it's called "Introduction to 3D Game Programming with DirectX". In my opinion, it should cover the basics of how to structure a game, which it doesn't. You *will* be able to build a game after reading this book, but I found myself turning to online tutorials for game state management and how to organize objects, which should be the first thing you learn (in my opinion).
Overall, the book has been a very important reference to me and I highly recommend it.
Look for similar items by category
- Books > Computers & Technology > Graphic Design
- Books > Computers & Technology > Programming > Game Programming
- Books > Computers & Technology > Programming > Graphics & Multimedia > DirectX
- Books > Computers & Technology > Programming > Introductory & Beginning
- Books > Computers & Technology > Programming > Software Design, Testing & Engineering > Software Development
- Books > Humour & Entertainment > Puzzles & Games > Video Games & Strategy Guides