ohzi-core 6.4.0 → 6.5.2

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 (432) 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 +330 -330
  15. package/src/Initializer.js +57 -57
  16. package/src/Input.js +24 -21
  17. package/src/KeyboardInput.js +146 -128
  18. package/src/OS.js +58 -58
  19. package/src/OrthographicCamera.js +13 -13
  20. package/src/PerspectiveCamera.js +13 -13
  21. package/src/ReflectionPlaneContext.js +17 -17
  22. package/src/RenderLayers.js +28 -28
  23. package/src/RenderLoop.js +97 -97
  24. package/src/RenderOrder.js +38 -38
  25. package/src/ResourceContainer.js +39 -39
  26. package/src/SceneManager.js +44 -44
  27. package/src/Screen.js +69 -69
  28. package/src/Time.js +38 -38
  29. package/src/UI.js +90 -90
  30. package/src/action_sequencer/ActionEvent.js +15 -15
  31. package/src/action_sequencer/ActionInterpolator.js +23 -23
  32. package/src/action_sequencer/ActionSequencer.js +246 -246
  33. package/src/action_sequencer/NumberInterpolator.js +25 -25
  34. package/src/action_sequencer/VectorInterpolator.js +20 -20
  35. package/src/blitter_index.js +13 -13
  36. package/src/canvas_drawer/CanvasDrawer.js +111 -111
  37. package/src/canvas_drawer/MultiLineTextDrawer.js +49 -49
  38. package/src/canvas_drawer/SimpleTextDrawer.js +47 -47
  39. package/src/components/AudioClip.js +55 -55
  40. package/src/components/AxisHelper.js +58 -58
  41. package/src/components/BaseObject.js +45 -45
  42. package/src/components/EdgeMesh.js +151 -151
  43. package/src/components/GeometryEdgeVisualizer.js +45 -45
  44. package/src/components/Grid.js +33 -33
  45. package/src/components/Line.js +199 -199
  46. package/src/components/MultiLinePath.js +19 -19
  47. package/src/components/MultiLineText2D.js +62 -62
  48. package/src/components/ObjectAxis.js +20 -20
  49. package/src/components/ObjectOrientedBoundingBox.js +201 -201
  50. package/src/components/PlaneHelper.js +36 -36
  51. package/src/components/Shape2D.js +42 -42
  52. package/src/components/Shape3D.js +38 -38
  53. package/src/components/Text2D.js +39 -39
  54. package/src/components/UIElement.js +208 -208
  55. package/src/components/UpdatableMaterialMesh.js +16 -16
  56. package/src/components/WorldImage.js +91 -91
  57. package/src/components/mouse_interactors/ObjectRotator.js +61 -61
  58. package/src/components/sdf_text/SDFText.js +154 -154
  59. package/src/components/sdf_text/SDFTextBatch.js +193 -193
  60. package/src/components/sdf_text/TextGlyph.js +15 -15
  61. package/src/data_textures/CustomDataTexture.js +51 -51
  62. package/src/data_textures/RGBADataTexture.js +12 -12
  63. package/src/data_textures/RGBAFloatDataTexture.js +12 -12
  64. package/src/data_textures/RGBDataTexture.js +12 -12
  65. package/src/data_textures/RGBFloatDataTexture.js +12 -12
  66. package/src/editor/ManipulatorHandle.js +70 -70
  67. package/src/editor/ObjectEditor.js +66 -66
  68. package/src/editor/ObjectManipulator.js +118 -118
  69. package/src/editor/ObjectPicker.js +75 -75
  70. package/src/editor/shaders/object_picker.frag +5 -5
  71. package/src/editor/shaders/object_picker.vert +7 -7
  72. package/src/gpu_particles/GPUParticleSystem.js +87 -87
  73. package/src/gpu_particles/ParticleAttribute.js +83 -83
  74. package/src/gpu_particles/ParticlePositionAttribute.js +20 -20
  75. package/src/html_utilities/CSSAnimator.js +64 -64
  76. package/src/html_utilities/css_animator_states/Animating.js +45 -45
  77. package/src/html_utilities/css_animator_states/Idle.js +25 -25
  78. package/src/index.js +211 -211
  79. package/src/materials/AddMaterial.js +17 -17
  80. package/src/materials/AlphaFilterMaterial.js +20 -20
  81. package/src/materials/BaseShaderMaterial.js +19 -19
  82. package/src/materials/BlitMaterial.js +28 -28
  83. package/src/materials/BloomComposeMaterial.js +22 -22
  84. package/src/materials/BoxBlurMaterial.js +13 -13
  85. package/src/materials/ClearAlphaMaterial.js +13 -13
  86. package/src/materials/ClearColorMaterial.js +31 -31
  87. package/src/materials/ClearDepthNormalMaterial.js +13 -13
  88. package/src/materials/DeferredRendererComposeMaterial.js +32 -32
  89. package/src/materials/DepthNormalMaterial.js +28 -28
  90. package/src/materials/DisplayNormalTextureMaterial.js +15 -15
  91. package/src/materials/DualFilteringBlurMaterial.js +11 -11
  92. package/src/materials/FXAAMaterial.js +10 -10
  93. package/src/materials/GaussianBlurMaterial.js +28 -28
  94. package/src/materials/LuminosityHighPassMaterial.js +15 -15
  95. package/src/materials/MedianFilterMaterial.js +42 -42
  96. package/src/materials/NormalMaterial.js +17 -17
  97. package/src/materials/SDFScreenTextMaterial.js +31 -31
  98. package/src/materials/SDFTextMaterial.js +37 -37
  99. package/src/materials/SSAOComposeMaterial.js +11 -11
  100. package/src/materials/SSAOMaterial.js +66 -66
  101. package/src/materials/ScreenSpaceTextureMaterial.js +65 -65
  102. package/src/materials/UIElementMaterial.js +25 -25
  103. package/src/materials/UnrealBloomComposeMaterial.js +95 -95
  104. package/src/materials/UnrealBlurMaterial.js +17 -17
  105. package/src/materials/UnrealComposeMaterial.js +24 -24
  106. package/src/materials/ViewPositionMaterial.js +17 -17
  107. package/src/materials/deferred/DeferredPointLightMaterial.js +39 -39
  108. package/src/materials/gpu_particles/AttributeUpdateMaterial.js +33 -33
  109. package/src/materials/gpu_particles/BasicParticleMaterial.js +23 -23
  110. package/src/materials/gpu_particles/ParticleStorageMaterial.js +27 -27
  111. package/src/materials/gpu_particles/PositionStorageMaterial.js +10 -10
  112. package/src/object_pool/Pool.js +73 -73
  113. package/src/primitives/Arrow.js +57 -57
  114. package/src/primitives/Cube.js +17 -17
  115. package/src/primitives/HorizontalPlane.js +18 -18
  116. package/src/primitives/Sphere.js +15 -15
  117. package/src/primitives/VerticalPlane.js +17 -17
  118. package/src/raycast/GroupRaycaster.js +41 -41
  119. package/src/raycast/PlaneDragResolver.js +89 -89
  120. package/src/raycast/PlaneRaycastResolver.js +22 -22
  121. package/src/raycast/PlaneRaycaster.js +23 -23
  122. package/src/raycast/RaycastResolver.js +22 -22
  123. package/src/raycast/SurfaceDragResolver.js +77 -77
  124. package/src/raycast/states/BaseState.js +16 -16
  125. package/src/raycast/states/IdleState.js +17 -17
  126. package/src/raycast/states/OnRaycastEnter.js +15 -15
  127. package/src/raycast/states/OnRaycastExit.js +16 -16
  128. package/src/raycast/states/OnRaycastHover.js +25 -25
  129. package/src/render_mode/BaseRender.js +32 -32
  130. package/src/render_mode/BloomRender.js +60 -60
  131. package/src/render_mode/DebugNormalsRender.js +20 -20
  132. package/src/render_mode/DeferredRender.js +112 -112
  133. package/src/render_mode/NormalAORender.js +71 -71
  134. package/src/render_mode/NormalRender.js +36 -36
  135. package/src/render_mode/OutlineRender.js +154 -154
  136. package/src/render_mode/PlanarReflectionsRender.js +118 -118
  137. package/src/render_mode/TransparencyMixRender.js +143 -143
  138. package/src/render_mode/UnrealBloomRender.js +109 -109
  139. package/src/render_utilities/Blitter.js +99 -99
  140. package/src/render_utilities/Blurrer.js +29 -29
  141. package/src/render_utilities/DepthAndNormalsRenderer.js +45 -45
  142. package/src/render_utilities/DualFilteringBlurrer.js +56 -56
  143. package/src/render_utilities/GaussianBlurrer.js +146 -146
  144. package/src/render_utilities/MedianFilter.js +66 -66
  145. package/src/render_utilities/ViewPositionRenderer.js +48 -48
  146. package/src/resource_loader/BasisLoader.js +42 -42
  147. package/src/resource_loader/FontLoader.js +39 -39
  148. package/src/resource_loader/JSONLoader.js +40 -40
  149. package/src/resource_loader/OBJLoader.js +39 -39
  150. package/src/resource_loader/PointArrayLoader.js +63 -63
  151. package/src/resource_loader/RGBETextureLoader.js +42 -42
  152. package/src/resource_loader/VideoLoader.js +20 -20
  153. package/src/shaders/add/add.frag +8 -8
  154. package/src/shaders/anti_aliasing/fxaa.frag +71 -71
  155. package/src/shaders/basic_color/basic_color.frag +5 -5
  156. package/src/shaders/basic_color/basic_color.vert +9 -9
  157. package/src/shaders/basic_line/basic_line.frag +36 -36
  158. package/src/shaders/basic_line/basic_line.vert +36 -36
  159. package/src/shaders/basic_texture/basic_texture.frag +9 -9
  160. package/src/shaders/basic_texture/basic_texture.vert +16 -16
  161. package/src/shaders/bloom/bloom_compose_frag.glsl +22 -22
  162. package/src/shaders/bloom/cheap_bloom_compose_frag.glsl +13 -13
  163. package/src/shaders/box_blur/box_blur.frag +24 -24
  164. package/src/shaders/box_blur/compose.frag +31 -31
  165. package/src/shaders/clear/clear_depth_normal.frag +24 -24
  166. package/src/shaders/copy/copy.frag +6 -6
  167. package/src/shaders/copy/copy.vert +5 -5
  168. package/src/shaders/deferred/blit_copy.vert +11 -11
  169. package/src/shaders/deferred/deferred_compose.frag +59 -59
  170. package/src/shaders/deferred/point_light.frag +66 -66
  171. package/src/shaders/deferred/point_light.vert +13 -13
  172. package/src/shaders/depth_normals/debug_normals.frag +47 -47
  173. package/src/shaders/depth_normals/depth_normals.frag +30 -30
  174. package/src/shaders/depth_normals/depth_normals.vert +12 -12
  175. package/src/shaders/dual_filter_blur/alpha_filter.frag +14 -14
  176. package/src/shaders/dual_filter_blur/downsample.frag +21 -21
  177. package/src/shaders/dual_filter_blur/upsample.frag +24 -24
  178. package/src/shaders/edge_visualizer/edge_visualizer.frag +17 -17
  179. package/src/shaders/edge_visualizer/edge_visualizer.vert +15 -15
  180. package/src/shaders/edges/corners.frag +10 -10
  181. package/src/shaders/edges/corners.vert +30 -30
  182. package/src/shaders/edges/edges.frag +6 -6
  183. package/src/shaders/edges/edges.vert +27 -27
  184. package/src/shaders/gaussian_blur/gaussian_blur.frag +24 -24
  185. package/src/shaders/gaussian_blur/unreal_bloom_compose.frag +24 -24
  186. package/src/shaders/gpu_particles/common_utils.glsl +12 -12
  187. package/src/shaders/gpu_particles/generic_storage.frag +7 -7
  188. package/src/shaders/gpu_particles/store/store_position.vert +14 -14
  189. package/src/shaders/gpu_particles/update/basic_update.frag +20 -20
  190. package/src/shaders/gpu_particles/visualize/visualize.frag +10 -10
  191. package/src/shaders/gpu_particles/visualize/visualize.vert +12 -12
  192. package/src/shaders/grid/grid.frag +16 -16
  193. package/src/shaders/grid/grid.vert +9 -9
  194. package/src/shaders/luminosity_high_pass/luminosity_high_pass.frag +22 -22
  195. package/src/shaders/median_filter/median_filter.frag +134 -134
  196. package/src/shaders/normal/normal.frag +6 -6
  197. package/src/shaders/normal/normal.vert +6 -6
  198. package/src/shaders/sdf_text/sdf_screen_text.frag +51 -51
  199. package/src/shaders/sdf_text/sdf_screen_text.vert +41 -41
  200. package/src/shaders/sdf_text/sdf_text.frag +53 -53
  201. package/src/shaders/sdf_text/sdf_text.vert +41 -41
  202. package/src/shaders/ssao/hbao.frag +264 -264
  203. package/src/shaders/ssao/ssao.frag +95 -95
  204. package/src/shaders/ssao/ssao.vert +10 -10
  205. package/src/shaders/ssao/ssao_compose.frag +14 -14
  206. package/src/shaders/transparent_mix/copy.frag +6 -6
  207. package/src/shaders/transparent_mix/transparent_mix.frag +18 -18
  208. package/src/shaders/transparent_mix/transparent_mix.vert +7 -7
  209. package/src/shaders/ui/ss_texture.frag +10 -10
  210. package/src/shaders/ui/ss_texture.vert +31 -31
  211. package/src/shaders/ui/ws_texture.vert +38 -38
  212. package/src/shaders/ui_element/ui_element.frag +11 -11
  213. package/src/shaders/ui_element/ui_element.vert +32 -32
  214. package/src/shaders/unreal_blur/unreal_blur.frag +24 -24
  215. package/src/shaders/unreal_blur/unreal_compose.frag +23 -23
  216. package/src/shaders/write_view_position/write_view_position.frag +6 -6
  217. package/src/shaders/write_view_position/write_view_position.vert +8 -8
  218. package/src/static_batcher/BatchedMesh.js +54 -54
  219. package/src/static_batcher/GeometryBatch.js +312 -312
  220. package/src/static_batcher/GeometryBatcher.js +63 -63
  221. package/src/static_batcher/MeshBatcher.js +56 -56
  222. package/src/ui/ui_element_position/ScreenSpacePosition.js +14 -14
  223. package/src/ui/ui_element_position/WorldSpacePosition.js +21 -21
  224. package/src/ui/ui_element_state/OnIdle.js +17 -17
  225. package/src/ui/ui_element_state/OnMouseEnter.js +26 -26
  226. package/src/ui/ui_element_state/OnMouseExit.js +15 -15
  227. package/src/ui/ui_element_state/OnMouseHover.js +31 -31
  228. package/src/ui/ui_element_state/UIElementState.js +18 -18
  229. package/src/utilities/ArrayUtilities.js +55 -55
  230. package/src/utilities/CameraUtilities.js +210 -210
  231. package/src/utilities/EasingFunctions.js +226 -226
  232. package/src/utilities/FrustumPointFitter.js +255 -255
  233. package/src/utilities/GeometryUtilities.js +74 -74
  234. package/src/utilities/ImageUtilities.js +26 -26
  235. package/src/utilities/MeshSampler.js +152 -152
  236. package/src/utilities/ModelUtilities.js +161 -161
  237. package/src/utilities/OMath.js +155 -155
  238. package/src/utilities/OrthographicFrustumPointFitter.js +47 -47
  239. package/src/utilities/PerspectiveFrustumPointFitter.js +250 -250
  240. package/src/utilities/StringUtilities.js +32 -32
  241. package/src/utilities/TimeUtilities.js +22 -22
  242. package/src/utilities/Validation.js +34 -34
  243. package/src/view_components/ApplicationView.js +60 -60
  244. package/src/view_components/ViewComponent.js +61 -61
  245. package/src/view_components/ViewComponentManager.js +68 -68
  246. package/src/view_components/ViewContext.js +14 -14
  247. package/src/view_components/ViewManager.js +147 -147
  248. package/src/view_components/ViewState.js +54 -54
  249. package/src/view_components/transition/ActionSequencerBuilder.js +106 -106
  250. package/src/view_components/transition/DrawIOAnimationSheet.js +90 -90
  251. package/src/view_components/transition/TransitionTable.js +54 -54
  252. package/src/view_components/transition/ViewStateTransitionHandler.js +96 -96
  253. package/types/BaseApplication.d.ts +8 -8
  254. package/types/Browser.d.ts +12 -12
  255. package/types/CameraManager.d.ts +8 -8
  256. package/types/Capabilities.d.ts +6 -6
  257. package/types/Configuration.d.ts +6 -6
  258. package/types/Debug.d.ts +38 -38
  259. package/types/EventManager.d.ts +42 -42
  260. package/types/Graphics.d.ts +35 -35
  261. package/types/Initializer.d.ts +4 -4
  262. package/types/Input.d.ts +8 -8
  263. package/types/OS.d.ts +18 -18
  264. package/types/OrthographicCamera.d.ts +5 -5
  265. package/types/PerspectiveCamera.d.ts +5 -5
  266. package/types/ReflectionPlaneContext.d.ts +6 -6
  267. package/types/RenderLayers.d.ts +6 -6
  268. package/types/RenderLoop.d.ts +13 -13
  269. package/types/ResourceContainer.d.ts +8 -8
  270. package/types/SceneManager.d.ts +10 -10
  271. package/types/Screen.d.ts +17 -17
  272. package/types/Time.d.ts +11 -11
  273. package/types/UI.d.ts +15 -15
  274. package/types/action_sequencer/ActionEvent.d.ts +6 -6
  275. package/types/action_sequencer/ActionInterpolator.d.ts +5 -5
  276. package/types/action_sequencer/ActionSequencer.d.ts +30 -30
  277. package/types/action_sequencer/NumberInterpolator.d.ts +8 -8
  278. package/types/action_sequencer/VectorInterpolator.d.ts +7 -7
  279. package/types/canvas_drawer/CanvasDrawer.d.ts +13 -13
  280. package/types/canvas_drawer/MultiLineTextDrawer.d.ts +5 -5
  281. package/types/canvas_drawer/SimpleTextDrawer.d.ts +5 -5
  282. package/types/components/AudioClip.d.ts +12 -12
  283. package/types/components/AxisHelper.d.ts +6 -6
  284. package/types/components/BaseObject.d.ts +5 -5
  285. package/types/components/EdgeMesh.d.ts +13 -13
  286. package/types/components/GeometryEdgeVisualizer.d.ts +4 -4
  287. package/types/components/Grid.d.ts +2 -2
  288. package/types/components/Line.d.ts +16 -16
  289. package/types/components/MultiLinePath.d.ts +4 -4
  290. package/types/components/MultiLineText2D.d.ts +10 -10
  291. package/types/components/ObjectAxis.d.ts +3 -3
  292. package/types/components/ObjectOrientedBoundingBox.d.ts +18 -18
  293. package/types/components/PlaneHelper.d.ts +6 -6
  294. package/types/components/Shape2D.d.ts +4 -4
  295. package/types/components/Shape3D.d.ts +3 -3
  296. package/types/components/Text2D.d.ts +13 -13
  297. package/types/components/UIElement.d.ts +52 -52
  298. package/types/components/UpdatableMaterialMesh.d.ts +4 -4
  299. package/types/components/WorldImage.d.ts +13 -13
  300. package/types/components/sdf_text/SDFText.d.ts +30 -30
  301. package/types/components/sdf_text/SDFTextBatch.d.ts +12 -12
  302. package/types/components/sdf_text/TextGlyph.d.ts +6 -6
  303. package/types/editor/ManipulatorHandle.d.ts +14 -14
  304. package/types/editor/ObjectEditor.d.ts +16 -16
  305. package/types/editor/ObjectManipulator.d.ts +19 -19
  306. package/types/editor/ObjectPicker.d.ts +16 -16
  307. package/types/gpu_particles/GPUParticleSystem.d.ts +12 -12
  308. package/types/gpu_particles/ParticleAttribute.d.ts +15 -15
  309. package/types/gpu_particles/ParticlePositionAttribute.d.ts +4 -4
  310. package/types/html_utilities/CSSAnimator.d.ts +30 -30
  311. package/types/html_utilities/css_animator_states/Animating.d.ts +8 -8
  312. package/types/html_utilities/css_animator_states/Idle.d.ts +6 -6
  313. package/types/index.d.ts +89 -89
  314. package/types/materials/AddMaterial.d.ts +5 -5
  315. package/types/materials/AlphaFilterMaterial.d.ts +6 -6
  316. package/types/materials/BaseShaderMaterial.d.ts +3 -3
  317. package/types/materials/BlitMaterial.d.ts +3 -3
  318. package/types/materials/BloomComposeMaterial.d.ts +7 -7
  319. package/types/materials/BoxBlurMaterial.d.ts +4 -4
  320. package/types/materials/ClearAlphaMaterial.d.ts +3 -3
  321. package/types/materials/ClearColorMaterial.d.ts +7 -7
  322. package/types/materials/ClearDepthNormalMaterial.d.ts +4 -4
  323. package/types/materials/DeferredRendererComposeMaterial.d.ts +7 -7
  324. package/types/materials/DepthNormalMaterial.d.ts +4 -4
  325. package/types/materials/DisplayNormalTextureMaterial.d.ts +4 -4
  326. package/types/materials/DualFilteringBlurMaterial.d.ts +4 -4
  327. package/types/materials/FXAAMaterial.d.ts +3 -3
  328. package/types/materials/GaussianBlurMaterial.d.ts +6 -6
  329. package/types/materials/LuminosityHighPassMaterial.d.ts +4 -4
  330. package/types/materials/MedianFilterMaterial.d.ts +6 -6
  331. package/types/materials/NormalMaterial.d.ts +2 -2
  332. package/types/materials/SDFScreenTextMaterial.d.ts +11 -11
  333. package/types/materials/SDFTextMaterial.d.ts +12 -12
  334. package/types/materials/SSAOComposeMaterial.d.ts +4 -4
  335. package/types/materials/SSAOMaterial.d.ts +6 -6
  336. package/types/materials/ScreenSpaceTextureMaterial.d.ts +7 -7
  337. package/types/materials/UIElementMaterial.d.ts +7 -7
  338. package/types/materials/UnrealBloomComposeMaterial.d.ts +17 -17
  339. package/types/materials/UnrealBlurMaterial.d.ts +4 -4
  340. package/types/materials/UnrealComposeMaterial.d.ts +4 -4
  341. package/types/materials/ViewPositionMaterial.d.ts +3 -3
  342. package/types/materials/deferred/DeferredPointLightMaterial.d.ts +10 -10
  343. package/types/materials/gpu_particles/ParticleStorageMaterial.d.ts +3 -3
  344. package/types/materials/gpu_particles/PositionStorageMaterial.d.ts +4 -4
  345. package/types/object_pool/Pool.d.ts +10 -10
  346. package/types/primitives/Arrow.d.ts +8 -8
  347. package/types/primitives/Cube.d.ts +3 -3
  348. package/types/primitives/HorizontalPlane.d.ts +3 -3
  349. package/types/primitives/Sphere.d.ts +3 -3
  350. package/types/primitives/VerticalPlane.d.ts +3 -3
  351. package/types/raycast/GroupRaycaster.d.ts +13 -13
  352. package/types/raycast/PlaneDragResolver.d.ts +14 -14
  353. package/types/raycast/PlaneRaycastResolver.d.ts +5 -5
  354. package/types/raycast/PlaneRaycaster.d.ts +7 -7
  355. package/types/raycast/RaycastResolver.d.ts +5 -5
  356. package/types/raycast/SurfaceDragResolver.d.ts +13 -13
  357. package/types/raycast/states/BaseState.d.ts +5 -5
  358. package/types/raycast/states/IdleState.d.ts +5 -5
  359. package/types/raycast/states/OnRaycastEnter.d.ts +5 -5
  360. package/types/raycast/states/OnRaycastExit.d.ts +4 -4
  361. package/types/raycast/states/OnRaycastHover.d.ts +4 -4
  362. package/types/render_mode/BaseRender.d.ts +7 -7
  363. package/types/render_mode/BloomRender.d.ts +10 -10
  364. package/types/render_mode/DebugNormalsRender.d.ts +4 -4
  365. package/types/render_mode/DeferredRender.d.ts +9 -9
  366. package/types/render_mode/NormalAORender.d.ts +16 -16
  367. package/types/render_mode/NormalRender.d.ts +4 -4
  368. package/types/render_mode/OutlineRender.d.ts +20 -20
  369. package/types/render_mode/PlanarReflectionsRender.d.ts +13 -13
  370. package/types/render_mode/TransparencyMixRender.d.ts +21 -21
  371. package/types/render_mode/UnrealBloomRender.d.ts +19 -19
  372. package/types/render_utilities/Blitter.d.ts +16 -16
  373. package/types/render_utilities/Blurrer.d.ts +9 -9
  374. package/types/render_utilities/DepthAndNormalsRenderer.d.ts +12 -12
  375. package/types/render_utilities/DualFilteringBlurrer.d.ts +19 -19
  376. package/types/render_utilities/GaussianBlurrer.d.ts +27 -27
  377. package/types/render_utilities/MedianFilter.d.ts +10 -10
  378. package/types/render_utilities/ViewPositionRenderer.d.ts +9 -9
  379. package/types/resource_loader/AbstractLoader.d.ts +18 -18
  380. package/types/resource_loader/AudioLoader.d.ts +8 -8
  381. package/types/resource_loader/BasisLoader.d.ts +6 -6
  382. package/types/resource_loader/CubemapLoader.d.ts +7 -7
  383. package/types/resource_loader/DAELoader.d.ts +6 -6
  384. package/types/resource_loader/DDSLoader.d.ts +6 -6
  385. package/types/resource_loader/FileLoader.d.ts +6 -6
  386. package/types/resource_loader/FontLoader.d.ts +6 -6
  387. package/types/resource_loader/GLTFDRACOLoader.d.ts +7 -7
  388. package/types/resource_loader/GLTFLoader.d.ts +5 -5
  389. package/types/resource_loader/HDRCubeTextureLoader.d.ts +7 -7
  390. package/types/resource_loader/JSONLoader.d.ts +6 -6
  391. package/types/resource_loader/OBJLoader.d.ts +6 -6
  392. package/types/resource_loader/PointArrayLoader.d.ts +7 -7
  393. package/types/resource_loader/RGBETextureLoader.d.ts +6 -6
  394. package/types/resource_loader/ResourceBatch.d.ts +13 -13
  395. package/types/resource_loader/SVGLoader.d.ts +6 -6
  396. package/types/resource_loader/TextLoader.d.ts +6 -6
  397. package/types/resource_loader/TextureLoader.d.ts +6 -6
  398. package/types/resource_loader/VideoLoader.d.ts +6 -6
  399. package/types/static_batcher/GeometryBatch.d.ts +37 -37
  400. package/types/static_batcher/GeometryBatcher.d.ts +7 -7
  401. package/types/ui/ui_element_position/ScreenSpacePosition.d.ts +4 -4
  402. package/types/ui/ui_element_position/WorldSpacePosition.d.ts +5 -5
  403. package/types/ui/ui_element_state/OnIdle.d.ts +5 -5
  404. package/types/ui/ui_element_state/OnMouseEnter.d.ts +5 -5
  405. package/types/ui/ui_element_state/OnMouseExit.d.ts +5 -5
  406. package/types/ui/ui_element_state/OnMouseHover.d.ts +5 -5
  407. package/types/ui/ui_element_state/UIElementState.d.ts +5 -5
  408. package/types/utilities/ArrayUtilities.d.ts +7 -7
  409. package/types/utilities/CameraUtilities.d.ts +24 -24
  410. package/types/utilities/EasingFunctions.d.ts +35 -35
  411. package/types/utilities/FrustumPointFitter.d.ts +14 -14
  412. package/types/utilities/GeometryUtilities.d.ts +4 -4
  413. package/types/utilities/ImageUtilities.d.ts +4 -4
  414. package/types/utilities/MeshSampler.d.ts +14 -14
  415. package/types/utilities/ModelUtilities.d.ts +13 -13
  416. package/types/utilities/OMath.d.ts +21 -21
  417. package/types/utilities/ObjectUtilities.d.ts +5 -5
  418. package/types/utilities/OrthographicFrustumPointFitter.d.ts +7 -7
  419. package/types/utilities/PerspectiveFrustumPointFitter.d.ts +12 -12
  420. package/types/utilities/StringUtilities.d.ts +5 -5
  421. package/types/utilities/TimeUtilities.d.ts +3 -3
  422. package/types/utilities/Validation.d.ts +6 -6
  423. package/types/view_components/ApplicationView.d.ts +11 -11
  424. package/types/view_components/ViewComponent.d.ts +13 -13
  425. package/types/view_components/ViewComponentManager.d.ts +10 -10
  426. package/types/view_components/ViewContext.d.ts +6 -6
  427. package/types/view_components/ViewManager.d.ts +24 -24
  428. package/types/view_components/ViewState.d.ts +15 -15
  429. package/types/view_components/transition/ActionSequencerBuilder.d.ts +15 -15
  430. package/types/view_components/transition/DrawIOAnimationSheet.d.ts +17 -17
  431. package/types/view_components/transition/TransitionTable.d.ts +8 -8
  432. package/types/view_components/transition/ViewStateTransitionHandler.d.ts +16 -16
