/** * Copyright (c) 2018-2021 mol* contributors, licensed under MIT, See LICENSE file for more info. * * @author Alexander Rose */ export const points_vert = ` precision highp float; precision highp int; #include common #include read_from_texture #include common_vert_params #include color_vert_params #include size_vert_params #include common_clip uniform float uPixelRatio; uniform vec4 uViewport; attribute vec3 aPosition; attribute mat4 aTransform; attribute float aInstance; attribute float aGroup; void main(){ #include assign_group #include assign_color_varying #include assign_marker_varying #include assign_clipping_varying #include assign_position #include assign_size #ifdef dPointSizeAttenuation gl_PointSize = size * uPixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 5.0; #else gl_PointSize = size * uPixelRatio; #endif gl_PointSize = max(1.0, gl_PointSize); gl_Position = uProjection * mvPosition; #include clip_instance } `;