@openglobus/og 0.13.10 → 0.14.1

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 (83) hide show
  1. package/README.md +1 -4
  2. package/css/og.css +1 -1
  3. package/dist/@openglobus/og.css +1 -1
  4. package/dist/@openglobus/og.esm.js +2 -2
  5. package/dist/@openglobus/og.esm.js.map +1 -1
  6. package/dist/@openglobus/og.umd.js +2 -2
  7. package/dist/@openglobus/og.umd.js.map +1 -1
  8. package/package.json +2 -2
  9. package/src/og/Globe.js +14 -4
  10. package/src/og/camera/Camera.js +7 -7
  11. package/src/og/camera/PlanetCamera.js +1 -1
  12. package/src/og/control/LayerSwitcher.js +48 -31
  13. package/src/og/control/MouseNavigation.js +2 -2
  14. package/src/og/control/ScaleControl.js +30 -10
  15. package/src/og/control/SimpleSkyBackground.js +184 -0
  16. package/src/og/control/Sun.js +3 -2
  17. package/src/og/ellipsoid/Ellipsoid.js +119 -92
  18. package/src/og/ellipsoid/wgs84.js +13 -13
  19. package/src/og/entity/Entity.js +3 -3
  20. package/src/og/entity/GeometryHandler.js +1341 -1337
  21. package/src/og/entity/LabelHandler.js +1 -4
  22. package/src/og/entity/LabelWorker.js +10 -13
  23. package/src/og/entity/Polyline.js +0 -16
  24. package/src/og/entity/Ray.js +0 -10
  25. package/src/og/entity/RayHandler.js +3 -44
  26. package/src/og/entity/Strip.js +1 -6
  27. package/src/og/index.js +106 -95
  28. package/src/og/layer/GeoVideo.js +1 -0
  29. package/src/og/layer/Layer.js +62 -3
  30. package/src/og/layer/XYZ.js +4 -3
  31. package/src/og/math/Line3.js +140 -139
  32. package/src/og/math/Plane.js +118 -117
  33. package/src/og/math/Ray.js +242 -239
  34. package/src/og/math/Vec3.js +56 -37
  35. package/src/og/math/Vec4.js +3 -4
  36. package/src/og/math.js +21 -21
  37. package/src/og/quadTree/EarthQuadTreeStrategy.js +29 -0
  38. package/src/og/quadTree/MarsQuadTreeStrategy.js +27 -0
  39. package/src/og/quadTree/Node.js +55 -218
  40. package/src/og/quadTree/QuadTreeStrategy.js +93 -0
  41. package/src/og/quadTree/Wgs84QuadTreeStrategy.js +26 -0
  42. package/src/og/renderer/Renderer.js +13 -12
  43. package/src/og/renderer/RendererEvents.js +1065 -1065
  44. package/src/og/scene/Planet.js +84 -273
  45. package/src/og/segment/Segment.js +18 -25
  46. package/src/og/segment/SegmentLonLat.js +34 -31
  47. package/src/og/segment/SegmentLonLatWgs84.js +41 -0
  48. package/src/og/shaders/ray.js +13 -6
  49. package/src/og/shaders/toneMapping.js +5 -5
  50. package/src/og/terrain/GlobusTerrain.js +3 -2
  51. package/src/og/terrain/MapboxTerrain.js +231 -52
  52. package/src/og/utils/quadTreeType.js +11 -0
  53. package/src/og/utils/shared.js +942 -942
  54. package/src/og/webgl/Handler.js +22 -9
  55. package/types/Globe.d.ts +7 -0
  56. package/types/camera/Camera.d.ts +3 -3
  57. package/types/camera/PlanetCamera.d.ts +1 -1
  58. package/types/control/LayerSwitcher.d.ts +1 -1
  59. package/types/control/ScaleControl.d.ts +2 -1
  60. package/types/control/SimpleSkyBackground.d.ts +11 -0
  61. package/types/control/Sun.d.ts +2 -1
  62. package/types/ellipsoid/Ellipsoid.d.ts +3 -2
  63. package/types/entity/LabelWorker.d.ts +1 -1
  64. package/types/entity/Ray.d.ts +0 -3
  65. package/types/entity/RayHandler.d.ts +0 -4
  66. package/types/index.d.ts +6 -1
  67. package/types/layer/Layer.d.ts +8 -0
  68. package/types/math/Vec3.d.ts +19 -16
  69. package/types/math/Vec4.d.ts +2 -3
  70. package/types/math.d.ts +20 -20
  71. package/types/quadTree/EarthQuadTreeStrategy.d.ts +3 -0
  72. package/types/quadTree/MarsQuadTreeStrategy.d.ts +3 -0
  73. package/types/quadTree/Node.d.ts +0 -1
  74. package/types/quadTree/QuadTreeStrategy.d.ts +21 -0
  75. package/types/quadTree/Wgs84QuadTreeStrategy.d.ts +3 -0
  76. package/types/renderer/Renderer.d.ts +1 -1
  77. package/types/scene/Planet.d.ts +6 -24
  78. package/types/segment/Segment.d.ts +4 -4
  79. package/types/segment/SegmentLonLat.d.ts +6 -2
  80. package/types/segment/SegmentLonLatWgs84.d.ts +4 -0
  81. package/types/terrain/MapboxTerrain.d.ts +2 -1
  82. package/types/utils/quadTreeType.d.ts +8 -0
  83. package/types/webgl/Handler.d.ts +4 -1
