Microsoft® DirectX® 9 Programmable Graphics Pipeline (Pro-Developer) Paperback – 28 Jun 2003
Customers also shopped for
Enter your mobile number or email address 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.
To get the free app, enter your mobile phone number.
Would you like to tell us about a lower price?
If you are a seller for this product, would you like to suggest updates through seller support?
Learn how to use programmable shaders in the DirectX 9 graphics pipeline and deliver awesome 3-D graphics to your animations, games, and other multimedia applications. This book distills hundreds of hours of hands-on guidance from the developers on the Microsoft DirectX team as well as insights from leading-edge video card manufacturers into step-by-step instruction and best practices for exploiting the programmable pipeline. You ll see how to program shaders in assembly-language as well as the new high-level shader language (HLSL) and you get complete code walkthroughs for all the sample programs and the DirectX 9 SDK on CD. Discover how to: Program vertex shaders to create transformations, apply vertex fog, or deform geometry Generate 2-D image effects?such as output color inversion with pixel shaders Use HLSL to add a semi-transparent glow effect by combining a vertex shader and frame buffer blending Produce a metallic paint effect by combining a vertex shader, a pixel shader, and a texture shader with multilayer texture blending Incorporate reflective surfaces into your 3-D scenes by applying an environment-map effect Experiment with the EffectEdit SDK sample to load and edit effect files and preview results on the fly Package multiple object-rendering techniques into a single effect for simpler pipeline state management CD inside Get code for all the sample programs plus SDK About Programmable Shaders With programmable shaders, you get unprecedented control over rendering options in DirectX 9.You can use vertex shaders to deform geometry, apply procedural textures with pixel and texture shaders, and use effects to encapsulate shader and pipeline state making code reuse a snap. CD features: Sample programs that demonstrate: Vertex shader transformations, lighting, fog, vertex displacement, and vertex blending Pixel shader texturing, 2-D image processing, and lighting Texture shader generation of procedural textures Encapsulating assembly-language and HLSL shaders into an effect Interactive development of an effect using EffectEdit DirectX 9 SDK Fully searchable eBook
About the Author
Founded in 1975, Microsoft (Nasdaq ‘MSFT’) is the worldwide leader in software for personal and business computing. The company offers a wide range of products and services designed to empower people through great software—any time, any place and on any device.
There was a problem filtering reviews right now. Please try again later.
This book can be described basically as a summary of whats in the directx SDK.
Vertex/pixel shaders, being a reference without very much extra detail.
High Level Shader Language (HLSL) - mostly reference material with a brief description of some of the SDK examples.
Then the effects framework, which is basically the HLSL chapters redone in effects language, and the differences aren't that much really.
Whilst there is some explanation, I found it all rather patchy. Sometimes equations were explained, often they were assumed you would know what was happening. I also had a feeling of deja vu reading certain sections, where it was clear bits had been copied from earlier in the book, and changed a little. It is by no means a tutorial to directx9.
I think I spotted a number of errors in the examples. Often the whole code for an effect is presented, then stepped through in some more detail, and the copied fragments are sometimes different to the original (additional or deleted lines), which sows the seeds of doubt about reliability somewhat.
I guess I was hoping for something more. How can I use the effects framework with real models, where more than a single effect might be required. When drawing meshes it always sets a material, why? How might I have several techniques to achieve the same result on different graphics cards (it tells you this can be done, but doesn't show how you might do it).
For me, although its targeted at directx8, the book "Real-time Rendering Tricks and Techniques in DirectX" by Dempski is light years ahead if you are trying to learn how to use VS/PS.
A better title for this book might have been "A reference guide to pixel shaders, vertex shaders, HLSL and effects framework" although admittedly not as catchy.
Who is it aimed at? I'm not sure - not me I guess:-)
I would guess experienced graphics programmers who don't know about, but want to learn about VS/PS/HLSL and effects.
Most helpful customer reviews on Amazon.com
The graphics programmer is likely to find this very useful. It integrates C application code with shader examples. It also discusses on-the fly compilation, use of resources for shader source code, the relationships between vertex and pixel shaders, texture samplers, and 'techniques' for pulling all the pieces together. Performance programming gets some discussion, but isn't a central topic. Appendices specify the shader language in dryly formal terms, but the descriptive chapters make most language features very clear.
The shader programming model is decidedly non-standard. A rendering program does not work at all like a C program. Yes, a C/C++ programmer will be able to follow a shader's internals easily enough. The problem, though, is that a C program is in charge of what data gets handled when. Everything in a rendering program is silently a callback, however. It's invoked by some execution engine that sequences the input and output data, and even synchronizes multiple (and almost invisible) threads of execution. The hardware rendering program also interacts strongly with the application running in the main processor, partly through "semantics", reflective "annotations", and various parameter-setting mechanisms. There is a huge amount of mechanism at work, and it gives the real meaning to the interacting programs on the host and graphics engine. That mechanism is described in a black-box way, what it does rather than how it works. I think I've reverse engineered the workings, enough for my purposes, but this book did not address my needs directly.
Still, it's the best I've found. Real graphics programs, like games and scientific visualization, are much more than lines and circles. This book, with its examples, will surely help the beginner acquire a working knowledge.
However, if you want to be away from computer and learn about shaders in relaxed in your bed or at a cafe, or if you are an naturalist who do not want to waste printer inks and papers to print out SDK document, in terms of such points, this book may worth to you.