uwp-xaml - 以背景为输入的自定义 PixelShaderEffect
问题描述
我需要一个自写PixelShaderEffect
的以背景图像作为输入。
我想要一个自定义的书面模糊效果,其中是一个模糊的中心,它会随着与中心的距离(圆形)的增加而直接失去模糊和不透明度。
我发现的所有示例都是这样:“如何将图像输入着色器”。不是我需要的,背景是动画的,渲染成额外的图像有点贵。
我知道只要GaussianBlurEffect
你能做我想做的事……虽然我很难让它在 UWP 上运行,而且它的形式是矩形,而不是圆形。(而且不透明度不是渐变)
问题:有没有办法将背景输入PixelShaderEffect
到GaussianBlurEffect
UWP 下的自定义中?
解决方案
以背景为输入的自定义 PixelShaderEffect
LayersExample
对于您的要求,您可以参考编写模糊效果的
Win2D 代码示例。
它用于CanvasRadialGradientBrush
渲染模糊效果。
case LayerMode.OpacityBrush:
gradientBrush.Center = ball.Position;
gradientBrush.RadiusX = gradientBrush.RadiusY = ball.Radius* ball.FadeAlpha * 3;
using (ds.CreateLayer(gradientBrush))
{
ball.Draw(ds);
}
break;
推荐阅读
- node.js - 如何创建项目特定的 Node 开发环境?
- karate - 在测试运行之前和之后运行单个功能文件
- hibernate - javax.persistence.criteria 和 org.hibernate.criterion 包有什么区别?
- java - 如何从 2 个函数中提取字符并产生输出?
- c - 我如何在C中复制到字符串文字
- java - Spring Data GemFire:CustomExpiry 示例
- sas - 从 SAS 宏调用 7zip
- c++ - 列表中的性能过滤
- pivot-table - 如何在不向下钻取的情况下创建 Power BI 数据透视表?
- java - 使用来自 Spring Batch Tasklet 的 Spring Data 流式传输结果集