ohzi-core 6.16.0 → 7.0.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 (437) hide show
  1. package/README.md +9 -9
  2. package/build/index.module.js +1 -1
  3. package/build/index.module.js.map +1 -1
  4. package/package.json +51 -51
  5. package/src/.vscode/settings.json +2 -2
  6. package/src/BaseApplication.js +23 -23
  7. package/src/Browser.js +79 -79
  8. package/src/CameraManager.js +19 -19
  9. package/src/Capabilities.js +11 -11
  10. package/src/Configuration.js +22 -22
  11. package/src/CustomBezierCurve.js +44 -44
  12. package/src/Debug.js +260 -260
  13. package/src/EventManager.js +150 -150
  14. package/src/Graphics.js +337 -337
  15. package/src/Initializer.js +57 -57
  16. package/src/Input.js +66 -66
  17. package/src/KeyboardInput.js +135 -135
  18. package/src/OS.js +58 -58
  19. package/src/OScreen.js +74 -74
  20. package/src/OrthographicCamera.js +21 -13
  21. package/src/PerspectiveCamera.js +21 -13
  22. package/src/ReflectionPlaneContext.js +17 -17
  23. package/src/RenderLayers.js +28 -28
  24. package/src/RenderLoop.js +97 -97
  25. package/src/RenderOrder.js +38 -38
  26. package/src/ResourceContainer.js +39 -39
  27. package/src/SceneManager.js +44 -44
  28. package/src/Screen.js +54 -54
  29. package/src/Time.js +57 -57
  30. package/src/UI.js +90 -90
  31. package/src/action_sequencer/ActionEvent.js +15 -15
  32. package/src/action_sequencer/ActionInterpolator.js +23 -23
  33. package/src/action_sequencer/ActionSequencer.js +245 -246
  34. package/src/action_sequencer/NumberInterpolator.js +25 -25
  35. package/src/action_sequencer/VectorInterpolator.js +20 -20
  36. package/src/blitter_index.js +13 -13
  37. package/src/canvas_drawer/CanvasDrawer.js +111 -111
  38. package/src/canvas_drawer/MultiLineTextDrawer.js +49 -49
  39. package/src/canvas_drawer/SimpleTextDrawer.js +47 -47
  40. package/src/components/AudioClip.js +55 -55
  41. package/src/components/AxisHelper.js +58 -58
  42. package/src/components/BaseObject.js +45 -45
  43. package/src/components/EdgeMesh.js +151 -151
  44. package/src/components/GeometryEdgeVisualizer.js +45 -45
  45. package/src/components/Grid.js +33 -33
  46. package/src/components/Line.js +199 -199
  47. package/src/components/MultiLinePath.js +19 -19
  48. package/src/components/MultiLineText2D.js +62 -62
  49. package/src/components/ObjectAxis.js +20 -20
  50. package/src/components/ObjectOrientedBoundingBox.js +201 -201
  51. package/src/components/PlaneHelper.js +36 -36
  52. package/src/components/Shape2D.js +42 -42
  53. package/src/components/Shape3D.js +38 -38
  54. package/src/components/Text2D.js +39 -39
  55. package/src/components/UIElement.js +208 -208
  56. package/src/components/UpdatableMaterialMesh.js +16 -16
  57. package/src/components/WorldImage.js +91 -91
  58. package/src/components/mouse_interactors/ObjectRotator.js +61 -61
  59. package/src/components/sdf_text/SDFText.js +154 -154
  60. package/src/components/sdf_text/SDFTextBatch.js +193 -193
  61. package/src/components/sdf_text/TextGlyph.js +15 -15
  62. package/src/data_textures/CustomDataTexture.js +51 -51
  63. package/src/data_textures/RGBADataTexture.js +12 -12
  64. package/src/data_textures/RGBAFloatDataTexture.js +12 -12
  65. package/src/data_textures/RGBDataTexture.js +12 -12
  66. package/src/data_textures/RGBFloatDataTexture.js +12 -12
  67. package/src/editor/ManipulatorHandle.js +70 -70
  68. package/src/editor/ObjectEditor.js +66 -66
  69. package/src/editor/ObjectManipulator.js +118 -118
  70. package/src/editor/ObjectPicker.js +75 -75
  71. package/src/editor/shaders/object_picker.frag +5 -5
  72. package/src/editor/shaders/object_picker.vert +7 -7
  73. package/src/gpu_particles/GPUParticleSystem.js +87 -87
  74. package/src/gpu_particles/ParticleAttribute.js +83 -83
  75. package/src/gpu_particles/ParticlePositionAttribute.js +20 -20
  76. package/src/html_utilities/CSSAnimator.js +64 -64
  77. package/src/html_utilities/css_animator_states/Animating.js +44 -45
  78. package/src/html_utilities/css_animator_states/Idle.js +25 -25
  79. package/src/index.js +217 -217
  80. package/src/materials/AddMaterial.js +17 -17
  81. package/src/materials/AlphaFilterMaterial.js +20 -20
  82. package/src/materials/BaseShaderMaterial.js +19 -19
  83. package/src/materials/BlitMaterial.js +28 -28
  84. package/src/materials/BloomComposeMaterial.js +22 -22
  85. package/src/materials/BoxBlurMaterial.js +13 -13
  86. package/src/materials/ClearAlphaMaterial.js +13 -13
  87. package/src/materials/ClearColorMaterial.js +31 -31
  88. package/src/materials/ClearDepthNormalMaterial.js +13 -13
  89. package/src/materials/DeferredRendererComposeMaterial.js +32 -32
  90. package/src/materials/DepthNormalMaterial.js +28 -28
  91. package/src/materials/DisplayNormalTextureMaterial.js +15 -15
  92. package/src/materials/DualFilteringBlurMaterial.js +11 -11
  93. package/src/materials/FXAAMaterial.js +10 -10
  94. package/src/materials/GaussianBlurMaterial.js +28 -28
  95. package/src/materials/LuminosityHighPassMaterial.js +15 -15
  96. package/src/materials/MedianFilterMaterial.js +42 -42
  97. package/src/materials/NormalMaterial.js +17 -17
  98. package/src/materials/SDFScreenTextMaterial.js +31 -31
  99. package/src/materials/SDFTextMaterial.js +38 -37
  100. package/src/materials/SSAOComposeMaterial.js +11 -11
  101. package/src/materials/SSAOMaterial.js +65 -66
  102. package/src/materials/ScreenSpaceTextureMaterial.js +65 -65
  103. package/src/materials/UIElementMaterial.js +27 -27
  104. package/src/materials/UnrealBloomComposeMaterial.js +95 -95
  105. package/src/materials/UnrealBlurMaterial.js +17 -17
  106. package/src/materials/UnrealComposeMaterial.js +24 -24
  107. package/src/materials/ViewPositionMaterial.js +17 -17
  108. package/src/materials/deferred/DeferredPointLightMaterial.js +39 -39
  109. package/src/materials/gpu_particles/AttributeUpdateMaterial.js +33 -33
  110. package/src/materials/gpu_particles/BasicParticleMaterial.js +23 -23
  111. package/src/materials/gpu_particles/ParticleStorageMaterial.js +27 -27
  112. package/src/materials/gpu_particles/PositionStorageMaterial.js +10 -10
  113. package/src/object_pool/Pool.js +73 -73
  114. package/src/primitives/Arrow.js +57 -57
  115. package/src/primitives/Cube.js +17 -17
  116. package/src/primitives/HorizontalPlane.js +18 -18
  117. package/src/primitives/Sphere.js +15 -15
  118. package/src/primitives/VerticalPlane.js +17 -17
  119. package/src/raycast/GroupRaycaster.js +41 -41
  120. package/src/raycast/PlaneDragResolver.js +89 -89
  121. package/src/raycast/PlaneRaycastResolver.js +22 -22
  122. package/src/raycast/PlaneRaycaster.js +23 -23
  123. package/src/raycast/RaycastResolver.js +22 -22
  124. package/src/raycast/SurfaceDragResolver.js +77 -77
  125. package/src/raycast/states/BaseState.js +16 -16
  126. package/src/raycast/states/IdleState.js +17 -17
  127. package/src/raycast/states/OnRaycastEnter.js +15 -15
  128. package/src/raycast/states/OnRaycastExit.js +16 -16
  129. package/src/raycast/states/OnRaycastHover.js +25 -25
  130. package/src/render_mode/BaseRender.js +32 -32
  131. package/src/render_mode/BloomRender.js +61 -61
  132. package/src/render_mode/DebugNormalsRender.js +20 -20
  133. package/src/render_mode/DeferredRender.js +112 -112
  134. package/src/render_mode/NormalAORender.js +71 -71
  135. package/src/render_mode/NormalRender.js +36 -36
  136. package/src/render_mode/OutlineRender.js +154 -154
  137. package/src/render_mode/PlanarReflectionsRender.js +118 -118
  138. package/src/render_mode/TransparencyMixRender.js +143 -143
  139. package/src/render_mode/UnrealBloomRender.js +109 -109
  140. package/src/render_utilities/Blitter.js +99 -99
  141. package/src/render_utilities/Blurrer.js +29 -29
  142. package/src/render_utilities/DepthAndNormalsRenderer.js +45 -45
  143. package/src/render_utilities/DualFilteringBlurrer.js +56 -56
  144. package/src/render_utilities/GaussianBlurrer.js +146 -146
  145. package/src/render_utilities/MedianFilter.js +66 -66
  146. package/src/render_utilities/ViewPositionRenderer.js +48 -48
  147. package/src/resource_loader/BasisLoader.js +49 -49
  148. package/src/resource_loader/FontLoader.js +46 -46
  149. package/src/resource_loader/JSONLoader.js +30 -30
  150. package/src/resource_loader/OBJLoader.js +46 -46
  151. package/src/resource_loader/PointArrayLoader.js +70 -70
  152. package/src/resource_loader/RGBETextureLoader.js +46 -46
  153. package/src/resource_loader/VideoLoader.js +30 -30
  154. package/src/shaders/add/add.frag +8 -8
  155. package/src/shaders/anti_aliasing/fxaa.frag +71 -71
  156. package/src/shaders/basic_color/basic_color.frag +5 -5
  157. package/src/shaders/basic_color/basic_color.vert +9 -9
  158. package/src/shaders/basic_line/basic_line.frag +36 -36
  159. package/src/shaders/basic_line/basic_line.vert +36 -36
  160. package/src/shaders/basic_texture/basic_texture.frag +9 -9
  161. package/src/shaders/basic_texture/basic_texture.vert +16 -16
  162. package/src/shaders/bloom/bloom_compose_frag.glsl +22 -22
  163. package/src/shaders/bloom/cheap_bloom_compose_frag.glsl +13 -13
  164. package/src/shaders/box_blur/box_blur.frag +24 -24
  165. package/src/shaders/box_blur/compose.frag +31 -31
  166. package/src/shaders/clear/clear_depth_normal.frag +24 -24
  167. package/src/shaders/copy/copy.frag +6 -6
  168. package/src/shaders/copy/copy.vert +5 -5
  169. package/src/shaders/deferred/blit_copy.vert +11 -11
  170. package/src/shaders/deferred/deferred_compose.frag +59 -59
  171. package/src/shaders/deferred/point_light.frag +66 -66
  172. package/src/shaders/deferred/point_light.vert +13 -13
  173. package/src/shaders/depth_normals/debug_normals.frag +47 -47
  174. package/src/shaders/depth_normals/depth_normals.frag +30 -30
  175. package/src/shaders/depth_normals/depth_normals.vert +12 -12
  176. package/src/shaders/dual_filter_blur/alpha_filter.frag +14 -14
  177. package/src/shaders/dual_filter_blur/downsample.frag +21 -21
  178. package/src/shaders/dual_filter_blur/upsample.frag +24 -24
  179. package/src/shaders/edge_visualizer/edge_visualizer.frag +17 -17
  180. package/src/shaders/edge_visualizer/edge_visualizer.vert +15 -15
  181. package/src/shaders/edges/corners.frag +10 -10
  182. package/src/shaders/edges/corners.vert +30 -30
  183. package/src/shaders/edges/edges.frag +6 -6
  184. package/src/shaders/edges/edges.vert +27 -27
  185. package/src/shaders/gaussian_blur/gaussian_blur.frag +24 -24
  186. package/src/shaders/gaussian_blur/unreal_bloom_compose.frag +24 -24
  187. package/src/shaders/gpu_particles/common_utils.glsl +12 -12
  188. package/src/shaders/gpu_particles/generic_storage.frag +7 -7
  189. package/src/shaders/gpu_particles/store/store_position.vert +14 -14
  190. package/src/shaders/gpu_particles/update/basic_update.frag +20 -20
  191. package/src/shaders/gpu_particles/visualize/visualize.frag +10 -10
  192. package/src/shaders/gpu_particles/visualize/visualize.vert +12 -12
  193. package/src/shaders/grid/grid.frag +16 -16
  194. package/src/shaders/grid/grid.vert +9 -9
  195. package/src/shaders/luminosity_high_pass/luminosity_high_pass.frag +22 -22
  196. package/src/shaders/median_filter/median_filter.frag +134 -134
  197. package/src/shaders/normal/normal.frag +6 -6
  198. package/src/shaders/normal/normal.vert +6 -6
  199. package/src/shaders/sdf_text/sdf_screen_text.frag +51 -51
  200. package/src/shaders/sdf_text/sdf_screen_text.vert +41 -41
  201. package/src/shaders/sdf_text/sdf_text.frag +53 -53
  202. package/src/shaders/sdf_text/sdf_text.vert +41 -41
  203. package/src/shaders/ssao/hbao.frag +264 -264
  204. package/src/shaders/ssao/ssao.frag +95 -95
  205. package/src/shaders/ssao/ssao.vert +10 -10
  206. package/src/shaders/ssao/ssao_compose.frag +14 -14
  207. package/src/shaders/transparent_mix/copy.frag +6 -6
  208. package/src/shaders/transparent_mix/transparent_mix.frag +18 -18
  209. package/src/shaders/transparent_mix/transparent_mix.vert +7 -7
  210. package/src/shaders/ui/ss_texture.frag +10 -10
  211. package/src/shaders/ui/ss_texture.vert +31 -31
  212. package/src/shaders/ui/ws_texture.vert +38 -38
  213. package/src/shaders/ui_element/ui_element.frag +11 -11
  214. package/src/shaders/ui_element/ui_element.vert +32 -32
  215. package/src/shaders/unreal_blur/unreal_blur.frag +24 -24
  216. package/src/shaders/unreal_blur/unreal_compose.frag +23 -23
  217. package/src/shaders/write_view_position/write_view_position.frag +6 -6
  218. package/src/shaders/write_view_position/write_view_position.vert +8 -8
  219. package/src/static_batcher/BatchedMesh.js +54 -54
  220. package/src/static_batcher/GeometryBatch.js +312 -312
  221. package/src/static_batcher/GeometryBatcher.js +63 -63
  222. package/src/static_batcher/MeshBatcher.js +56 -56
  223. package/src/ui/ui_element_position/ScreenSpacePosition.js +14 -14
  224. package/src/ui/ui_element_position/WorldSpacePosition.js +21 -21
  225. package/src/ui/ui_element_state/OnIdle.js +17 -17
  226. package/src/ui/ui_element_state/OnMouseEnter.js +26 -26
  227. package/src/ui/ui_element_state/OnMouseExit.js +15 -15
  228. package/src/ui/ui_element_state/OnMouseHover.js +31 -31
  229. package/src/ui/ui_element_state/UIElementState.js +18 -18
  230. package/src/utilities/ArrayUtilities.js +55 -55
  231. package/src/utilities/CameraUtilities.js +210 -210
  232. package/src/utilities/EasingFunctions.js +226 -226
  233. package/src/utilities/FrustumPointFitter.js +255 -255
  234. package/src/utilities/GeometryUtilities.js +74 -74
  235. package/src/utilities/HTMLUtilities.js +44 -44
  236. package/src/utilities/ImageUtilities.js +26 -26
  237. package/src/utilities/MeshSampler.js +205 -205
  238. package/src/utilities/ModelUtilities.js +161 -161
  239. package/src/utilities/OMath.js +154 -155
  240. package/src/utilities/OrthographicFrustumPointFitter.js +47 -47
  241. package/src/utilities/PerspectiveFrustumPointFitter.js +251 -250
  242. package/src/utilities/StringUtilities.js +32 -32
  243. package/src/utilities/TimeUtilities.js +22 -22
  244. package/src/utilities/Validation.js +34 -34
  245. package/src/view_components/ApplicationView.js +75 -75
  246. package/src/view_components/ViewComponent.js +72 -72
  247. package/src/view_components/ViewComponentManager.js +68 -68
  248. package/src/view_components/ViewContext.js +14 -14
  249. package/src/view_components/ViewManager.js +189 -189
  250. package/src/view_components/ViewState.js +54 -54
  251. package/src/view_components/transition/ActionSequencerBuilder.js +106 -106
  252. package/src/view_components/transition/DrawIOAnimationSheet.js +90 -90
  253. package/src/view_components/transition/TransitionTable.js +54 -54
  254. package/src/view_components/transition/ViewStateTransitionHandler.js +96 -96
  255. package/types/BaseApplication.d.ts +8 -8
  256. package/types/Browser.d.ts +12 -12
  257. package/types/CameraManager.d.ts +8 -8
  258. package/types/Capabilities.d.ts +6 -6
  259. package/types/Configuration.d.ts +6 -6
  260. package/types/Debug.d.ts +38 -38
  261. package/types/EventManager.d.ts +42 -42
  262. package/types/Graphics.d.ts +35 -35
  263. package/types/Initializer.d.ts +4 -4
  264. package/types/Input.d.ts +170 -170
  265. package/types/OS.d.ts +18 -18
  266. package/types/OScreen.d.ts +18 -18
  267. package/types/OrthographicCamera.d.ts +5 -5
  268. package/types/PerspectiveCamera.d.ts +5 -5
  269. package/types/ReflectionPlaneContext.d.ts +6 -6
  270. package/types/RenderLayers.d.ts +6 -6
  271. package/types/RenderLoop.d.ts +12 -12
  272. package/types/ResourceContainer.d.ts +8 -8
  273. package/types/SceneManager.d.ts +10 -10
  274. package/types/Screen.d.ts +17 -17
  275. package/types/Time.d.ts +11 -11
  276. package/types/UI.d.ts +15 -15
  277. package/types/action_sequencer/ActionEvent.d.ts +6 -6
  278. package/types/action_sequencer/ActionInterpolator.d.ts +5 -5
  279. package/types/action_sequencer/ActionSequencer.d.ts +30 -30
  280. package/types/action_sequencer/NumberInterpolator.d.ts +8 -8
  281. package/types/action_sequencer/VectorInterpolator.d.ts +7 -7
  282. package/types/canvas_drawer/CanvasDrawer.d.ts +13 -13
  283. package/types/canvas_drawer/MultiLineTextDrawer.d.ts +5 -5
  284. package/types/canvas_drawer/SimpleTextDrawer.d.ts +5 -5
  285. package/types/components/AudioClip.d.ts +12 -12
  286. package/types/components/AxisHelper.d.ts +6 -6
  287. package/types/components/BaseObject.d.ts +5 -5
  288. package/types/components/EdgeMesh.d.ts +13 -13
  289. package/types/components/GeometryEdgeVisualizer.d.ts +4 -4
  290. package/types/components/Grid.d.ts +2 -2
  291. package/types/components/Line.d.ts +16 -16
  292. package/types/components/MultiLinePath.d.ts +4 -4
  293. package/types/components/MultiLineText2D.d.ts +10 -10
  294. package/types/components/ObjectAxis.d.ts +3 -3
  295. package/types/components/ObjectOrientedBoundingBox.d.ts +18 -18
  296. package/types/components/PlaneHelper.d.ts +6 -6
  297. package/types/components/Shape2D.d.ts +4 -4
  298. package/types/components/Shape3D.d.ts +3 -3
  299. package/types/components/Text2D.d.ts +13 -13
  300. package/types/components/UIElement.d.ts +52 -52
  301. package/types/components/UpdatableMaterialMesh.d.ts +4 -4
  302. package/types/components/WorldImage.d.ts +13 -13
  303. package/types/components/sdf_text/SDFText.d.ts +30 -30
  304. package/types/components/sdf_text/SDFTextBatch.d.ts +12 -12
  305. package/types/components/sdf_text/TextGlyph.d.ts +6 -6
  306. package/types/editor/ManipulatorHandle.d.ts +14 -14
  307. package/types/editor/ObjectEditor.d.ts +16 -16
  308. package/types/editor/ObjectManipulator.d.ts +19 -19
  309. package/types/editor/ObjectPicker.d.ts +16 -16
  310. package/types/gpu_particles/GPUParticleSystem.d.ts +12 -12
  311. package/types/gpu_particles/ParticleAttribute.d.ts +15 -15
  312. package/types/gpu_particles/ParticlePositionAttribute.d.ts +4 -4
  313. package/types/html_utilities/CSSAnimator.d.ts +30 -30
  314. package/types/html_utilities/css_animator_states/Animating.d.ts +8 -8
  315. package/types/html_utilities/css_animator_states/Idle.d.ts +6 -6
  316. package/types/index.d.ts +90 -90
  317. package/types/materials/AddMaterial.d.ts +5 -5
  318. package/types/materials/AlphaFilterMaterial.d.ts +6 -6
  319. package/types/materials/BaseShaderMaterial.d.ts +3 -3
  320. package/types/materials/BlitMaterial.d.ts +3 -3
  321. package/types/materials/BloomComposeMaterial.d.ts +7 -7
  322. package/types/materials/BoxBlurMaterial.d.ts +4 -4
  323. package/types/materials/ClearAlphaMaterial.d.ts +3 -3
  324. package/types/materials/ClearColorMaterial.d.ts +7 -7
  325. package/types/materials/ClearDepthNormalMaterial.d.ts +4 -4
  326. package/types/materials/DeferredRendererComposeMaterial.d.ts +7 -7
  327. package/types/materials/DepthNormalMaterial.d.ts +4 -4
  328. package/types/materials/DisplayNormalTextureMaterial.d.ts +4 -4
  329. package/types/materials/DualFilteringBlurMaterial.d.ts +4 -4
  330. package/types/materials/FXAAMaterial.d.ts +3 -3
  331. package/types/materials/GaussianBlurMaterial.d.ts +6 -6
  332. package/types/materials/LuminosityHighPassMaterial.d.ts +4 -4
  333. package/types/materials/MedianFilterMaterial.d.ts +6 -6
  334. package/types/materials/NormalMaterial.d.ts +2 -2
  335. package/types/materials/SDFScreenTextMaterial.d.ts +11 -11
  336. package/types/materials/SDFTextMaterial.d.ts +12 -12
  337. package/types/materials/SSAOComposeMaterial.d.ts +4 -4
  338. package/types/materials/SSAOMaterial.d.ts +6 -6
  339. package/types/materials/ScreenSpaceTextureMaterial.d.ts +7 -7
  340. package/types/materials/UIElementMaterial.d.ts +7 -7
  341. package/types/materials/UnrealBloomComposeMaterial.d.ts +17 -17
  342. package/types/materials/UnrealBlurMaterial.d.ts +4 -4
  343. package/types/materials/UnrealComposeMaterial.d.ts +4 -4
  344. package/types/materials/ViewPositionMaterial.d.ts +3 -3
  345. package/types/materials/deferred/DeferredPointLightMaterial.d.ts +10 -10
  346. package/types/materials/gpu_particles/ParticleStorageMaterial.d.ts +3 -3
  347. package/types/materials/gpu_particles/PositionStorageMaterial.d.ts +4 -4
  348. package/types/object_pool/Pool.d.ts +10 -10
  349. package/types/primitives/Arrow.d.ts +8 -8
  350. package/types/primitives/Cube.d.ts +3 -3
  351. package/types/primitives/HorizontalPlane.d.ts +3 -3
  352. package/types/primitives/Sphere.d.ts +3 -3
  353. package/types/primitives/VerticalPlane.d.ts +3 -3
  354. package/types/raycast/GroupRaycaster.d.ts +13 -13
  355. package/types/raycast/PlaneDragResolver.d.ts +14 -14
  356. package/types/raycast/PlaneRaycastResolver.d.ts +5 -5
  357. package/types/raycast/PlaneRaycaster.d.ts +7 -7
  358. package/types/raycast/RaycastResolver.d.ts +5 -5
  359. package/types/raycast/SurfaceDragResolver.d.ts +13 -13
  360. package/types/raycast/states/BaseState.d.ts +5 -5
  361. package/types/raycast/states/IdleState.d.ts +5 -5
  362. package/types/raycast/states/OnRaycastEnter.d.ts +5 -5
  363. package/types/raycast/states/OnRaycastExit.d.ts +4 -4
  364. package/types/raycast/states/OnRaycastHover.d.ts +4 -4
  365. package/types/render_mode/BaseRender.d.ts +7 -7
  366. package/types/render_mode/BloomRender.d.ts +10 -10
  367. package/types/render_mode/DebugNormalsRender.d.ts +4 -4
  368. package/types/render_mode/DeferredRender.d.ts +9 -9
  369. package/types/render_mode/NormalAORender.d.ts +16 -16
  370. package/types/render_mode/NormalRender.d.ts +4 -4
  371. package/types/render_mode/OutlineRender.d.ts +20 -20
  372. package/types/render_mode/PlanarReflectionsRender.d.ts +13 -13
  373. package/types/render_mode/TransparencyMixRender.d.ts +21 -21
  374. package/types/render_mode/UnrealBloomRender.d.ts +19 -19
  375. package/types/render_utilities/Blitter.d.ts +16 -16
  376. package/types/render_utilities/Blurrer.d.ts +9 -9
  377. package/types/render_utilities/DepthAndNormalsRenderer.d.ts +12 -12
  378. package/types/render_utilities/DualFilteringBlurrer.d.ts +19 -19
  379. package/types/render_utilities/GaussianBlurrer.d.ts +27 -27
  380. package/types/render_utilities/MedianFilter.d.ts +10 -10
  381. package/types/render_utilities/ViewPositionRenderer.d.ts +9 -9
  382. package/types/resource_loader/AbstractLoader.d.ts +18 -18
  383. package/types/resource_loader/AsyncTextureLoader.ts +6 -6
  384. package/types/resource_loader/AudioLoader.d.ts +8 -8
  385. package/types/resource_loader/BasisLoader.d.ts +6 -6
  386. package/types/resource_loader/CubemapLoader.d.ts +7 -7
  387. package/types/resource_loader/DAELoader.d.ts +6 -6
  388. package/types/resource_loader/DDSLoader.d.ts +6 -6
  389. package/types/resource_loader/FileLoader.d.ts +6 -6
  390. package/types/resource_loader/FontLoader.d.ts +6 -6
  391. package/types/resource_loader/GLTFDRACOLoader.d.ts +6 -6
  392. package/types/resource_loader/GLTFLoader.d.ts +5 -5
  393. package/types/resource_loader/HDRCubeTextureLoader.d.ts +7 -7
  394. package/types/resource_loader/JSONLoader.d.ts +6 -6
  395. package/types/resource_loader/OBJLoader.d.ts +6 -6
  396. package/types/resource_loader/PointArrayLoader.d.ts +7 -7
  397. package/types/resource_loader/RGBETextureLoader.d.ts +6 -6
  398. package/types/resource_loader/ResourceBatch.d.ts +13 -13
  399. package/types/resource_loader/SVGLoader.d.ts +6 -6
  400. package/types/resource_loader/TextLoader.d.ts +6 -6
  401. package/types/resource_loader/TextureLoader.d.ts +6 -6
  402. package/types/resource_loader/VideoLoader.d.ts +6 -6
  403. package/types/static_batcher/GeometryBatch.d.ts +37 -37
  404. package/types/static_batcher/GeometryBatcher.d.ts +7 -7
  405. package/types/ui/ui_element_position/ScreenSpacePosition.d.ts +4 -4
  406. package/types/ui/ui_element_position/WorldSpacePosition.d.ts +5 -5
  407. package/types/ui/ui_element_state/OnIdle.d.ts +5 -5
  408. package/types/ui/ui_element_state/OnMouseEnter.d.ts +5 -5
  409. package/types/ui/ui_element_state/OnMouseExit.d.ts +5 -5
  410. package/types/ui/ui_element_state/OnMouseHover.d.ts +5 -5
  411. package/types/ui/ui_element_state/UIElementState.d.ts +5 -5
  412. package/types/utilities/ArrayUtilities.d.ts +7 -7
  413. package/types/utilities/CameraUtilities.d.ts +24 -24
  414. package/types/utilities/EasingFunctions.d.ts +35 -35
  415. package/types/utilities/FrustumPointFitter.d.ts +14 -14
  416. package/types/utilities/GeometryUtilities.d.ts +4 -4
  417. package/types/utilities/HTMLUtilities.d.ts +10 -10
  418. package/types/utilities/ImageUtilities.d.ts +4 -4
  419. package/types/utilities/MeshSampler.d.ts +14 -14
  420. package/types/utilities/ModelUtilities.d.ts +13 -13
  421. package/types/utilities/OMath.d.ts +21 -21
  422. package/types/utilities/ObjectUtilities.d.ts +16 -16
  423. package/types/utilities/OrthographicFrustumPointFitter.d.ts +7 -7
  424. package/types/utilities/PerspectiveFrustumPointFitter.d.ts +12 -12
  425. package/types/utilities/StringUtilities.d.ts +5 -5
  426. package/types/utilities/TimeUtilities.d.ts +3 -3
  427. package/types/utilities/Validation.d.ts +6 -6
  428. package/types/view_components/ApplicationView.d.ts +20 -20
  429. package/types/view_components/ViewComponent.d.ts +15 -15
  430. package/types/view_components/ViewComponentManager.d.ts +10 -10
  431. package/types/view_components/ViewContext.d.ts +6 -6
  432. package/types/view_components/ViewManager.d.ts +24 -24
  433. package/types/view_components/ViewState.d.ts +15 -15
  434. package/types/view_components/transition/ActionSequencerBuilder.d.ts +15 -15
  435. package/types/view_components/transition/DrawIOAnimationSheet.d.ts +17 -17
  436. package/types/view_components/transition/TransitionTable.d.ts +8 -8
  437. package/types/view_components/transition/ViewStateTransitionHandler.d.ts +16 -16
