像素着色器效果示例

时间:2009-12-21 06:25:26

标签: wpf effects hlsl pixel-shader

我已经看过许多像素着色器效果示例,例如图像上的漩涡。但我想知道是否有人知道任何示例或教程,以更实际地使用着色器效果?

我并不是说漩涡效果没有它的用​​途,只是我发现的许多例子都有解释的基本效果,而不是如何巧妙地使用其他效果或过渡以产生美妙的效果。有一个视频here,概述了所有WPF效果库,但我不确定如何在实际环境中使用其中的一些。

例如,当Flash 8出现像模糊这样的效果时,我发现了一个精彩的视频,展示了如何使用模糊效果创建一个带有超速文本的炫酷效果,该视频启发了许多关于我可以用Flash 8中的效果。我正在寻找与Pixel Shader Effects类似的东西。

2 个答案:

答案 0 :(得分:7)

像素着色器效果启用的一个实际问题是混合模式

查看Robby Ingebretsen关于此事的post(讨论利用线性燃烧混合模式的有用方法)。此主题上还有一个StackOverflow question

事实上,我实际上已经为WPF编写了一个混合模式库。 Silverlight,并在blog免费提供。以下是我所有混音模式帖子的列表(所有帖子都附有源代码和二进制文件):

希望这能激发你的想象力......如果你带着图书馆玩弄它,请告诉我!

答案 1 :(得分:6)

我在不同的上下文中使用了像素着色器。主要是让用户惊叹。

以下是我的两个例子。 Silverlight / WPF中的精灵效果:live demo

alt text http://img121.imageshack.us/img121/6074/genied.jpg


Silverlight 4中的网络摄像头支持为您提供无限的乐趣,当您将它与着色器结合使用时。我和比尔盖茨面对的会议参加者感到惊讶,他出现在白色的表面上。我在网络摄像头旁边设置了一个手电筒......

alt text http://w2.com.ua/files/tinymce/images/Analytics/IT%20Jam%20/.thumbs/4bd67c03d4553251a72a01256fd9e61f_600_0_0.jpg

此处也可以使用网络摄像头应用程序:live demo(您需要Silverlight 4 runtime&网络摄像头)。

用户绝对不仅仅是使用着色器的方法。你也可以在GPU上做一些昂贵的微积分,但我找不到任何好的现实生活中的例子。如果您是游戏开发人员(我不是),您可能每天都使用着色器。


至于实际使用说明,网络中并没有太多,特别是WPF / Silverlight技术。应该从HLSL language specification开始,以flash pixel bender结束,查看相邻的主题。以下是一些很好的参考资料:

我还described详细说明了我如何创建精灵效果,但解释只有俄语版本。


据我所知,WPF控件中没有着色器的内置用法。

希望这会有所帮助:)。欢呼声。