3b1b-manim/manimlib/shaders/true_dot/vert.glsl

26 lines
531 B
Text
Raw Normal View History

2021-01-04 13:26:58 -08:00
#version 330
2023-01-18 15:36:00 -08:00
uniform float pixel_size;
uniform float anti_alias_width;
2021-01-04 13:26:58 -08:00
in vec3 point;
in float radius;
2023-01-15 19:09:29 -08:00
in vec4 rgba;
2021-01-04 13:26:58 -08:00
2023-01-18 15:36:00 -08:00
out vec4 color;
out float scaled_aaw;
2021-01-04 13:26:58 -08:00
out vec3 v_point;
2023-01-18 15:36:00 -08:00
out vec3 light_pos;
#INSERT emit_gl_Position.glsl
2021-01-04 13:26:58 -08:00
void main(){
2023-01-18 13:44:41 -08:00
v_point = point;
2023-01-18 15:36:00 -08:00
color = rgba;
scaled_aaw = (anti_alias_width * pixel_size) / radius;
emit_gl_Position(point);
2023-01-18 15:36:00 -08:00
float z = -10 * gl_Position.z;
float scaled_radius = radius * 1.0 / (1.0 - z);
2023-01-18 23:43:36 -08:00
gl_PointSize = 2 * ((scaled_radius / pixel_size) + anti_alias_width);
2021-01-04 13:26:58 -08:00
}