@@ -1,95 +1,95 @@
1
- uniform sampler2D _MainTex;
2
- uniform mat4 _InverseProjMatrix;
3
-
4
- uniform float _Bias;
5
- uniform float _Radius;
6
-
7
- uniform vec2 _Resolution;
8
- uniform float _FarPlane;
9
-
10
-
11
- varying vec2 vUv;
12
- varying vec4 vRay;
13
-
14
-
15
- uniform vec3 _SampleKernel[64];
16
- uniform sampler2D _RandomRotation;
17
- uniform mat4 _ProjectionMatrix;
18
-
19
- vec3 decode_normal (vec4 enc)
20
- {
21
- float scale = 1.7777;
22
- vec3 nn =
23
- enc.xyz*vec3(2.0*scale,2.0*scale,0.0) +
24
- vec3(-scale,-scale,1.0);
25
- float g = 2.0 / dot(nn.xyz,nn.xyz);
26
- vec3 n;
27
- n.xy = g*nn.xy;
28
- n.z = g-1.0;
29
- return n;
30
- }
31
-
32
- float DecodeFloatRG( vec2 enc )
33
- {
34
- vec2 kDecodeDot = vec2(1.0, 1.0/255.0);
35
- return dot( enc, kDecodeDot );
36
- }
37
-
38
- vec3 DecodeNormal(vec2 uv)
39
- {
40
- vec2 encoded_normal = texture2D(_MainTex, uv).zw;
41
- vec3 normalValue = normalize(decode_normal(vec4(encoded_normal, 0., 0.)));
42
- return normalize(normalValue);
43
- }
44
- vec3 DecodeViewPos(vec2 uv)
45
- {
46
- vec2 depth = texture2D(_MainTex, uv).xy;
47
- vec4 inv_proj = _InverseProjMatrix * vec4(vUv * 2.0 - 1.0, 1.0, 1.0);
48
- return DecodeFloatRG(depth) * (vRay.xyz/vRay.w);
49
-
50
- }
51
-
52
-
53
-
54
-
55
- void main()
56
- {
57
-
58
- vec2 noiseScale = vec2(_Resolution.x/4.0,_Resolution.y/4.0); // noise texture 4x4
59
-
60
- vec3 fragPos = DecodeViewPos(vUv);
61
- vec3 normal = DecodeNormal(vUv);
62
- vec3 randomVec = texture2D(_RandomRotation, vUv * noiseScale).xyz;
63
- randomVec = vec3(randomVec.xy * 2.0 - 1.0, 0);
64
- randomVec = normalize(randomVec);
65
-
66
-
67
- vec3 tangent = normalize(randomVec - normal * dot(randomVec, normal));
68
- vec3 bitangent = normalize(cross(normal, tangent));
69
- mat3 TBN = mat3(tangent, bitangent, normal);
70
-
71
-
72
- float occlusion = 0.0;
73
- const int kernelSize = 64;
74
-
75
-
76
- for(int i = 0; i < kernelSize; ++i)
77
- {
78
- // get sample position
79
- vec3 sample = TBN * _SampleKernel[i]; // From tangent to view-space
80
- sample = fragPos + sample * _Radius;
81
- vec4 projPos = _ProjectionMatrix * vec4(sample, 1.0);
82
- vec2 screenPos = projPos.xy / projPos.w;
83
- screenPos = screenPos * 0.5 +0.5;
84
-
85
- float sampled_depth = DecodeViewPos(screenPos).z;
86
- float rangeCheck = smoothstep(0.0, 1.0, _Radius / abs(fragPos.z - sampled_depth));
87
- occlusion += step(sample.z+_Bias, sampled_depth) * rangeCheck;
88
-
89
- }
90
- occlusion = (occlusion / float(kernelSize));
91
- gl_FragColor.rgb = vec3(occlusion,occlusion,occlusion);
92
- gl_FragColor.a = 1.0;
93
-
94
-
95
- }
1
+ uniform sampler2D _MainTex;
2
+ uniform mat4 _InverseProjMatrix;
3
+
4
+ uniform float _Bias;
5
+ uniform float _Radius;
6
+
7
+ uniform vec2 _Resolution;
8
+ uniform float _FarPlane;
9
+
10
+
11
+ varying vec2 vUv;
12
+ varying vec4 vRay;
13
+
14
+
15
+ uniform vec3 _SampleKernel[64];
16
+ uniform sampler2D _RandomRotation;
17
+ uniform mat4 _ProjectionMatrix;
18
+
19
+ vec3 decode_normal (vec4 enc)
20
+ {
21
+ float scale = 1.7777;
22
+ vec3 nn =
23
+ enc.xyz*vec3(2.0*scale,2.0*scale,0.0) +
24
+ vec3(-scale,-scale,1.0);
25
+ float g = 2.0 / dot(nn.xyz,nn.xyz);
26
+ vec3 n;
27
+ n.xy = g*nn.xy;
28
+ n.z = g-1.0;
29
+ return n;
30
+ }
31
+
32
+ float DecodeFloatRG( vec2 enc )
33
+ {
34
+ vec2 kDecodeDot = vec2(1.0, 1.0/255.0);
35
+ return dot( enc, kDecodeDot );
36
+ }
37
+
38
+ vec3 DecodeNormal(vec2 uv)
39
+ {
40
+ vec2 encoded_normal = texture2D(_MainTex, uv).zw;
41
+ vec3 normalValue = normalize(decode_normal(vec4(encoded_normal, 0., 0.)));
42
+ return normalize(normalValue);
43
+ }
44
+ vec3 DecodeViewPos(vec2 uv)
45
+ {
46
+ vec2 depth = texture2D(_MainTex, uv).xy;
47
+ vec4 inv_proj = _InverseProjMatrix * vec4(vUv * 2.0 - 1.0, 1.0, 1.0);
48
+ return DecodeFloatRG(depth) * (vRay.xyz/vRay.w);
49
+
50
+ }
51
+
52
+
53
+
54
+
55
+ void main()
56
+ {
57
+
58
+ vec2 noiseScale = vec2(_Resolution.x/4.0,_Resolution.y/4.0); // noise texture 4x4
59
+
60
+ vec3 fragPos = DecodeViewPos(vUv);
61
+ vec3 normal = DecodeNormal(vUv);
62
+ vec3 randomVec = texture2D(_RandomRotation, vUv * noiseScale).xyz;
63
+ randomVec = vec3(randomVec.xy * 2.0 - 1.0, 0);
64
+ randomVec = normalize(randomVec);
65
+
66
+
67
+ vec3 tangent = normalize(randomVec - normal * dot(randomVec, normal));
68
+ vec3 bitangent = normalize(cross(normal, tangent));
69
+ mat3 TBN = mat3(tangent, bitangent, normal);
70
+
71
+
72
+ float occlusion = 0.0;
73
+ const int kernelSize = 64;
74
+
75
+
76
+ for(int i = 0; i < kernelSize; ++i)
77
+ {
78
+ // get sample position
79
+ vec3 sample = TBN * _SampleKernel[i]; // From tangent to view-space
80
+ sample = fragPos + sample * _Radius;
81
+ vec4 projPos = _ProjectionMatrix * vec4(sample, 1.0);
82
+ vec2 screenPos = projPos.xy / projPos.w;
83
+ screenPos = screenPos * 0.5 +0.5;
84
+
85
+ float sampled_depth = DecodeViewPos(screenPos).z;
86
+ float rangeCheck = smoothstep(0.0, 1.0, _Radius / abs(fragPos.z - sampled_depth));
87
+ occlusion += step(sample.z+_Bias, sampled_depth) * rangeCheck;
88
+
89
+ }
90
+ occlusion = (occlusion / float(kernelSize));
91
+ gl_FragColor.rgb = vec3(occlusion,occlusion,occlusion);
92
+ gl_FragColor.a = 1.0;
93
+
94
+
95
+ }
@@ -1,11 +1,11 @@
1
- varying vec2 vUv;
2
- varying vec4 vRay;
3
-
4
- uniform mat4 _InverseProjMatrix;
5
-
6
- void main()
7
- {
8
- gl_Position = vec4(uv * 2.0 - 1.0, 1.0, 1.0);
9
- vRay = _InverseProjMatrix * vec4(uv * 2.0 - 1.0, 1.0, 1.0);
10
- vUv = uv;
1
+ varying vec2 vUv;
2
+ varying vec4 vRay;
3
+
4
+ uniform mat4 _InverseProjMatrix;
5
+
6
+ void main()
7
+ {
8
+ gl_Position = vec4(uv * 2.0 - 1.0, 1.0, 1.0);
9
+ vRay = _InverseProjMatrix * vec4(uv * 2.0 - 1.0, 1.0, 1.0);
10
+ vUv = uv;
11
11
  }
@@ -1,14 +1,14 @@
1
- uniform sampler2D _MainTex;
2
- uniform sampler2D _AO;
3
- uniform vec2 _Resolution;
4
- uniform vec2 _SampleDir;
5
- varying vec2 vUv;
6
-
7
- void main()
8
- {
9
-
10
-
11
- gl_FragColor.rgb = texture2D(_MainTex, vUv).rgb * (1.0 - texture2D(_AO, vUv).r);
12
- gl_FragColor.a = 1.0;
13
-
14
- }
1
+ uniform sampler2D _MainTex;
2
+ uniform sampler2D _AO;
3
+ uniform vec2 _Resolution;
4
+ uniform vec2 _SampleDir;
5
+ varying vec2 vUv;
6
+
7
+ void main()
8
+ {
9
+
10
+
11
+ gl_FragColor.rgb = texture2D(_MainTex, vUv).rgb * (1.0 - texture2D(_AO, vUv).r);
12
+ gl_FragColor.a = 1.0;
13
+
14
+ }
@@ -1,7 +1,7 @@
1
- uniform sampler2D _MainTex;
2
- varying vec2 vUv;
3
-
4
- void main()
5
- {
6
- gl_FragColor = texture2D( _MainTex, vUv);
1
+ uniform sampler2D _MainTex;
2
+ varying vec2 vUv;
3
+
4
+ void main()
5
+ {
6
+ gl_FragColor = texture2D( _MainTex, vUv);
7
7
  }
@@ -1,19 +1,19 @@
1
- uniform sampler2D _OpaqueTex;
2
- uniform sampler2D _TransparentTex;
3
- uniform vec2 _Resolution;
4
- uniform float _Opacity;
5
- varying vec2 vUv;
6
-
7
- void main()
8
- {
9
- vec4 opaque = texture2D( _OpaqueTex, vUv);
10
- vec4 transparent = texture2D( _TransparentTex, vUv);
11
-
12
- gl_FragColor = vec4(mix(opaque.rgb, transparent.rgb, transparent.a*_Opacity), 1.0);
13
- // if(vUv.x > 0.5)
14
- // gl_FragColor = vec4(opaque.rgb, 1.0);
15
- // else
16
- // gl_FragColor = vec4(transparent.rgb, 1.0);
17
-
18
-
1
+ uniform sampler2D _OpaqueTex;
2
+ uniform sampler2D _TransparentTex;
3
+ uniform vec2 _Resolution;
4
+ uniform float _Opacity;
5
+ varying vec2 vUv;
6
+
7
+ void main()
8
+ {
9
+ vec4 opaque = texture2D( _OpaqueTex, vUv);
10
+ vec4 transparent = texture2D( _TransparentTex, vUv);
11
+
12
+ gl_FragColor = vec4(mix(opaque.rgb, transparent.rgb, transparent.a*_Opacity), 1.0);
13
+ // if(vUv.x > 0.5)
14
+ // gl_FragColor = vec4(opaque.rgb, 1.0);
15
+ // else
16
+ // gl_FragColor = vec4(transparent.rgb, 1.0);
17
+
18
+
19
19
  }
@@ -1,8 +1,8 @@
1
-
2
- varying vec2 vUv;
3
-
4
- void main()
5
- {
6
- gl_Position = vec4(uv * 2.0 - 1.0, 0.0, 1.0);
7
- vUv = uv;
1
+
2
+ varying vec2 vUv;
3
+
4
+ void main()
5
+ {
6
+ gl_Position = vec4(uv * 2.0 - 1.0, 0.0, 1.0);
7
+ vUv = uv;
8
8
  }
@@ -1,11 +1,11 @@
1
- uniform sampler2D _MainTex;
2
- uniform vec2 _ScreenSize;
3
- uniform vec2 _TextureSize;
4
- varying vec2 vUv;
5
-
6
-
7
-
8
- void main()
9
- {
10
- gl_FragColor = texture2D(_MainTex, vUv + vec2(0.5, 0.5)/_TextureSize);
1
+ uniform sampler2D _MainTex;
2
+ uniform vec2 _ScreenSize;
3
+ uniform vec2 _TextureSize;
4
+ varying vec2 vUv;
5
+
6
+
7
+
8
+ void main()
9
+ {
10
+ gl_FragColor = texture2D(_MainTex, vUv + vec2(0.5, 0.5)/_TextureSize);
11
11
  }
@@ -1,32 +1,32 @@
1
- uniform vec2 _ScreenSize;
2
- uniform vec2 _TextureSize;
3
- uniform vec2 _PixelOffset;
4
- uniform vec3 _NDC;
5
- uniform vec2 _PivotPoint;
6
- uniform float _DepthOffset;
7
- varying vec2 vUv;
8
-
9
-
10
- vec2 round_to_ceil(vec2 pos)
11
- {
12
- pos = pos * 0.5 + 0.5;
13
- pos *= _ScreenSize;
14
- pos = ceil(pos)+0.5;
15
- pos /= _ScreenSize;
16
- return pos * 2.0 - 1.0;
17
- }
18
- void main()
19
- {
20
- vec4 projected_pos = projectionMatrix * viewMatrix * vec4(_NDC, 1.0);
21
- projected_pos.zw += _DepthOffset;
22
-
23
- projected_pos.xyz /= projected_pos.w;
24
-
25
- vec2 normalized_size = _TextureSize/_ScreenSize;
26
- vec2 dir = uv * 2.0 - 1.0;
27
- dir -= _PivotPoint;
28
- vec2 pos = projected_pos.xy+ dir * normalized_size;
29
- gl_Position = vec4(round_to_ceil(pos), projected_pos.z, 1.0);
30
- vUv = uv;
31
-
1
+ uniform vec2 _ScreenSize;
2
+ uniform vec2 _TextureSize;
3
+ uniform vec2 _PixelOffset;
4
+ uniform vec3 _NDC;
5
+ uniform vec2 _PivotPoint;
6
+ uniform float _DepthOffset;
7
+ varying vec2 vUv;
8
+
9
+
10
+ vec2 round_to_ceil(vec2 pos)
11
+ {
12
+ pos = pos * 0.5 + 0.5;
13
+ pos *= _ScreenSize;
14
+ pos = ceil(pos)+0.5;
15
+ pos /= _ScreenSize;
16
+ return pos * 2.0 - 1.0;
17
+ }
18
+ void main()
19
+ {
20
+ vec4 projected_pos = projectionMatrix * viewMatrix * vec4(_NDC, 1.0);
21
+ projected_pos.zw += _DepthOffset;
22
+
23
+ projected_pos.xyz /= projected_pos.w;
24
+
25
+ vec2 normalized_size = _TextureSize/_ScreenSize;
26
+ vec2 dir = uv * 2.0 - 1.0;
27
+ dir -= _PivotPoint;
28
+ vec2 pos = projected_pos.xy+ dir * normalized_size;
29
+ gl_Position = vec4(round_to_ceil(pos), projected_pos.z, 1.0);
30
+ vUv = uv;
31
+
32
32
  }
@@ -1,39 +1,39 @@
1
-
2
- uniform vec2 _ScreenSize;
3
- uniform vec2 _TextSize;
4
- uniform vec2 _PixelOffset;
5
- uniform float _DepthOffset;
6
- uniform float _FixedDepth;
7
- uniform float _DepthValue;
8
- uniform float _UseAbsoluteScreenPosition;
9
- uniform vec2 _ScreenPosition;
10
- uniform float _WorldTextSize;
11
- varying vec2 vUv;
12
-
13
-
14
-
15
- void main()
16
- {
17
- vec3 w_pos;
18
- w_pos.x = modelMatrix[0][3];
19
- w_pos.y = modelMatrix[1][3];
20
- w_pos.z = modelMatrix[2][3];
21
-
22
- vec2 dir = uv * 2.0 - 1.0;
23
- dir.x *= (_TextSize.x / _TextSize.y);
24
-
25
- vec4 view_pos = modelViewMatrix * vec4(w_pos, 1.0);
26
- vec3 forward = vec3(0., 0., 1.);
27
- vec3 binormal = normalize(cross(forward, vec3(0.0, -1.0, 0.0)));
28
- vec3 up = cross(forward, binormal);
29
- vec3 normal = (binormal * dir.x + up * dir.y);
30
-
31
- normal = normalize(normal);
32
- view_pos.xyz += normal * _WorldTextSize * 0.5;
33
-
34
- gl_Position = projectionMatrix * view_pos;
35
-
36
-
37
- vUv = uv;
38
-
1
+
2
+ uniform vec2 _ScreenSize;
3
+ uniform vec2 _TextSize;
4
+ uniform vec2 _PixelOffset;
5
+ uniform float _DepthOffset;
6
+ uniform float _FixedDepth;
7
+ uniform float _DepthValue;
8
+ uniform float _UseAbsoluteScreenPosition;
9
+ uniform vec2 _ScreenPosition;
10
+ uniform float _WorldTextSize;
11
+ varying vec2 vUv;
12
+
13
+
14
+
15
+ void main()
16
+ {
17
+ vec3 w_pos;
18
+ w_pos.x = modelMatrix[0][3];
19
+ w_pos.y = modelMatrix[1][3];
20
+ w_pos.z = modelMatrix[2][3];
21
+
22
+ vec2 dir = uv * 2.0 - 1.0;
23
+ dir.x *= (_TextSize.x / _TextSize.y);
24
+
25
+ vec4 view_pos = modelViewMatrix * vec4(w_pos, 1.0);
26
+ vec3 forward = vec3(0., 0., 1.);
27
+ vec3 binormal = normalize(cross(forward, vec3(0.0, -1.0, 0.0)));
28
+ vec3 up = cross(forward, binormal);
29
+ vec3 normal = (binormal * dir.x + up * dir.y);
30
+
31
+ normal = normalize(normal);
32
+ view_pos.xyz += normal * _WorldTextSize * 0.5;
33
+
34
+ gl_Position = projectionMatrix * view_pos;
35
+
36
+
37
+ vUv = uv;
38
+
39
39
  }
@@ -1,11 +1,11 @@
1
- uniform sampler2D _MainTex;
2
- uniform vec2 _ScreenSize;
3
- uniform vec2 _TextureSize;
4
- varying vec2 vUv;
5
-
6
-
7
-
8
- void main()
9
- {
10
- gl_FragColor = texture2D(_MainTex, vUv + vec2(0.5, 0.5)/_TextureSize);
11
- }
1
+ uniform sampler2D _MainTex;
2
+ uniform vec2 _ScreenSize;
3
+ uniform vec2 _TextureSize;
4
+ varying vec2 vUv;
5
+
6
+
7
+
8
+ void main()
9
+ {
10
+ gl_FragColor = texture2D(_MainTex, vUv + vec2(0.5, 0.5)/_TextureSize);
11
+ }
@@ -1,32 +1,32 @@
1
- uniform vec2 _ScreenSize;
2
- uniform vec2 _TextureSize;
3
- uniform vec2 _PixelOffset;
4
- uniform vec3 _NDC;
5
- uniform vec2 _PivotPoint;
6
- uniform float _DepthOffset;
7
- varying vec2 vUv;
8
-
9
-
10
- vec2 add_pixel_offset(vec2 pos)
11
- {
12
- pos = pos * 0.5 + 0.5;
13
- pos *= _ScreenSize;
14
- pos = ceil(pos+_PixelOffset)+0.5;
15
- pos /= _ScreenSize;
16
- return pos * 2.0 - 1.0;
17
- }
18
- void main()
19
- {
20
- vec4 projected_pos = projectionMatrix * viewMatrix * vec4(_NDC, 1.0);
21
- projected_pos.zw += _DepthOffset;
22
-
23
- projected_pos.xyz /= projected_pos.w;
24
-
25
- vec2 normalized_size = _TextureSize/_ScreenSize;
26
- vec2 dir = uv * 2.0 - 1.0;
27
- dir -= _PivotPoint;
28
- vec2 pos = projected_pos.xy+dir * normalized_size;
29
- gl_Position = vec4(add_pixel_offset(pos), projected_pos.z, 1.0);
30
- vUv = uv;
31
-
32
- }
1
+ uniform vec2 _ScreenSize;
2
+ uniform vec2 _TextureSize;
3
+ uniform vec2 _PixelOffset;
4
+ uniform vec3 _NDC;
5
+ uniform vec2 _PivotPoint;
6
+ uniform float _DepthOffset;
7
+ varying vec2 vUv;
8
+
9
+
10
+ vec2 add_pixel_offset(vec2 pos)
11
+ {
12
+ pos = pos * 0.5 + 0.5;
13
+ pos *= _ScreenSize;
14
+ pos = ceil(pos+_PixelOffset)+0.5;
15
+ pos /= _ScreenSize;
16
+ return pos * 2.0 - 1.0;
17
+ }
18
+ void main()
19
+ {
20
+ vec4 projected_pos = projectionMatrix * viewMatrix * vec4(_NDC, 1.0);
21
+ projected_pos.zw += _DepthOffset;
22
+
23
+ projected_pos.xyz /= projected_pos.w;
24
+
25
+ vec2 normalized_size = _TextureSize/_ScreenSize;
26
+ vec2 dir = uv * 2.0 - 1.0;
27
+ dir -= _PivotPoint;
28
+ vec2 pos = projected_pos.xy+dir * normalized_size;
29
+ gl_Position = vec4(add_pixel_offset(pos), projected_pos.z, 1.0);
30
+ vUv = uv;
31
+
32
+ }
@@ -1,25 +1,25 @@
1
- #include <common>
2
- varying vec2 vUv;
3
- uniform sampler2D _MainTex;
4
- uniform vec2 _Resolution;
5
- uniform vec2 _SampleDir;
6
-
7
- float gaussianPdf(in float x, in float sigma) {
8
- return 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma;
9
- }
10
- void main() {
11
- vec2 invSize = 1.0 / _Resolution;
12
- float fSigma = float(SIGMA);
13
- float weightSum = gaussianPdf(0.0, fSigma);
14
- vec3 diffuseSum = texture2D( _MainTex, vUv).rgb * weightSum;
15
- for( int i = 1; i < KERNEL_RADIUS; i ++ ) {
16
- float x = float(i);
17
- float w = gaussianPdf(x, fSigma);
18
- vec2 uvOffset = _SampleDir * invSize * x;
19
- vec3 sample1 = texture2D( _MainTex, vUv + uvOffset).rgb;
20
- vec3 sample2 = texture2D( _MainTex, vUv - uvOffset).rgb;
21
- diffuseSum += (sample1 + sample2) * w;
22
- weightSum += 2.0 * w;
23
- }
24
- gl_FragColor = vec4(diffuseSum/weightSum, 1.0);
1
+ #include <common>
2
+ varying vec2 vUv;
3
+ uniform sampler2D _MainTex;
4
+ uniform vec2 _Resolution;
5
+ uniform vec2 _SampleDir;
6
+
7
+ float gaussianPdf(in float x, in float sigma) {
8
+ return 0.39894 * exp( -0.5 * x * x/( sigma * sigma))/sigma;
9
+ }
10
+ void main() {
11
+ vec2 invSize = 1.0 / _Resolution;
12
+ float fSigma = float(SIGMA);
13
+ float weightSum = gaussianPdf(0.0, fSigma);
14
+ vec3 diffuseSum = texture2D( _MainTex, vUv).rgb * weightSum;
15
+ for( int i = 1; i < KERNEL_RADIUS; i ++ ) {
16
+ float x = float(i);
17
+ float w = gaussianPdf(x, fSigma);
18
+ vec2 uvOffset = _SampleDir * invSize * x;
19
+ vec3 sample1 = texture2D( _MainTex, vUv + uvOffset).rgb;
20
+ vec3 sample2 = texture2D( _MainTex, vUv - uvOffset).rgb;
21
+ diffuseSum += (sample1 + sample2) * w;
22
+ weightSum += 2.0 * w;
23
+ }
24
+ gl_FragColor = vec4(diffuseSum/weightSum, 1.0);
25
25
  }
@@ -1,24 +1,24 @@
1
- varying vec2 vUv;
2
- uniform sampler2D blurTexture1;
3
- uniform sampler2D blurTexture2;
4
- uniform sampler2D blurTexture3;
5
- uniform sampler2D blurTexture4;
6
- uniform sampler2D blurTexture5;
7
- uniform sampler2D dirtTexture;
8
- uniform float bloomStrength;
9
- uniform float bloomRadius;
10
- uniform float bloomFactors[NUM_MIPS];
11
- uniform vec3 bloomTintColors[NUM_MIPS];
12
-
13
- float lerpBloomFactor(const in float factor) {
14
- float mirrorFactor = 1.2 - factor;
15
- return mix(factor, mirrorFactor, bloomRadius);
16
- }
17
-
18
- void main() {
19
- gl_FragColor = bloomStrength * ( lerpBloomFactor(bloomFactors[0]) * vec4(bloomTintColors[0], 1.0) * texture2D(blurTexture1, vUv) +
20
- lerpBloomFactor(bloomFactors[1]) * vec4(bloomTintColors[1], 1.0) * texture2D(blurTexture2, vUv) +
21
- lerpBloomFactor(bloomFactors[2]) * vec4(bloomTintColors[2], 1.0) * texture2D(blurTexture3, vUv) +
22
- lerpBloomFactor(bloomFactors[3]) * vec4(bloomTintColors[3], 1.0) * texture2D(blurTexture4, vUv) +
23
- lerpBloomFactor(bloomFactors[4]) * vec4(bloomTintColors[4], 1.0) * texture2D(blurTexture5, vUv) );
1
+ varying vec2 vUv;
2
+ uniform sampler2D blurTexture1;
3
+ uniform sampler2D blurTexture2;
4
+ uniform sampler2D blurTexture3;
5
+ uniform sampler2D blurTexture4;
6
+ uniform sampler2D blurTexture5;
7
+ uniform sampler2D dirtTexture;
8
+ uniform float bloomStrength;
9
+ uniform float bloomRadius;
10
+ uniform float bloomFactors[NUM_MIPS];
11
+ uniform vec3 bloomTintColors[NUM_MIPS];
12
+
13
+ float lerpBloomFactor(const in float factor) {
14
+ float mirrorFactor = 1.2 - factor;
15
+ return mix(factor, mirrorFactor, bloomRadius);
16
+ }
17
+
18
+ void main() {
19
+ gl_FragColor = bloomStrength * ( lerpBloomFactor(bloomFactors[0]) * vec4(bloomTintColors[0], 1.0) * texture2D(blurTexture1, vUv) +
20
+ lerpBloomFactor(bloomFactors[1]) * vec4(bloomTintColors[1], 1.0) * texture2D(blurTexture2, vUv) +
21
+ lerpBloomFactor(bloomFactors[2]) * vec4(bloomTintColors[2], 1.0) * texture2D(blurTexture3, vUv) +
22
+ lerpBloomFactor(bloomFactors[3]) * vec4(bloomTintColors[3], 1.0) * texture2D(blurTexture4, vUv) +
23
+ lerpBloomFactor(bloomFactors[4]) * vec4(bloomTintColors[4], 1.0) * texture2D(blurTexture5, vUv) );
24
24
  }