2

我正在尝试在 HLSL 中制作类似 Photoshop 的斜角效果。
困难的部分是找到一个点与最近边缘的距离(其中 alpha=0)
任何人有任何想法如何做到这一点?

最好的,
西南

4

2 回答 2

3

花了一段时间,但我想出了一个解决方案。正确的方法是使用多通滤波器。着色器的第一遍水平模糊图像,第二遍垂直模糊图像,第三遍通过使用前两遍生成的 Alpha 通道中的渐变来渲染斜角。

于 2012-05-17T14:20:15.220 回答
0

您可以尝试基于抽样的方法。在像素着色器(对于每个像素)中,您需要对半径等于斜角半径的圆中的像素进行采样。如果当前像素被点亮(alpha=1),那么您可以采用到未点亮样本的最小距离(alpha=0)并计算衰减因子:factor = min_dist / bevel_radius. 然后你可以根据这个因素计算一些渐变颜色。

于 2012-05-16T19:38:10.693 回答