proof-engine 0.1.1

A mathematical rendering engine for Rust. Every visual is the output of a mathematical function.
Documentation
// glyph.frag — glyph fragment shader
// Phase 1 stub. Full shader in Phase 1 implementation.

#version 330 core

in vec2 f_uv;
in vec4 f_color;
in float f_emission;
in vec3 f_glow_color;

uniform sampler2D u_atlas;

layout(location = 0) out vec4 o_color;
layout(location = 1) out vec4 o_emission;  // for bloom pass

void main() {
    float alpha = texture(u_atlas, f_uv).r;  // atlas is R8 (greyscale glyph mask)
    if (alpha < 0.05) discard;

    o_color   = vec4(f_color.rgb * f_color.a, alpha * f_color.a);
    o_emission = vec4(f_glow_color * f_emission * alpha, 1.0);
}