HLSL 高级着色器语言(High Level Shader Language,简称HLSL),由微软拥 
有及开发的一种语言,只能供微软的Direct3D使用。 HLSL是微软抗衡GLSL的产品,同时不能与OpenGL标准兼容。他跟Nvidia的Cg非常相似。
        看了上面的几行话,可能大家还不是很清楚这个东西与当前的Silverlight的关系。其实在园子里的兄弟发过这篇文章,介绍“silverlight 3滤镜效果”。
         而其在源码中所使用的.ps文件(注:这里不是powershell呀),应该就是使用这种语言编译出来的,源文件貌似使用fx作为扩展名,而这种语言的入门教程可以从这里下载:)
 
         我是在看 mtaulty的BLOG时看到相关滤镜的演示效果的,呵呵:)
 
   
         源码下载地址:[url]http://mtaulty.com/downloads/Silverlight3/source/Mix09.zip[/url]
         一开始我还天真的认为silverlight真的支持只有WPF才有的那类“水波纹”效果。因为演示效果确实很“震撼”。
        直到开始写一个相应的“水波纹”示例时,才发现在相应的RippleEffect.cs文件中有这样一行,即:
 
static RippleEffectSample()
{
     pixelShader = new PixelShader();
     pixelShader.UriSource = new Uri("RippleEffect;component/Shaders/Ripple.fx", UriKind.Relative);
}
        而打开Ripple.fx文件之后是“二进制代码”,看来这种滤镜效果是一种变通的实现方式了,与我一开始想的以C#方式实现的滤镜代码看来是南辕北辙,呵呵。不过好在实现的效果还是很不错的,基本上运行很流畅,算得上是一个缩了水的“水波纹”吧:)

       另外就是其所实现的ShaderEffect接口(位于System.Windows.Media.Effects),
因为任何一种图形效果都是从这个抽象类继承实现的。 看来以后在视觉效果上silverlight可能会集成更多的.ps文件(只要在项目中引用它即可,而fx文件则可在编译后被排除在外)。集成ps的好处一是引用方便,二是减小xap包的体积。而滤
镜开发这方面的工作目前来看还是交给微软的开发人员了,呵呵:)
参照Mix09.zip所写的“水波纹”效果:
 

        好了,今天的内容就先到这里了。
        参照Mix09.zip所写的“水波纹”源码.
        注:相关PS的Build Action 以"Resource"方式。图片以“Content”方式编译。
 
本文转自 daizhenjun 51CTO博客,原文链接:http://blog.51cto.com/daizhj/144636,如需转载请自行联系原作者

