#version 300 es in vec4 position; in vec3 color; in float highlight; in float selected; out vec3 point_color; out float point_highlight; out float total_radius; // camera const float focal_slope = 0.3; void main() { total_radius = 5. + 0.5*selected; float depth = -focal_slope * position.z; gl_Position = vec4(position.xy / depth, 0., 1.); gl_PointSize = 2.*total_radius; point_color = color; point_highlight = highlight; }