@antv/l7-layers 2.20.3 → 2.20.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. package/es/canvas/index.d.ts +3 -3
  2. package/es/citybuliding/models/build.d.ts +7 -12
  3. package/es/citybuliding/models/build.js +22 -11
  4. package/es/citybuliding/shaders/build_frag.glsl +26 -23
  5. package/es/citybuliding/shaders/build_vert.glsl +24 -16
  6. package/es/core/BaseLayer.d.ts +14 -2
  7. package/es/core/BaseLayer.js +56 -10
  8. package/es/core/BaseModel.d.ts +21 -1
  9. package/es/core/BaseModel.js +99 -2
  10. package/es/core/CommonStyleAttribute.d.ts +5 -2
  11. package/es/core/CommonStyleAttribute.js +4 -0
  12. package/es/core/LayerPickService.d.ts +1 -1
  13. package/es/core/TextureService.d.ts +2 -2
  14. package/es/core/interface.d.ts +7 -3
  15. package/es/core/interface.js +0 -1
  16. package/es/core/line_trangluation.d.ts +1 -1
  17. package/es/core/shape/arrow.d.ts +1 -1
  18. package/es/core/shape/extrude.d.ts +1 -1
  19. package/es/core/triangulation.d.ts +1 -1
  20. package/es/core/triangulation.js +13 -7
  21. package/es/core/utils.d.ts +4 -0
  22. package/es/core/utils.js +15 -0
  23. package/es/earth/index.d.ts +1 -1
  24. package/es/earth/models/atmosphere.d.ts +8 -2
  25. package/es/earth/models/atmosphere.js +15 -8
  26. package/es/earth/models/base.d.ts +8 -2
  27. package/es/earth/models/base.js +21 -12
  28. package/es/earth/models/bloomsphere.d.ts +8 -2
  29. package/es/earth/models/bloomsphere.js +15 -8
  30. package/es/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  31. package/es/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  32. package/es/earth/shaders/base/base_frag.glsl +11 -0
  33. package/es/earth/shaders/base/base_vert.glsl +52 -0
  34. package/es/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  35. package/es/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  36. package/es/geometry/index.d.ts +2 -2
  37. package/es/geometry/models/billboard.d.ts +8 -1
  38. package/es/geometry/models/billboard.js +26 -11
  39. package/es/geometry/models/plane.d.ts +8 -1
  40. package/es/geometry/models/plane.js +23 -6
  41. package/es/geometry/models/sprite.d.ts +12 -2
  42. package/es/geometry/models/sprite.js +44 -18
  43. package/es/geometry/shaders/billboard_frag.glsl +11 -6
  44. package/es/geometry/shaders/billboard_vert.glsl +12 -15
  45. package/es/geometry/shaders/plane_frag.glsl +14 -10
  46. package/es/geometry/shaders/plane_vert.glsl +11 -10
  47. package/es/geometry/shaders/sprite_frag.glsl +11 -7
  48. package/es/geometry/shaders/sprite_vert.glsl +10 -9
  49. package/es/heatmap/index.d.ts +3 -3
  50. package/es/heatmap/models/grid.d.ts +8 -1
  51. package/es/heatmap/models/grid.js +25 -12
  52. package/es/heatmap/models/grid3d.d.ts +8 -1
  53. package/es/heatmap/models/grid3d.js +29 -13
  54. package/es/heatmap/models/heatmap.d.ts +6 -4
  55. package/es/heatmap/models/heatmap.js +123 -75
  56. package/es/heatmap/models/hexagon.d.ts +8 -1
  57. package/es/heatmap/models/hexagon.js +25 -12
  58. package/es/heatmap/shaders/grid/grid_frag.glsl +8 -0
  59. package/es/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  60. package/es/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  61. package/{lib/heatmap/shaders/hexagon_3d_vert.glsl → es/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  62. package/es/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  63. package/es/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  64. package/es/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  65. package/es/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  66. package/{lib/heatmap/shaders → es/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  67. package/es/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  68. package/es/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  69. package/es/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  70. package/es/image/index.d.ts +2 -2
  71. package/es/image/models/image.d.ts +9 -2
  72. package/es/image/models/image.js +83 -44
  73. package/es/image/shaders/image_frag.glsl +34 -7
  74. package/es/image/shaders/image_vert.glsl +11 -5
  75. package/es/line/index.d.ts +4 -4
  76. package/es/line/index.js +2 -1
  77. package/es/line/models/arc.d.ts +8 -3
  78. package/es/line/models/arc.js +57 -76
  79. package/es/line/models/arc_3d.d.ts +8 -3
  80. package/es/line/models/arc_3d.js +46 -57
  81. package/es/line/models/flow.d.ts +8 -2
  82. package/es/line/models/flow.js +14 -12
  83. package/es/line/models/great_circle.d.ts +8 -3
  84. package/es/line/models/great_circle.js +51 -36
  85. package/es/line/models/index.d.ts +1 -1
  86. package/es/line/models/index.js +3 -6
  87. package/es/line/models/line.d.ts +8 -3
  88. package/es/line/models/line.js +67 -140
  89. package/es/line/models/{simpleLine.d.ts → simple_line.d.ts} +8 -2
  90. package/es/line/models/simple_line.js +204 -0
  91. package/es/line/models/wall.d.ts +8 -3
  92. package/es/line/models/wall.js +35 -27
  93. package/es/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  94. package/es/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  95. package/es/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  96. package/{lib/line/shaders → es/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  97. package/es/line/shaders/flow/flow_line_frag.glsl +5 -4
  98. package/es/line/shaders/flow/flow_line_vert.glsl +17 -18
  99. package/es/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  100. package/{lib/line/shaders → es/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  101. package/es/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  102. package/es/line/shaders/line/line_vert.glsl +114 -0
  103. package/es/line/shaders/simple/simpleline_frag.glsl +27 -3
  104. package/es/line/shaders/simple/simpleline_vert.glsl +20 -20
  105. package/es/line/shaders/wall/wall_frag.glsl +31 -26
  106. package/es/line/shaders/wall/wall_vert.glsl +29 -22
  107. package/es/mask/index.d.ts +2 -2
  108. package/es/mask/models/fill.d.ts +1 -1
  109. package/es/plugins/DataMappingPlugin.d.ts +1 -1
  110. package/es/plugins/DataMappingPlugin.js +1 -3
  111. package/es/plugins/DataSourcePlugin.d.ts +1 -1
  112. package/es/plugins/FeatureScalePlugin.d.ts +1 -1
  113. package/es/plugins/FeatureScalePlugin.js +14 -3
  114. package/es/plugins/LayerAnimateStylePlugin.d.ts +1 -1
  115. package/es/plugins/LayerMaskPlugin.d.ts +1 -1
  116. package/es/plugins/LayerModelPlugin.d.ts +1 -1
  117. package/es/plugins/LayerStylePlugin.d.ts +1 -1
  118. package/es/plugins/LightingPlugin.d.ts +1 -1
  119. package/es/plugins/MultiPassRendererPlugin.d.ts +1 -1
  120. package/es/plugins/PixelPickingPlugin.d.ts +6 -2
  121. package/es/plugins/PixelPickingPlugin.js +36 -49
  122. package/es/plugins/RegisterStyleAttributePlugin.d.ts +1 -1
  123. package/es/plugins/ShaderUniformPlugin.d.ts +1 -1
  124. package/es/plugins/ShaderUniformPlugin.js +11 -6
  125. package/es/plugins/UpdateModelPlugin.d.ts +1 -1
  126. package/es/plugins/UpdateStyleAttributePlugin.d.ts +1 -1
  127. package/es/point/index.d.ts +2 -2
  128. package/es/point/index.js +1 -0
  129. package/es/point/models/billboard_point.d.ts +9 -3
  130. package/es/point/models/billboard_point.js +18 -18
  131. package/es/point/models/earthExtrude.d.ts +7 -12
  132. package/es/point/models/earthExtrude.js +21 -13
  133. package/es/point/models/earthFill.d.ts +8 -3
  134. package/es/point/models/earthFill.js +18 -30
  135. package/es/point/models/extrude.d.ts +7 -12
  136. package/es/point/models/extrude.js +18 -13
  137. package/es/point/models/fill.d.ts +8 -2
  138. package/es/point/models/fill.js +33 -84
  139. package/es/point/models/{fillmage.d.ts → fillImage.d.ts} +8 -2
  140. package/es/point/models/{fillmage.js → fillImage.js} +23 -15
  141. package/es/point/models/image.d.ts +8 -1
  142. package/es/point/models/image.js +31 -21
  143. package/es/point/models/index.js +1 -1
  144. package/es/point/models/normal.d.ts +9 -3
  145. package/es/point/models/normal.js +13 -30
  146. package/es/point/models/radar.d.ts +8 -2
  147. package/es/point/models/radar.js +23 -45
  148. package/es/point/models/text.d.ts +9 -2
  149. package/es/point/models/text.js +31 -32
  150. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  151. package/{lib/point/shaders → es/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  152. package/es/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  153. package/{lib/point/shaders/earth/extrude_vert.glsl → es/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  154. package/{lib/point/shaders/earth/fill_frag.glsl → es/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  155. package/{lib/point/shaders/earth/fill_vert.glsl → es/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  156. package/es/point/shaders/extrude/extrude_frag.glsl +19 -7
  157. package/es/point/shaders/extrude/extrude_vert.glsl +23 -30
  158. package/{lib/point/shaders → es/point/shaders/fill}/fill_frag.glsl +18 -1
  159. package/es/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  160. package/es/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  161. package/{lib/point/shaders/image → es/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  162. package/es/point/shaders/image/image_frag.glsl +42 -0
  163. package/{lib/point/shaders → es/point/shaders/image}/image_vert.glsl +14 -13
  164. package/es/point/shaders/radar/radar_frag.glsl +19 -14
  165. package/es/point/shaders/radar/radar_vert.glsl +21 -24
  166. package/es/point/shaders/text/text_frag.glsl +44 -0
  167. package/es/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  168. package/es/point/shape/extrude.d.ts +1 -1
  169. package/es/polygon/index.d.ts +2 -2
  170. package/es/polygon/models/extrude.d.ts +9 -9
  171. package/es/polygon/models/extrude.js +38 -15
  172. package/es/polygon/models/extrusion.d.ts +8 -1
  173. package/es/polygon/models/extrusion.js +24 -7
  174. package/es/polygon/models/fill.d.ts +9 -4
  175. package/es/polygon/models/fill.js +26 -13
  176. package/es/polygon/models/ocean.d.ts +9 -7
  177. package/es/polygon/models/ocean.js +30 -14
  178. package/es/polygon/models/water.d.ts +9 -4
  179. package/es/polygon/models/water.js +26 -10
  180. package/es/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  181. package/es/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  182. package/es/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  183. package/es/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  184. package/es/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  185. package/es/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  186. package/es/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  187. package/es/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  188. package/es/polygon/shaders/fill/fill_frag.glsl +7 -0
  189. package/es/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  190. package/{lib/polygon/shaders/polygon_linear_vert.glsl → es/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  191. package/es/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  192. package/es/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  193. package/es/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  194. package/es/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  195. package/es/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  196. package/es/raster/buffers/triangulation.d.ts +1 -1
  197. package/es/raster/index.d.ts +2 -2
  198. package/es/raster/models/raster.d.ts +9 -8
  199. package/es/raster/models/raster.js +54 -38
  200. package/es/raster/models/rasterRgb.d.ts +9 -7
  201. package/es/raster/models/rasterRgb.js +36 -19
  202. package/es/raster/models/rasterTerrainRgb.d.ts +1 -1
  203. package/es/raster/models/rasterTerrainRgb.js +2 -2
  204. package/es/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  205. package/es/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  206. package/es/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  207. package/es/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  208. package/es/tile/core/BaseLayer.d.ts +2 -2
  209. package/es/tile/core/TileDebugLayer.d.ts +1 -1
  210. package/es/tile/interaction/getRasterData.d.ts +2 -2
  211. package/es/tile/interaction/utils.d.ts +1 -1
  212. package/es/tile/interface.d.ts +2 -2
  213. package/es/tile/service/TileLayerService.d.ts +2 -2
  214. package/es/tile/service/TilePickService.d.ts +2 -2
  215. package/es/tile/service/TileSourceService.d.ts +1 -1
  216. package/es/tile/tile/Tile.d.ts +2 -3
  217. package/es/tile/tile/VectorTile.d.ts +1 -1
  218. package/es/tile/tile/index.d.ts +1 -1
  219. package/es/tile/utils/constants.js +1 -1
  220. package/es/tile/utils/utils.d.ts +1 -1
  221. package/es/utils/blend.d.ts +1 -1
  222. package/es/utils/multiPassRender.d.ts +1 -1
  223. package/es/utils/stencil.d.ts +1 -1
  224. package/es/wind/index.d.ts +3 -3
  225. package/es/wind/models/wind.d.ts +1 -1
  226. package/lib/citybuliding/models/build.js +22 -11
  227. package/lib/citybuliding/shaders/build_frag.glsl +26 -23
  228. package/lib/citybuliding/shaders/build_vert.glsl +24 -16
  229. package/lib/core/BaseLayer.js +56 -10
  230. package/lib/core/BaseModel.js +99 -2
  231. package/lib/core/CommonStyleAttribute.js +4 -0
  232. package/lib/core/triangulation.js +12 -6
  233. package/lib/core/utils.js +22 -0
  234. package/lib/earth/models/atmosphere.js +15 -8
  235. package/lib/earth/models/base.js +21 -12
  236. package/lib/earth/models/bloomsphere.js +15 -8
  237. package/lib/earth/shaders/{atmosphere_frag.glsl → atmosphere/atmosphere_frag.glsl} +9 -6
  238. package/lib/earth/shaders/atmosphere/atmosphere_vert.glsl +22 -0
  239. package/lib/earth/shaders/base/base_frag.glsl +11 -0
  240. package/lib/earth/shaders/base/base_vert.glsl +52 -0
  241. package/lib/earth/shaders/bloomshpere/bloomsphere_frag.glsl +16 -0
  242. package/lib/earth/shaders/bloomshpere/bloomsphere_vert.glsl +19 -0
  243. package/lib/geometry/models/billboard.js +26 -11
  244. package/lib/geometry/models/plane.js +23 -6
  245. package/lib/geometry/models/sprite.js +44 -18
  246. package/lib/geometry/shaders/billboard_frag.glsl +11 -6
  247. package/lib/geometry/shaders/billboard_vert.glsl +12 -15
  248. package/lib/geometry/shaders/plane_frag.glsl +14 -10
  249. package/lib/geometry/shaders/plane_vert.glsl +11 -10
  250. package/lib/geometry/shaders/sprite_frag.glsl +11 -7
  251. package/lib/geometry/shaders/sprite_vert.glsl +10 -9
  252. package/lib/heatmap/models/grid.js +25 -12
  253. package/lib/heatmap/models/grid3d.js +29 -13
  254. package/lib/heatmap/models/heatmap.js +122 -74
  255. package/lib/heatmap/models/hexagon.js +25 -12
  256. package/lib/heatmap/shaders/grid/grid_frag.glsl +8 -0
  257. package/lib/heatmap/shaders/{grid_vert.glsl → grid/grid_vert.glsl} +15 -15
  258. package/lib/heatmap/shaders/grid3d/grid_3d_frag.glsl +8 -0
  259. package/{es/heatmap/shaders/hexagon_3d_vert.glsl → lib/heatmap/shaders/grid3d/grid_3d_vert.glsl} +13 -16
  260. package/lib/heatmap/shaders/heatmap/heatmap_3d_frag.glsl +24 -0
  261. package/lib/heatmap/shaders/{heatmap_3d_vert.glsl → heatmap/heatmap_3d_vert.glsl} +19 -9
  262. package/lib/heatmap/shaders/heatmap/heatmap_frag.glsl +52 -0
  263. package/lib/heatmap/shaders/heatmap/heatmap_framebuffer_frag.glsl +16 -0
  264. package/{es/heatmap/shaders → lib/heatmap/shaders/heatmap}/heatmap_framebuffer_vert.glsl +14 -9
  265. package/lib/heatmap/shaders/heatmap/heatmap_vert.glsl +19 -0
  266. package/lib/heatmap/shaders/hexagon/hexagon_frag.glsl +8 -0
  267. package/lib/heatmap/shaders/{hexagon_vert.glsl → hexagon/hexagon_vert.glsl} +12 -13
  268. package/lib/image/models/image.js +83 -44
  269. package/lib/image/shaders/image_frag.glsl +34 -7
  270. package/lib/image/shaders/image_vert.glsl +11 -5
  271. package/lib/line/index.js +2 -1
  272. package/lib/line/models/arc.js +57 -76
  273. package/lib/line/models/arc_3d.js +47 -59
  274. package/lib/line/models/flow.js +14 -12
  275. package/lib/line/models/great_circle.js +51 -36
  276. package/lib/line/models/index.js +4 -7
  277. package/lib/line/models/line.js +67 -142
  278. package/lib/line/models/{simpleLine.js → simple_line.js} +84 -74
  279. package/lib/line/models/wall.js +35 -27
  280. package/lib/line/shaders/{line_arc_frag.glsl → arc/line_arc_frag.glsl} +36 -26
  281. package/lib/line/shaders/{line_arc_vert.glsl → arc/line_arc_vert.glsl} +52 -22
  282. package/lib/line/shaders/{line_arc_3d_frag.glsl → arc3d/line_arc_3d_frag.glsl} +32 -24
  283. package/{es/line/shaders → lib/line/shaders/arc3d}/line_arc_3d_vert.glsl +37 -27
  284. package/lib/line/shaders/flow/flow_line_frag.glsl +5 -4
  285. package/lib/line/shaders/flow/flow_line_vert.glsl +17 -18
  286. package/lib/line/shaders/{line_arc_great_circle_frag.glsl → greatCircle/line_arc_great_circle_frag.glsl} +30 -30
  287. package/{es/line/shaders → lib/line/shaders/greatCircle}/line_arc_great_circle_vert.glsl +43 -40
  288. package/lib/line/shaders/{line_frag.glsl → line/line_frag.glsl} +55 -28
  289. package/lib/line/shaders/line/line_vert.glsl +114 -0
  290. package/lib/line/shaders/simple/simpleline_frag.glsl +27 -3
  291. package/lib/line/shaders/simple/simpleline_vert.glsl +20 -20
  292. package/lib/line/shaders/wall/wall_frag.glsl +31 -26
  293. package/lib/line/shaders/wall/wall_vert.glsl +29 -22
  294. package/lib/plugins/DataMappingPlugin.js +1 -3
  295. package/lib/plugins/FeatureScalePlugin.js +14 -3
  296. package/lib/plugins/PixelPickingPlugin.js +35 -48
  297. package/lib/plugins/ShaderUniformPlugin.js +11 -6
  298. package/lib/point/index.js +1 -0
  299. package/lib/point/models/billboard_point.js +18 -18
  300. package/lib/point/models/earthExtrude.js +21 -13
  301. package/lib/point/models/earthFill.js +18 -30
  302. package/lib/point/models/extrude.js +18 -13
  303. package/lib/point/models/fill.js +33 -84
  304. package/lib/point/models/{fillmage.js → fillImage.js} +24 -17
  305. package/lib/point/models/image.js +31 -21
  306. package/lib/point/models/index.js +2 -2
  307. package/lib/point/models/normal.js +13 -30
  308. package/lib/point/models/radar.js +23 -45
  309. package/lib/point/models/text.js +31 -32
  310. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_frag.glsl +17 -13
  311. package/{es/point/shaders → lib/point/shaders/billboard}/billboard_point_vert.glsl +13 -14
  312. package/lib/point/shaders/earthExtrude/earthExtrude_frag.glsl +36 -0
  313. package/{es/point/shaders/earth/extrude_vert.glsl → lib/point/shaders/earthExtrude/earthExtrude_vert.glsl} +25 -22
  314. package/{es/point/shaders/earth/fill_frag.glsl → lib/point/shaders/earthFill/earthFill_frag.glsl} +20 -18
  315. package/{es/point/shaders/earth/fill_vert.glsl → lib/point/shaders/earthFill/earthFill_vert.glsl} +17 -22
  316. package/lib/point/shaders/extrude/extrude_frag.glsl +19 -7
  317. package/lib/point/shaders/extrude/extrude_vert.glsl +23 -30
  318. package/{es/point/shaders → lib/point/shaders/fill}/fill_frag.glsl +18 -1
  319. package/lib/point/shaders/{fill_vert.glsl → fill/fill_vert.glsl} +5 -4
  320. package/lib/point/shaders/fillImage/fillImage_frag.glsl +24 -0
  321. package/{es/point/shaders/image → lib/point/shaders/fillImage}/fillImage_vert.glsl +15 -17
  322. package/lib/point/shaders/image/image_frag.glsl +42 -0
  323. package/{es/point/shaders → lib/point/shaders/image}/image_vert.glsl +14 -13
  324. package/lib/point/shaders/radar/radar_frag.glsl +19 -14
  325. package/lib/point/shaders/radar/radar_vert.glsl +21 -24
  326. package/lib/point/shaders/text/text_frag.glsl +44 -0
  327. package/lib/point/shaders/{text_vert.glsl → text/text_vert.glsl} +19 -17
  328. package/lib/polygon/models/extrude.js +38 -15
  329. package/lib/polygon/models/extrusion.js +24 -7
  330. package/lib/polygon/models/fill.js +26 -13
  331. package/lib/polygon/models/ocean.js +30 -14
  332. package/lib/polygon/models/water.js +26 -10
  333. package/lib/polygon/shaders/extrude/polygon_extrude_frag.glsl +14 -14
  334. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_frag.glsl +17 -15
  335. package/lib/polygon/shaders/extrude/polygon_extrude_picklight_vert.glsl +18 -18
  336. package/lib/polygon/shaders/extrude/polygon_extrude_vert.glsl +18 -24
  337. package/lib/polygon/shaders/extrude/polygon_extrudetex_frag.glsl +19 -15
  338. package/lib/polygon/shaders/extrude/polygon_extrudetex_vert.glsl +20 -24
  339. package/lib/polygon/shaders/extrusion/polygon_extrusion_frag.glsl +4 -8
  340. package/lib/polygon/shaders/extrusion/polygon_extrusion_vert.glsl +7 -16
  341. package/lib/polygon/shaders/fill/fill_frag.glsl +7 -0
  342. package/lib/polygon/shaders/fill/fill_linear_frag.glsl +20 -0
  343. package/{es/polygon/shaders/polygon_linear_vert.glsl → lib/polygon/shaders/fill/fill_linear_vert.glsl} +12 -11
  344. package/lib/polygon/shaders/{polygon_vert.glsl → fill/fill_vert.glsl} +6 -6
  345. package/lib/polygon/shaders/{water/polygon_ocean_frag.glsl → ocean/ocean_frag.glsl} +13 -13
  346. package/lib/polygon/shaders/ocean/ocean_vert.glsl +22 -0
  347. package/lib/polygon/shaders/water/polygon_water_frag.glsl +14 -12
  348. package/lib/polygon/shaders/water/polygon_water_vert.glsl +10 -10
  349. package/lib/raster/models/raster.js +54 -38
  350. package/lib/raster/models/rasterRgb.js +36 -19
  351. package/lib/raster/models/rasterTerrainRgb.js +2 -2
  352. package/lib/raster/shaders/raster/raster_2d_frag.glsl +34 -0
  353. package/lib/raster/shaders/raster/raster_2d_vert.glsl +21 -0
  354. package/lib/raster/shaders/rgb/raster_rgb_frag.glsl +26 -0
  355. package/lib/raster/shaders/rgb/raster_rgb_vert.glsl +21 -0
  356. package/lib/tile/utils/constants.js +1 -1
  357. package/package.json +7 -7
  358. package/es/earth/shaders/atmosphere_vert.glsl +0 -26
  359. package/es/earth/shaders/base_frag.glsl +0 -13
  360. package/es/earth/shaders/base_vert.glsl +0 -52
  361. package/es/earth/shaders/bloomsphere_frag.glsl +0 -15
  362. package/es/earth/shaders/bloomsphere_vert.glsl +0 -20
  363. package/es/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  364. package/es/heatmap/shaders/heatmap_frag.glsl +0 -47
  365. package/es/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  366. package/es/heatmap/shaders/heatmap_vert.glsl +0 -10
  367. package/es/heatmap/shaders/hexagon_frag.glsl +0 -12
  368. package/es/line/models/earthArc_3d.d.ts +0 -17
  369. package/es/line/models/earthArc_3d.js +0 -285
  370. package/es/line/models/linearline.d.ts +0 -11
  371. package/es/line/models/linearline.js +0 -241
  372. package/es/line/models/simpleLine.js +0 -194
  373. package/es/line/shaders/arc_chunks.vert.glsl +0 -21
  374. package/es/line/shaders/dash/arc_dash_frag.glsl +0 -21
  375. package/es/line/shaders/dash/arc_dash_vert.glsl +0 -102
  376. package/es/line/shaders/dash/line_dash_frag.glsl +0 -27
  377. package/es/line/shaders/dash/line_dash_vert.glsl +0 -82
  378. package/es/line/shaders/line_arc2d_vert.glsl +0 -114
  379. package/es/line/shaders/line_bezier_vert.glsl +0 -85
  380. package/es/line/shaders/line_vert.glsl +0 -165
  381. package/es/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  382. package/es/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  383. package/es/line/shaders/linear/arc_linear_frag.glsl +0 -10
  384. package/es/line/shaders/linear/arc_linear_vert.glsl +0 -98
  385. package/es/line/shaders/linear/line_linear_frag.glsl +0 -25
  386. package/es/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  387. package/es/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  388. package/es/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  389. package/es/point/shaders/animate/wave_frag.glsl +0 -55
  390. package/es/point/shaders/earth/extrude_frag.glsl +0 -32
  391. package/es/point/shaders/image/fillImage_frag.glsl +0 -18
  392. package/es/point/shaders/image_frag.glsl +0 -37
  393. package/es/point/shaders/text_frag.glsl +0 -39
  394. package/es/polygon/shaders/polygon_frag.glsl +0 -7
  395. package/es/polygon/shaders/polygon_linear_frag.glsl +0 -15
  396. package/es/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  397. package/es/raster/shaders/raster_2d_frag.glsl +0 -32
  398. package/es/raster/shaders/raster_2d_vert.glsl +0 -13
  399. package/es/raster/shaders/raster_frag.glsl +0 -11
  400. package/es/raster/shaders/raster_rgb_frag.glsl +0 -20
  401. package/es/raster/shaders/raster_vert.glsl +0 -34
  402. package/lib/earth/shaders/atmosphere_vert.glsl +0 -26
  403. package/lib/earth/shaders/base_frag.glsl +0 -13
  404. package/lib/earth/shaders/base_vert.glsl +0 -52
  405. package/lib/earth/shaders/bloomsphere_frag.glsl +0 -15
  406. package/lib/earth/shaders/bloomsphere_vert.glsl +0 -20
  407. package/lib/heatmap/shaders/heatmap_3d_frag.glsl +0 -14
  408. package/lib/heatmap/shaders/heatmap_frag.glsl +0 -47
  409. package/lib/heatmap/shaders/heatmap_framebuffer_frag.glsl +0 -10
  410. package/lib/heatmap/shaders/heatmap_vert.glsl +0 -10
  411. package/lib/heatmap/shaders/hexagon_frag.glsl +0 -12
  412. package/lib/line/models/earthArc_3d.js +0 -291
  413. package/lib/line/models/linearline.js +0 -247
  414. package/lib/line/shaders/arc_chunks.vert.glsl +0 -21
  415. package/lib/line/shaders/dash/arc_dash_frag.glsl +0 -21
  416. package/lib/line/shaders/dash/arc_dash_vert.glsl +0 -102
  417. package/lib/line/shaders/dash/line_dash_frag.glsl +0 -27
  418. package/lib/line/shaders/dash/line_dash_vert.glsl +0 -82
  419. package/lib/line/shaders/line_arc2d_vert.glsl +0 -114
  420. package/lib/line/shaders/line_bezier_vert.glsl +0 -85
  421. package/lib/line/shaders/line_vert.glsl +0 -165
  422. package/lib/line/shaders/linear/arc3d_linear_frag.glsl +0 -32
  423. package/lib/line/shaders/linear/arc3d_linear_vert.glsl +0 -161
  424. package/lib/line/shaders/linear/arc_linear_frag.glsl +0 -10
  425. package/lib/line/shaders/linear/arc_linear_vert.glsl +0 -98
  426. package/lib/line/shaders/linear/line_linear_frag.glsl +0 -25
  427. package/lib/line/shaders/linearLine/line_linear_frag.glsl +0 -8
  428. package/lib/line/shaders/linearLine/line_linear_vert.glsl +0 -93
  429. package/lib/line/shaders/simple/simpleline_linear_frag.glsl +0 -8
  430. package/lib/point/shaders/animate/wave_frag.glsl +0 -55
  431. package/lib/point/shaders/earth/extrude_frag.glsl +0 -32
  432. package/lib/point/shaders/image/fillImage_frag.glsl +0 -18
  433. package/lib/point/shaders/image_frag.glsl +0 -37
  434. package/lib/point/shaders/text_frag.glsl +0 -39
  435. package/lib/polygon/shaders/polygon_frag.glsl +0 -7
  436. package/lib/polygon/shaders/polygon_linear_frag.glsl +0 -15
  437. package/lib/polygon/shaders/water/polygon_ocean_vert.glsl +0 -16
  438. package/lib/raster/shaders/raster_2d_frag.glsl +0 -32
  439. package/lib/raster/shaders/raster_2d_vert.glsl +0 -13
  440. package/lib/raster/shaders/raster_frag.glsl +0 -11
  441. package/lib/raster/shaders/raster_rgb_frag.glsl +0 -20
  442. package/lib/raster/shaders/raster_vert.glsl +0 -34
  443. /package/es/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  444. /package/es/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  445. /package/es/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  446. /package/es/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
  447. /package/lib/point/shaders/{normal_frag.glsl → normal/normal_frag.glsl} +0 -0
  448. /package/lib/point/shaders/{normal_vert.glsl → normal/normal_vert.glsl} +0 -0
  449. /package/lib/raster/shaders/{raster_terrain_rgb_frag.glsl → terrain/terrain_rgb_frag.glsl} +0 -0
  450. /package/lib/raster/shaders/{rater_terrain_rgb_vert.glsl → terrain/terrain_rgb_vert.glsl} +0 -0
@@ -1,5 +1,6 @@
1
1
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
2
  import _asyncToGenerator from "@babel/runtime/helpers/esm/asyncToGenerator";
3
+ import _objectSpread from "@babel/runtime/helpers/esm/objectSpread2";
3
4
  import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
4
5
  import _createClass from "@babel/runtime/helpers/esm/createClass";
5
6
  import _inherits from "@babel/runtime/helpers/esm/inherits";
@@ -13,9 +14,10 @@ import { lodashUtil } from '@antv/l7-utils';
13
14
  import BaseModel from "../../core/BaseModel";
14
15
  import { polygonTriangulation } from "../../core/triangulation";
15
16
  /* babel-plugin-inline-import '../shaders/water/polygon_water_frag.glsl' */
16
- var water_frag = "uniform sampler2D u_texture;\nuniform float u_time: 0.0;\nuniform float u_speed: 1.0;\nuniform float u_opacity: 1.0;\n\nvarying vec4 v_Color;\nvarying vec2 v_uv;\n\nfloat rand(vec2 n) { return 0.5 + 0.5 * fract(sin(dot(n.xy, vec2(12.9898, 78.233)))* 43758.5453); }\n\nfloat water(vec3 p) {\n float t = u_time * u_speed;\n p.z += t * 2.; p.x += t * 2.;\n vec3 c1 = texture2D(u_texture, p.xz / 30.).xyz;\n p.z += t * 3.; p.x += t * 0.52;\n vec3 c2 = texture2D(u_texture, p.xz / 30.).xyz;\n p.z += t * 4.; p.x += t * 0.8;\n vec3 c3 = texture2D(u_texture, p.xz / 30.).xyz;\n c1 += c2 - c3;\n float z = (c1.x + c1.y + c1.z) / 3.;\n return p.y + z / 4.;\n}\n\nfloat map(vec3 p) {\n float d = 100.0;\n d = water(p);\n return d;\n}\n\nfloat intersect(vec3 ro, vec3 rd) {\n float d = 0.0;\n for (int i = 0; i <= 100; i++) {\n float h = map(ro + rd * d);\n if (h < 0.1) return d;\n d += h;\n }\n return 0.0;\n}\n\nvec3 norm(vec3 p) {\n float eps = .1;\n return normalize(vec3(\n map(p + vec3(eps, 0, 0)) - map(p + vec3(-eps, 0, 0)),\n map(p + vec3(0, eps, 0)) - map(p + vec3(0, -eps, 0)),\n map(p + vec3(0, 0, eps)) - map(p + vec3(0, 0, -eps))\n ));\n} \n\nfloat calSpc() {\n vec3 l1 = normalize(vec3(1, 1, 1));\n vec3 ro = vec3(-3, 20, -8);\n vec3 rc = vec3(0, 0, 0);\n vec3 ww = normalize(rc - ro);\n vec3 uu = normalize(cross(vec3(0,1,0), ww));\n vec3 vv = normalize(cross(rc - ro, uu));\n vec3 rd = normalize(uu * v_uv.x + vv * v_uv.y + ww);\n float d = intersect(ro, rd);\n vec3 p = ro + rd * d;\n vec3 n = norm(p);\n float spc = pow(max(0.0, dot(reflect(l1, n), rd)), 30.0);\n return spc;\n}\n\nvoid main() {\n float opacity = u_opacity;\n gl_FragColor = v_Color;\n gl_FragColor.a *= opacity;\n\n float spc = calSpc();\n gl_FragColor += spc * 0.4;\n}\n";
17
+ var water_frag = "uniform sampler2D u_texture;\nlayout(std140) uniform commonUniforms {\n float u_speed;\n float u_time;\n};\n\nout vec4 outputColor;\n\n\nin vec4 v_Color;\nin vec2 v_uv;\n\nfloat rand(vec2 n) { return 0.5 + 0.5 * fract(sin(dot(n.xy, vec2(12.9898, 78.233)))* 43758.5453); }\n\nfloat water(vec3 p) {\n float t = u_time * u_speed;\n p.z += t * 2.; p.x += t * 2.;\n vec3 c1 = texture(SAMPLER_2D(u_texture), p.xz / 30.).xyz;\n p.z += t * 3.; p.x += t * 0.52;\n vec3 c2 = texture(SAMPLER_2D(u_texture), p.xz / 30.).xyz;\n p.z += t * 4.; p.x += t * 0.8;\n vec3 c3 = texture(SAMPLER_2D(u_texture), p.xz / 30.).xyz;\n c1 += c2 - c3;\n float z = (c1.x + c1.y + c1.z) / 3.;\n return p.y + z / 4.;\n}\n\nfloat map(vec3 p) {\n float d = 100.0;\n d = water(p);\n return d;\n}\n\nfloat intersect(vec3 ro, vec3 rd) {\n float d = 0.0;\n for (int i = 0; i <= 100; i++) {\n float h = map(ro + rd * d);\n if (h < 0.1) return d;\n d += h;\n }\n return 0.0;\n}\n\nvec3 norm(vec3 p) {\n float eps = .1;\n return normalize(vec3(\n map(p + vec3(eps, 0, 0)) - map(p + vec3(-eps, 0, 0)),\n map(p + vec3(0, eps, 0)) - map(p + vec3(0, -eps, 0)),\n map(p + vec3(0, 0, eps)) - map(p + vec3(0, 0, -eps))\n ));\n} \n\nfloat calSpc() {\n vec3 l1 = normalize(vec3(1, 1, 1));\n vec3 ro = vec3(-3, 20, -8);\n vec3 rc = vec3(0, 0, 0);\n vec3 ww = normalize(rc - ro);\n vec3 uu = normalize(cross(vec3(0,1,0), ww));\n vec3 vv = normalize(cross(rc - ro, uu));\n vec3 rd = normalize(uu * v_uv.x + vv * v_uv.y + ww);\n float d = intersect(ro, rd);\n vec3 p = ro + rd * d;\n vec3 n = norm(p);\n float spc = pow(max(0.0, dot(reflect(l1, n), rd)), 30.0);\n return spc;\n}\n\nvoid main() {\n\n outputColor = v_Color;\n float spc = calSpc();\n outputColor += spc * 0.4;\n}\n";
17
18
  /* babel-plugin-inline-import '../shaders/water/polygon_water_vert.glsl' */
18
- var water_vert = "attribute vec4 a_Color;\nattribute vec2 a_uv;\nattribute vec3 a_Position;\nuniform mat4 u_ModelMatrix;\n\n\nvarying vec4 v_Color;\nvarying vec2 v_uv;\nuniform float u_opacity: 1.0;\n\n\n#pragma include \"projection\"\n\nvoid main() {\n v_uv = a_uv;\n\n v_Color = a_Color;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n gl_Position = project_common_position_to_clipspace_v2(vec4(project_pos.xyz, 1.0));\n}\n\n";
19
+ var water_vert = "layout(location = 0) in vec3 a_Position;\nlayout(location = 1) in vec4 a_Color;\nlayout(location = 14) in vec2 a_uv;\nlayout(std140) uniform commonUniforms {\n float u_speed;\n float u_time;\n};\nout vec4 v_Color;\nout vec2 v_uv;\n\n\n#pragma include \"projection\"\n\nvoid main() {\n v_uv = a_uv;\n v_Color = a_Color;\n v_Color.a *= opacity;\n vec4 project_pos = project_position(vec4(a_Position, 1.0));\n\n gl_Position = project_common_position_to_clipspace_v2(vec4(project_pos.xyz, 1.0));\n}\n\n";
20
+ import { ShaderLocation } from "../../core/CommonStyleAttribute";
19
21
  var isNumber = lodashUtil.isNumber;
20
22
  var WaterModel = /*#__PURE__*/function (_BaseModel) {
21
23
  _inherits(WaterModel, _BaseModel);
@@ -27,16 +29,27 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
27
29
  _createClass(WaterModel, [{
28
30
  key: "getUninforms",
29
31
  value: function getUninforms() {
32
+ var commoninfo = this.getCommonUniformsInfo();
33
+ var attributeInfo = this.getUniformsBufferInfo(this.getStyleAttribute());
34
+ this.updateStyleUnifoms();
35
+ return _objectSpread(_objectSpread({}, commoninfo.uniformsOption), attributeInfo.uniformsOption);
36
+ }
37
+ }, {
38
+ key: "getCommonUniformsInfo",
39
+ value: function getCommonUniformsInfo() {
30
40
  var _ref = this.layer.getLayerConfig(),
31
- _ref$opacity = _ref.opacity,
32
- opacity = _ref$opacity === void 0 ? 1 : _ref$opacity,
33
41
  _ref$speed = _ref.speed,
34
42
  speed = _ref$speed === void 0 ? 0.5 : _ref$speed;
35
- return {
36
- u_texture: this.texture,
43
+ var commonOptions = {
37
44
  u_speed: speed,
38
- u_opacity: isNumber(opacity) ? opacity : 1.0
45
+ u_time: this.layer.getLayerAnimateTime(),
46
+ u_texture: this.texture
39
47
  };
48
+
49
+ // u_opacity: isNumber(opacity) ? opacity : 1.0,
50
+ this.textures = [this.texture];
51
+ var commonBufferInfo = this.getUniformsBufferInfo(commonOptions);
52
+ return commonBufferInfo;
40
53
  }
41
54
  }, {
42
55
  key: "getAnimateUniforms",
@@ -73,21 +86,23 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
73
86
  return _regeneratorRuntime.wrap(function _callee2$(_context2) {
74
87
  while (1) switch (_context2.prev = _context2.next) {
75
88
  case 0:
76
- _context2.next = 2;
89
+ this.initUniformsBuffer();
90
+ _context2.next = 3;
77
91
  return this.layer.buildLayerModel({
78
92
  moduleName: 'polygonWater',
79
93
  vertexShader: water_vert,
80
94
  fragmentShader: water_frag,
81
95
  triangulation: polygonTriangulation,
96
+ inject: this.getInject(),
82
97
  primitive: gl.TRIANGLES,
83
98
  depth: {
84
99
  enable: false
85
100
  }
86
101
  });
87
- case 2:
102
+ case 3:
88
103
  model = _context2.sent;
89
104
  return _context2.abrupt("return", [model]);
90
- case 4:
105
+ case 5:
91
106
  case "end":
92
107
  return _context2.stop();
93
108
  }
@@ -120,6 +135,7 @@ var WaterModel = /*#__PURE__*/function (_BaseModel) {
120
135
  type: AttributeType.Attribute,
121
136
  descriptor: {
122
137
  name: 'a_uv',
138
+ shaderLocation: ShaderLocation.UV,
123
139
  buffer: {
124
140
  // give the WebGL driver a hint that this buffer may change
125
141
  usage: gl.STATIC_DRAW,
@@ -1,24 +1,24 @@
1
- uniform vec4 u_sourceColor;
2
- uniform vec4 u_targetColor;
3
- uniform float u_linearColor: 0;
4
-
5
- uniform float u_topsurface: 1.0;
6
- uniform float u_sidesurface: 1.0;
7
-
8
- varying vec4 v_Color;
9
-
1
+ layout(std140) uniform commonUniforms {
2
+ vec4 u_sourceColor;
3
+ vec4 u_targetColor;
4
+ float u_linearColor;
5
+ float u_topsurface;
6
+ float u_sidesurface;
7
+ float u_heightfixed; // 默认不固定
8
+ float u_raisingHeight;
9
+ };
10
+
11
+ in vec4 v_Color;
10
12
  #pragma include "picking"
11
-
13
+ out vec4 outputColor;
12
14
  void main() {
13
15
 
14
-
15
16
  // top face
16
17
  if(u_topsurface < 1.0) {
17
18
  discard;
18
19
  }
19
20
 
20
- gl_FragColor = v_Color;
21
+ outputColor = v_Color;
21
22
 
22
-
23
- gl_FragColor = filterColor(gl_FragColor);
23
+ outputColor = filterColor(outputColor);
24
24
  }
@@ -1,19 +1,22 @@
1
- uniform float u_opacity: 1.0;
2
- uniform vec4 u_sourceColor;
3
- uniform vec4 u_targetColor;
4
- uniform float u_linearColor: 0;
5
1
 
6
- uniform float u_topsurface: 1.0;
7
- uniform float u_sidesurface: 1.0;
2
+ layout(std140) uniform commonUniforms {
3
+ vec4 u_sourceColor;
4
+ vec4 u_targetColor;
5
+ float u_linearColor;
6
+ float u_topsurface;
7
+ float u_sidesurface;
8
+ float u_heightfixed; // 默认不固定
9
+ float u_raisingHeight;
10
+ };
8
11
 
9
- varying vec4 v_Color;
10
- varying vec3 v_uvs;
11
- varying vec2 v_texture_data;
12
+ in vec4 v_Color;
13
+ in vec3 v_uvs;
14
+ in vec2 v_texture_data;
15
+ out vec4 outputColor;
12
16
 
13
17
  #pragma include "picking"
14
18
 
15
19
  void main() {
16
- float opacity = u_opacity;
17
20
  float isSide = v_texture_data.x;
18
21
  float sidey = v_uvs[2];
19
22
  float lightWeight = v_texture_data.y;
@@ -29,19 +32,18 @@ void main() {
29
32
  // side use linear
30
33
  vec4 linearColor = mix(u_targetColor, u_sourceColor, sidey);
31
34
  linearColor.rgb *= lightWeight;
32
- gl_FragColor = linearColor;
35
+ outputColor = linearColor;
33
36
  } else {
34
37
  // side notuse linear
35
- gl_FragColor = v_Color;
38
+ outputColor = v_Color;
36
39
  }
37
40
  } else {
38
41
  // top face
39
42
  if(u_topsurface < 1.0) {
40
43
  discard;
41
44
  }
42
- gl_FragColor = v_Color;
45
+ outputColor = v_Color;
43
46
  }
44
47
 
45
- gl_FragColor.a *= opacity;
46
- gl_FragColor = filterColorAlpha(gl_FragColor, lightWeight);
48
+ outputColor = filterColorAlpha(outputColor, lightWeight);
47
49
  }
@@ -1,23 +1,23 @@
1
- precision highp float;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 13) in vec3 a_Normal;
5
+ layout(location = 14) in vec3 a_uvs;
2
6
 
3
- #define ambientRatio 0.5
4
- #define diffuseRatio 0.3
5
- #define specularRatio 0.2
6
7
 
7
- attribute vec4 a_Color;
8
- attribute vec3 a_Position;
9
- attribute vec3 a_Normal;
10
- attribute float a_Size;
11
- attribute vec3 a_uvs;
12
- uniform mat4 u_ModelMatrix;
8
+ layout(std140) uniform commonUniforms {
9
+ vec4 u_sourceColor;
10
+ vec4 u_targetColor;
11
+ float u_linearColor;
12
+ float u_topsurface;
13
+ float u_sidesurface;
14
+ float u_heightfixed; // 默认不固定
15
+ float u_raisingHeight;
16
+ };
13
17
 
14
-
15
- uniform float u_heightfixed: 0.0; // 默认不固定
16
- uniform float u_raisingHeight: 0.0;
17
-
18
- varying vec2 v_texture_data;
19
- varying vec3 v_uvs;
20
- varying vec4 v_Color;
18
+ out vec2 v_texture_data;
19
+ out vec3 v_uvs;
20
+ out vec4 v_Color;
21
21
 
22
22
 
23
23
  #pragma include "projection"
@@ -46,7 +46,7 @@ void main() {
46
46
  float lightWeight = calc_lighting(pos);
47
47
  v_texture_data = vec2(a_Position.z,lightWeight);
48
48
 
49
- v_Color = vec4(a_Color.rgb * lightWeight, a_Color.w);
49
+ v_Color = vec4(a_Color.rgb * lightWeight, a_Color.w * opacity);
50
50
 
51
51
  setPickingColor(a_PickingColor);
52
52
  }
@@ -1,26 +1,20 @@
1
- precision highp float;
2
-
3
- #define ambientRatio 0.5
4
- #define diffuseRatio 0.3
5
- #define specularRatio 0.2
6
-
7
- attribute vec4 a_Color;
8
- attribute vec3 a_Position;
9
- attribute vec3 a_Normal;
10
- attribute float a_Size;
11
- attribute vec3 a_uvs;
12
- uniform mat4 u_ModelMatrix;
13
-
14
- uniform vec4 u_sourceColor;
15
- uniform vec4 u_targetColor;
16
- uniform float u_linearColor: 0;
17
-
18
- uniform float u_topsurface: 1.0;
19
- uniform float u_sidesurface: 1.0;
20
-
21
- varying vec4 v_Color;
22
- uniform float u_heightfixed: 0.0; // 默认不固定
23
- uniform float u_raisingHeight: 0.0;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 13) in vec3 a_Normal;
5
+ layout(location = 14) in vec3 a_uvs;
6
+
7
+ layout(std140) uniform commonUniforms {
8
+ vec4 u_sourceColor;
9
+ vec4 u_targetColor;
10
+ float u_linearColor;
11
+ float u_topsurface;
12
+ float u_sidesurface;
13
+ float u_heightfixed; // 默认不固定
14
+ float u_raisingHeight;
15
+ };
16
+
17
+ out vec4 v_Color;
24
18
 
25
19
  #pragma include "projection"
26
20
  #pragma include "light"
@@ -28,7 +22,7 @@ uniform float u_raisingHeight: 0.0;
28
22
 
29
23
  void main() {
30
24
 
31
- float isSide = a_Position.z;
25
+ float isSide = a_Position.z;
32
26
  float topU = a_uvs[0];
33
27
  float topV = 1.0 - a_uvs[1];
34
28
  float sidey = a_uvs[2];
@@ -1,19 +1,24 @@
1
1
  uniform sampler2D u_texture;
2
- uniform float u_opacity: 1.0;
3
- uniform vec4 u_sourceColor;
4
- uniform vec4 u_targetColor;
5
- uniform float u_linearColor: 0;
6
2
 
7
- uniform float u_topsurface: 1.0;
8
- uniform float u_sidesurface: 1.0;
3
+ layout(std140) uniform commonUniforms {
4
+ vec4 u_sourceColor;
5
+ vec4 u_targetColor;
6
+ float u_linearColor;
7
+ float u_topsurface;
8
+ float u_sidesurface;
9
+ float u_heightfixed; // 默认不固定
10
+ float u_raisingHeight;
11
+ };
9
12
 
10
- varying vec4 v_Color;
11
- varying vec3 v_uvs;
12
- varying vec2 v_texture_data;
13
+ in vec4 v_Color;
14
+ in vec3 v_uvs;
15
+ in vec2 v_texture_data;
13
16
 
14
17
 
15
18
  #pragma include "picking"
16
19
 
20
+ out vec4 outputColor;
21
+
17
22
  void main() {
18
23
  float opacity = u_opacity;
19
24
  float isSide = v_texture_data.x;
@@ -31,9 +36,9 @@ void main() {
31
36
  if(u_linearColor == 1.0) {
32
37
  vec4 linearColor = mix(u_targetColor, u_sourceColor, sidey);
33
38
  linearColor.rgb *= lightWeight;
34
- gl_FragColor = linearColor;
39
+ outputColor = linearColor;
35
40
  } else {
36
- gl_FragColor = v_Color;
41
+ outputColor = v_Color;
37
42
  }
38
43
  } else {
39
44
 
@@ -42,11 +47,10 @@ void main() {
42
47
  discard;
43
48
  }
44
49
 
45
- gl_FragColor = texture2D(u_texture, vec2(topU, topV));
46
- // gl_FragColor = vec4(1.0, 0., 0., 1.0);
50
+ outputColor = texture(SAMPLER_2D(u_texture), vec2(topU, topV));
47
51
  }
48
52
 
49
53
 
50
- gl_FragColor.a *= opacity;
51
- gl_FragColor = filterColor(gl_FragColor);
54
+ outputColor.a *= opacity;
55
+ outputColor = filterColor(outputColor);
52
56
  }
@@ -1,30 +1,24 @@
1
- precision highp float;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 13) in vec3 a_Normal;
5
+ layout(location = 14) in vec3 a_uvs;
2
6
 
3
- #define ambientRatio 0.5
4
- #define diffuseRatio 0.3
5
- #define specularRatio 0.2
6
7
 
7
- attribute vec4 a_Color;
8
- attribute vec3 a_Position;
9
- attribute vec3 a_Normal;
10
- attribute float a_Size;
11
- attribute vec3 a_uvs;
12
- uniform mat4 u_ModelMatrix;
8
+ layout(std140) uniform commonUniforms {
9
+ vec4 u_sourceColor;
10
+ vec4 u_targetColor;
11
+ float u_linearColor;
12
+ float u_topsurface;
13
+ float u_sidesurface;
14
+ float u_heightfixed; // 默认不固定
15
+ float u_raisingHeight;
16
+ };
13
17
 
14
- uniform sampler2D u_texture;
18
+ out vec4 v_Color;
15
19
 
16
-
17
- uniform vec4 u_sourceColor;
18
- uniform vec4 u_targetColor;
19
- uniform float u_topsurface: 1.0;
20
- uniform float u_sidesurface: 1.0;
21
- varying vec4 v_Color;
22
- uniform float u_heightfixed: 0.0; // 默认不固定
23
- uniform float u_raisingHeight: 0.0;
24
- uniform float u_linearColor: 0.0;
25
-
26
- varying vec2 v_texture_data;
27
- varying vec3 v_uvs;
20
+ out vec2 v_texture_data;
21
+ out vec3 v_uvs;
28
22
 
29
23
  #pragma include "projection"
30
24
  #pragma include "light"
@@ -36,7 +30,9 @@ void main() {
36
30
  float lightWeight = calc_lighting(pos);
37
31
  vec4 project_pos = project_position(pos);
38
32
  v_uvs = a_uvs;
39
-
33
+ v_Color = a_Color;
34
+ v_Color.a *= opacity;
35
+
40
36
  v_texture_data = vec2(a_Position.z, lightWeight);
41
37
 
42
38
  if(u_heightfixed > 0.0) { // 判断几何体是否固定高度
@@ -1,13 +1,9 @@
1
1
 
2
- uniform float u_opacity: 1.0;
3
- varying vec4 v_Color;
4
- varying vec2 v_texture_data;
5
-
6
-
2
+ in vec4 v_Color;
7
3
  #pragma include "picking"
8
-
4
+ out vec4 outputColor;
9
5
  void main() {
10
6
 
11
- gl_FragColor = v_Color;
12
- gl_FragColor = filterColor(gl_FragColor);
7
+ outputColor = v_Color;
8
+ outputColor = filterColor(outputColor);
13
9
  }
@@ -1,19 +1,9 @@
1
- precision highp float;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 9) in float a_Size;
4
+ layout(location = 13) in vec3 a_Normal;
2
5
 
3
- #define ambientRatio 0.5
4
- #define diffuseRatio 0.3
5
- #define specularRatio 0.2
6
-
7
- attribute vec4 a_Color;
8
- attribute vec3 a_Position;
9
- attribute vec3 a_Normal;
10
- attribute float a_Size;
11
- uniform mat4 u_ModelMatrix;
12
-
13
-
14
-
15
-
16
- varying vec4 v_Color;
6
+ out vec4 v_Color;
17
7
 
18
8
  #pragma include "projection"
19
9
  #pragma include "light"
@@ -22,8 +12,9 @@ varying vec4 v_Color;
22
12
  void main() {
23
13
 
24
14
  vec4 pos = vec4(a_Position.xy, a_Position.z * a_Size + (1.0 - a_Position.z) * extrusionBase, 1.0);
25
- float lightWeight = calc_lighting(pos);
15
+
26
16
  vec4 project_pos = project_position(pos);
17
+ float lightWeight = calc_lighting(project_pos);
27
18
  v_Color = a_Color;
28
19
  v_Color = vec4(v_Color.rgb * lightWeight, v_Color.w * opacity);
29
20
 
@@ -0,0 +1,7 @@
1
+ in vec4 v_color;
2
+ #pragma include "picking"
3
+ out vec4 outputColor;
4
+ void main() {
5
+ outputColor = v_color;
6
+ outputColor = filterColor(outputColor);
7
+ }
@@ -0,0 +1,20 @@
1
+
2
+ layout(std140) uniform commonUniforms {
3
+ float u_raisingHeight;
4
+ float u_opacitylinear;
5
+ float u_dir;
6
+ };
7
+
8
+ in vec3 v_linear;
9
+ in vec2 v_pos;
10
+ in vec4 v_color;
11
+ out vec4 outputColor;
12
+ #pragma include "picking"
13
+
14
+ void main() {
15
+ outputColor = v_color;
16
+ if(u_opacitylinear > 0.0) {
17
+ outputColor.a *= u_dir == 1.0 ? 1.0 - length(v_pos - v_linear.xy)/v_linear.z : length(v_pos - v_linear.xy)/v_linear.z;
18
+ }
19
+ outputColor = filterColor(outputColor);
20
+ }
@@ -1,28 +1,29 @@
1
- attribute vec4 a_Color;
2
- attribute vec3 a_Position;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
+ layout(location = 15) in vec3 a_linear;
3
4
 
4
- uniform mat4 u_ModelMatrix;
5
5
 
6
- uniform float u_raisingHeight: 0.0;
6
+ layout(std140) uniform commonUniforms {
7
+ float u_raisingHeight;
8
+ float u_opacitylinear;
9
+ float u_dir;
10
+ };
7
11
 
8
- varying vec4 v_Color;
9
12
 
13
+ out vec4 v_color;
10
14
 
11
15
  #pragma include "projection"
12
16
  #pragma include "picking"
13
17
 
14
- uniform float u_opacitylinear: 0.0;
15
-
16
- attribute vec3 a_linear;
17
- varying vec3 v_linear;
18
- varying vec2 v_pos;
18
+ out vec3 v_linear;
19
+ out vec2 v_pos;
19
20
 
20
21
  void main() {
21
22
  if(u_opacitylinear > 0.0) {
22
23
  v_linear = a_linear;
23
24
  v_pos = a_Position.xy;
24
25
  }
25
- v_Color = vec4(a_Color.xyz, a_Color.w * opacity);
26
+ v_color = vec4(a_Color.xyz, a_Color.w * opacity);
26
27
  vec4 project_pos = project_position(vec4(a_Position, 1.0));
27
28
  project_pos.z += u_raisingHeight;
28
29
 
@@ -1,12 +1,12 @@
1
- attribute vec4 a_Color;
2
- attribute vec3 a_Position;
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 1) in vec4 a_Color;
3
3
 
4
- uniform mat4 u_ModelMatrix;
4
+ layout(std140) uniform commonUniforms {
5
+ float u_raisingHeight;
6
+ };
5
7
 
6
8
 
7
- uniform float u_raisingHeight: 0.0;
8
-
9
- varying vec4 v_color;
9
+ out vec4 v_color;
10
10
 
11
11
 
12
12
  #pragma include "projection"
@@ -1,8 +1,13 @@
1
1
 
2
- uniform float u_time: 0.0;
3
- uniform float u_opacity: 1.0;
2
+ layout(std140) uniform commonUniforms {
3
+ vec4 u_watercolor;
4
+ vec4 u_watercolor2;
5
+ float u_time;
6
+ };
4
7
 
5
- varying vec2 v_uv;
8
+ in vec2 v_uv;
9
+ in float v_opacity;
10
+ out vec4 outputColor;
6
11
 
7
12
  float coast2water_fadedepth = 0.10;
8
13
  float large_waveheight = .750; // change to adjust the "heavy" waves
@@ -12,10 +17,7 @@ float small_wavesize = 0.5; // factor to ajust the small wave size
12
17
  float water_softlight_fact = 15.; // range [1..200] (should be << smaller than glossy-fact)
13
18
  float water_glossylight_fact= 120.; // range [1..200]
14
19
  float particle_amount = 70.;
15
- // vec3 watercolor = vec3(0.43, 0.60, 0.66); // 'transparent' low-water color (RGB)
16
- // vec3 watercolor2 = vec3(0.06, 0.07, 0.11); // deep-water color (RGB, should be darker than the low-water color)
17
- uniform vec4 u_watercolor;
18
- uniform vec4 u_watercolor2;
20
+
19
21
  vec3 water_specularcolor = vec3(1.3, 1.3, 0.9); // specular Color (RGB) of the water-highlights
20
22
  #define light vec3(-0., sin(u_time*0.5)*.5 + .35, 2.8) // position of the sun
21
23
 
@@ -39,11 +41,11 @@ float noise1( in vec2 x ) {
39
41
  }
40
42
 
41
43
  float noise(vec2 p) {
42
- return texture2D(u_texture2,p*vec2(1./256.)).x;
44
+ return texture(SAMPLER_2D(u_texture2),p*vec2(1./256.)).x;
43
45
  }
44
46
 
45
47
  vec4 highness(vec2 p) {
46
- vec4 t = texture2D(u_texture1,fract(p));
48
+ vec4 t = texture(SAMPLER_2D(u_texture1),fract(p));
47
49
  float clipped = -2.0-smoothstep(3.,10.,t.a)*6.9-smoothstep(10.,100.,t.a)*89.9-smoothstep(0.,10000.,t.a)*10000.0;
48
50
  return clamp(t, 0.0,3.0)+clamp(t/3.0-1.0, 0.0,1.0)+clamp(t/16.0-1.0, 0.0,1.0);
49
51
  }
@@ -109,7 +111,7 @@ vec4 color(vec2 p){
109
111
 
110
112
  vec3 terrain_map( vec2 p )
111
113
  {
112
- return color(p).rgb*0.75+0.25*vec3(0.7, .55, .4)+texture2D(u_texture3, fract(p*5.)).rgb*.5; // test-terrain is simply 'sandstone'
114
+ return color(p).rgb*0.75+0.25*vec3(0.7, .55, .4)+texture(SAMPLER_2D(u_texture3), fract(p*5.)).rgb*.5; // test-terrain is simply 'sandstone'
113
115
  }
114
116
 
115
117
  const mat2 m = mat2( 0.72, -1.60, 1.60, 0.72 );
@@ -241,7 +243,5 @@ void main() {
241
243
  col = mix(col, watercolor, coastfade);
242
244
  }
243
245
 
244
-
245
- float opacity = u_opacity;
246
- gl_FragColor = vec4(col, opacity);
246
+ outputColor = vec4(col, v_opacity);
247
247
  }
@@ -0,0 +1,22 @@
1
+ layout(location = 0) in vec3 a_Position;
2
+ layout(location = 14) in vec2 a_uv;
3
+
4
+ layout(std140) uniform commonUniforms {
5
+ vec4 u_watercolor;
6
+ vec4 u_watercolor2;
7
+ float u_time;
8
+ };
9
+
10
+
11
+ out vec2 v_uv;
12
+ out float v_opacity;
13
+
14
+ #pragma include "projection"
15
+
16
+ void main() {
17
+ v_uv = a_uv;
18
+ v_opacity = opacity;
19
+ vec4 project_pos = project_position(vec4(a_Position, 1.0));
20
+ gl_Position = project_common_position_to_clipspace_v2(vec4(project_pos.xyz, 1.0));
21
+ }
22
+