快速浏览Silverlight3 Beta:当HLSL遇上Silverlight相关推荐

  1. 推荐系统遇上深度学习,9篇阿里推荐论文汇总!

    作者 | 石晓文 转载自小小挖掘机(ID: wAIsjwj) 业界常用的推荐系统主要分为两个阶段,召回阶段和精排阶段,当然有时候在最后还会接一些打散或者探索的规则,这点咱们就不考虑了. 前面九篇文章中 ...

  2. 华为平板电脑_当5G遇上平板电脑,华为MatePad Pro 5G带来了什么?

    5G已经来临,科技产品向5G升级已是大势所趋,这更是检验实力的探索之路. 2月24日,华为在巴塞罗那在线发布了一系列新品,其中,华为面向全球推出的5G高端旗舰平板,同时也是全球首款公开发布的5G平板华 ...

  3. 工智能遇上银行反欺诈,到底能帮什么忙

    工智能遇上银行反欺诈,到底能帮什么忙 晚来风急 2017-08-02 11:42:00 浏览39 评论0 深度学习 大数据 算法 人工智能 神经网络 摘要: 说到人工智能,大多会联想到聊天机器人.人脸 ...

  4. 搜推广遇上用户画像:Lookalike相似人群拓展算法

    在<当推荐系统遇上用户画像:你的画像是怎么来的?>一文中,我们介绍了怎么通过TF-IDF的方式得到用户的画像.而在本文中,我们来聊一下在搜索.推荐.计算广告系统中"画像是怎么用的 ...

  5. [当人工智能遇上安全] 6.基于机器学习的入侵检测和攻击识别——以KDD CUP99数据集为例

    您或许知道,作者后续分享网络安全的文章会越来越少.但如果您想学习人工智能和安全结合的应用,您就有福利了,作者将重新打造一个<当人工智能遇上安全>系列博客,详细介绍人工智能与安全相关的论文. ...

  6. [当人工智能遇上安全] 1.人工智能真的安全吗?浙大团队外滩大会分享AI对抗样本技术

    您或许知道,作者后续分享网络安全的文章会越来越少.但如果您想学习人工智能和安全结合的应用,您就有福利了,作者将重新打造一个<当人工智能遇上安全>系列博客,详细介绍人工智能与安全相关的论文. ...

  7. 推荐系统遇上深度学习(三十九)-推荐系统中召回策略演进!

    推荐系统中的核心是从海量的商品库挑选合适商品最终展示给用户.由于商品库数量巨大,因此常见的推荐系统一般分为两个阶段,即召回阶段和排序阶段.召回阶段主要是从全量的商品库中得到用户可能感兴趣的一小部分候选 ...

  8. 开源php todo,TODO:当PHP遇上IIS

    TODO:当PHP遇上IIS IIS调用PHP是使用CGI的功能,所以IIS一定要开启CGI的功能.默认为将 PHP 编译为 C CGI 程序.这将建立一个命令行解释器,可用于 CGI 处理或非 we ...

  9. 云计算遇上区块链,会产生怎样的能量和火花?

    云计算遇上区块链,会产生怎样的能量和火花? 云计算和区块链,都是当前火热的技术领域,但少有看到将两者放在一起的讨论信息.那么当两者相遇,又会迸发出怎样的能量和火花呢? 弄清这个问题,还是要从最基础概念 ...

最新文章

  1. PHP executable not found. Install PHP 7 and add it to your PATH or set the php.executablePath settin
  2. 深度学习训练的小技巧,调参经验。总结与记录。
  3. Linux下 RPM 包和Deb包的安装(代码指令+案列)
  4. MapReduce-从HBase读取数据处理后再写入HBase
  5. Pytorch:RuntimeError: DataLoader worker (pid 27) is killed by signal: Killed. Details are lost due
  6. 剥开比原看代码03:比原是如何监听p2p端口的
  7. Oracle查询优化改写技巧与案例总结二
  8. 用于专利申请的创新提案模板
  9. 广联达只有土建打不开_广联达BIM钢筋算量为什么打开工程是灰屏?工程打不开怎么办?...
  10. bert代码解读2之模型transformer的解读
  11. Mac部分按键失灵问题解决
  12. mysql中如何统计数据_mysql中的数据统计方法
  13. 内网通过映射后的公网IP访问内网服务测试--ASA8.0 hairpin NAT测试
  14. wps斜杠日期格式_使用WPS处理日期数据格式的方法
  15. Java中获取内存地址
  16. 根据WebService地址展示方法列表、入参和返回值(解析wsdl)
  17. 华为桌面云FusionAccess解决方案
  18. AR0130CSSC00SPBA0-DR CMOS数字显示器 图像传感器ON
  19. 面具卡米怎么删模块_一加8/8Pro/7Tpro等系使用Magisk模块更换字体+修改手机字体教程...
  20. 新手机怎么保养电池?手机锂电池保养及正确使用介绍

热门文章

  1. 【摄像头】宽动态范围
  2. 【GLib】GLib学习笔记(二):源码编译
  3. 【Python】深度学习中将数据按比例随机分成随机 训练集 和 测试集的python脚本
  4. grafana官方使用文档_可视化监控展示工具之Grafana,安装部署和使用
  5. python对数运算符号_科学网—Python中算数运算符之注意及np.logspace - 张伟的博文...
  6. 去除浏览器ip检测_浏览器怎么多开换ip,每个窗口不同的独立IP-VMLogin中文版指纹浏览器...
  7. 程序可以在硬件之间发送吗_你知道硬件、软件工程师之间,还有一个固件工程师吗?...
  8. Java项目:基于遗传算法学校排课系统(java+Springboot+Maven+mybatis+Vue+Mysql)
  9. Java项目:企业员工绩效工资管理系统(java+SpringBoot+FreeMarker+Mysql)
  10. Java项目:资源下载工具(java+swing)