@@ -209,6 +209,8 @@ class Renderer {
209
209
 
210
210
  this._currentOutput = "screen";
211
211
 
212
+ this._fnScreenFrame = null;
213
+
212
214
  this.labelWorker = new LabelWorker(4);
213
215
  }
214
216
 
@@ -717,28 +719,27 @@ class Renderer {
717
719
  let sfb = this.sceneFramebuffer;
718
720
  sfb.activate();
719
721
 
720
- let h = this.handler;
722
+ let h = this.handler,
723
+ gl = h.gl;
721
724
 
722
- h.gl.clearColor(
723
- this.backgroundColor.x,
724
- this.backgroundColor.y,
725
- this.backgroundColor.z,
726
- 1.0
727
- );
728
- h.gl.clear(h.gl.COLOR_BUFFER_BIT | h.gl.DEPTH_BUFFER_BIT);
725
+ gl.blendEquation(gl.FUNC_ADD);
726
+ gl.blendFunc(gl.ONE, gl.ONE_MINUS_SRC_ALPHA);
727
+ gl.enable(gl.BLEND);
728
+ gl.clearColor(0.0, 0.0, 0.0, 0.0);
729
+ gl.clear(gl.COLOR_BUFFER_BIT | gl.DEPTH_BUFFER_BIT);
729
730
 
730
731
  e.dispatch(e.draw, this);
731
732
 
732
733
  let frustums = this.activeCamera.frustums;
733
734
 
734
- let pointerEvent = e.pointerEvent() || this.activeCamera.isMoved;
735
+ let pointerEvent = e.pointerEvent() || this.activeCamera.isMoving;
735
736
 
736
737
  // Rendering scene nodes and entityCollections
737
738
  let rn = this._renderNodesArr;
738
739
  let k = frustums.length;
739
740
  while (k--) {
740
741
  this.activeCamera.setCurrentFrustum(k);
741
- h.gl.clear(h.gl.DEPTH_BUFFER_BIT);
742
+ gl.clear(gl.DEPTH_BUFFER_BIT);
742
743
  let i = rn.length;
743
744
  while (i--) {
744
745
  rn[i].drawNode();
@@ -759,7 +760,6 @@ class Renderer {
759
760
  if (h.isWebGl2()) {
760
761
  this._drawDepthBuffer();
761
762
  }
762
-
763
763
  this._readPickingColor();
764
764
  }
765
765
 
@@ -802,10 +802,10 @@ class Renderer {
802
802
 
803
803
  this.toneMappingFramebuffer.deactivate();
804
804
 
805
+ // SCREEN PASS
805
806
  sh = h.programs.screenFrame;
806
807
  p = sh._program;
807
808
  gl = h.gl;
808
-
809
809
  sh.activate();
810
810
  gl.activeTexture(gl.TEXTURE0);
811
811
  gl.bindTexture(gl.TEXTURE_2D, this.outputTexture);
@@ -816,6 +816,7 @@ class Renderer {
816
816
  }
817
817
 
818
818
  _screenFrameNoMSAA() {
819
+
819
820
  var h = this.handler;
820
821
  var sh = h.programs.screenFrame,
821
822
  p = sh._program,