@woosh/meep-engine 2.106.1 → 2.107.0

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 (587) hide show
  1. package/build/meep.cjs +1990 -2364
  2. package/build/meep.min.js +1 -1
  3. package/build/meep.module.js +1990 -2364
  4. package/editor/Editor.js +55 -60
  5. package/editor/SelectionVisualizer.js +111 -109
  6. package/editor/actions/concrete/ComponentAddAction.js +0 -3
  7. package/editor/actions/concrete/ComponentRemoveAction.js +0 -4
  8. package/editor/actions/concrete/EntityCreateAction.js +0 -3
  9. package/editor/actions/concrete/EntityRemoveAction.js +0 -4
  10. package/editor/actions/concrete/SelectionAddAction.js +0 -3
  11. package/editor/actions/concrete/SelectionClearAction.js +0 -3
  12. package/editor/actions/concrete/SelectionRemoveAction.js +0 -3
  13. package/editor/ecs/EditorEntity.js +8 -6
  14. package/editor/tools/SelectionTool.js +0 -5
  15. package/editor/tools/TopDownCameraControlTool.js +2 -5
  16. package/editor/tools/TransformTool.js +137 -136
  17. package/editor/tools/engine/Tool.js +1 -6
  18. package/editor/tools/engine/ToolEngine.js +145 -148
  19. package/editor/tools/v2/TransformControls.js +25 -24
  20. package/editor/view/EditorView.js +0 -5
  21. package/editor/view/ecs/ComponentControlFactory.js +37 -40
  22. package/editor/view/ecs/EntityEditor.js +0 -3
  23. package/editor/view/ecs/EntityList.js +6 -11
  24. package/editor/view/ecs/components/MeshController.js +4 -7
  25. package/editor/view/ecs/components/TransformController.js +3 -9
  26. package/editor/view/tools/ToolView.js +2 -8
  27. package/package.json +1 -1
  28. package/src/core/IdPool.d.ts.map +1 -1
  29. package/src/core/IdPool.js +0 -5
  30. package/src/core/UUID.d.ts.map +1 -1
  31. package/src/core/UUID.js +0 -4
  32. package/src/core/binary/BitSet.d.ts +17 -14
  33. package/src/core/binary/BitSet.d.ts.map +1 -1
  34. package/src/core/binary/BitSet.js +411 -412
  35. package/src/core/binary/type/Field.d.ts +0 -8
  36. package/src/core/binary/type/Field.d.ts.map +1 -1
  37. package/src/core/binary/type/Field.js +16 -19
  38. package/src/core/binary/type/MultiplicityType.js +0 -4
  39. package/src/core/binary/type/PrimitiveTypes.d.ts.map +1 -1
  40. package/src/core/binary/type/PrimitiveTypes.js +0 -4
  41. package/src/core/binary/type/Type.d.ts +0 -6
  42. package/src/core/binary/type/Type.d.ts.map +1 -1
  43. package/src/core/binary/type/Type.js +63 -64
  44. package/src/core/binary/type/TypeBuilder.d.ts +0 -1
  45. package/src/core/binary/type/TypeBuilder.d.ts.map +1 -1
  46. package/src/core/binary/type/TypeBuilder.js +15 -18
  47. package/src/core/binary/type/TypeRegistry.d.ts +6 -4
  48. package/src/core/binary/type/TypeRegistry.d.ts.map +1 -1
  49. package/src/core/binary/type/TypeRegistry.js +38 -42
  50. package/src/core/bvh2/visual/BVHGeometry.d.ts.map +1 -1
  51. package/src/core/bvh2/visual/BVHGeometry.js +0 -3
  52. package/src/core/codegen/LineBuilder.d.ts.map +1 -1
  53. package/src/core/codegen/LineBuilder.js +0 -5
  54. package/src/core/collection/set/ArraySet.d.ts.map +1 -1
  55. package/src/core/collection/set/ArraySet.js +1 -5
  56. package/src/core/collection/table/RowFirstTable.d.ts.map +1 -1
  57. package/src/core/collection/table/RowFirstTable.js +0 -5
  58. package/src/core/color/parse_color.d.ts.map +1 -1
  59. package/src/core/color/parse_color.js +1 -5
  60. package/src/core/geom/2d/Rectangle.d.ts.map +1 -1
  61. package/src/core/geom/2d/Rectangle.js +0 -4
  62. package/src/core/geom/2d/aabb/AABB2.d.ts.map +1 -1
  63. package/src/core/geom/2d/aabb/AABB2.js +0 -6
  64. package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
  65. package/src/core/geom/3d/aabb/AABB3.js +0 -5
  66. package/src/core/geom/3d/morton/Morton.d.ts.map +1 -1
  67. package/src/core/geom/3d/morton/Morton.js +0 -3
  68. package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.js +11 -11
  69. package/src/core/geom/Quaternion.d.ts.map +1 -1
  70. package/src/core/geom/Quaternion.js +0 -5
  71. package/src/core/geom/Vector4.d.ts.map +1 -1
  72. package/src/core/geom/Vector4.js +0 -4
  73. package/src/core/graph/Edge.d.ts.map +1 -1
  74. package/src/core/graph/Edge.js +0 -5
  75. package/src/core/graph/WeightedEdge.d.ts.map +1 -1
  76. package/src/core/json/JsonUtils.d.ts.map +1 -1
  77. package/src/core/json/JsonUtils.js +0 -4
  78. package/src/core/math/random/MersenneTwister.d.ts +1 -2
  79. package/src/core/math/random/MersenneTwister.d.ts.map +1 -1
  80. package/src/core/math/random/MersenneTwister.js +134 -133
  81. package/src/core/model/BooleanVector3.d.ts.map +1 -1
  82. package/src/core/model/BooleanVector3.js +108 -108
  83. package/src/core/model/BoundedValue.d.ts +116 -0
  84. package/src/core/model/BoundedValue.d.ts.map +1 -0
  85. package/src/core/model/BoundedValue.js +214 -217
  86. package/src/core/model/LinearValue.d.ts +84 -0
  87. package/src/core/model/LinearValue.d.ts.map +1 -0
  88. package/src/core/model/LinearValue.js +116 -117
  89. package/src/core/model/ObservedEnum.d.ts.map +1 -1
  90. package/src/core/model/ObservedEnum.js +82 -80
  91. package/src/core/model/ObservedValue.d.ts +10 -17
  92. package/src/core/model/ObservedValue.d.ts.map +1 -1
  93. package/src/core/model/ObservedValue.js +85 -88
  94. package/src/core/model/object/ObjectPoolFactory.d.ts +1 -9
  95. package/src/core/model/object/ObjectPoolFactory.d.ts.map +1 -1
  96. package/src/core/model/object/ObjectPoolFactory.js +73 -73
  97. package/src/core/model/scheme/Schema.d.ts +0 -6
  98. package/src/core/model/scheme/Schema.d.ts.map +1 -1
  99. package/src/core/model/scheme/Schema.js +50 -48
  100. package/src/core/model/scheme/SchemeRegistry.d.ts +6 -1
  101. package/src/core/model/scheme/SchemeRegistry.d.ts.map +1 -1
  102. package/src/core/model/scheme/SchemeRegistry.js +46 -44
  103. package/src/core/process/Future.d.ts +14 -9
  104. package/src/core/process/Future.d.ts.map +1 -1
  105. package/src/core/process/Future.js +96 -98
  106. package/src/core/process/executor/ConcurrentExecutor.d.ts.map +1 -1
  107. package/src/core/process/executor/ConcurrentExecutor.js +0 -3
  108. package/src/core/process/task/Task.d.ts.map +1 -1
  109. package/src/core/process/task/Task.js +0 -5
  110. package/src/core/process/task/TaskGroup.d.ts.map +1 -1
  111. package/src/core/process/task/TaskGroup.js +178 -180
  112. package/src/core/process/task/TaskSignal.d.ts.map +1 -1
  113. package/src/core/process/task/TaskSignal.js +0 -5
  114. package/src/core/process/task/TaskState.d.ts.map +1 -1
  115. package/src/core/process/task/TaskState.js +0 -4
  116. package/src/core/process/worker/WorkerBuilder.d.ts.map +1 -1
  117. package/src/core/process/worker/WorkerBuilder.js +0 -5
  118. package/src/core/process/worker/WorkerProxy.d.ts.map +1 -1
  119. package/src/core/process/worker/WorkerProxy.js +0 -5
  120. package/src/engine/Clock.d.ts.map +1 -1
  121. package/src/engine/Clock.js +0 -5
  122. package/src/engine/Engine.js +4 -4
  123. package/src/engine/EntityCreator.d.ts.map +1 -1
  124. package/src/engine/EntityCreator.js +7 -10
  125. package/src/engine/animation/AnimatedActions.d.ts.map +1 -1
  126. package/src/engine/animation/AnimatedActions.js +0 -5
  127. package/src/engine/animation/Animations.d.ts.map +1 -1
  128. package/src/engine/animation/Animations.js +1 -6
  129. package/src/engine/animation/EntityAnimation.js +1 -4
  130. package/src/engine/animation/Tween.js +1 -4
  131. package/src/engine/animation/keyed2/AnimationTrack.d.ts +0 -6
  132. package/src/engine/animation/keyed2/AnimationTrack.d.ts.map +1 -1
  133. package/src/engine/animation/keyed2/AnimationTrack.js +154 -152
  134. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts +0 -10
  135. package/src/engine/animation/keyed2/AnimationTrackPlayback.d.ts.map +1 -1
  136. package/src/engine/animation/keyed2/AnimationTrackPlayback.js +173 -171
  137. package/src/engine/asset/AssetManager.d.ts.map +1 -1
  138. package/src/engine/asset/AssetManager.js +0 -5
  139. package/src/engine/asset/preloader/AssetLevel.js +0 -3
  140. package/src/engine/ecs/EntityManager.d.ts.map +1 -1
  141. package/src/engine/ecs/EntityManager.js +0 -4
  142. package/src/engine/ecs/System.d.ts.map +1 -1
  143. package/src/engine/ecs/System.js +0 -5
  144. package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
  145. package/src/engine/ecs/animation/Animation.js +1 -19
  146. package/src/engine/ecs/components/Motion.d.ts.map +1 -1
  147. package/src/engine/ecs/components/Motion.js +0 -5
  148. package/src/engine/ecs/components/PropertySet.d.ts +8 -1
  149. package/src/engine/ecs/components/PropertySet.d.ts.map +1 -1
  150. package/src/engine/ecs/components/PropertySet.js +87 -83
  151. package/src/engine/ecs/components/Script.d.ts +0 -16
  152. package/src/engine/ecs/components/Script.d.ts.map +1 -1
  153. package/src/engine/ecs/components/Script.js +14 -18
  154. package/src/engine/ecs/components/Tag.d.ts.map +1 -1
  155. package/src/engine/ecs/components/Tag.js +4 -5
  156. package/src/engine/ecs/components/Timer.d.ts +0 -5
  157. package/src/engine/ecs/components/Timer.d.ts.map +1 -1
  158. package/src/engine/ecs/components/Timer.js +0 -5
  159. package/src/engine/ecs/grid/HeightMap2NormalMap.d.ts.map +1 -1
  160. package/src/engine/ecs/grid/HeightMap2NormalMap.js +2 -6
  161. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.d.ts.map +1 -1
  162. package/src/engine/ecs/grid/HeightSampler2NormalSamplerSoft.js +0 -3
  163. package/src/engine/ecs/grid/NormalMap2AOMap.d.ts.map +1 -1
  164. package/src/engine/ecs/grid/NormalMap2AOMap.js +3 -8
  165. package/src/engine/ecs/gui/GUIElement.d.ts.map +1 -1
  166. package/src/engine/ecs/gui/GUIElement.js +0 -3
  167. package/src/engine/ecs/gui/GUIElementSystem.d.ts.map +1 -1
  168. package/src/engine/ecs/gui/GUIElementSystem.js +0 -4
  169. package/src/engine/ecs/gui/hud/HeadsUpDisplay.d.ts.map +1 -1
  170. package/src/engine/ecs/gui/hud/HeadsUpDisplay.js +0 -7
  171. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.d.ts.map +1 -1
  172. package/src/engine/ecs/gui/hud/HeadsUpDisplaySystem.js +0 -5
  173. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.d.ts.map +1 -1
  174. package/src/engine/ecs/gui/menu/radial/RadialContextMenu.js +5 -8
  175. package/src/engine/ecs/gui/position/ViewportPosition.d.ts.map +1 -1
  176. package/src/engine/ecs/gui/position/ViewportPosition.js +0 -4
  177. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts +1 -2
  178. package/src/engine/ecs/gui/position/ViewportPositionSystem.d.ts.map +1 -1
  179. package/src/engine/ecs/gui/position/ViewportPositionSystem.js +6 -10
  180. package/src/engine/ecs/ik/IKProblem.d.ts +1 -2
  181. package/src/engine/ecs/ik/IKProblem.d.ts.map +1 -1
  182. package/src/engine/ecs/renderable/RenderSystem.d.ts.map +1 -1
  183. package/src/engine/ecs/renderable/RenderSystem.js +0 -3
  184. package/src/engine/ecs/renderable/Renderable.d.ts.map +1 -1
  185. package/src/engine/ecs/renderable/Renderable.js +0 -5
  186. package/src/engine/ecs/systems/AnimationSystem.d.ts.map +1 -1
  187. package/src/engine/ecs/systems/AnimationSystem.js +9 -17
  188. package/src/engine/ecs/systems/MotionSystem.d.ts.map +1 -1
  189. package/src/engine/ecs/systems/MotionSystem.js +1 -6
  190. package/src/engine/ecs/systems/ScriptSystem.d.ts.map +1 -1
  191. package/src/engine/ecs/systems/ScriptSystem.js +1 -6
  192. package/src/engine/ecs/systems/TimerSystem.d.ts.map +1 -1
  193. package/src/engine/ecs/systems/TimerSystem.js +1 -6
  194. package/src/engine/ecs/team/Team.d.ts.map +1 -1
  195. package/src/engine/ecs/team/Team.js +0 -3
  196. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.d.ts.map +1 -1
  197. package/src/engine/ecs/terrain/BufferedGeometryArraysBuilder.js +0 -5
  198. package/src/engine/ecs/terrain/TerrainClouds.d.ts.map +1 -1
  199. package/src/engine/ecs/terrain/TerrainClouds.js +0 -5
  200. package/src/engine/ecs/terrain/ecs/Terrain.d.ts.map +1 -1
  201. package/src/engine/ecs/terrain/ecs/Terrain.js +0 -5
  202. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.d.ts.map +1 -1
  203. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrain.js +0 -3
  204. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.d.ts.map +1 -1
  205. package/src/engine/ecs/terrain/ecs/cling/ClingToTerrainSystem.js +11 -14
  206. package/src/engine/ecs/terrain/overlay/TerrainOverlay.d.ts.map +1 -1
  207. package/src/engine/ecs/terrain/overlay/TerrainOverlay.js +0 -5
  208. package/src/engine/ecs/terrain/tiles/TerrainTile.d.ts.map +1 -1
  209. package/src/engine/ecs/terrain/tiles/TerrainTile.js +0 -5
  210. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts +1 -1
  211. package/src/engine/ecs/terrain/tiles/TerrainTileManager.d.ts.map +1 -1
  212. package/src/engine/ecs/terrain/tiles/TerrainTileManager.js +0 -3
  213. package/src/engine/ecs/terrain/tiles/TileBuildWorker.js +0 -4
  214. package/src/engine/ecs/transform/Transform.d.ts.map +1 -1
  215. package/src/engine/ecs/transform/Transform.js +0 -4
  216. package/src/engine/google/gapi.js +0 -4
  217. package/src/engine/graphics/FrameThrottle.d.ts +0 -4
  218. package/src/engine/graphics/FrameThrottle.d.ts.map +1 -1
  219. package/src/engine/graphics/FrameThrottle.js +0 -5
  220. package/src/engine/graphics/GraphicsEngine.d.ts.map +1 -1
  221. package/src/engine/graphics/GraphicsEngine.js +1 -6
  222. package/src/engine/graphics/composit/LayerCompositer.d.ts.map +1 -1
  223. package/src/engine/graphics/composit/LayerCompositer.js +2 -5
  224. package/src/engine/graphics/ecs/animation/AnimationController.d.ts.map +1 -1
  225. package/src/engine/graphics/ecs/animation/AnimationController.js +0 -5
  226. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.d.ts.map +1 -1
  227. package/src/engine/graphics/ecs/animation/AnimationControllerSystem.js +2 -7
  228. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts +0 -1
  229. package/src/engine/graphics/ecs/animation/AnimationRule.d.ts.map +1 -1
  230. package/src/engine/graphics/ecs/animation/AnimationRule.js +70 -66
  231. package/src/engine/graphics/ecs/camera/Camera.d.ts.map +1 -1
  232. package/src/engine/graphics/ecs/camera/Camera.js +0 -5
  233. package/src/engine/graphics/ecs/camera/CameraSystem.d.ts.map +1 -1
  234. package/src/engine/graphics/ecs/camera/CameraSystem.js +0 -5
  235. package/src/engine/graphics/ecs/camera/FrustumProjector.d.ts.map +1 -1
  236. package/src/engine/graphics/ecs/camera/FrustumProjector.js +0 -5
  237. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.d.ts.map +1 -1
  238. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraController.js +4 -9
  239. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.d.ts.map +1 -1
  240. package/src/engine/graphics/ecs/camera/topdown/TopDownCameraControllerSystem.js +3 -8
  241. package/src/engine/graphics/ecs/highlight/Highlight.d.ts.map +1 -1
  242. package/src/engine/graphics/ecs/highlight/Highlight.js +0 -3
  243. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.d.ts.map +1 -1
  244. package/src/engine/graphics/ecs/highlight/system/MeshHighlightSystem.js +3 -8
  245. package/src/engine/graphics/ecs/light/Light.d.ts.map +1 -1
  246. package/src/engine/graphics/ecs/light/Light.js +2 -6
  247. package/src/engine/graphics/ecs/light/LightSystem.d.ts.map +1 -1
  248. package/src/engine/graphics/ecs/light/LightSystem.js +0 -5
  249. package/src/engine/graphics/ecs/mesh/Mesh.d.ts.map +1 -1
  250. package/src/engine/graphics/ecs/mesh/Mesh.js +0 -3
  251. package/src/engine/graphics/ecs/mesh/MeshSystem.d.ts.map +1 -1
  252. package/src/engine/graphics/ecs/mesh/MeshSystem.js +0 -5
  253. package/src/engine/graphics/ecs/trail2d/Trail2D.d.ts.map +1 -1
  254. package/src/engine/graphics/ecs/trail2d/Trail2D.js +0 -5
  255. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.d.ts.map +1 -1
  256. package/src/engine/graphics/ecs/trail2d/Trail2DSystem.js +0 -5
  257. package/src/engine/graphics/ecs/water/Water.d.ts.map +1 -1
  258. package/src/engine/graphics/ecs/water/Water.js +0 -5
  259. package/src/engine/graphics/ecs/water/WaterSystem.d.ts.map +1 -1
  260. package/src/engine/graphics/ecs/water/WaterSystem.js +0 -3
  261. package/src/engine/graphics/filter/ImageFilter.d.ts.map +1 -1
  262. package/src/engine/graphics/filter/ImageFilter.js +0 -5
  263. package/src/engine/graphics/geometry/BufferGeometryWrap.js +1 -3
  264. package/src/engine/graphics/geometry/buffered/ComputeNormals.d.ts.map +1 -1
  265. package/src/engine/graphics/geometry/buffered/ComputeNormals.js +0 -5
  266. package/src/engine/graphics/geometry/ribbon/Ribbon.d.ts.map +1 -1
  267. package/src/engine/graphics/geometry/ribbon/Ribbon.js +1 -4
  268. package/src/engine/graphics/material/SplatMaterial.d.ts.map +1 -1
  269. package/src/engine/graphics/material/SplatMaterial.js +0 -3
  270. package/src/engine/graphics/material/WaterMaterial.d.ts.map +1 -1
  271. package/src/engine/graphics/material/WaterMaterial.js +0 -3
  272. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts +0 -5
  273. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.d.ts.map +1 -1
  274. package/src/engine/graphics/particles/particular/engine/MovingBoundingBox.js +114 -114
  275. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts +0 -1
  276. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.d.ts.map +1 -1
  277. package/src/engine/graphics/particles/particular/engine/emitter/ParticleLayer.js +347 -348
  278. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts +1 -3
  279. package/src/engine/graphics/particles/particular/engine/emitter/ParticlePool.d.ts.map +1 -1
  280. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts +0 -1
  281. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.d.ts.map +1 -1
  282. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSet.js +110 -111
  283. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts +0 -9
  284. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.d.ts.map +1 -1
  285. package/src/engine/graphics/particles/particular/engine/parameter/ParameterSheet.js +70 -66
  286. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts +0 -5
  287. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.d.ts.map +1 -1
  288. package/src/engine/graphics/particles/particular/engine/parameter/ParameterTrackSet.js +82 -82
  289. package/src/engine/graphics/particles/particular/group/Operation.d.ts +0 -7
  290. package/src/engine/graphics/particles/particular/group/Operation.d.ts.map +1 -1
  291. package/src/engine/graphics/particles/particular/group/Operation.js +16 -14
  292. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts +0 -9
  293. package/src/engine/graphics/particles/particular/group/ParticleAttribute.d.ts.map +1 -1
  294. package/src/engine/graphics/particles/particular/group/ParticleAttribute.js +23 -21
  295. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts +2 -10
  296. package/src/engine/graphics/particles/particular/group/ParticleGroup.d.ts.map +1 -1
  297. package/src/engine/graphics/particles/particular/group/ParticleGroup.js +463 -464
  298. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts +0 -2
  299. package/src/engine/graphics/particles/particular/group/ParticleSpecification.d.ts.map +1 -1
  300. package/src/engine/graphics/particles/particular/group/ParticleSpecification.js +39 -33
  301. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts +6 -1
  302. package/src/engine/graphics/render/buffer/FrameBufferManager.d.ts.map +1 -1
  303. package/src/engine/graphics/render/buffer/FrameBufferManager.js +166 -163
  304. package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +1 -1
  305. package/src/engine/graphics/render/layers/RenderLayer.js +0 -5
  306. package/src/engine/graphics/shaders/AlphaBlendShader.js +1 -3
  307. package/src/engine/graphics/shaders/AmbientOcclusionShader.d.ts.map +1 -1
  308. package/src/engine/graphics/shaders/AmbientOcclusionShader.js +0 -3
  309. package/src/engine/graphics/shaders/ClearShader.js +1 -3
  310. package/src/engine/graphics/shaders/CopyShader.d.ts +0 -3
  311. package/src/engine/graphics/shaders/CopyShader.d.ts.map +1 -1
  312. package/src/engine/graphics/shaders/CopyShader.js +1 -3
  313. package/src/engine/graphics/shaders/NormalMapShader2.d.ts.map +1 -1
  314. package/src/engine/graphics/shaders/NormalMapShader2.js +0 -5
  315. package/src/engine/graphics/shaders/TerrainShader.js +0 -4
  316. package/src/engine/graphics/shaders/WaterShader.js +0 -3
  317. package/src/engine/graphics/shaders/lib/ShaderChunks.js +1 -3
  318. package/src/engine/graphics/texture/Canvas2Sampler2D.d.ts.map +1 -1
  319. package/src/engine/graphics/texture/Canvas2Sampler2D.js +1 -4
  320. package/src/engine/graphics/texture/CheckersTexture.d.ts.map +1 -1
  321. package/src/engine/graphics/texture/CheckersTexture.js +0 -3
  322. package/src/engine/graphics/texture/CheckersTextureURI.js +1 -3
  323. package/src/engine/graphics/texture/sampler/Sampler2D.d.ts.map +1 -1
  324. package/src/engine/graphics/texture/sampler/Sampler2D.js +0 -5
  325. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.d.ts.map +1 -1
  326. package/src/engine/graphics/texture/sampler/Sampler2D2Canvas.js +0 -5
  327. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.d.ts.map +1 -1
  328. package/src/engine/graphics/texture/sampler/Sampler2D2Texture.js +0 -3
  329. package/src/engine/graphics/three/ThreeFactory.d.ts.map +1 -1
  330. package/src/engine/graphics/three/ThreeFactory.js +0 -5
  331. package/src/engine/grid/grid2transform/GridPosition2Transform.d.ts.map +1 -1
  332. package/src/engine/grid/grid2transform/GridPosition2Transform.js +0 -4
  333. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.d.ts.map +1 -1
  334. package/src/engine/grid/grid2transform/GridPosition2TransformSystem.js +4 -7
  335. package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
  336. package/src/engine/grid/obstacle/GridObstacle.js +0 -5
  337. package/src/engine/grid/position/GridPosition.d.ts.map +1 -1
  338. package/src/engine/grid/position/GridPosition.js +0 -4
  339. package/src/engine/grid/position/GridPositionSystem.d.ts.map +1 -1
  340. package/src/engine/grid/position/GridPositionSystem.js +1 -4
  341. package/src/engine/input/devices/KeyCodes.d.ts.map +1 -1
  342. package/src/engine/input/devices/KeyCodes.js +3 -4
  343. package/src/engine/input/devices/KeyboardDevice.d.ts.map +1 -1
  344. package/src/engine/input/devices/KeyboardDevice.js +0 -4
  345. package/src/engine/input/devices/PointerDevice.d.ts.map +1 -1
  346. package/src/engine/input/devices/PointerDevice.js +0 -3
  347. package/src/engine/input/ecs/components/InputController.d.ts.map +1 -1
  348. package/src/engine/input/ecs/components/InputController.js +1 -5
  349. package/src/engine/input/ecs/controllers/KeyboardCameraController.d.ts.map +1 -1
  350. package/src/engine/input/ecs/controllers/KeyboardCameraController.js +5 -10
  351. package/src/engine/input/ecs/systems/InputControllerSystem.d.ts.map +1 -1
  352. package/src/engine/input/ecs/systems/InputControllerSystem.js +78 -78
  353. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.d.ts.map +1 -1
  354. package/src/engine/input/ecs/util/TopDownCameraControllerHelper.js +3 -6
  355. package/src/engine/intelligence/mcts/MonteCarlo.spec.js +78 -76
  356. package/src/engine/navigation/ecs/components/Path.d.ts.map +1 -1
  357. package/src/engine/navigation/ecs/components/Path.js +0 -5
  358. package/src/engine/navigation/ecs/path_following/PathFollower.d.ts.map +1 -1
  359. package/src/engine/navigation/ecs/path_following/PathFollower.js +1 -6
  360. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.d.ts.map +1 -1
  361. package/src/engine/navigation/ecs/path_following/PathFollowingSystem.js +5 -12
  362. package/src/engine/network/DataChannel.js +284 -284
  363. package/src/engine/network/xhr.d.ts +0 -3
  364. package/src/engine/network/xhr.d.ts.map +1 -1
  365. package/src/engine/network/xhr.js +0 -3
  366. package/src/engine/notify/Notification.d.ts +1 -1
  367. package/src/engine/notify/Notification.d.ts.map +1 -1
  368. package/src/engine/notify/Notification.js +1 -6
  369. package/src/engine/notify/NotificationLog.d.ts.map +1 -1
  370. package/src/engine/notify/NotificationLog.js +0 -5
  371. package/src/engine/options/OptionsView.d.ts.map +1 -1
  372. package/src/engine/options/OptionsView.js +1 -6
  373. package/src/engine/physics/ammo/Body.js +0 -3
  374. package/src/engine/physics/ammo/PhysicsWorker.d.ts.map +1 -1
  375. package/src/engine/physics/ammo/PhysicsWorker.js +1 -3
  376. package/src/engine/physics/ammo/World.d.ts +68 -0
  377. package/src/engine/physics/ammo/World.d.ts.map +1 -0
  378. package/src/engine/physics/ammo/World.js +277 -278
  379. package/src/engine/physics/ammo/shapes/BoxShape.js +0 -3
  380. package/src/engine/physics/ammo/shapes/CapsuleShape.js +0 -3
  381. package/src/engine/physics/ammo/shapes/MeshShape.js +0 -3
  382. package/src/engine/physics/ammo/shapes/PlaneShape.js +0 -3
  383. package/src/engine/physics/ammo/shapes/Shape.js +1 -3
  384. package/src/engine/physics/ammo/shapes/SphereShape.js +0 -3
  385. package/src/engine/physics/cannon/CannonJSPhysicsSystem.d.ts.map +1 -1
  386. package/src/engine/physics/cannon/CannonJSPhysicsSystem.js +3 -6
  387. package/src/engine/save/GameStateLoader.d.ts.map +1 -1
  388. package/src/engine/save/GameStateLoader.js +1 -5
  389. package/src/engine/save/Storage.d.ts.map +1 -1
  390. package/src/engine/save/Storage.js +0 -7
  391. package/src/engine/scene/Scene.d.ts.map +1 -1
  392. package/src/engine/scene/Scene.js +2 -7
  393. package/src/engine/scene/SceneManager.d.ts.map +1 -1
  394. package/src/engine/scene/SceneManager.js +1 -4
  395. package/src/engine/simulation/DormandPrince.d.ts +0 -1
  396. package/src/engine/simulation/DormandPrince.d.ts.map +1 -1
  397. package/src/engine/simulation/DormandPrince.js +5 -5
  398. package/src/engine/simulation/Ticker.d.ts.map +1 -1
  399. package/src/engine/simulation/Ticker.js +0 -3
  400. package/src/engine/sound/ecs/SoundController.d.ts +0 -7
  401. package/src/engine/sound/ecs/SoundController.d.ts.map +1 -1
  402. package/src/engine/sound/ecs/SoundController.js +118 -119
  403. package/src/engine/sound/ecs/SoundControllerSystem.d.ts.map +1 -1
  404. package/src/engine/sound/ecs/SoundControllerSystem.js +3 -8
  405. package/src/engine/sound/ecs/SoundListener.d.ts +0 -1
  406. package/src/engine/sound/ecs/SoundListener.d.ts.map +1 -1
  407. package/src/engine/sound/ecs/SoundListener.js +26 -29
  408. package/src/engine/sound/ecs/SoundListenerSystem.d.ts.map +1 -1
  409. package/src/engine/sound/ecs/SoundListenerSystem.js +0 -5
  410. package/src/engine/sound/ecs/emitter/SoundEmitter.d.ts.map +1 -1
  411. package/src/engine/sound/ecs/emitter/SoundEmitter.js +0 -5
  412. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.d.ts.map +1 -1
  413. package/src/engine/sound/ecs/emitter/SoundEmitterSystem.js +0 -7
  414. package/src/engine/ui/GUIEngine.d.ts.map +1 -1
  415. package/src/engine/ui/GUIEngine.js +0 -5
  416. package/src/engine/ui/tiles2d/TileGrid.d.ts.map +1 -1
  417. package/src/engine/ui/tiles2d/TileGrid.js +1 -4
  418. package/src/generation/markers/debug/visualizeMarkers.js +10 -10
  419. package/src/view/DOM.js +1 -3
  420. package/src/view/SVG.d.ts +0 -3
  421. package/src/view/SVG.d.ts.map +1 -1
  422. package/src/view/SVG.js +0 -4
  423. package/src/view/asset/PreloaderView.d.ts.map +1 -1
  424. package/src/view/asset/PreloaderView.js +0 -3
  425. package/src/view/common/LabelView.d.ts +1 -6
  426. package/src/view/common/LabelView.d.ts.map +1 -1
  427. package/src/view/common/LabelView.js +24 -33
  428. package/src/view/common/ListView.d.ts.map +1 -1
  429. package/src/view/common/ListView.js +0 -6
  430. package/src/view/common/MeshView.js +3 -6
  431. package/src/view/common/VirtualListView.d.ts.map +1 -1
  432. package/src/view/common/VirtualListView.js +0 -5
  433. package/src/view/common/dnd/DragAndDropContext.d.ts +1 -2
  434. package/src/view/common/dnd/DragAndDropContext.d.ts.map +1 -1
  435. package/src/view/common/dnd/DragAndDropContext.js +107 -110
  436. package/src/view/controller/GuiController.d.ts.map +1 -1
  437. package/src/view/controller/GuiController.js +1 -6
  438. package/src/view/controller/controls/BooleanVector3Control.d.ts +1 -1
  439. package/src/view/controller/controls/BooleanVector3Control.d.ts.map +1 -1
  440. package/src/view/controller/controls/GuiControl.js +2 -7
  441. package/src/view/controller/controls/Vector1Control.d.ts +1 -1
  442. package/src/view/controller/controls/Vector1Control.d.ts.map +1 -1
  443. package/src/view/controller/controls/Vector1Control.js +2 -7
  444. package/src/view/controller/controls/Vector2Control.d.ts.map +1 -1
  445. package/src/view/controller/controls/Vector2Control.js +0 -4
  446. package/src/view/controller/controls/Vector3Control.d.ts.map +1 -1
  447. package/src/view/controller/controls/Vector3Control.js +0 -3
  448. package/src/view/elements/ConfirmationDialogView.d.ts.map +1 -1
  449. package/src/view/elements/ConfirmationDialogView.js +1 -6
  450. package/src/view/elements/DropDownSelectionView.d.ts.map +1 -1
  451. package/src/view/elements/DropDownSelectionView.js +0 -5
  452. package/src/view/elements/EmptyView.d.ts.map +1 -1
  453. package/src/view/elements/EmptyView.js +0 -4
  454. package/src/view/elements/Group.d.ts.map +1 -1
  455. package/src/view/elements/Group.js +0 -3
  456. package/src/view/elements/MeshPreview.d.ts.map +1 -1
  457. package/src/view/elements/MeshPreview.js +5 -8
  458. package/src/view/elements/SimpleWindow.d.ts +1 -1
  459. package/src/view/elements/SimpleWindow.d.ts.map +1 -1
  460. package/src/view/elements/SimpleWindow.js +5 -11
  461. package/src/view/elements/button/ButtonView.d.ts.map +1 -1
  462. package/src/view/elements/button/ButtonView.js +1 -5
  463. package/src/view/elements/image/ImageView.d.ts.map +1 -1
  464. package/src/view/elements/image/ImageView.js +0 -4
  465. package/src/view/elements/image/SvgImageView.d.ts.map +1 -1
  466. package/src/view/elements/image/SvgImageView.js +2 -7
  467. package/src/view/elements/label/LabeledValueView.d.ts.map +1 -1
  468. package/src/view/elements/label/LabeledValueView.js +3 -8
  469. package/src/view/elements/navigation/ViewStack.d.ts +0 -7
  470. package/src/view/elements/navigation/ViewStack.d.ts.map +1 -1
  471. package/src/view/elements/navigation/ViewStack.js +17 -19
  472. package/src/view/elements/notify/NotificationView.js +1 -4
  473. package/src/view/elements/notify/ToastLogView.d.ts.map +1 -1
  474. package/src/view/elements/notify/ToastLogView.js +0 -3
  475. package/src/view/elements/progress/SmoothProgressBar.d.ts +72 -0
  476. package/src/view/elements/progress/SmoothProgressBar.d.ts.map +1 -0
  477. package/src/view/elements/radial/RadialMenu.d.ts.map +1 -1
  478. package/src/view/elements/radial/RadialMenu.js +1 -6
  479. package/src/view/elements/radial/RadialMenuElement.d.ts.map +1 -1
  480. package/src/view/elements/radial/RadialMenuElement.js +1 -4
  481. package/src/view/elements/radial/RadialProgressView.d.ts +1 -1
  482. package/src/view/elements/radial/RadialProgressView.d.ts.map +1 -1
  483. package/src/view/elements/radial/RadialProgressView.js +4 -9
  484. package/src/view/elements/tiles2d/Tile.d.ts.map +1 -1
  485. package/src/view/elements/tiles2d/Tile.js +3 -6
  486. package/src/view/elements/tiles2d/TileGrid.d.ts.map +1 -1
  487. package/src/view/elements/tiles2d/TileGrid.js +0 -5
  488. package/src/view/minimap/Minimap.d.ts.map +1 -1
  489. package/src/view/minimap/Minimap.js +11 -16
  490. package/src/view/minimap/dom/MinimapCameraView.d.ts +1 -2
  491. package/src/view/minimap/dom/MinimapCameraView.d.ts.map +1 -1
  492. package/src/view/minimap/dom/MinimapTerrainView.d.ts +1 -1
  493. package/src/view/minimap/dom/MinimapTerrainView.d.ts.map +1 -1
  494. package/src/view/minimap/gl/MarkerGL.d.ts +2 -12
  495. package/src/view/minimap/gl/MarkerGL.d.ts.map +1 -1
  496. package/src/view/minimap/gl/MarkerGL.js +60 -56
  497. package/src/view/minimap/gl/MinimapMarkersGL.d.ts +1 -1
  498. package/src/view/minimap/gl/MinimapMarkersGL.d.ts.map +1 -1
  499. package/src/view/minimap/gl/MinimapTerrainGL.d.ts +1 -2
  500. package/src/view/minimap/gl/MinimapTerrainGL.d.ts.map +1 -1
  501. package/src/view/renderModel.d.ts.map +1 -1
  502. package/src/view/renderModel.js +3 -7
  503. package/src/view/task/TaskProgressView.d.ts.map +1 -1
  504. package/src/view/task/TaskProgressView.js +0 -5
  505. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts +0 -9
  506. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.d.ts.map +0 -1
  507. package/src/engine/asset/loaders/LegacyThreeJSONAssetLoader.js +0 -105
  508. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts +0 -117
  509. package/src/engine/graphics/geometry/decimation/SimplifyModifier.d.ts.map +0 -1
  510. package/src/engine/graphics/geometry/decimation/SimplifyModifier.js +0 -971
  511. package/src/engine/graphics/loader/threejs/GLTFLoader.js +0 -3179
  512. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts +0 -6
  513. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.d.ts.map +0 -1
  514. package/src/engine/graphics/loader/threejs/LegacyJSONLoader.js +0 -845
  515. package/src/engine/graphics/postprocess/Postprocess.js +0 -284
  516. package/src/engine/graphics/postprocess/threejs/Mirror.js +0 -330
  517. package/src/engine/graphics/postprocess/threejs/WaterShader.js +0 -306
  518. package/src/engine/graphics/postprocess/threejs/postprocessing/AdaptiveToneMappingPass.js +0 -338
  519. package/src/engine/graphics/postprocess/threejs/postprocessing/BloomPass.js +0 -132
  520. package/src/engine/graphics/postprocess/threejs/postprocessing/BokehPass.js +0 -115
  521. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts +0 -4
  522. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.d.ts.map +0 -1
  523. package/src/engine/graphics/postprocess/threejs/postprocessing/ClearMaskPass.js +0 -23
  524. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts +0 -1
  525. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.d.ts.map +0 -1
  526. package/src/engine/graphics/postprocess/threejs/postprocessing/DotScreenPass.js +0 -60
  527. package/src/engine/graphics/postprocess/threejs/postprocessing/EffectComposer.js +0 -150
  528. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts +0 -1
  529. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.d.ts.map +0 -1
  530. package/src/engine/graphics/postprocess/threejs/postprocessing/FilmPass.js +0 -61
  531. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts +0 -1
  532. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.d.ts.map +0 -1
  533. package/src/engine/graphics/postprocess/threejs/postprocessing/GlitchPass.js +0 -117
  534. package/src/engine/graphics/postprocess/threejs/postprocessing/RenderPass.js +0 -63
  535. package/src/engine/graphics/postprocess/threejs/postprocessing/SMAAPass.js +0 -187
  536. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts +0 -1
  537. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.d.ts.map +0 -1
  538. package/src/engine/graphics/postprocess/threejs/postprocessing/SavePass.js +0 -67
  539. package/src/engine/graphics/postprocess/threejs/postprocessing/TexturePass.js +0 -50
  540. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts +0 -42
  541. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.d.ts.map +0 -1
  542. package/src/engine/graphics/postprocess/threejs/shaders/BokehShader.js +0 -117
  543. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts +0 -30
  544. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.d.ts.map +0 -1
  545. package/src/engine/graphics/postprocess/threejs/shaders/ConvolutionShader.js +0 -106
  546. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts +0 -19
  547. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.d.ts.map +0 -1
  548. package/src/engine/graphics/postprocess/threejs/shaders/FXAAShader.js +0 -90
  549. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts +0 -12
  550. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.d.ts.map +0 -1
  551. package/src/engine/graphics/postprocess/threejs/shaders/GammaCorrectionShader.js +0 -52
  552. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts +0 -12
  553. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.d.ts.map +0 -1
  554. package/src/engine/graphics/postprocess/threejs/shaders/LuminosityShader.js +0 -51
  555. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts +0 -76
  556. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.d.ts.map +0 -1
  557. package/src/engine/graphics/postprocess/threejs/shaders/SMAAShader.js +0 -468
  558. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts +0 -61
  559. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.d.ts.map +0 -1
  560. package/src/engine/graphics/postprocess/threejs/shaders/SSAOShader.js +0 -230
  561. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts +0 -36
  562. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.d.ts.map +0 -1
  563. package/src/engine/graphics/postprocess/threejs/shaders/ToneMapShader.js +0 -76
  564. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts +0 -22
  565. package/src/engine/graphics/shaders/GaussianBlurShader.d.ts.map +0 -1
  566. package/src/engine/graphics/shaders/GaussianBlurShader.js +0 -79
  567. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts +0 -26
  568. package/src/engine/graphics/shaders/GaussianGlowShader.d.ts.map +0 -1
  569. package/src/engine/graphics/shaders/GaussianGlowShader.js +0 -83
  570. package/src/engine/graphics/shaders/NormalMapShader.d.ts +0 -33
  571. package/src/engine/graphics/shaders/NormalMapShader.d.ts.map +0 -1
  572. package/src/engine/graphics/shaders/NormalMapShader.js +0 -62
  573. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts +0 -3
  574. package/src/engine/graphics/shaders/SoftOutlineShader.d.ts.map +0 -1
  575. package/src/engine/graphics/shaders/SoftOutlineShader.js +0 -111
  576. package/src/engine/graphics/three/Reflector.d.ts +0 -12
  577. package/src/engine/graphics/three/Reflector.d.ts.map +0 -1
  578. package/src/engine/graphics/three/Reflector.js +0 -281
  579. package/src/engine/graphics/three/Refractor.d.ts +0 -11
  580. package/src/engine/graphics/three/Refractor.d.ts.map +0 -1
  581. package/src/engine/graphics/three/Refractor.js +0 -352
  582. package/src/engine/navigation/ecs/components/PathFinder.d.ts +0 -14
  583. package/src/engine/navigation/ecs/components/PathFinder.d.ts.map +0 -1
  584. package/src/engine/navigation/ecs/components/PathFinder.js +0 -11
  585. package/src/view/elements/navigation/NavigationMenu.d.ts +0 -13
  586. package/src/view/elements/navigation/NavigationMenu.d.ts.map +0 -1
  587. package/src/view/elements/navigation/NavigationMenu.js +0 -27
