LYGIA Shader Library

circular (lygia/v1.2.0/animation/easing/circular)

circular easing. From https://github.com/stackgl/glsl-easings

Dependencies:

Use:

circular<In|Out|InOut>(<float> x)

Check it on Github



Use:

circular<In|Out|InOut>(<float> x)

Check it on Github


#ifndef FNC_CIRCULARIN
#define FNC_CIRCULARIN
float circularIn(in float t) {
    return 1.0 - sqrt(1.0 - t * t);
}
#endif

#ifndef FNC_CIRCULAROUT
#define FNC_CIRCULAROUT
float circularOut(in float t) {
    return sqrt((2.0 - t) * t);
}
#endif

#ifndef FNC_CIRCULARINOUT
#define FNC_CIRCULARINOUT
float circularInOut(in float t) {
    return t < 0.5
      ? 0.5 * (1.0 - sqrt(1.0 - 4.0 * t * t))
      : 0.5 * (sqrt((3.0 - 2.0 * t) * (2.0 * t - 1.0)) + 1.0);
}
#endif

Examples

LYGIA is dual-licensed under the Prosperity License and the and the Patron License for for sponsors 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