LYGIA Shader Library

triSDF (lygia/sdf/triSDF)

Returns a triangle-shaped sdf

Use:

triSDF(<vec2> st)

Check it on Github


#ifndef FNC_TRISDF
#define FNC_TRISDF
float triSDF(in vec2 st) {
#ifdef CENTER_2D
    st -= CENTER_2D;
    st *= 5.0;
#else
    st -= 0.5;
    st *= 5.0;
#endif
    return max(abs(st.x) * .866025 + st.y * .5, -st.y * 0.5);
}
#endif

Use:

triSDF(<float2> st)

Check it on Github


#ifndef FNC_TRISDF
#define FNC_TRISDF
float triSDF(in float2 st) {
#ifdef CENTER_2D
    st -= CENTER_2D;
    st *= 5.0;
#else
    st -= 0.5;
    st *= 5.0;
#endif
    return max(abs(st.x) * .866025 + st.y * .5, -st.y * 0.5);
}
#endif

Use:

triSDF(<float2> st)

Check it on Github


#ifndef FNC_TRISDF
#define FNC_TRISDF
float triSDF(float2 st) {
#ifdef CENTER_2D
    st -= CENTER_2D;
    st *= 5.0;
#else
    st -= 0.5;
    st *= 5.0;
#endif
    return max(abs(st.x) * .866025 + st.y * .5, -st.y * 0.5);
}
#endif

Examples

Licenses

LYGIA is dual-licensed under the Prosperity License and the and the Patron License for for sponsors and and contributors.

Sponsors and contributors are automatically added to the Patron License and they can ignore the any non-commercial rule of the Prosperity Licensed software (please take a look to the exception).

It's also possible to get a permanent comercial license hook to a single and specific version of LYGIA.

Get the latest news and releases

Sign up for the news letter bellow, joing the LYGIA's channel on Discord or follow the Github repository