gpt4 book ai didi

glsl - glsl 中的带边框圆角矩形

转载 作者:行者123 更新时间:2023-12-04 23:15:11 31 4
gpt4 key购买 nike

您好,我正在尝试获得一个快速的圆角矩形 glsl 着色器,但我只设法使用此函数( https://github.com/marklundin/glsl-sdf-primitives/blob/master/udRoundBox.glsl )对填充矩形进行了操作:

float udRoundBox( vec3 p, vec3 b, float r )
{
return length(max(abs(p)-b,0.0))-r;
}

我一直在尝试找到一个可以做边框而不是填充的版本,甚至试图想出一个,但没有运气。有没有人有解决方案?

最佳答案

我想这就是你正在寻找的......

//---------------------------------------------------------
// draw rectangle frame with rounded edges
//---------------------------------------------------------
float roundedFrame (vec2 pos, vec2 size, float radius, float thickness)
{
float d = length(max(abs(uv - pos),size) - size) - radius;
return smoothstep(0.55, 0.45, abs(d / thickness) * 5.0);
}

看看我的着色玩具示例 https://www.shadertoy.com/view/MssyRN
screen shot example .

关于glsl - glsl 中的带边框圆角矩形,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43970170/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com