Skip to Main Content
HLSL and Pixel Shaders for XAML Developers
book

HLSL and Pixel Shaders for XAML Developers

by Walt Ritscher
July 2012
Intermediate to advanced content levelIntermediate to advanced
204 pages
4h 39m
English
O'Reilly Media, Inc.
Content preview from HLSL and Pixel Shaders for XAML Developers

Chapter 4. How WPF and Silverlight Use Shaders

You can spend your programming days happily working within the comforting confines of .NET’s managed code libraries without ever seeing a smidgen of unmanaged code. The framework team is not stupid, though; they know there are times when you have to call out to a COM library or Win32 DLL to get your job done. So they created hooks in the framework to enable the flow of code between the sheltered world of managed code and the mysterious unmanaged realm. It’s the same story when interoping between HLSL code and Silverlight/WPF classes.

In this chapter, we look at the .NET parts that facilitate the use of unmanaged HLSL shaders in the visual tree. The UIElement.Effect property is our first stop. It provides a way to assign a ShaderEffect to a visual element. Next, we look at some of the classes in the System.Windows.Media.Effects namespace. These classes (ShaderEffect, PixelShader, etc.) enable the flow of information to the HLSL world. We’ll examine how to create your own managed wrappers for HLSL and investigate the prebuilt effects in the System.Windows.Media.Effects namespace and the Expression Blend libraries.

Note

Remember: on the .NET side, the customary term is effect; on the HLSL side, the preferred term is shader.

Framework Effects

It’s easiest to start our discussion of framework effects by looking at the two shaders included in the System.Windows.Media.Effects namespace (see Figure 4-1). By starting with the BlurEffect and DropShadowEffect ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Real-Time Shader Programming

Real-Time Shader Programming

Ron Fosner

Publisher Resources

ISBN: 9781449324995Errata Page