Introduction to 3D Game Programming with DirectX 9.0 provides an introduction to programming interactive 3D computer graphics using DirectX 9.0, with an emphasis on game development. The book begins with an explanation of mathematical tools and moves on to general 3D concepts. Other topics include performing basic operations in Direct3D such as primitive drawing, lighting, texturing, alpha blending, and stenciling, and using Direct3D to implement techniques that could be required in a game. Chapters on vertex and pixel shaders, including the effects framework and the new High-Level Shading Language, wrap up the discussion. Understand basic mathematical and 3D concepts. Learn how to describe and draw interactive 3D scenes using the Direct3D 9.0 API. Use Direct3D and the D3DX utility library to implement a variety of techniques and applications, such as transparency, shadows, reflections, fonts, meshes, using XFiles, progressive meshes, terrain rendering, particle systems, picking, cartoon rendering, and multitexturing. Find out how to write vertex and pixel shader programs with the High-Level Shading Language. Discover how to write and use effect files with the Direct3D effects framework.
This book has a lot of good concepts for directX 9.0 programming for games, but most of the source files are very long, complex, and garbled based on his "engine". The content in the book is very helpful and precise, but it works better as a reference book then something to "learn directX" from. I prefered jon harbour's books on intro to c++ (with directX even though it does not say it) as a beginner book.