DirectX 2002: Vertex and Pixel Shaders (Wordware Game Developer's Library) Paperback – 1 Nov 2002
Customers Who Bought This Item Also Bought
Enter your mobile number below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
Getting the download link through email is temporarily not available. Please check back later.
To get the free app, enter your mobile phone number.
This book takes the Direct3D programmers to the next level of graphics programming. Starting with a review of fundamental vertex and pixel shader concepts and techniques, this book covers non-standardised per-pixel lighting models, membrane shaders, kubelka monk shaders for translucency effects, fur/hair shaders, shadow volume, and more. From there, developers move on to vertex and pixel shader programming with a character engine and a very enhanced 'Quake 3' level viewer. Every chapter has several fully working examples illustrating each technique or principle that is taught. Includes CD.
Most Helpful Customer Reviews on Amazon.com (beta)
The book starts off with an extensive, well-written introduction to HLSL that most beginners to the language will find quite helpful. This is followed by a handy introduction to Shader Model 3.0, which explains the changes that have been made since 2.0, and the practical applications of these changes and additions.
The next several chapters are devoted to implementing "foundational" techniques using shaders. The first covers several lighting and shading techniques, providing sample shader implementations in HLSL and assembly. Most of the shaders come in multiple versions for the various shader models, which is useful for supporting these techniques on a wide range of platforms, as well as in understanding the capability differences between each model.
The next chapter covers five different fog effects using HLSL shaders. Then there are two chapters on shadows, one on shadow mapping and the other on shadow volumes. The latter weighs in at over 80 pages, providing in-depth coverage of the theory behind the technique.
Next up is a tutorial for using the shader development environment RenderMonkey. The usefulness of this chapter is marred by the fact that the current version of RenderMonkey has undergone some interface changes such that the text is now out of synch with the tool, making it a bit more difficult to follow along. Still, if you can work through this, the chapter will help you quickly get up and running with RenderMonkey.
The last chapter of the book is about creating shader-friendly models. This chapter seems out of place since it's written more for artists than programmers (who are clearly the audience for the rest of the book), and the chapter is too brief and vague to be of much value.
If you're new to shaders and HLSL, you'll likely find this book useful, though it's a little expensive for a small book (I imagine the color plates contribute to this). If the shadow and fog chapters had been moved to the other ShaderX2 book, and the final chapter had been dropped, I think that they could have reduced the price considerably and made the book more focused, turning it into a great value. As it is, though, it's still a good book that many people will benefit from.
First, it gives a fair intro to HLSL and shader assembly language. That seems hard to come by. Microsoft's documentation, in web-entangled form, is hardly a tutorial. Vendor documentation mostly points to MS standards, but those are hard for us mere peons to acquire in any intelligible form. This isn't a langauge ref book, but will do until I see a real one.
Second, it gives a good bunch of tips'n'tricks, with lots of listings for illumination models, shadows, and fog. The careful reader will look into the references, the places where new knowledge makes its debut, and will be stronger for it. There's also a chapter that devotes itself to v1 vs. v2. vs v3 compatibility and more. Compatibility is the pits - if you've never dealt with it, your career is probably happy and probably very young.
I was looking for something a little different, though. I just wanted the HLSL and assembly references, with versions, with complete syntax and semantics. This gives enough info for me to guess my way through a lot of it, but really does leave me guessing. For example, p.47 talks about the "_bx2" modifier. It shows three different ways to coax the compiler into emitting that suffix. After about ten minutes of looking at source and asm code, I finally figured out what _bx2 meant - something the authors neglected to tell me.
Shader programming is still a [forgive the phrase] dark art. This book offers a few chants and incantations, but does not make it a science. Still, it's the most coherent reference I've seen, and I'm sticking with it.
As in any book with many contributors, the quality varies. The chapter on shadow volumes is detailed and useful. But overall I wish there had been emphasis on clear and succinct presentation, and not just what seems to be a stream-of-consciousness approach to covering a huge amount of information.
A note for newbies though. This is a book for advanced readers. People who already have a decent knowledge of DirectX 9.0. This book WILL NOT teach you the basics of DirectX 9.0. It is meant for Shader programming and it does that with great elegance. However, if you are looking for a beginner level book then look for some other book about general DX programming.
Look for similar items by category
- Books > Computing & Internet > PC & Video Games
- Books > Computing & Internet > Programming > Games
- Books > Computing & Internet > Programming > Graphics & Multimedia
- Books > Computing & Internet > Programming > Languages & Tools
- Books > Computing & Internet > Programming > Microsoft Windows
- Books > Computing & Internet > Software & Graphics > Graphics & Multimedia > Image Manipulation & Creation
- Books > Sports, Hobbies & Games > Hobbies & Games