float getRectangleMask(float2 uv, float x, float y, float w, float h) { float lineX, lineY; lineX = smoothstep(x + w, 1, uv.x) + smoothstep(x - w,0, uv.x); lineY = smoothstep(y + h, 1, uv.y) + smoothstep(y - h,0, uv.y); float2 norm = float2(lineX, lineY); return length(norm); }
[HLSL] Smoothness Rectangle Masking
float getRectangleMask(float2 uv, float x, float y, float w, float h) { float lineX, lineY; lineX = smoothstep(x + w, 1, uv.x) + smoothstep(x - w,0, uv.x); lineY = smoothstep(y + h, 1, uv.y) + smoothstep(y - h,0, uv.y); float2 norm = float2(lineX, lineY); return length(norm); }
2021.09.17