LYGIA Shader Library

orthographic (lygia/space/orthographic)

create orthographic matrix

Use:

<mat4> orthographic(<float> left, <float> right, <float> bottom, <float> top, <float> near, <float> far)

Check it on Github


#ifndef FNC_ORTHOGRAPHIC
#define FNC_ORTHOGRAPHIC
mat4 orthographic(float l, float r, float b, float t, float n, float f) {
    return mat4(
        vec4(2.0/(r-l),     0.0,          0.0,         0.0),
        vec4(0.0,           2.0/(t-b),    0.0,         0.0),
        vec4(0.0,           0.0,         -2.0/(f-n),   0.0),
        vec4(-(r+l)/(r-l), -(t+b)/(t-b), -(f+n)/(f-n), 1.0)
    );
}
#endif

Use:

<mat4> orthographic(<float> left, <float> right, <float> bottom, <float> top, <float> near, <float> far)

Check it on Github


#ifndef FNC_ORTHOGRAPHIC
#define FNC_ORTHOGRAPHIC
mat4 orthographic(float l, float r, float b, float t, float n, float f) {
    return mat4(
        float4(2.0/(r-l),     0.0,          0.0,         0.0),
        float4(0.0,           2.0/(t-b),    0.0,         0.0),
        float4(0.0,           0.0,         -2.0/(f-n),   0.0),
        float4(-(r+l)/(r-l), -(t+b)/(t-b), -(f+n)/(f-n), 1.0)
    );
}
#endif

Licenses

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