@@ -1,134 +1,134 @@
1
- /*
2
- 3x3 Median
3
-
4
- GLSL 1.0
5
- Morgan McGuire and Kyle Whitson, 2006
6
- Williams College
7
- http://graphics.cs.williams.edu
8
-
9
- Copyright (c) Morgan McGuire and Williams College, 2006
10
- All rights reserved.
11
-
12
- Redistribution and use in source and binary forms, with or without
13
- modification, are permitted provided that the following conditions are
14
- met:
15
-
16
- Redistributions of source code must retain the above copyright notice,
17
- this list of conditions and the following disclaimer.
18
-
19
- Redistributions in binary form must reproduce the above copyright
20
- notice, this list of conditions and the following disclaimer in the
21
- documentation and/or other materials provided with the distribution.
22
-
23
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
- A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
- HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
- OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
- */
35
-
36
- // Input texture
37
- uniform sampler2D _SourceTex;
38
- uniform vec2 _SourceTexSize;
39
- varying vec2 vUv;
40
- // Change these 2 defines to change precision
41
- #define vec vec4
42
- #define toVec(x) x.rgba
43
-
44
- #define s2(a, b) temp = a; a = min(a, b); b = max(temp, b);
45
- #define t2(a, b) s2(v[a], v[b]);
46
- #define t24(a, b, c, d, e, f, g, h) t2(a, b); t2(c, d); t2(e, f); t2(g, h);
47
- #define t25(a, b, c, d, e, f, g, h, i, j) t24(a, b, c, d, e, f, g, h); t2(i, j);
48
-
49
- #define s2(a, b) temp = a; a = min(a, b); b = max(temp, b);
50
- #define mn3(a, b, c) s2(a, b); s2(a, c);
51
- #define mx3(a, b, c) s2(b, c); s2(a, c);
52
-
53
- #define mnmx3(a, b, c) mx3(a, b, c); s2(a, b); // 3 exchanges
54
- #define mnmx4(a, b, c, d) s2(a, b); s2(c, d); s2(a, c); s2(b, d); // 4 exchanges
55
- #define mnmx5(a, b, c, d, e) s2(a, b); s2(c, d); mn3(a, c, e); mx3(b, d, e); // 6 exchanges
56
- #define mnmx6(a, b, c, d, e, f) s2(a, d); s2(b, e); s2(c, f); mn3(a, b, c); mx3(d, e, f); // 7 exchanges
57
-
58
-
59
- void main() {
60
- vec2 inv_size = vec2(1.0/_SourceTexSize.x, 1.0/_SourceTexSize.y);
61
-
62
-
63
- #ifdef kernel5x5
64
- vec v[25];
65
-
66
- // Add the pixels which make up our window to the pixel array.
67
- for(int dX = -2; dX <= 2; ++dX) {
68
- for(int dY = -2; dY <= 2; ++dY) {
69
- vec2 offset = vec2(float(dX), float(dY));
70
-
71
- // If a pixel in the window is located at (x+dX, y+dY), put it at index (dX + R)(2R + 1) + (dY + R) of the
72
- // pixel array. This will fill the pixel array, with the top left pixel of the window at pixel[0] and the
73
- // bottom right pixel of the window at pixel[N-1].
74
- v[(dX + 2) * 5 + (dY + 2)] = toVec(texture2D(_SourceTex, vUv + offset * inv_size));
75
- }
76
- }
77
-
78
- vec temp;
79
-
80
- t25(0, 1, 3, 4, 2, 4, 2, 3, 6, 7);
81
- t25(5, 7, 5, 6, 9, 7, 1, 7, 1, 4);
82
- t25(12, 13, 11, 13, 11, 12, 15, 16, 14, 16);
83
- t25(14, 15, 18, 19, 17, 19, 17, 18, 21, 22);
84
- t25(20, 22, 20, 21, 23, 24, 2, 5, 3, 6);
85
- t25(0, 6, 0, 3, 4, 7, 1, 7, 1, 4);
86
- t25(11, 14, 8, 14, 8, 11, 12, 15, 9, 15);
87
- t25(9, 12, 13, 16, 10, 16, 10, 13, 20, 23);
88
- t25(17, 23, 17, 20, 21, 24, 18, 24, 18, 21);
89
- t25(19, 22, 8, 17, 9, 18, 0, 18, 0, 9);
90
- t25(10, 19, 1, 19, 1, 10, 11, 20, 2, 20);
91
- t25(2, 11, 12, 21, 3, 21, 3, 12, 13, 22);
92
- t25(4, 22, 4, 13, 14, 23, 5, 23, 5, 14);
93
- t25(15, 24, 6, 24, 6, 15, 7, 16, 7, 19);
94
- t25(3, 11, 5, 17, 11, 17, 9, 17, 4, 10);
95
- t25(6, 12, 7, 14, 4, 6, 4, 7, 12, 14);
96
- t25(10, 14, 6, 7, 10, 12, 6, 10, 6, 17);
97
- t25(12, 17, 7, 17, 7, 10, 12, 18, 7, 12);
98
- t24(10, 18, 12, 20, 10, 20, 10, 12);
99
- gl_FragColor = v[12];
100
- #endif
101
-
102
- #ifdef kernel3x3
103
- vec v[9];
104
-
105
- // Add the pixels which make up our window to the pixel array.
106
- for(int dX = -1; dX <= 1; ++dX) {
107
- for(int dY = -1; dY <= 1; ++dY) {
108
- vec2 offset = vec2(float(dX), float(dY));
109
-
110
- // If a pixel in the window is located at (x+dX, y+dY), put it at index (dX + R)(2R + 1) + (dY + R) of the
111
- // pixel array. This will fill the pixel array, with the top left pixel of the window at pixel[0] and the
112
- // bottom right pixel of the window at pixel[N-1].
113
- v[(dX + 1) * 3 + (dY + 1)] = toVec(texture2D(_SourceTex, vUv + offset * inv_size));
114
- }
115
- }
116
-
117
- vec temp;
118
-
119
- // Starting with a subset of size 6, remove the min and max each time
120
- mnmx6(v[0], v[1], v[2], v[3], v[4], v[5]);
121
- mnmx5(v[1], v[2], v[3], v[4], v[6]);
122
- mnmx4(v[2], v[3], v[4], v[7]);
123
- mnmx3(v[3], v[4], v[8]);
124
- toVec(gl_FragColor) = v[4];
125
- #endif
126
-
127
-
128
- // if(vUv.x > 0.5)
129
- // gl_FragColor = vec4(1.0);
130
- // else
131
- // gl_FragColor = vec4(0.0);
132
- }
133
-
134
-
1
+ /*
2
+ 3x3 Median
3
+
4
+ GLSL 1.0
5
+ Morgan McGuire and Kyle Whitson, 2006
6
+ Williams College
7
+ http://graphics.cs.williams.edu
8
+
9
+ Copyright (c) Morgan McGuire and Williams College, 2006
10
+ All rights reserved.
11
+
12
+ Redistribution and use in source and binary forms, with or without
13
+ modification, are permitted provided that the following conditions are
14
+ met:
15
+
16
+ Redistributions of source code must retain the above copyright notice,
17
+ this list of conditions and the following disclaimer.
18
+
19
+ Redistributions in binary form must reproduce the above copyright
20
+ notice, this list of conditions and the following disclaimer in the
21
+ documentation and/or other materials provided with the distribution.
22
+
23
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
24
+ "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
25
+ LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
26
+ A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
27
+ HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
28
+ SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
29
+ LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
30
+ DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
31
+ THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
32
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
33
+ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
+ */
35
+
36
+ // Input texture
37
+ uniform sampler2D _SourceTex;
38
+ uniform vec2 _SourceTexSize;
39
+ varying vec2 vUv;
40
+ // Change these 2 defines to change precision
41
+ #define vec vec4
42
+ #define toVec(x) x.rgba
43
+
44
+ #define s2(a, b) temp = a; a = min(a, b); b = max(temp, b);
45
+ #define t2(a, b) s2(v[a], v[b]);
46
+ #define t24(a, b, c, d, e, f, g, h) t2(a, b); t2(c, d); t2(e, f); t2(g, h);
47
+ #define t25(a, b, c, d, e, f, g, h, i, j) t24(a, b, c, d, e, f, g, h); t2(i, j);
48
+
49
+ #define s2(a, b) temp = a; a = min(a, b); b = max(temp, b);
50
+ #define mn3(a, b, c) s2(a, b); s2(a, c);
51
+ #define mx3(a, b, c) s2(b, c); s2(a, c);
52
+
53
+ #define mnmx3(a, b, c) mx3(a, b, c); s2(a, b); // 3 exchanges
54
+ #define mnmx4(a, b, c, d) s2(a, b); s2(c, d); s2(a, c); s2(b, d); // 4 exchanges
55
+ #define mnmx5(a, b, c, d, e) s2(a, b); s2(c, d); mn3(a, c, e); mx3(b, d, e); // 6 exchanges
56
+ #define mnmx6(a, b, c, d, e, f) s2(a, d); s2(b, e); s2(c, f); mn3(a, b, c); mx3(d, e, f); // 7 exchanges
57
+
58
+
59
+ void main() {
60
+ vec2 inv_size = vec2(1.0/_SourceTexSize.x, 1.0/_SourceTexSize.y);
61
+
62
+
63
+ #ifdef kernel5x5
64
+ vec v[25];
65
+
66
+ // Add the pixels which make up our window to the pixel array.
67
+ for(int dX = -2; dX <= 2; ++dX) {
68
+ for(int dY = -2; dY <= 2; ++dY) {
69
+ vec2 offset = vec2(float(dX), float(dY));
70
+
71
+ // If a pixel in the window is located at (x+dX, y+dY), put it at index (dX + R)(2R + 1) + (dY + R) of the
72
+ // pixel array. This will fill the pixel array, with the top left pixel of the window at pixel[0] and the
73
+ // bottom right pixel of the window at pixel[N-1].
74
+ v[(dX + 2) * 5 + (dY + 2)] = toVec(texture2D(_SourceTex, vUv + offset * inv_size));
75
+ }
76
+ }
77
+
78
+ vec temp;
79
+
80
+ t25(0, 1, 3, 4, 2, 4, 2, 3, 6, 7);
81
+ t25(5, 7, 5, 6, 9, 7, 1, 7, 1, 4);
82
+ t25(12, 13, 11, 13, 11, 12, 15, 16, 14, 16);
83
+ t25(14, 15, 18, 19, 17, 19, 17, 18, 21, 22);
84
+ t25(20, 22, 20, 21, 23, 24, 2, 5, 3, 6);
85
+ t25(0, 6, 0, 3, 4, 7, 1, 7, 1, 4);
86
+ t25(11, 14, 8, 14, 8, 11, 12, 15, 9, 15);
87
+ t25(9, 12, 13, 16, 10, 16, 10, 13, 20, 23);
88
+ t25(17, 23, 17, 20, 21, 24, 18, 24, 18, 21);
89
+ t25(19, 22, 8, 17, 9, 18, 0, 18, 0, 9);
90
+ t25(10, 19, 1, 19, 1, 10, 11, 20, 2, 20);
91
+ t25(2, 11, 12, 21, 3, 21, 3, 12, 13, 22);
92
+ t25(4, 22, 4, 13, 14, 23, 5, 23, 5, 14);
93
+ t25(15, 24, 6, 24, 6, 15, 7, 16, 7, 19);
94
+ t25(3, 11, 5, 17, 11, 17, 9, 17, 4, 10);
95
+ t25(6, 12, 7, 14, 4, 6, 4, 7, 12, 14);
96
+ t25(10, 14, 6, 7, 10, 12, 6, 10, 6, 17);
97
+ t25(12, 17, 7, 17, 7, 10, 12, 18, 7, 12);
98
+ t24(10, 18, 12, 20, 10, 20, 10, 12);
99
+ gl_FragColor = v[12];
100
+ #endif
101
+
102
+ #ifdef kernel3x3
103
+ vec v[9];
104
+
105
+ // Add the pixels which make up our window to the pixel array.
106
+ for(int dX = -1; dX <= 1; ++dX) {
107
+ for(int dY = -1; dY <= 1; ++dY) {
108
+ vec2 offset = vec2(float(dX), float(dY));
109
+
110
+ // If a pixel in the window is located at (x+dX, y+dY), put it at index (dX + R)(2R + 1) + (dY + R) of the
111
+ // pixel array. This will fill the pixel array, with the top left pixel of the window at pixel[0] and the
112
+ // bottom right pixel of the window at pixel[N-1].
113
+ v[(dX + 1) * 3 + (dY + 1)] = toVec(texture2D(_SourceTex, vUv + offset * inv_size));
114
+ }
115
+ }
116
+
117
+ vec temp;
118
+
119
+ // Starting with a subset of size 6, remove the min and max each time
120
+ mnmx6(v[0], v[1], v[2], v[3], v[4], v[5]);
121
+ mnmx5(v[1], v[2], v[3], v[4], v[6]);
122
+ mnmx4(v[2], v[3], v[4], v[7]);
123
+ mnmx3(v[3], v[4], v[8]);
124
+ toVec(gl_FragColor) = v[4];
125
+ #endif
126
+
127
+
128
+ // if(vUv.x > 0.5)
129
+ // gl_FragColor = vec4(1.0);
130
+ // else
131
+ // gl_FragColor = vec4(0.0);
132
+ }
133
+
134
+
@@ -1,6 +1,6 @@
1
- varying vec3 v_normal;
2
-
3
- void main()
4
- {
5
- gl_FragColor = vec4(v_normal * 0.5 + vec3(0.5), 1.0);
6
- }
1
+ varying vec3 v_normal;
2
+
3
+ void main()
4
+ {
5
+ gl_FragColor = vec4(v_normal * 0.5 + vec3(0.5), 1.0);
6
+ }
@@ -1,6 +1,6 @@
1
- varying vec3 v_normal;
2
- void main()
3
- {
4
- gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
5
- v_normal = (modelMatrix * vec4(normal, 0.0)).xyz;
6
- }
1
+ varying vec3 v_normal;
2
+ void main()
3
+ {
4
+ gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);
5
+ v_normal = (modelMatrix * vec4(normal, 0.0)).xyz;
6
+ }
@@ -1,51 +1,51 @@
1
- uniform sampler2D _Texture;
2
- varying vec2 vUv;
3
-
4
- uniform vec2 _AtlasSize;
5
- varying vec4 v_glyph_bounds;
6
- varying vec4 v_color;
7
-
8
-
9
- float median(float r, float g, float b) {
10
- return max(min(r, g), min(max(r, g), b));
11
- }
12
-
13
- void main()
14
- {
15
-
16
-
17
-
18
- float left = v_glyph_bounds.x / _AtlasSize.x;
19
- float right = v_glyph_bounds.y / _AtlasSize.x;
20
-
21
- float top = v_glyph_bounds.z / _AtlasSize.y;
22
- float bottom = v_glyph_bounds.w / _AtlasSize.y;
23
-
24
-
25
- float width = abs(right - left);
26
- float height = abs(top - bottom);
27
-
28
- vec2 coord = vec2(vUv.x * width + left, vUv.y * height + top - height);
29
-
30
- vec4 col = texture2D(_Texture, coord);
31
-
32
- float sig_dist = median(col.r, col.g, col.b);
33
-
34
-
35
- float _Cutoff = 0.5;
36
- float dist = (_Cutoff - sig_dist);
37
-
38
- // sdf distance per pixel (gradient vector)
39
- vec2 ddist = vec2(dFdx(dist), dFdy(dist));
40
-
41
- // distance to edge in pixels (scalar)
42
- float pixelDist = dist / length(ddist);
43
-
44
- float opacity = clamp(0.5 - pixelDist, 0.0, 1.0);
45
-
46
- // float w = fwidth(sig_dist);
47
- // opacity = smoothstep(0.5 - w, 0.5 + w, sig_dist);
48
-
49
-
50
- gl_FragColor = vec4(v_color.rgb, opacity * v_color.a);
51
- }
1
+ uniform sampler2D _Texture;
2
+ varying vec2 vUv;
3
+
4
+ uniform vec2 _AtlasSize;
5
+ varying vec4 v_glyph_bounds;
6
+ varying vec4 v_color;
7
+
8
+
9
+ float median(float r, float g, float b) {
10
+ return max(min(r, g), min(max(r, g), b));
11
+ }
12
+
13
+ void main()
14
+ {
15
+
16
+
17
+
18
+ float left = v_glyph_bounds.x / _AtlasSize.x;
19
+ float right = v_glyph_bounds.y / _AtlasSize.x;
20
+
21
+ float top = v_glyph_bounds.z / _AtlasSize.y;
22
+ float bottom = v_glyph_bounds.w / _AtlasSize.y;
23
+
24
+
25
+ float width = abs(right - left);
26
+ float height = abs(top - bottom);
27
+
28
+ vec2 coord = vec2(vUv.x * width + left, vUv.y * height + top - height);
29
+
30
+ vec4 col = texture2D(_Texture, coord);
31
+
32
+ float sig_dist = median(col.r, col.g, col.b);
33
+
34
+
35
+ float _Cutoff = 0.5;
36
+ float dist = (_Cutoff - sig_dist);
37
+
38
+ // sdf distance per pixel (gradient vector)
39
+ vec2 ddist = vec2(dFdx(dist), dFdy(dist));
40
+
41
+ // distance to edge in pixels (scalar)
42
+ float pixelDist = dist / length(ddist);
43
+
44
+ float opacity = clamp(0.5 - pixelDist, 0.0, 1.0);
45
+
46
+ // float w = fwidth(sig_dist);
47
+ // opacity = smoothstep(0.5 - w, 0.5 + w, sig_dist);
48
+
49
+
50
+ gl_FragColor = vec4(v_color.rgb, opacity * v_color.a);
51
+ }
@@ -1,42 +1,42 @@
1
-
2
- attribute vec4 transformsCol0;
3
- attribute vec4 transformsCol1;
4
- attribute vec4 transformsCol2;
5
- attribute vec4 transformsCol3;
6
-
7
- attribute vec4 glyph_bounds;
8
- attribute vec4 plane_bounds;
9
-
10
- attribute vec4 color;
11
-
12
-
13
- varying vec2 vUv;
14
- varying vec4 v_glyph_bounds;
15
- varying vec4 v_color;
16
-
17
- void main()
18
- {
19
- vec4 pos = vec4(position, 1.0);
20
- pos.x *= plane_bounds.z;
21
- pos.y *= plane_bounds.w;
22
-
23
- pos.x += plane_bounds.x;
24
- pos.y += plane_bounds.y;
25
-
26
-
27
- mat4 offset_matrix = mat4(
28
- transformsCol0,
29
- transformsCol1,
30
- transformsCol2,
31
- transformsCol3
32
- );
33
-
34
-
35
-
36
-
37
-
38
- gl_Position = projectionMatrix * viewMatrix * offset_matrix * pos;
39
- vUv = uv;
40
- v_glyph_bounds = glyph_bounds;
41
- v_color = color;
1
+
2
+ attribute vec4 transformsCol0;
3
+ attribute vec4 transformsCol1;
4
+ attribute vec4 transformsCol2;
5
+ attribute vec4 transformsCol3;
6
+
7
+ attribute vec4 glyph_bounds;
8
+ attribute vec4 plane_bounds;
9
+
10
+ attribute vec4 color;
11
+
12
+
13
+ varying vec2 vUv;
14
+ varying vec4 v_glyph_bounds;
15
+ varying vec4 v_color;
16
+
17
+ void main()
18
+ {
19
+ vec4 pos = vec4(position, 1.0);
20
+ pos.x *= plane_bounds.z;
21
+ pos.y *= plane_bounds.w;
22
+
23
+ pos.x += plane_bounds.x;
24
+ pos.y += plane_bounds.y;
25
+
26
+
27
+ mat4 offset_matrix = mat4(
28
+ transformsCol0,
29
+ transformsCol1,
30
+ transformsCol2,
31
+ transformsCol3
32
+ );
33
+
34
+
35
+
36
+
37
+
38
+ gl_Position = projectionMatrix * viewMatrix * offset_matrix * pos;
39
+ vUv = uv;
40
+ v_glyph_bounds = glyph_bounds;
41
+ v_color = color;
42
42
  }
@@ -1,53 +1,53 @@
1
- uniform sampler2D _Texture;
2
- uniform float _Boldness;
3
-
4
- varying vec2 vUv;
5
-
6
- uniform vec2 _AtlasSize;
7
- varying vec4 v_glyph_bounds;
8
- varying vec4 v_color;
9
-
10
-
11
- float median(float r, float g, float b) {
12
- return max(min(r, g), min(max(r, g), b));
13
- }
14
-
15
- void main()
16
- {
17
-
18
-
19
-
20
- float left = v_glyph_bounds.x / _AtlasSize.x;
21
- float right = v_glyph_bounds.y / _AtlasSize.x;
22
-
23
- float top = v_glyph_bounds.z / _AtlasSize.y;
24
- float bottom = v_glyph_bounds.w / _AtlasSize.y;
25
-
26
-
27
- float width = abs(right - left);
28
- float height = abs(top - bottom);
29
-
30
- vec2 coord = vec2(vUv.x * width + left, vUv.y * height + top - height);
31
-
32
- vec4 col = texture2D(_Texture, coord);
33
-
34
- float sig_dist = median(col.r, col.g, col.b);
35
-
36
-
37
- float _Cutoff = _Boldness;
38
- float dist = (_Cutoff - sig_dist);
39
-
40
- // sdf distance per pixel (gradient vector)
41
- vec2 ddist = vec2(dFdx(dist), dFdy(dist));
42
-
43
- // distance to edge in pixels (scalar)
44
- float pixelDist = dist / length(ddist);
45
-
46
- float opacity = clamp(0.5 - pixelDist, 0.0, 1.0);
47
-
48
- // float w = fwidth(sig_dist);
49
- // opacity = smoothstep(0.5 - w, 0.5 + w, sig_dist);
50
-
51
-
52
- gl_FragColor = vec4(v_color.rgb, opacity * v_color.a);
53
- }
1
+ uniform sampler2D _Texture;
2
+ uniform float _Boldness;
3
+
4
+ varying vec2 vUv;
5
+
6
+ uniform vec2 _AtlasSize;
7
+ varying vec4 v_glyph_bounds;
8
+ varying vec4 v_color;
9
+
10
+
11
+ float median(float r, float g, float b) {
12
+ return max(min(r, g), min(max(r, g), b));
13
+ }
14
+
15
+ void main()
16
+ {
17
+
18
+
19
+
20
+ float left = v_glyph_bounds.x / _AtlasSize.x;
21
+ float right = v_glyph_bounds.y / _AtlasSize.x;
22
+
23
+ float top = v_glyph_bounds.z / _AtlasSize.y;
24
+ float bottom = v_glyph_bounds.w / _AtlasSize.y;
25
+
26
+
27
+ float width = abs(right - left);
28
+ float height = abs(top - bottom);
29
+
30
+ vec2 coord = vec2(vUv.x * width + left, vUv.y * height + top - height);
31
+
32
+ vec4 col = texture2D(_Texture, coord);
33
+
34
+ float sig_dist = median(col.r, col.g, col.b);
35
+
36
+
37
+ float _Cutoff = _Boldness;
38
+ float dist = (_Cutoff - sig_dist);
39
+
40
+ // sdf distance per pixel (gradient vector)
41
+ vec2 ddist = vec2(dFdx(dist), dFdy(dist));
42
+
43
+ // distance to edge in pixels (scalar)
44
+ float pixelDist = dist / length(ddist);
45
+
46
+ float opacity = clamp(0.5 - pixelDist, 0.0, 1.0);
47
+
48
+ // float w = fwidth(sig_dist);
49
+ // opacity = smoothstep(0.5 - w, 0.5 + w, sig_dist);
50
+
51
+
52
+ gl_FragColor = vec4(v_color.rgb, opacity * v_color.a);
53
+ }
@@ -1,42 +1,42 @@
1
-
2
- attribute vec4 transformsCol0;
3
- attribute vec4 transformsCol1;
4
- attribute vec4 transformsCol2;
5
- attribute vec4 transformsCol3;
6
-
7
- attribute vec4 glyph_bounds;
8
- attribute vec4 plane_bounds;
9
-
10
- attribute vec4 color;
11
-
12
-
13
- varying vec2 vUv;
14
- varying vec4 v_glyph_bounds;
15
- varying vec4 v_color;
16
-
17
- void main()
18
- {
19
- vec4 pos = vec4(position, 1.0);
20
- pos.x *= plane_bounds.z;
21
- pos.y *= plane_bounds.w;
22
-
23
- pos.x += plane_bounds.x;
24
- pos.y += plane_bounds.y;
25
-
26
-
27
- mat4 offset_matrix = mat4(
28
- transformsCol0,
29
- transformsCol1,
30
- transformsCol2,
31
- transformsCol3
32
- );
33
-
34
-
35
-
36
-
37
-
38
- gl_Position = projectionMatrix * viewMatrix * offset_matrix * pos;
39
- vUv = uv;
40
- v_glyph_bounds = glyph_bounds;
41
- v_color = color;
1
+
2
+ attribute vec4 transformsCol0;
3
+ attribute vec4 transformsCol1;
4
+ attribute vec4 transformsCol2;
5
+ attribute vec4 transformsCol3;
6
+
7
+ attribute vec4 glyph_bounds;
8
+ attribute vec4 plane_bounds;
9
+
10
+ attribute vec4 color;
11
+
12
+
13
+ varying vec2 vUv;
14
+ varying vec4 v_glyph_bounds;
15
+ varying vec4 v_color;
16
+
17
+ void main()
18
+ {
19
+ vec4 pos = vec4(position, 1.0);
20
+ pos.x *= plane_bounds.z;
21
+ pos.y *= plane_bounds.w;
22
+
23
+ pos.x += plane_bounds.x;
24
+ pos.y += plane_bounds.y;
25
+
26
+
27
+ mat4 offset_matrix = mat4(
28
+ transformsCol0,
29
+ transformsCol1,
30
+ transformsCol2,
31
+ transformsCol3
32
+ );
33
+
34
+
35
+
36
+
37
+
38
+ gl_Position = projectionMatrix * viewMatrix * offset_matrix * pos;
39
+ vUv = uv;
40
+ v_glyph_bounds = glyph_bounds;
41
+ v_color = color;
42
42
  }