points.vert.ts 1.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /**
  2. * Copyright (c) 2018-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
  3. *
  4. * @author Alexander Rose <alexander.rose@weirdbyte.de>
  5. */
  6. export const points_vert = `
  7. precision highp float;
  8. precision highp int;
  9. #include common
  10. #include read_from_texture
  11. #include common_vert_params
  12. #include color_vert_params
  13. #include size_vert_params
  14. #include common_clip
  15. uniform float uPixelRatio;
  16. uniform vec4 uViewport;
  17. attribute vec3 aPosition;
  18. attribute mat4 aTransform;
  19. attribute float aInstance;
  20. attribute float aGroup;
  21. void main(){
  22. #include assign_group
  23. #include assign_color_varying
  24. #include assign_marker_varying
  25. #include assign_clipping_varying
  26. #include assign_position
  27. #include assign_size
  28. #ifdef dPointSizeAttenuation
  29. gl_PointSize = size * uPixelRatio * ((uViewport.w / 2.0) / -mvPosition.z) * 5.0;
  30. #else
  31. gl_PointSize = size * uPixelRatio;
  32. #endif
  33. gl_PointSize = max(1.0, gl_PointSize);
  34. gl_Position = uProjection * mvPosition;
  35. #include clip_instance
  36. }
  37. `;