Chapter 3. Commonplace Pixel Shaders

“What is an example of a real world pixel shader?” That’s a question I hear all the time when teaching the concepts of shaders to XAML programmers. The trouble, as I see it, is that most computer users wouldn’t recognize a pixel shader if they saw one. Make no mistake, they are out there—pixel shaders are found in a wide range of software products. Most consumers happily use them without knowing that they are working with a feature that was implemented with an effect.

Certain application categories are prime candidates for pixel shaders. The game development world is one obvious example. Image manipulation software is another fertile area for shaders. Academics have studied the problem of image filtering and pixel manipulation for decades. All modern image processing software (think Photoshop or Paintshop Pro) has ranks of shaders hiding behind the application facade.

Common effects include blurring, distorting, image enhancement, and color blend. This chapter provides an overview of the types of effects that are common in the shader realm.

Note

Shaders are often applied after the render phase, so they are also known as post-processing effects.

Pixel shaders fall into a few general categories.

  • Color modification / Color transformation

  • Displacement / Spatial transformation

  • Blurs

  • Generative / Procedural

  • Multiple inputs

A Word About Pseudocode

A couple of words before diving into the shader descriptions. It is still early in the book and you haven’t seen a ...

Get HLSL and Pixel Shaders for XAML Developers now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.