@@ -1,306 +0,0 @@
1
- /**
2
- * @author jbouny / https://github.com/jbouny
3
- *
4
- * Work based on :
5
- * @author Slayvin / http://slayvin.net : Flat mirror for three.js
6
- * @author Stemkoski / http://www.adelphi.edu/~stemkoski : An implementation of water shader based on the flat mirror
7
- * @author Jonas Wagner / http://29a.ch/ && http://29a.ch/slides/2012/webglwater/ : Water shader explanations in WebGL
8
- */
9
-
10
- import * as THREE from 'three';
11
- import Mirror from './Mirror.js';
12
-
13
- const Shader = {
14
-
15
- uniforms: THREE.UniformsUtils.merge([
16
- THREE.UniformsLib["fog"], {
17
- "normalSampler": { value: null },
18
- "mirrorSampler": { value: null },
19
- "alpha": { value: 1.0 },
20
- "time": { value: 0.0 },
21
- "distortionScale": { value: 20.0 },
22
- "noiseScale": { value: 1.0 },
23
- "textureMatrix": { value: new THREE.Matrix4() },
24
- "sunColor": { value: new THREE.Color(0x7F7F7F) },
25
- "sunDirection": { value: new THREE.Vector3(0.70707, 0.70707, 0) },
26
- "eye": { value: new THREE.Vector3() },
27
- "waterColor": { value: new THREE.Color(0x555555) }
28
- }
29
- ]),
30
-
31
- vertexShader: [
32
- 'uniform mat4 textureMatrix;',
33
- 'uniform float time;',
34
-
35
- 'varying vec4 mirrorCoord;',
36
- 'varying vec3 worldPosition;',
37
-
38
- THREE.ShaderChunk["fog_pars_vertex"],
39
-
40
- 'void main()',
41
- '{',
42
- ' mirrorCoord = modelMatrix * vec4( position, 1.0 );',
43
- ' worldPosition = mirrorCoord.xyz;',
44
- ' mirrorCoord = textureMatrix * mirrorCoord;',
45
- ' gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );',
46
-
47
- THREE.ShaderChunk["fog_vertex"],
48
-
49
- '}'
50
- ].join('\n'),
51
-
52
- fragmentShader: [
53
- 'precision highp float;',
54
-
55
- 'uniform sampler2D mirrorSampler;',
56
- 'uniform float alpha;',
57
- 'uniform float time;',
58
- 'uniform float distortionScale;',
59
- 'uniform sampler2D normalSampler;',
60
- 'uniform vec3 sunColor;',
61
- 'uniform vec3 sunDirection;',
62
- 'uniform vec3 eye;',
63
- 'uniform vec3 waterColor;',
64
-
65
- 'varying vec4 mirrorCoord;',
66
- 'varying vec3 worldPosition;',
67
-
68
- 'vec4 getNoise( vec2 uv )',
69
- '{',
70
- ' vec2 uv0 = ( uv / 103.0 ) + vec2(time / 17.0, time / 29.0);',
71
- ' vec2 uv1 = uv / 107.0-vec2( time / -19.0, time / 31.0 );',
72
- ' vec2 uv2 = uv / vec2( 8907.0, 9803.0 ) + vec2( time / 101.0, time / 97.0 );',
73
- ' vec2 uv3 = uv / vec2( 1091.0, 1027.0 ) - vec2( time / 109.0, time / -113.0 );',
74
- ' vec4 noise = texture2D( normalSampler, uv0 ) +',
75
- ' texture2D( normalSampler, uv1 ) +',
76
- ' texture2D( normalSampler, uv2 ) +',
77
- ' texture2D( normalSampler, uv3 );',
78
- ' return noise * 0.5 - 1.0;',
79
- '}',
80
-
81
- 'void sunLight( const vec3 surfaceNormal, const vec3 eyeDirection, float shiny, float spec, float diffuse, inout vec3 diffuseColor, inout vec3 specularColor )',
82
- '{',
83
- ' vec3 reflection = normalize( reflect( -sunDirection, surfaceNormal ) );',
84
- ' float direction = max( 0.0, dot( eyeDirection, reflection ) );',
85
- ' specularColor += pow( direction, shiny ) * sunColor * spec;',
86
- ' diffuseColor += max( dot( sunDirection, surfaceNormal ), 0.0 ) * sunColor * diffuse;',
87
- '}',
88
-
89
- THREE.ShaderChunk["common"],
90
- THREE.ShaderChunk["fog_pars_fragment"],
91
-
92
- 'void main()',
93
- '{',
94
- ' vec4 noise = getNoise( worldPosition.xz );',
95
- ' vec3 surfaceNormal = normalize( noise.xzy * vec3( 1.5, 1.0, 1.5 ) );',
96
-
97
- ' vec3 diffuseLight = vec3(0.0);',
98
- ' vec3 specularLight = vec3(0.0);',
99
-
100
- ' vec3 worldToEye = eye-worldPosition;',
101
- ' vec3 eyeDirection = normalize( worldToEye );',
102
- ' sunLight( surfaceNormal, eyeDirection, 100.0, 2.0, 0.5, diffuseLight, specularLight );',
103
-
104
- ' float distance = length(worldToEye);',
105
-
106
- ' vec2 distortion = surfaceNormal.xz * ( 0.001 + 1.0 / distance ) * distortionScale;',
107
- ' vec3 reflectionSample = vec3( texture2D( mirrorSampler, mirrorCoord.xy / mirrorCoord.z + distortion ) );',
108
-
109
- ' float theta = max( dot( eyeDirection, surfaceNormal ), 0.0 );',
110
- ' float rf0 = 0.3;',
111
- ' float reflectance = rf0 + ( 1.0 - rf0 ) * pow( ( 1.0 - theta ), 5.0 );',
112
- ' vec3 scatter = max( 0.0, dot( surfaceNormal, eyeDirection ) ) * waterColor;',
113
- ' vec3 albedo = mix( sunColor * diffuseLight * 0.3 + scatter, ( vec3( 0.1 ) + reflectionSample * 0.9 + reflectionSample * specularLight ), reflectance );',
114
- ' vec3 outgoingLight = albedo;',
115
- THREE.ShaderChunk["fog_fragment"],
116
- ' gl_FragColor = vec4( outgoingLight, alpha );',
117
- '}'
118
- ].join('\n')
119
-
120
- };
121
-
122
- const Water = function (renderer, camera, scene, options) {
123
-
124
- THREE.Object3D.call(this);
125
- this.name = 'water_' + this.id;
126
-
127
- function optionalParameter(value, defaultValue) {
128
-
129
- return value !== undefined ? value : defaultValue;
130
-
131
- }
132
-
133
- options = options || {};
134
-
135
- this.matrixNeedsUpdate = true;
136
-
137
- const width = optionalParameter(options.textureWidth, 512);
138
- const height = optionalParameter(options.textureHeight, 512);
139
- this.clipBias = optionalParameter(options.clipBias, 0.0);
140
- this.alpha = optionalParameter(options.alpha, 1.0);
141
- this.time = optionalParameter(options.time, 0.0);
142
- this.normalSampler = optionalParameter(options.waterNormals, null);
143
- this.sunDirection = optionalParameter(options.sunDirection, new THREE.Vector3(0.70707, 0.70707, 0.0));
144
- this.sunColor = new THREE.Color(optionalParameter(options.sunColor, 0xffffff));
145
- this.waterColor = new THREE.Color(optionalParameter(options.waterColor, 0x7F7F7F));
146
- this.eye = optionalParameter(options.eye, new THREE.Vector3(0, 0, 0));
147
- this.distortionScale = optionalParameter(options.distortionScale, 20.0);
148
- this.side = optionalParameter(options.side, THREE.FrontSide);
149
- this.fog = optionalParameter(options.fog, false);
150
-
151
- this.graphics = renderer;
152
- this.scene = scene;
153
- this.mirrorPlane = new THREE.Plane();
154
- this.normal = new THREE.Vector3(0, 0, 1);
155
- this.mirrorWorldPosition = new THREE.Vector3();
156
- this.cameraWorldPosition = new THREE.Vector3();
157
- this.rotationMatrix = new THREE.Matrix4();
158
- this.lookAtPosition = new THREE.Vector3(0, 0, -1);
159
- this.clipPlane = new THREE.Vector4();
160
-
161
- if (camera instanceof THREE.PerspectiveCamera) {
162
-
163
- this.camera = camera;
164
-
165
- } else {
166
-
167
- this.camera = new THREE.PerspectiveCamera();
168
- console.log(this.name + ': camera is not a Perspective Camera!');
169
-
170
- }
171
-
172
- this.textureMatrix = new THREE.Matrix4();
173
-
174
- this.mirrorCamera = this.camera.clone();
175
-
176
- this.renderTarget = new THREE.WebGLRenderTarget(width, height);
177
- this.renderTarget2 = new THREE.WebGLRenderTarget(width, height);
178
-
179
- const mirrorShader = Shader;
180
- const mirrorUniforms = THREE.UniformsUtils.clone(mirrorShader.uniforms);
181
-
182
- this.material = new THREE.ShaderMaterial({
183
- fragmentShader: mirrorShader.fragmentShader,
184
- vertexShader: mirrorShader.vertexShader,
185
- uniforms: mirrorUniforms,
186
- transparent: true,
187
- side: this.side,
188
- fog: this.fog
189
- });
190
-
191
- this.material.uniforms.mirrorSampler.value = this.renderTarget.texture;
192
- this.material.uniforms.textureMatrix.value = this.textureMatrix;
193
- this.material.uniforms.alpha.value = this.alpha;
194
- this.material.uniforms.time.value = this.time;
195
- this.material.uniforms.normalSampler.value = this.normalSampler;
196
- this.material.uniforms.sunColor.value = this.sunColor;
197
- this.material.uniforms.waterColor.value = this.waterColor;
198
- this.material.uniforms.sunDirection.value = this.sunDirection;
199
- this.material.uniforms.distortionScale.value = this.distortionScale;
200
-
201
- this.material.uniforms.eye.value = this.eye;
202
-
203
- if (!THREE.Math.isPowerOfTwo(width) || !THREE.Math.isPowerOfTwo(height)) {
204
-
205
- this.renderTarget.texture.generateMipmaps = false;
206
- this.renderTarget.texture.minFilter = THREE.LinearFilter;
207
- this.renderTarget2.texture.generateMipmaps = false;
208
- this.renderTarget2.texture.minFilter = THREE.LinearFilter;
209
-
210
- }
211
-
212
-
213
- };
214
-
215
- Water.prototype = Object.create(Mirror.prototype);
216
- Water.prototype.constructor = Water;
217
-
218
-
219
- Water.prototype.updateTextureMatrix = function () {
220
-
221
- function sign(x) {
222
-
223
- return x ? x < 0 ? -1 : 1 : 0;
224
-
225
- }
226
-
227
- this.updateMatrixWorld();
228
- this.camera.updateMatrixWorld();
229
-
230
- this.mirrorWorldPosition.setFromMatrixPosition(this.matrixWorld);
231
- this.cameraWorldPosition.setFromMatrixPosition(this.camera.matrixWorld);
232
-
233
- this.rotationMatrix.extractRotation(this.matrixWorld);
234
-
235
- this.normal.set(0, 0, 1);
236
- this.normal.applyMatrix4(this.rotationMatrix);
237
-
238
- const view = this.mirrorWorldPosition.clone().sub(this.cameraWorldPosition);
239
- view.reflect(this.normal).negate();
240
- view.add(this.mirrorWorldPosition);
241
-
242
- this.rotationMatrix.extractRotation(this.camera.matrixWorld);
243
-
244
- this.lookAtPosition.set(0, 0, -1);
245
- this.lookAtPosition.applyMatrix4(this.rotationMatrix);
246
- this.lookAtPosition.add(this.cameraWorldPosition);
247
-
248
- const target = this.mirrorWorldPosition.clone().sub(this.lookAtPosition);
249
- target.reflect(this.normal).negate();
250
- target.add(this.mirrorWorldPosition);
251
-
252
- this.up.set(0, -1, 0);
253
- this.up.applyMatrix4(this.rotationMatrix);
254
- this.up.reflect(this.normal).negate();
255
-
256
- this.mirrorCamera.position.copy(view);
257
- this.mirrorCamera.up = this.up;
258
- this.mirrorCamera.lookAt(target);
259
- this.mirrorCamera.aspect = this.camera.aspect;
260
-
261
- this.mirrorCamera.updateProjectionMatrix();
262
- this.mirrorCamera.updateMatrixWorld();
263
- this.mirrorCamera.matrixWorldInverse.getInverse(this.mirrorCamera.matrixWorld);
264
-
265
- // Update the texture matrix
266
- this.textureMatrix.set(0.5, 0.0, 0.0, 0.5,
267
- 0.0, 0.5, 0.0, 0.5,
268
- 0.0, 0.0, 0.5, 0.5,
269
- 0.0, 0.0, 0.0, 1.0);
270
- this.textureMatrix.multiply(this.mirrorCamera.projectionMatrix);
271
- this.textureMatrix.multiply(this.mirrorCamera.matrixWorldInverse);
272
-
273
- // Now update projection matrix with new clip plane, implementing code from: http://www.terathon.com/code/oblique.html
274
- // Paper explaining this technique: http://www.terathon.com/lengyel/Lengyel-Oblique.pdf
275
- this.mirrorPlane.setFromNormalAndCoplanarPoint(this.normal, this.mirrorWorldPosition);
276
- this.mirrorPlane.applyMatrix4(this.mirrorCamera.matrixWorldInverse);
277
-
278
- this.clipPlane.set(this.mirrorPlane.normal.x, this.mirrorPlane.normal.y, this.mirrorPlane.normal.z, this.mirrorPlane.constant);
279
-
280
- const q = new THREE.Vector4();
281
- const projectionMatrix = this.mirrorCamera.projectionMatrix;
282
-
283
- q.x = (sign(this.clipPlane.x) + projectionMatrix.elements[8]) / projectionMatrix.elements[0];
284
- q.y = (sign(this.clipPlane.y) + projectionMatrix.elements[9]) / projectionMatrix.elements[5];
285
- q.z = -1.0;
286
- q.w = (1.0 + projectionMatrix.elements[10]) / projectionMatrix.elements[14];
287
-
288
- // Calculate the scaled plane vector
289
- let c = new THREE.Vector4();
290
- c = this.clipPlane.multiplyScalar(2.0 / this.clipPlane.dot(q));
291
-
292
- // Replacing the third row of the projection matrix
293
- projectionMatrix.elements[2] = c.x;
294
- projectionMatrix.elements[6] = c.y;
295
- projectionMatrix.elements[10] = c.z + 1.0 - this.clipBias;
296
- projectionMatrix.elements[14] = c.w;
297
-
298
- const worldCoordinates = new THREE.Vector3();
299
- worldCoordinates.setFromMatrixPosition(this.camera.matrixWorld);
300
- this.eye = worldCoordinates;
301
- this.material.uniforms.eye.value = this.eye;
302
-
303
- };
304
-
305
-
306
- export default Water;
@@ -1,338 +0,0 @@
1
- /**
2
- * @author miibond
3
- * Generate a texture that represents the luminosity of the current scene, adapted over time
4
- * to simulate the optic nerve responding to the amount of light it is receiving.
5
- * Based on a GDC2007 presentation by Wolfgang Engel titled "Post-Processing Pipeline"
6
- *
7
- * Full-screen tone-mapping shader based on http://www.graphics.cornell.edu/~jaf/publications/sig02_paper.pdf
8
- */
9
- import {
10
- LinearFilter,
11
- LinearMipMapLinearFilter,
12
- Mesh,
13
- MeshBasicMaterial,
14
- NoBlending,
15
- OrthographicCamera,
16
- PlaneBufferGeometry,
17
- RGBFormat,
18
- Scene,
19
- ShaderMaterial,
20
- UniformsUtils,
21
- WebGLRenderTarget
22
- } from 'three';
23
- import CopyShader from "../shaders/CopyShader.js";
24
- import LuminosityShader from "../shaders/LuminosityShader.js";
25
- import ToneMapShader from "../shaders/ToneMapShader.js";
26
-
27
- const AdaptiveToneMappingPass = function (adaptive, resolution) {
28
-
29
- this.resolution = (resolution !== undefined) ? resolution : 256;
30
- this.needsInit = true;
31
- this.adaptive = adaptive !== undefined ? !!adaptive : true;
32
-
33
- this.luminanceRT = null;
34
- this.previousLuminanceRT = null;
35
- this.currentLuminanceRT = null;
36
-
37
- if (CopyShader === undefined)
38
- console.error("THREE.AdaptiveToneMappingPass relies on THREE.CopyShader");
39
-
40
- const copyShader = CopyShader;
41
-
42
- this.copyUniforms = UniformsUtils.clone(copyShader.uniforms);
43
-
44
- this.materialCopy = new ShaderMaterial({
45
-
46
- uniforms: this.copyUniforms,
47
- vertexShader: copyShader.vertexShader,
48
- fragmentShader: copyShader.fragmentShader,
49
- blending: NoBlending,
50
- depthTest: false
51
-
52
- });
53
-
54
- if (LuminosityShader === undefined)
55
- console.error("THREE.AdaptiveToneMappingPass relies on THREE.LuminosityShader");
56
-
57
- this.materialLuminance = new ShaderMaterial({
58
-
59
- uniforms: UniformsUtils.clone(LuminosityShader.uniforms),
60
- vertexShader: LuminosityShader.vertexShader,
61
- fragmentShader: LuminosityShader.fragmentShader,
62
- blending: NoBlending
63
- });
64
-
65
- this.adaptLuminanceShader = {
66
- defines: {
67
- "MIP_LEVEL_1X1": (Math.log(this.resolution) / Math.log(2.0)).toFixed(1)
68
- },
69
- uniforms: {
70
- "lastLum": { type: "t", value: null },
71
- "currentLum": { type: "t", value: null },
72
- "delta": { type: 'f', value: 0.016 },
73
- "tau": { type: 'f', value: 1.0 }
74
- },
75
- vertexShader: [
76
- "varying vec2 vUv;",
77
-
78
- "void main() {",
79
-
80
- "vUv = uv;",
81
- "gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );",
82
-
83
- "}"
84
- ].join('\n'),
85
- fragmentShader: [
86
- "varying vec2 vUv;",
87
-
88
- "uniform sampler2D lastLum;",
89
- "uniform sampler2D currentLum;",
90
- "uniform float delta;",
91
- "uniform float tau;",
92
-
93
- "void main() {",
94
-
95
- "vec4 lastLum = texture2D( lastLum, vUv, MIP_LEVEL_1X1 );",
96
- "vec4 currentLum = texture2D( currentLum, vUv, MIP_LEVEL_1X1 );",
97
-
98
- "float fLastLum = lastLum.r;",
99
- "float fCurrentLum = currentLum.r;",
100
-
101
- //The adaption seems to work better in extreme lighting differences
102
- //if the input luminance is squared.
103
- "fCurrentLum *= fCurrentLum;",
104
-
105
- // Adapt the luminance using Pattanaik's technique
106
- "float fAdaptedLum = fLastLum + (fCurrentLum - fLastLum) * (1.0 - exp(-delta * tau));",
107
- // "fAdaptedLum = sqrt(fAdaptedLum);",
108
- "gl_FragColor = vec4( vec3( fAdaptedLum ), 1.0 );",
109
- "}"
110
- ].join('\n')
111
- };
112
-
113
- this.materialAdaptiveLum = new ShaderMaterial({
114
-
115
- uniforms: UniformsUtils.clone(this.adaptLuminanceShader.uniforms),
116
- vertexShader: this.adaptLuminanceShader.vertexShader,
117
- fragmentShader: this.adaptLuminanceShader.fragmentShader,
118
- defines: this.adaptLuminanceShader.defines,
119
- blending: NoBlending
120
- });
121
-
122
- if (ToneMapShader === undefined)
123
- console.error("THREE.AdaptiveToneMappingPass relies on THREE.ToneMapShader");
124
-
125
- this.materialToneMap = new ShaderMaterial({
126
-
127
- uniforms: UniformsUtils.clone(ToneMapShader.uniforms),
128
- vertexShader: ToneMapShader.vertexShader,
129
- fragmentShader: ToneMapShader.fragmentShader,
130
- blending: NoBlending
131
- });
132
-
133
- this.enabled = true;
134
- this.needsSwap = true;
135
- this.clear = false;
136
-
137
- this.camera = new OrthographicCamera(-1, 1, 1, -1, 0, 1);
138
- this.scene = new Scene();
139
-
140
- this.quad = new Mesh(new PlaneBufferGeometry(2, 2), null);
141
- this.scene.add(this.quad);
142
-
143
- };
144
-
145
- AdaptiveToneMappingPass.prototype = {
146
-
147
- render: function (renderer, writeBuffer, readBuffer, delta, maskActive) {
148
-
149
- if (this.needsInit) {
150
-
151
- this.reset(renderer);
152
- this.luminanceRT.texture.type = readBuffer.texture.type;
153
- this.previousLuminanceRT.texture.type = readBuffer.texture.type;
154
- this.currentLuminanceRT.texture.type = readBuffer.texture.type;
155
- this.needsInit = false;
156
-
157
- }
158
-
159
- if (this.adaptive) {
160
-
161
- //Render the luminance of the current scene into a render target with mipmapping enabled
162
- this.quad.material = this.materialLuminance;
163
- this.materialLuminance.uniforms.tDiffuse.value = readBuffer;
164
- renderer.render(this.scene, this.camera, this.currentLuminanceRT);
165
-
166
- //Use the new luminance values, the previous luminance and the frame delta to
167
- //adapt the luminance over time.
168
- this.quad.material = this.materialAdaptiveLum;
169
- this.materialAdaptiveLum.uniforms.delta.value = delta;
170
- this.materialAdaptiveLum.uniforms.lastLum.value = this.previousLuminanceRT;
171
- this.materialAdaptiveLum.uniforms.currentLum.value = this.currentLuminanceRT;
172
- renderer.render(this.scene, this.camera, this.luminanceRT);
173
-
174
- //Copy the new adapted luminance value so that it can be used by the next frame.
175
- this.quad.material = this.materialCopy;
176
- this.copyUniforms.tDiffuse.value = this.luminanceRT;
177
- renderer.render(this.scene, this.camera, this.previousLuminanceRT);
178
-
179
- }
180
-
181
- this.quad.material = this.materialToneMap;
182
- this.materialToneMap.uniforms.tDiffuse.value = readBuffer;
183
- renderer.render(this.scene, this.camera, writeBuffer, this.clear);
184
-
185
- },
186
-
187
- reset: function (renderer) {
188
-
189
- // render targets
190
- if (this.luminanceRT) {
191
-
192
- this.luminanceRT.dispose();
193
-
194
- }
195
- if (this.currentLuminanceRT) {
196
-
197
- this.currentLuminanceRT.dispose();
198
-
199
- }
200
- if (this.previousLuminanceRT) {
201
-
202
- this.previousLuminanceRT.dispose();
203
-
204
- }
205
- const pars = {
206
- minFilter: LinearFilter,
207
- magFilter: LinearFilter,
208
- format: RGBFormat,
209
- generateMipmaps: false
210
- };
211
-
212
- this.luminanceRT = new WebGLRenderTarget(this.resolution, this.resolution, pars);
213
- this.previousLuminanceRT = new WebGLRenderTarget(this.resolution, this.resolution, pars);
214
-
215
- //We only need mipmapping for the current luminosity because we want a down-sampled version to sample in our adaptive shader
216
- pars.generateMipmaps = true;
217
- pars.minFilter = LinearMipMapLinearFilter;
218
- this.currentLuminanceRT = new WebGLRenderTarget(this.resolution, this.resolution, pars);
219
-
220
- if (this.adaptive) {
221
-
222
- this.materialToneMap.defines["ADAPTED_LUMINANCE"] = "";
223
- this.materialToneMap.uniforms.luminanceMap.value = this.luminanceRT;
224
-
225
- }
226
- //Put something in the adaptive luminance texture so that the scene can render initially
227
- this.quad.material = new MeshBasicMaterial({ color: 0x777777 });
228
- this.materialLuminance.needsUpdate = true;
229
- this.materialAdaptiveLum.needsUpdate = true;
230
- this.materialToneMap.needsUpdate = true;
231
- // renderer.render( this.scene, this.camera, this.luminanceRT );
232
- // renderer.render( this.scene, this.camera, this.previousLuminanceRT );
233
- // renderer.render( this.scene, this.camera, this.currentLuminanceRT );
234
-
235
- },
236
-
237
- setAdaptive: function (adaptive) {
238
-
239
- if (adaptive) {
240
-
241
- this.adaptive = true;
242
- this.materialToneMap.defines["ADAPTED_LUMINANCE"] = "";
243
- this.materialToneMap.uniforms.luminanceMap.value = this.luminanceRT;
244
-
245
- } else {
246
-
247
- this.adaptive = false;
248
- delete this.materialToneMap.defines["ADAPTED_LUMINANCE"];
249
- this.materialToneMap.uniforms.luminanceMap.value = undefined;
250
-
251
- }
252
- this.materialToneMap.needsUpdate = true;
253
-
254
- },
255
-
256
- setAdaptionRate: function (rate) {
257
-
258
- if (rate) {
259
-
260
- this.materialAdaptiveLum.uniforms.tau.value = Math.abs(rate);
261
-
262
- }
263
-
264
- },
265
-
266
- setMaxLuminance: function (maxLum) {
267
-
268
- if (maxLum) {
269
-
270
- this.materialToneMap.uniforms.maxLuminance.value = maxLum;
271
-
272
- }
273
-
274
- },
275
-
276
- setAverageLuminance: function (avgLum) {
277
-
278
- if (avgLum) {
279
-
280
- this.materialToneMap.uniforms.averageLuminance.value = avgLum;
281
-
282
- }
283
-
284
- },
285
-
286
- setMiddleGrey: function (middleGrey) {
287
-
288
- if (middleGrey) {
289
-
290
- this.materialToneMap.uniforms.middleGrey.value = middleGrey;
291
-
292
- }
293
-
294
- },
295
-
296
- dispose: function () {
297
-
298
- if (this.luminanceRT) {
299
-
300
- this.luminanceRT.dispose();
301
-
302
- }
303
- if (this.previousLuminanceRT) {
304
-
305
- this.previousLuminanceRT.dispose();
306
-
307
- }
308
- if (this.currentLuminanceRT) {
309
-
310
- this.currentLuminanceRT.dispose();
311
-
312
- }
313
- if (this.materialLuminance) {
314
-
315
- this.materialLuminance.dispose();
316
-
317
- }
318
- if (this.materialAdaptiveLum) {
319
-
320
- this.materialAdaptiveLum.dispose();
321
-
322
- }
323
- if (this.materialCopy) {
324
-
325
- this.materialCopy.dispose();
326
-
327
- }
328
- if (this.materialToneMap) {
329
-
330
- this.materialToneMap.dispose();
331
-
332
- }
333
-
334
- }
335
-
336
- };
337
-
338
- export default AdaptiveToneMappingPass;