mirror of
https://github.com/3b1b/manim.git
synced 2025-07-28 04:23:16 +08:00
35 lines
757 B
GLSL
35 lines
757 B
GLSL
#version 330
|
|
|
|
uniform mat4 to_screen_space;
|
|
uniform float is_fixed_in_frame;
|
|
|
|
in vec3 point;
|
|
in vec3 prev_point;
|
|
in vec3 next_point;
|
|
in vec3 unit_normal;
|
|
|
|
in float stroke_width;
|
|
in vec4 color;
|
|
|
|
// Bezier control point
|
|
out vec3 bp;
|
|
out vec3 prev_bp;
|
|
out vec3 next_bp;
|
|
out vec3 v_global_unit_normal;
|
|
|
|
out float v_stroke_width;
|
|
out vec4 v_color;
|
|
|
|
const float STROKE_WIDTH_CONVERSION = 0.01;
|
|
|
|
#INSERT position_point_into_frame.glsl
|
|
|
|
void main(){
|
|
bp = position_point_into_frame(point);
|
|
prev_bp = position_point_into_frame(prev_point);
|
|
next_bp = position_point_into_frame(next_point);
|
|
v_global_unit_normal = normalize(to_screen_space * vec4(unit_normal, 0)).xyz;
|
|
|
|
v_stroke_width = STROKE_WIDTH_CONVERSION * stroke_width;
|
|
v_color = color;
|
|
} |