@babylonjs/react-native 2.0.0 → 2.0.1-preview

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 (599) hide show
  1. package/package.json +1 -1
  2. package/react-native-babylon.podspec +2 -0
  3. package/shared/BabylonNative/CMakeLists.txt +2 -0
  4. package/shared/BabylonNative/Repo/CMakeLists.txt +16 -12
  5. package/shared/BabylonNative/Repo/Core/Graphics/CMakeLists.txt +41 -21
  6. package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/iOS/Babylon/Graphics/Platform.h +2 -2
  7. package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/macOS/Babylon/Graphics/Platform.h +2 -2
  8. package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/visionOS/Babylon/Graphics/Platform.h +2 -2
  9. package/shared/BabylonNative/Repo/Core/Graphics/Include/RendererType/Metal/Babylon/Graphics/RendererType.h +6 -6
  10. package/shared/BabylonNative/Repo/Core/Graphics/InternalInclude/Babylon/Graphics/BgfxCallback.h +1 -1
  11. package/shared/BabylonNative/Repo/Core/Graphics/Source/BgfxCallback.cpp +32 -9
  12. package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl.cpp +7 -5
  13. package/shared/BabylonNative/Repo/Core/Graphics/Source/{DeviceImpl_Metal.cpp → DeviceImpl_Metal.mm} +4 -3
  14. package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_iOS.mm +5 -3
  15. package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_macOS.mm +10 -1
  16. package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_visionOS.mm +2 -4
  17. package/shared/BabylonNative/Repo/Dependencies/CMakeLists.txt +77 -12
  18. package/shared/BabylonNative/Repo/Dependencies/xr/CMakeLists.txt +1 -3
  19. package/shared/BabylonNative/Repo/Plugins/ExternalTexture/CMakeLists.txt +1 -6
  20. package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/ExternalTexture_D3D11.cpp +4 -0
  21. package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/ExternalTexture_D3D12.cpp +4 -0
  22. package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/{ExternalTexture_Metal.mm → ExternalTexture_Metal.cpp} +128 -120
  23. package/shared/BabylonNative/Repo/Plugins/NativeCamera/CMakeLists.txt +2 -2
  24. package/shared/BabylonNative/Repo/Plugins/NativeCamera/Source/Apple/CameraDevice.mm +5 -5
  25. package/shared/BabylonNative/Repo/Plugins/NativeEngine/CMakeLists.txt +2 -1
  26. package/shared/BabylonNative/Repo/Plugins/NativeEngine/Source/NativeEngine.cpp +2 -1
  27. package/shared/BabylonNative/Repo/Plugins/NativeEngine/Source/ShaderProvider.cpp +6 -6
  28. package/shared/BabylonNative/Repo/Plugins/NativeOptimizations/CMakeLists.txt +1 -2
  29. package/shared/BabylonNative/Repo/Plugins/NativeTracing/CMakeLists.txt +1 -2
  30. package/shared/BabylonNative/Repo/Plugins/NativeXr/Source/NativeXrImpl.cpp +1 -0
  31. package/shared/BabylonNative/Repo/Plugins/ShaderCache/CMakeLists.txt +0 -2
  32. package/shared/BabylonNative/Repo/Plugins/ShaderCache/Include/Babylon/Plugins/ShaderCache.h +2 -2
  33. package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCache.cpp +2 -2
  34. package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCacheImpl.cpp +4 -4
  35. package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCacheImpl.h +2 -2
  36. package/shared/BabylonNative/Repo/Plugins/ShaderCompiler/Source/ShaderCompilerCommon.cpp +2 -0
  37. package/shared/BabylonNative/Repo/Plugins/ShaderCompiler/Source/ShaderCompilerTraversers.cpp +4 -0
  38. package/shared/BabylonNative/Repo/Plugins/TestUtils/CMakeLists.txt +6 -8
  39. package/shared/BabylonNative/Repo/Plugins/TestUtils/Include/Babylon/Plugins/TestUtils.h +0 -1
  40. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils.cpp +20 -6
  41. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils.h +13 -13
  42. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Android/TestUtilsImpl.cpp → TestUtils_Android.cpp} +1 -10
  43. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Unix/TestUtilsImpl.cpp → TestUtils_Unix.cpp} +10 -20
  44. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Win32/TestUtilsImpl.cpp → TestUtils_Win32.cpp} +10 -20
  45. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{WinRT/TestUtilsImpl.cpp → TestUtils_WinRT.cpp} +9 -13
  46. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils_iOS.mm +25 -0
  47. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils_macOS.mm +50 -0
  48. package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_boxblur.h +1 -1
  49. package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_gaussblur.h +1 -1
  50. package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_nanovg_fill.h +1 -1
  51. package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/vs_fspass.h +1 -1
  52. package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/vs_nanovg_fill.h +1 -1
  53. package/shared/BabylonNative/Repo/Polyfills/Canvas/shaderc.cmake +2 -2
  54. package/shared/BabylonNative/Repo/azure-pipelines.yml +36 -24
  55. package/shared/BabylonNative/deps/arcana.cpp-src/CMakeLists.txt +17 -1
  56. package/shared/BabylonNative/deps/arcana.cpp-src/README.md +1 -1
  57. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/arcana/string.h +0 -12
  58. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/arcana/threading/cancellation.h +25 -12
  59. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows.Test/Threading/CancellationMemoryLeakTest.cpp +37 -0
  60. package/shared/BabylonNative/deps/bgfx.cmake-src/CMakeLists.txt +3 -3
  61. package/shared/BabylonNative/deps/bgfx.cmake-src/README.md +5 -5
  62. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/LICENSE +1 -1
  63. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/README.md +31 -14
  64. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/args.h +5 -1
  65. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/aviwriter.h +1 -1
  66. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bgfx_utils.cpp +4 -3
  67. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bgfx_utils.h +1 -1
  68. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/common.h +43 -1
  69. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/common.sh +1 -1
  70. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/debugdraw.cpp +1 -1
  71. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/debugdraw.h +1 -1
  72. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill.bin.h +180 -29
  73. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill.sc +1 -1
  74. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_lit.bin.h +305 -92
  75. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_lit.sc +1 -1
  76. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_texture.bin.h +328 -26
  77. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_texture.sc +1 -1
  78. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines.bin.h +227 -13
  79. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines.sc +1 -1
  80. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines_stipple.bin.h +290 -38
  81. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines_stipple.sc +1 -1
  82. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/makefile +1 -1
  83. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill.bin.h +319 -95
  84. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill.sc +2 -1
  85. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit.bin.h +410 -133
  86. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit.sc +2 -1
  87. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit_mesh.bin.h +378 -120
  88. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit_mesh.sc +1 -1
  89. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_mesh.bin.h +290 -85
  90. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_mesh.sc +1 -1
  91. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_texture.bin.h +259 -18
  92. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_texture.sc +1 -1
  93. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines.bin.h +228 -14
  94. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines.sc +1 -1
  95. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines_stipple.bin.h +255 -16
  96. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines_stipple.sc +1 -1
  97. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/cmd.cpp +1 -1
  98. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/cmd.h +1 -1
  99. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dbg.h +1 -1
  100. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dialog.cpp +1 -1
  101. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dialog.h +1 -1
  102. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry.cpp +1 -1
  103. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry.h +1 -1
  104. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_android.cpp +1 -1
  105. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_glfw.cpp +1 -1
  106. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_html5.cpp +1 -1
  107. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_ios.mm +1 -1
  108. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_noop.cpp +1 -1
  109. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_osx.mm +2 -2
  110. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_p.h +1 -1
  111. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_sdl.cpp +1 -1
  112. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_windows.cpp +3 -3
  113. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_x11.cpp +2 -2
  114. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/input.cpp +2 -2
  115. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/input.h +1 -1
  116. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/example-glue.cpp +21 -9
  117. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_basic.bin.h +391 -75
  118. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field.bin.h +382 -119
  119. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_drop_shadow.bin.h +587 -227
  120. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_drop_shadow_image.bin.h +655 -265
  121. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline.bin.h +452 -164
  122. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline_drop_shadow_image.bin.h +719 -307
  123. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline_image.bin.h +535 -208
  124. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_subpixel.bin.h +495 -125
  125. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/makefile +1 -1
  126. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_basic.bin.h +254 -16
  127. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field.bin.h +254 -16
  128. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_drop_shadow.bin.h +340 -15
  129. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_drop_shadow_image.bin.h +340 -15
  130. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline.bin.h +310 -15
  131. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline_drop_shadow_image.bin.h +340 -15
  132. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline_image.bin.h +310 -15
  133. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_subpixel.bin.h +254 -16
  134. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image.bin.h +277 -59
  135. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_ocornut_imgui.bin.h +324 -25
  136. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/imgui.cpp +9 -9
  137. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/imgui.h +1 -1
  138. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/makefile +1 -1
  139. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_image.bin.h +219 -15
  140. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_ocornut_imgui.bin.h +239 -7
  141. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/fs_nanovg_fill.bin.h +925 -472
  142. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/makefile +1 -1
  143. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/nanovg_bgfx.cpp +1 -1
  144. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/nanovg_bgfx.h +1 -1
  145. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/vs_nanovg_fill.bin.h +223 -7
  146. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/packrect.h +1 -1
  147. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/fs_particle.bin.h +382 -70
  148. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/fs_particle.sc +1 -1
  149. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/makefile +1 -1
  150. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/particle_system.cpp +1 -1
  151. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/particle_system.h +1 -1
  152. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/vs_particle.bin.h +263 -18
  153. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/vs_particle.sc +1 -1
  154. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/shaderlib.sh +10 -7
  155. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/bgfx.h +149 -7
  156. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/c99/bgfx.h +225 -101
  157. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/defines.h +30 -21
  158. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/embedded_shader.h +110 -60
  159. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/platform.h +1 -1
  160. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/makefile +1 -1
  161. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bgfx.idl +189 -70
  162. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bgfx.lua +1 -1
  163. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-bf.lua +1 -1
  164. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-c3.lua +1 -1
  165. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-cs.lua +2 -2
  166. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-zig.lua +1 -1
  167. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/example-common.lua +1 -1
  168. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/genie.lua +3 -3
  169. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/geometryc.lua +1 -1
  170. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/geometryv.lua +1 -1
  171. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shader-embeded.mk +18 -4
  172. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shader.mk +21 -6
  173. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shaderc.lua +139 -2
  174. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.h +2 -2
  175. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.hpp +2 -0
  176. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.idl.inl +1 -1
  177. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.defines.h +1 -1
  178. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/texturec.lua +1 -1
  179. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/texturev.lua +1 -1
  180. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/tools.mk +1 -1
  181. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/amalgamated.cpp +2 -1
  182. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/amalgamated.mm +1 -1
  183. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx.cpp +406 -164
  184. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx.idl.inl +37 -9
  185. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_compute.sh +40 -43
  186. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_p.h +795 -170
  187. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_shader.sh +205 -73
  188. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/charset.h +1 -1
  189. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/config.h +18 -4
  190. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/debug_renderdoc.cpp +8 -1
  191. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/debug_renderdoc.h +1 -1
  192. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/dxgi.cpp +1 -1
  193. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/dxgi.h +1 -1
  194. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/emscripten.h +1 -1
  195. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear0.bin.h +190 -36
  196. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear0.sc +1 -1
  197. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear1.bin.h +223 -46
  198. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear1.sc +1 -1
  199. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear2.bin.h +253 -55
  200. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear2.sc +1 -1
  201. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear3.bin.h +283 -65
  202. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear3.sc +1 -1
  203. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear4.bin.h +314 -75
  204. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear4.sc +1 -1
  205. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear5.bin.h +343 -85
  206. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear5.sc +1 -1
  207. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear6.bin.h +373 -94
  208. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear6.sc +1 -1
  209. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear7.bin.h +404 -105
  210. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear7.sc +1 -1
  211. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_debugfont.bin.h +401 -67
  212. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_debugfont.sc +1 -1
  213. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_egl.cpp +114 -36
  214. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_egl.h +5 -1
  215. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_html5.cpp +1 -1
  216. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_html5.h +1 -1
  217. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_wgl.cpp +1 -1
  218. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_wgl.h +1 -1
  219. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glimports.h +1 -1
  220. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/makefile +17 -13
  221. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/nvapi.cpp +1 -1
  222. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/nvapi.h +1 -1
  223. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer.h +50 -29
  224. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_agc.cpp +1 -1
  225. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d.h +7 -1
  226. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d11.cpp +291 -180
  227. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d11.h +5 -2
  228. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d12.cpp +635 -218
  229. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d12.h +78 -10
  230. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gl.cpp +65 -45
  231. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gl.h +24 -3
  232. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gnm.cpp +1 -1
  233. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_mtl.h +50 -24
  234. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_mtl.mm +158 -56
  235. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_noop.cpp +8 -12
  236. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_nvn.cpp +1 -1
  237. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_vk.cpp +810 -445
  238. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_vk.h +194 -133
  239. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_webgpu.cpp +6239 -0
  240. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_webgpu.h +897 -0
  241. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader.cpp +1 -1
  242. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader.h +1 -1
  243. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_dxbc.cpp +1 -1
  244. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_dxbc.h +1 -1
  245. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_spirv.cpp +1 -1
  246. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_spirv.h +1 -1
  247. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/topology.cpp +1 -1
  248. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/topology.h +1 -1
  249. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/version.h +3 -3
  250. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vertexlayout.cpp +2 -1
  251. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vertexlayout.h +1 -1
  252. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_clear.bin.h +186 -24
  253. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_clear.sc +1 -1
  254. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_debugfont.bin.h +314 -44
  255. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_debugfont.sc +1 -1
  256. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/bc7/avpcl_mode4.cpp +2 -0
  257. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/nvcore/debug.h +1 -1
  258. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/nvtt.cpp +1 -1
  259. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/LICENSE +1 -1
  260. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/README.md +2 -1
  261. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/bimg.h +5 -1
  262. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/decode.h +1 -1
  263. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/encode.h +1 -1
  264. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/makefile +183 -0
  265. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg.lua +1 -1
  266. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg_decode.lua +2 -2
  267. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg_encode.lua +1 -1
  268. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/genie.lua +1 -1
  269. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/texturec.lua +1 -1
  270. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/bimg_p.h +1 -1
  271. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/config.h +52 -40
  272. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image.cpp +136 -120
  273. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_cubemap_filter.cpp +1 -1
  274. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_decode.cpp +17 -5
  275. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_encode.cpp +1 -1
  276. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_gnf.cpp +1 -1
  277. package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/tools/texturec/texturec.cpp +3 -3
  278. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/LICENSE +1 -1
  279. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/README.md +1 -1
  280. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/allocator.h +1 -1
  281. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/bounds.h +1 -1
  282. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/bx.h +43 -1
  283. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/commandline.h +1 -1
  284. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/config.h +1 -1
  285. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/constants.h +1 -1
  286. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/cpu.h +1 -1
  287. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/debug.h +15 -5
  288. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/easing.h +1 -1
  289. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/endian.h +1 -1
  290. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/error.h +1 -1
  291. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/file.h +1 -1
  292. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/filepath.h +5 -1
  293. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/float4x4_t.h +1 -1
  294. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/handlealloc.h +1 -1
  295. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/hash.h +31 -1
  296. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/allocator.inl +1 -1
  297. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/bounds.inl +1 -1
  298. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/bx.inl +141 -3
  299. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/cpu.inl +1 -1
  300. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/easing.inl +1 -1
  301. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/endian.inl +1 -1
  302. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/error.inl +1 -1
  303. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/float4x4_t.inl +1 -1
  304. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/handlealloc.inl +1 -1
  305. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/hash.inl +28 -1
  306. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/math.inl +1 -1
  307. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/mpscqueue.inl +1 -1
  308. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/mutex.inl +1 -1
  309. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/os.inl +1 -1
  310. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/pixelformat.inl +1 -1
  311. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/readerwriter.inl +1 -1
  312. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/ringbuffer.inl +76 -8
  313. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/rng.inl +1 -1
  314. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_langext.inl +1 -1
  315. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_neon.inl +1 -1
  316. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_ref.inl +1 -1
  317. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_sse.inl +1 -1
  318. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd256_avx.inl +1 -1
  319. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd256_ref.inl +1 -1
  320. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd_ni.inl +1 -1
  321. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/sort.inl +1 -1
  322. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/spscqueue.inl +1 -1
  323. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/string.inl +237 -48
  324. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/timer.inl +67 -0
  325. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/typetraits.inl +1 -1
  326. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/uint32_t.inl +1 -1
  327. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/macros.h +6 -6
  328. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/math.h +1 -1
  329. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/mpscqueue.h +1 -1
  330. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/mutex.h +1 -1
  331. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/os.h +1 -1
  332. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/pixelformat.h +1 -1
  333. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/platform.h +3 -3
  334. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/process.h +1 -1
  335. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/readerwriter.h +9 -1
  336. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/ringbuffer.h +145 -14
  337. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/rng.h +1 -1
  338. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/semaphore.h +1 -1
  339. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/settings.h +1 -1
  340. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/simd_t.h +1 -1
  341. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/sort.h +1 -1
  342. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/spscqueue.h +1 -1
  343. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/string.h +111 -42
  344. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/thread.h +5 -5
  345. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/timer.h +59 -1
  346. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/typetraits.h +1 -1
  347. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/uint32_t.h +1 -1
  348. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/url.h +1 -1
  349. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/bin2c.lua +1 -1
  350. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/bx.lua +1 -1
  351. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/genie.lua +1 -1
  352. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/toolchain.lua +36 -18
  353. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/allocator.cpp +1 -1
  354. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/amalgamated.cpp +1 -1
  355. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/bounds.cpp +10 -10
  356. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/bx.cpp +3 -3
  357. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/commandline.cpp +1 -1
  358. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/crtnone.cpp +1 -1
  359. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/debug.cpp +866 -64
  360. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/dtoa.cpp +3 -9
  361. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/easing.cpp +1 -1
  362. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/file.cpp +1 -1
  363. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/filepath.cpp +7 -1
  364. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/hash.cpp +195 -37
  365. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/math.cpp +1 -1
  366. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/mutex.cpp +1 -1
  367. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/os.cpp +1 -1
  368. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/process.cpp +1 -1
  369. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/semaphore.cpp +27 -6
  370. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/settings.cpp +1 -1
  371. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/sort.cpp +1 -1
  372. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/string.cpp +206 -49
  373. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/thread.cpp +35 -38
  374. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/timer.cpp +5 -1
  375. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/url.cpp +1 -1
  376. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/allocator_test.cpp +1 -1
  377. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/atomic_test.cpp +1 -1
  378. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/cast_test.cpp +99 -1
  379. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/crt_test.cpp +1 -1
  380. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/dbg.h +1 -1
  381. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/easing_test.cpp +1 -1
  382. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/filepath_test.cpp +1 -1
  383. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/handle_bench.cpp +1 -1
  384. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/handle_test.cpp +6 -6
  385. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/hash_test.cpp +37 -8
  386. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/macros_test.cpp +1 -1
  387. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/main_test.cpp +1 -1
  388. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/math_bench.cpp +1 -1
  389. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/math_test.cpp +1 -1
  390. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/os_test.cpp +1 -1
  391. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/pixelformat_test.cpp +1 -1
  392. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/queue_test.cpp +1 -1
  393. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/readerwriter_test.cpp +1 -1
  394. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/ringbuffer_test.cpp +112 -7
  395. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/rng_test.cpp +1 -1
  396. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/run_test.cpp +6 -4
  397. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/settings_test.cpp +1 -1
  398. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/simd_bench.cpp +1 -1
  399. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/simd_test.cpp +1 -1
  400. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/sort_test.cpp +1 -1
  401. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/string_test.cpp +92 -39
  402. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/test.h +1 -1
  403. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/thread_test.cpp +1 -1
  404. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/tokenizecmd_test.cpp +1 -1
  405. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/typetraits_test.cpp +1 -1
  406. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/uint32_test.cpp +1 -1
  407. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/url_test.cpp +1 -1
  408. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/vsnprintf_test.cpp +365 -77
  409. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/darwin/genie +0 -0
  410. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/linux/genie +0 -0
  411. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/windows/genie.exe +0 -0
  412. package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin2c/bin2c.cpp +2 -2
  413. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/glslang.cmake +6 -5
  414. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/spirv-opt.cmake +5 -0
  415. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/tint.cmake +98 -0
  416. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/CMakeLists.txt +1 -0
  417. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/bgfx.cmake +11 -9
  418. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/examples.cmake +16 -4
  419. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/shaderc.cmake +21 -10
  420. package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bx/bx.cmake +5 -0
  421. package/shared/BabylonNative/deps/cmakeextensions-src/CMakeLists.txt +31 -5
  422. package/shared/BabylonNative/deps/cmakeextensions-src/README.md +6 -1
  423. package/shared/BabylonNative/deps/jsruntimehost-src/CMakeLists.txt +6 -5
  424. package/shared/BabylonNative/deps/jsruntimehost-src/Core/Node-API/Source/js_native_api_javascriptcore.cc +58 -4
  425. package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/CMakeLists.txt +4 -0
  426. package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/CMakeLists.txt +15 -0
  427. package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/Include/Babylon/Polyfills/TextDecoder.h +9 -0
  428. package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/README.md +39 -0
  429. package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/Source/TextDecoder.cpp +91 -0
  430. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/Foundation.hpp +47 -0
  431. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSArray.hpp +124 -0
  432. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSAutoreleasePool.hpp +83 -0
  433. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSBundle.hpp +374 -0
  434. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSData.hpp +54 -0
  435. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDate.hpp +53 -0
  436. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDefines.hpp +45 -0
  437. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDictionary.hpp +128 -0
  438. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSEnumerator.hpp +78 -0
  439. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSError.hpp +173 -0
  440. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSLock.hpp +118 -0
  441. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSNotification.hpp +110 -0
  442. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSNumber.hpp +501 -0
  443. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSObjCRuntime.hpp +43 -0
  444. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSObject.hpp +302 -0
  445. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSPrivate.hpp +531 -0
  446. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSProcessInfo.hpp +386 -0
  447. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSRange.hpp +83 -0
  448. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSSet.hpp +87 -0
  449. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSSharedPtr.hpp +310 -0
  450. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSString.hpp +255 -0
  451. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSTypes.hpp +51 -0
  452. package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSURL.hpp +90 -0
  453. package/shared/BabylonNative/deps/metal-cpp-src/LICENSE.txt +202 -0
  454. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4AccelerationStructure.hpp +1395 -0
  455. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Archive.hpp +93 -0
  456. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ArgumentTable.hpp +187 -0
  457. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4BinaryFunction.hpp +50 -0
  458. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4BinaryFunctionDescriptor.hpp +97 -0
  459. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandAllocator.hpp +100 -0
  460. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandBuffer.hpp +193 -0
  461. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandEncoder.hpp +134 -0
  462. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandQueue.hpp +283 -0
  463. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommitFeedback.hpp +62 -0
  464. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Compiler.hpp +345 -0
  465. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CompilerTask.hpp +63 -0
  466. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ComputeCommandEncoder.hpp +300 -0
  467. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ComputePipeline.hpp +158 -0
  468. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Counters.hpp +138 -0
  469. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4FunctionDescriptor.hpp +49 -0
  470. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LibraryDescriptor.hpp +98 -0
  471. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LibraryFunctionDescriptor.hpp +86 -0
  472. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LinkingDescriptor.hpp +204 -0
  473. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MachineLearningCommandEncoder.hpp +66 -0
  474. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MachineLearningPipeline.hpp +172 -0
  475. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MeshRenderPipeline.hpp +413 -0
  476. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4PipelineDataSetSerializer.hpp +85 -0
  477. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4PipelineState.hpp +150 -0
  478. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderCommandEncoder.hpp +340 -0
  479. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderPass.hpp +280 -0
  480. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderPipeline.hpp +587 -0
  481. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4SpecializedFunctionDescriptor.hpp +100 -0
  482. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4StitchedFunctionDescriptor.hpp +86 -0
  483. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4TileRenderPipeline.hpp +173 -0
  484. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructure.hpp +1887 -0
  485. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructureCommandEncoder.hpp +260 -0
  486. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructureTypes.hpp +292 -0
  487. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAllocation.hpp +40 -0
  488. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLArgument.hpp +787 -0
  489. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLArgumentEncoder.hpp +235 -0
  490. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBinaryArchive.hpp +152 -0
  491. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBlitCommandEncoder.hpp +226 -0
  492. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBlitPass.hpp +154 -0
  493. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBuffer.hpp +119 -0
  494. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCaptureManager.hpp +217 -0
  495. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCaptureScope.hpp +91 -0
  496. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandBuffer.hpp +464 -0
  497. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandEncoder.hpp +117 -0
  498. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandQueue.hpp +158 -0
  499. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputeCommandEncoder.hpp +324 -0
  500. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputePass.hpp +169 -0
  501. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputePipeline.hpp +439 -0
  502. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCounters.hpp +243 -0
  503. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDataType.hpp +129 -0
  504. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDefines.hpp +41 -0
  505. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDepthStencil.hpp +277 -0
  506. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDevice.hpp +1493 -0
  507. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDrawable.hpp +90 -0
  508. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDynamicLibrary.hpp +78 -0
  509. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLEvent.hpp +170 -0
  510. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFence.hpp +55 -0
  511. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionConstantValues.hpp +76 -0
  512. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionDescriptor.hpp +153 -0
  513. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionHandle.hpp +65 -0
  514. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionLog.hpp +101 -0
  515. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionStitching.hpp +319 -0
  516. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLGPUAddress.hpp +36 -0
  517. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLHeaderBridge.hpp +3120 -0
  518. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLHeap.hpp +318 -0
  519. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCommandBuffer.hpp +182 -0
  520. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCommandQueue.hpp +211 -0
  521. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCompressor.hpp +94 -0
  522. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIndirectCommandBuffer.hpp +376 -0
  523. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIndirectCommandEncoder.hpp +272 -0
  524. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIntersectionFunctionTable.hpp +173 -0
  525. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLibrary.hpp +786 -0
  526. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLinkedFunctions.hpp +110 -0
  527. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLogState.hpp +111 -0
  528. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLParallelRenderCommandEncoder.hpp +83 -0
  529. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPipeline.hpp +104 -0
  530. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPixelFormat.hpp +173 -0
  531. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPrivate.hpp +156 -0
  532. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRasterizationRate.hpp +337 -0
  533. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderCommandEncoder.hpp +1019 -0
  534. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderPass.hpp +792 -0
  535. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderPipeline.hpp +1876 -0
  536. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResidencySet.hpp +178 -0
  537. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResource.hpp +190 -0
  538. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceStateCommandEncoder.hpp +98 -0
  539. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceStatePass.hpp +154 -0
  540. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceViewPool.hpp +118 -0
  541. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLSampler.hpp +345 -0
  542. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLStageInputOutputDescriptor.hpp +356 -0
  543. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTensor.hpp +297 -0
  544. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTexture.hpp +803 -0
  545. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTextureViewPool.hpp +59 -0
  546. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTypes.hpp +164 -0
  547. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVersion.hpp +32 -0
  548. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVertexDescriptor.hpp +326 -0
  549. package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVisibleFunctionTable.hpp +96 -0
  550. package/shared/BabylonNative/deps/metal-cpp-src/Metal/Metal.hpp +120 -0
  551. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXFrameInterpolator.hpp +47 -0
  552. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXSpatialScaler.hpp +49 -0
  553. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXTemporalDenoisedScaler.hpp +49 -0
  554. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXTemporalScaler.hpp +49 -0
  555. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXDefines.hpp +41 -0
  556. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXFrameInterpolator.hpp +719 -0
  557. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXPrivate.hpp +482 -0
  558. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXSpatialScaler.hpp +397 -0
  559. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXTemporalDenoisedScaler.hpp +1208 -0
  560. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXTemporalScaler.hpp +803 -0
  561. package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MetalFX.hpp +35 -0
  562. package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CADefines.hpp +41 -0
  563. package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAMetalDrawable.hpp +57 -0
  564. package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAMetalLayer.hpp +216 -0
  565. package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAPrivate.hpp +150 -0
  566. package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/QuartzCore.hpp +28 -0
  567. package/shared/BabylonNative/deps/metal-cpp-src/README.md +313 -0
  568. package/shared/BabylonNative/deps/metal-cpp-src/SingleHeader/MakeSingleHeader.py +271 -0
  569. package/shared/BabylonNative/deps/metal-cpp-src/SingleHeader/Metal.hpp +28735 -0
  570. package/shared/BabylonNative/deps/spirv-cross-src/spirv_hlsl.cpp +173 -222
  571. package/shared/BabylonNative/deps/urllib-src/CMakeLists.txt +6 -7
  572. package/shared/BabylonNative/deps/urllib-src/Source/UrlRequest_Unix.cpp +1 -1
  573. package/shared/BabylonNative.cpp +4 -0
  574. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/Apple/TestUtilsImpl.mm +0 -57
  575. package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtilsImplData.h +0 -18
  576. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Android/Arcana.Android.vcxproj +0 -186
  577. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/Arcana.vcxitems +0 -47
  578. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows/Arcana.Windows.Reference.vcxitems +0 -30
  579. package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows/Arcana.Windows.vcxproj +0 -218
  580. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bounds.cpp +0 -2178
  581. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bounds.h +0 -448
  582. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_color.bin.h +0 -100
  583. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_color.sc +0 -13
  584. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_cubemap.bin.h +0 -223
  585. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_cubemap.sc +0 -21
  586. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image_swizz.bin.h +0 -256
  587. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image_swizz.sc +0 -22
  588. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_latlong.bin.h +0 -308
  589. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_latlong.sc +0 -38
  590. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_texture.bin.h +0 -180
  591. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_texture.sc +0 -16
  592. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_color.bin.h +0 -195
  593. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_color.sc +0 -15
  594. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_cubemap.bin.h +0 -203
  595. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_cubemap.sc +0 -15
  596. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_latlong.bin.h +0 -205
  597. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_latlong.sc +0 -15
  598. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_texture.bin.h +0 -233
  599. package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_texture.sc +0 -16
@@ -0,0 +1,98 @@
1
+ # bgfx.cmake - bgfx building in cmake
2
+ # Written in 2017 by Joshua Brookover <joshua.al.brookover@gmail.com>
3
+ #
4
+ # To the extent possible under law, the author(s) have dedicated all copyright
5
+ # and related and neighboring rights to this software to the public domain
6
+ # worldwide. This software is distributed without any warranty.
7
+ #
8
+ # You should have received a copy of the CC0 Public Domain Dedication along with
9
+ # this software. If not, see <http://creativecommons.org/publicdomain/zero/1.0/>.
10
+
11
+ if(TARGET tint)
12
+ return()
13
+ endif()
14
+
15
+ if(NOT IS_DIRECTORY ${BGFX_DIR})
16
+ message(SEND_ERROR "Could not load bgfx, directory does not exist. ${BGFX_DIR}")
17
+ return()
18
+ endif()
19
+
20
+ set(TINT_DIR ${BGFX_DIR}/3rdparty/dawn)
21
+ set(SPIRV_HEADERS ${BGFX_DIR}/3rdparty/spirv-headers)
22
+ set(SPIRV_TOOLS ${BGFX_DIR}/3rdparty/spirv-tools)
23
+
24
+ file(
25
+ GLOB_RECURSE
26
+ TINT_SOURCES
27
+ ${TINT_DIR}/src/tint/utils/*.cc
28
+ ${TINT_DIR}/src/tint/utils/*.h
29
+ ${TINT_DIR}/src/tint/lang/core/*.cc
30
+ ${TINT_DIR}/src/tint/lang/core/*.h
31
+ ${TINT_DIR}/src/tint/lang/null/*.cc
32
+ ${TINT_DIR}/src/tint/lang/null/*.h
33
+ ${TINT_DIR}/src/tint/lang/spirv/*.cc
34
+ ${TINT_DIR}/src/tint/lang/spirv/*.h
35
+ ${TINT_DIR}/src/tint/lang/wgsl/*.cc
36
+ ${TINT_DIR}/src/tint/lang/wgsl/*.h
37
+ ${TINT_DIR}/src/tint/api/*.cc
38
+ ${TINT_DIR}/src/tint/api/*.h
39
+ )
40
+
41
+ add_library(tint STATIC ${TINT_SOURCES})
42
+
43
+ set_target_properties(tint PROPERTIES FOLDER "bgfx")
44
+
45
+ target_include_directories(
46
+ tint
47
+ PUBLIC ${TINT_DIR}
48
+ ${TINT_DIR}/src/tint
49
+ PRIVATE ${TINT_DIR}/third_party/protobuf/src
50
+ ${TINT_DIR}/third_party/abseil-cpp
51
+ ${SPIRV_TOOLS}
52
+ ${SPIRV_TOOLS}/include
53
+ ${SPIRV_TOOLS}/include/generated
54
+ ${SPIRV_HEADERS}/include
55
+ )
56
+
57
+ target_compile_definitions(
58
+ tint
59
+ PRIVATE TINT_BUILD_GLSL_WRITER=0
60
+ TINT_BUILD_HLSL_WRITER=0
61
+ TINT_BUILD_MSL_WRITER=0
62
+ TINT_BUILD_NULL_WRITER=0
63
+ TINT_BUILD_SPV_READER=1
64
+ TINT_BUILD_SPV_WRITER=0
65
+ TINT_BUILD_WGSL_READER=0
66
+ TINT_BUILD_WGSL_WRITER=1
67
+ TINT_ENABLE_IR_VALIDATION=0
68
+ )
69
+
70
+ if(WIN32)
71
+ target_compile_definitions(
72
+ tint
73
+ PRIVATE TINT_BUILD_IS_LINUX=0
74
+ TINT_BUILD_IS_MAC=0
75
+ TINT_BUILD_IS_WIN=1
76
+ )
77
+ elseif(APPLE)
78
+ target_compile_definitions(
79
+ tint
80
+ PRIVATE TINT_BUILD_IS_LINUX=0
81
+ TINT_BUILD_IS_MAC=1
82
+ TINT_BUILD_IS_WIN=0
83
+ )
84
+ else()
85
+ target_compile_definitions(
86
+ tint
87
+ PRIVATE TINT_BUILD_IS_LINUX=1
88
+ TINT_BUILD_IS_MAC=0
89
+ TINT_BUILD_IS_WIN=0
90
+ )
91
+ endif()
92
+
93
+ if(MSVC)
94
+ target_compile_options(
95
+ tint
96
+ PRIVATE "/Zc:preprocessor"
97
+ )
98
+ endif()
@@ -26,6 +26,7 @@ if(BGFX_BUILD_TOOLS_SHADER)
26
26
  include(3rdparty/glsl-optimizer.cmake)
27
27
  include(3rdparty/fcpp.cmake)
28
28
  include(3rdparty/webgpu.cmake)
29
+ include(3rdparty/tint.cmake)
29
30
  include(shaderc.cmake)
30
31
  endif()
31
32
 
@@ -19,22 +19,25 @@ if(NOT IS_DIRECTORY ${BGFX_DIR})
19
19
  return()
20
20
  endif()
21
21
 
22
- if(NOT APPLE)
23
- set(BGFX_AMALGAMATED_SOURCE ${BGFX_DIR}/src/amalgamated.cpp)
24
- else()
25
- set(BGFX_AMALGAMATED_SOURCE ${BGFX_DIR}/src/amalgamated.mm)
26
- endif()
27
-
28
22
  # Grab the bgfx source files
29
23
  file(
30
24
  GLOB
31
25
  BGFX_SOURCES
32
26
  ${BGFX_DIR}/src/*.cpp
33
- ${BGFX_DIR}/src/*.mm
34
27
  ${BGFX_DIR}/src/*.h
35
28
  ${BGFX_DIR}/include/bgfx/*.h
36
29
  ${BGFX_DIR}/include/bgfx/c99/*.h
37
30
  )
31
+
32
+ if(APPLE)
33
+ file(GLOB BGFX_OBJC_SOURCES ${BGFX_DIR}/src/*.mm)
34
+ list(APPEND BGFX_SOURCES ${BGFX_OBJC_SOURCES})
35
+ list(REMOVE_ITEM BGFX_SOURCES ${BGFX_DIR}/src/amalgamated.cpp)
36
+ set(BGFX_AMALGAMATED_SOURCE ${BGFX_DIR}/src/amalgamated.mm)
37
+ else()
38
+ set(BGFX_AMALGAMATED_SOURCE ${BGFX_DIR}/src/amalgamated.cpp)
39
+ endif()
40
+
38
41
  if(BGFX_AMALGAMATED)
39
42
  set(BGFX_NOBUILD ${BGFX_SOURCES})
40
43
  list(REMOVE_ITEM BGFX_NOBUILD ${BGFX_AMALGAMATED_SOURCE})
@@ -43,8 +46,7 @@ if(BGFX_AMALGAMATED)
43
46
  endforeach()
44
47
  else()
45
48
  # Do not build using amalgamated sources
46
- set_source_files_properties(${BGFX_DIR}/src/amalgamated.cpp PROPERTIES HEADER_FILE_ONLY ON)
47
- set_source_files_properties(${BGFX_DIR}/src/amalgamated.mm PROPERTIES HEADER_FILE_ONLY ON)
49
+ set_source_files_properties(${BGFX_AMALGAMATED_SOURCE} PROPERTIES HEADER_FILE_ONLY ON)
48
50
  endif()
49
51
 
50
52
  # Create the bgfx target
@@ -31,6 +31,8 @@ function(add_bgfx_shader FILE FOLDER)
31
31
  set(COMMON FILE ${FILE} ${TYPE} INCLUDES ${BGFX_DIR}/src)
32
32
  set(OUTPUTS "")
33
33
  set(OUTPUTS_PRETTY "")
34
+ set(OUTPUT_FILES "")
35
+ set(COMMANDS "")
34
36
 
35
37
  if(WIN32)
36
38
  # dx11
@@ -85,11 +87,15 @@ function(add_bgfx_shader FILE FOLDER)
85
87
  set(SPIRV_OUTPUT ${BGFX_DIR}/examples/runtime/shaders/spirv/${FILENAME}.bin)
86
88
  _bgfx_shaderc_parse(SPIRV ${COMMON} LINUX PROFILE spirv OUTPUT ${SPIRV_OUTPUT})
87
89
  list(APPEND OUTPUTS "SPIRV")
88
- set(OUTPUTS_PRETTY "${OUTPUTS_PRETTY}SPIRV")
89
- set(OUTPUT_FILES "")
90
- set(COMMANDS "")
90
+ set(OUTPUTS_PRETTY "${OUTPUTS_PRETTY}SPIRV, ")
91
91
  endif()
92
92
 
93
+ # wgsl
94
+ set(WGSL_OUTPUT ${BGFX_DIR}/examples/runtime/shaders/wgsl/${FILENAME}.bin)
95
+ _bgfx_shaderc_parse(WGSL ${COMMON} LINUX PROFILE wgsl OUTPUT ${WGSL_OUTPUT})
96
+ list(APPEND OUTPUTS "WGSL")
97
+ set(OUTPUTS_PRETTY "${OUTPUTS_PRETTY}WGSL")
98
+
93
99
  foreach(OUT ${OUTPUTS})
94
100
  list(APPEND OUTPUT_FILES ${${OUT}_OUTPUT})
95
101
  list(APPEND COMMANDS COMMAND "bgfx::shaderc" ${${OUT}})
@@ -163,38 +169,44 @@ function(add_example ARG_NAME)
163
169
  # on iOS we need to build a bundle so have to copy the data rather than symlink
164
170
  # and on windows we can't create symlinks
165
171
  add_custom_command(
166
- TARGET example-${ARG_NAME} COMMAND ${CMAKE_COMMAND} -E copy_directory ${BGFX_DIR}/examples/runtime/
172
+ TARGET example-${ARG_NAME} POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy_directory ${BGFX_DIR}/examples/runtime/
167
173
  $<TARGET_FILE_DIR:example-${ARG_NAME}>
168
174
  )
169
175
  else()
170
176
  # For everything else symlink some folders into our output directory
171
177
  add_custom_command(
172
178
  TARGET example-${ARG_NAME}
179
+ POST_BUILD
173
180
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/font
174
181
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/font
175
182
  )
176
183
  add_custom_command(
177
184
  TARGET example-${ARG_NAME}
185
+ POST_BUILD
178
186
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/images
179
187
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/images
180
188
  )
181
189
  add_custom_command(
182
190
  TARGET example-${ARG_NAME}
191
+ POST_BUILD
183
192
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/meshes
184
193
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/meshes
185
194
  )
186
195
  add_custom_command(
187
196
  TARGET example-${ARG_NAME}
197
+ POST_BUILD
188
198
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/shaders
189
199
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/shaders
190
200
  )
191
201
  add_custom_command(
192
202
  TARGET example-${ARG_NAME}
203
+ POST_BUILD
193
204
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/text
194
205
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/text
195
206
  )
196
207
  add_custom_command(
197
208
  TARGET example-${ARG_NAME}
209
+ POST_BUILD
198
210
  COMMAND ${CMAKE_COMMAND} -E create_symlink ${BGFX_DIR}/examples/runtime/textures
199
211
  $<TARGET_FILE_DIR:example-${ARG_NAME}>/textures
200
212
  )
@@ -19,16 +19,6 @@ file(
19
19
 
20
20
  add_executable(shaderc ${SHADERC_SOURCES})
21
21
 
22
- target_link_libraries(
23
- shaderc
24
- PRIVATE bx
25
- bgfx-vertexlayout
26
- fcpp
27
- glslang
28
- glsl-optimizer
29
- spirv-opt
30
- spirv-cross
31
- )
32
22
  target_link_libraries(
33
23
  shaderc
34
24
  PRIVATE bx
@@ -40,7 +30,28 @@ target_link_libraries(
40
30
  spirv-opt
41
31
  spirv-cross
42
32
  webgpu
33
+ tint
34
+ )
35
+
36
+ target_include_directories(
37
+ shaderc
38
+ PRIVATE ${BGFX_DIR}/3rdparty/dawn
39
+ ${BGFX_DIR}/3rdparty/dawn/src
43
40
  )
41
+
42
+ if(UNIX
43
+ AND NOT APPLE
44
+ AND NOT EMSCRIPTEN
45
+ AND NOT ANDROID
46
+ )
47
+ target_include_directories(
48
+ shaderc
49
+ PRIVATE ${BGFX_DIR}/3rdparty/directx-headers/include/directx
50
+ ${BGFX_DIR}/3rdparty/directx-headers/include
51
+ ${BGFX_DIR}/3rdparty/directx-headers/include/wsl/stubs
52
+ )
53
+ endif()
54
+
44
55
  if(BGFX_AMALGAMATED)
45
56
  target_link_libraries(shaderc PRIVATE bgfx-shader)
46
57
  endif()
@@ -60,6 +60,11 @@ endforeach()
60
60
 
61
61
  add_library(bx STATIC ${BX_SOURCES})
62
62
 
63
+ if(MSVC)
64
+ target_compile_options(bx PRIVATE /EHs-c-)
65
+ target_compile_definitions(bx PRIVATE _HAS_EXCEPTIONS=0)
66
+ endif()
67
+
63
68
  # Put in a "bgfx" folder in Visual Studio
64
69
  set_target_properties(bx PROPERTIES FOLDER "bgfx")
65
70
 
@@ -80,12 +80,24 @@ function(npm)
80
80
  set(NPM_WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
81
81
  endif()
82
82
 
83
- message(STATUS "Installing npm modules (${NPM_WORKING_DIRECTORY})")
84
- execute_process(COMMAND ${NPM_COMMAND} ${NPM_UNPARSED_ARGUMENTS} WORKING_DIRECTORY ${NPM_WORKING_DIRECTORY} RESULT_VARIABLE NPM_RESULT)
83
+ list(JOIN NPM_UNPARSED_ARGUMENTS " " NPM_ARGS_STRING)
84
+ message(STATUS "Running npm ${NPM_ARGS_STRING} (${NPM_WORKING_DIRECTORY})")
85
+ execute_process(
86
+ COMMAND ${NPM_COMMAND} ${NPM_UNPARSED_ARGUMENTS}
87
+ WORKING_DIRECTORY ${NPM_WORKING_DIRECTORY}
88
+ RESULT_VARIABLE NPM_RESULT
89
+ OUTPUT_VARIABLE NPM_OUTPUT
90
+ ERROR_VARIABLE NPM_ERROR)
85
91
  if(NOT ${NPM_RESULT} EQUAL 0)
86
- message(FATAL_ERROR "npm command failed: ${NPM_RESULT}")
92
+ message(FATAL_ERROR "npm command failed: ${NPM_RESULT}\n${NPM_OUTPUT}\n${NPM_ERROR}")
87
93
  else()
88
- message(STATUS "Installing npm modules (${NPM_WORKING_DIRECTORY}) - done")
94
+ if(NPM_OUTPUT)
95
+ message(VERBOSE "${NPM_OUTPUT}")
96
+ endif()
97
+ if(NPM_ERROR)
98
+ message(VERBOSE "${NPM_ERROR}")
99
+ endif()
100
+ message(STATUS "Running npm ${NPM_ARGS_STRING} (${NPM_WORKING_DIRECTORY}) - done")
89
101
  endif()
90
102
  endfunction()
91
103
 
@@ -101,7 +113,9 @@ function(FetchContent_MakeAvailable_With_Message)
101
113
 
102
114
  if(names)
103
115
  message(STATUS "Fetching ${names}")
116
+ list(APPEND CMAKE_MESSAGE_INDENT " ")
104
117
  FetchContent_MakeAvailable(${names})
118
+ list(POP_BACK CMAKE_MESSAGE_INDENT)
105
119
  message(STATUS "Fetching ${names} - done")
106
120
  endif()
107
121
 
@@ -109,6 +123,18 @@ function(FetchContent_MakeAvailable_With_Message)
109
123
  string(TOLOWER ${name} name_lowercase)
110
124
  set(${name_lowercase}_POPULATED ${${name_lowercase}_POPULATED} PARENT_SCOPE)
111
125
  set(${name_lowercase}_SOURCE_DIR ${${name_lowercase}_SOURCE_DIR} PARENT_SCOPE)
112
- set(${name_lowercase}_BINARY_DIR ${${sname_lowercase}_BINARY_DIR} PARENT_SCOPE)
126
+ set(${name_lowercase}_BINARY_DIR ${${name_lowercase}_BINARY_DIR} PARENT_SCOPE)
113
127
  endforeach()
114
128
  endfunction()
129
+
130
+ if(APPLE)
131
+ function(enable_objc_arc target)
132
+ if(XCODE)
133
+ set_target_properties(${target} PROPERTIES XCODE_ATTRIBUTE_CLANG_ENABLE_OBJC_ARC YES)
134
+ elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
135
+ target_compile_options(${target} PRIVATE "-fobjc-arc")
136
+ else()
137
+ message(FATAL_ERROR "Unrecognized compiler: ${CMAKE_CXX_COMPILER}")
138
+ endif()
139
+ endfunction()
140
+ endif()
@@ -1,2 +1,7 @@
1
1
  # CMakeExtensions
2
- Helper functions for CMake
2
+
3
+ A collection of reusable CMake helper functions used by [BabylonNative](https://github.com/BabylonJS/BabylonNative) and related projects. These functions reduce boilerplate and provide cross-platform convenience wrappers for common build tasks.
4
+
5
+ ## Requirements
6
+
7
+ CMake **3.16** or later is required.
@@ -11,11 +11,11 @@ include(FetchContent)
11
11
  # --------------------------------------------------
12
12
  FetchContent_Declare(AndroidExtensions
13
13
  GIT_REPOSITORY https://github.com/BabylonJS/AndroidExtensions.git
14
- GIT_TAG f7ed149b5360cc8a4908fece66607c5ce1e6095b
14
+ GIT_TAG 2d5af72259cc73e5f249d3c99bee2010be9cb042
15
15
  EXCLUDE_FROM_ALL)
16
16
  FetchContent_Declare(arcana.cpp
17
17
  GIT_REPOSITORY https://github.com/microsoft/arcana.cpp.git
18
- GIT_TAG c02527c32d51b6b3ffeda36f8cf140d2e1c60bb9
18
+ GIT_TAG 7c6be8aaa29effbc8ee1a2217388fb6e399150d2
19
19
  EXCLUDE_FROM_ALL)
20
20
  FetchContent_Declare(asio
21
21
  GIT_REPOSITORY https://github.com/chriskohlhoff/asio.git
@@ -23,7 +23,7 @@ FetchContent_Declare(asio
23
23
  EXCLUDE_FROM_ALL)
24
24
  FetchContent_Declare(CMakeExtensions
25
25
  GIT_REPOSITORY https://github.com/BabylonJS/CMakeExtensions.git
26
- GIT_TAG ea28b7689530bfdc4905806f27ecf7e8ed4b5419
26
+ GIT_TAG dc750e7f69dad76779419df6442f834c57a30a1f
27
27
  EXCLUDE_FROM_ALL)
28
28
  FetchContent_Declare(googletest
29
29
  URL "https://github.com/google/googletest/archive/refs/tags/v1.17.0.tar.gz"
@@ -37,7 +37,7 @@ FetchContent_Declare(llhttp
37
37
  EXCLUDE_FROM_ALL)
38
38
  FetchContent_Declare(UrlLib
39
39
  GIT_REPOSITORY https://github.com/BabylonJS/UrlLib.git
40
- GIT_TAG 1f9d2c05f792d994b09fdfc1129b25294efbe182
40
+ GIT_TAG d53beb958b1cccafd5411260ace6d32b68b56a83
41
41
  EXCLUDE_FROM_ALL)
42
42
  # --------------------------------------------------
43
43
 
@@ -55,7 +55,7 @@ project(JsRuntimeHost)
55
55
 
56
56
  set_property(GLOBAL PROPERTY USE_FOLDERS ON)
57
57
 
58
- set(CMAKE_CXX_STANDARD 17)
58
+ set(CMAKE_CXX_STANDARD 20)
59
59
  set(CMAKE_CXX_STANDARD_REQUIRED ON)
60
60
 
61
61
  # --------------------------------------------------
@@ -81,6 +81,7 @@ option(JSRUNTIMEHOST_POLYFILL_ABORT_CONTROLLER "Include JsRuntimeHost Polyfills
81
81
  option(JSRUNTIMEHOST_POLYFILL_WEBSOCKET "Include JsRuntimeHost Polyfill WebSocket." ON)
82
82
  option(JSRUNTIMEHOST_POLYFILL_BLOB "Include JsRuntimeHost Polyfill Blob." ON)
83
83
  option(JSRUNTIMEHOST_POLYFILL_PERFORMANCE "Include JsRuntimeHost Polyfill Performance." ON)
84
+ option(JSRUNTIMEHOST_POLYFILL_TEXTDECODER "Include JsRuntimeHost Polyfill TextDecoder." ON)
84
85
 
85
86
  # Sanitizers
86
87
  option(ENABLE_SANITIZERS "Enable AddressSanitizer and UBSan" OFF)
@@ -7,8 +7,7 @@
7
7
  #include <stdexcept>
8
8
  #include <string>
9
9
  #include <vector>
10
- #include <locale>
11
- #include <codecvt>
10
+
12
11
 
13
12
  struct napi_callback_info__ {
14
13
  napi_value newTarget;
@@ -103,13 +102,68 @@ namespace {
103
102
  }
104
103
 
105
104
  private:
105
+ // Decode UTF-8 to UTF-16, replacing invalid sequences with U+FFFD.
106
+ static std::u16string Utf8ToUtf16(const char* str, size_t len) {
107
+ std::u16string result;
108
+ result.reserve(len);
109
+ const auto* s = reinterpret_cast<const unsigned char*>(str);
110
+ const auto* end = s + len;
111
+ while (s < end) {
112
+ uint32_t cp;
113
+ int trail;
114
+ unsigned char lead = *s++;
115
+ if (lead < 0x80) {
116
+ cp = lead; trail = 0;
117
+ } else if ((lead >> 5) == 0x6) {
118
+ cp = lead & 0x1F; trail = 1;
119
+ } else if ((lead >> 4) == 0xE) {
120
+ cp = lead & 0x0F; trail = 2;
121
+ } else if ((lead >> 3) == 0x1E) {
122
+ cp = lead & 0x07; trail = 3;
123
+ } else {
124
+ result.push_back(0xFFFD);
125
+ continue;
126
+ }
127
+ if (s + trail > end) {
128
+ result.push_back(0xFFFD);
129
+ break;
130
+ }
131
+ bool valid = true;
132
+ for (int i = 0; i < trail; ++i) {
133
+ if ((s[i] & 0xC0) != 0x80) { valid = false; break; }
134
+ cp = (cp << 6) | (s[i] & 0x3F);
135
+ }
136
+ if (!valid) {
137
+ result.push_back(0xFFFD);
138
+ continue;
139
+ }
140
+ s += trail;
141
+ // Reject overlong encodings, surrogates, and out-of-range values.
142
+ if ((trail == 1 && cp < 0x80) ||
143
+ (trail == 2 && cp < 0x800) ||
144
+ (trail == 3 && cp < 0x10000) ||
145
+ (cp >= 0xD800 && cp <= 0xDFFF) ||
146
+ cp > 0x10FFFF) {
147
+ result.push_back(0xFFFD);
148
+ continue;
149
+ }
150
+ if (cp <= 0xFFFF) {
151
+ result.push_back(static_cast<char16_t>(cp));
152
+ } else {
153
+ cp -= 0x10000;
154
+ result.push_back(static_cast<char16_t>(0xD800 + (cp >> 10)));
155
+ result.push_back(static_cast<char16_t>(0xDC00 + (cp & 0x3FF)));
156
+ }
157
+ }
158
+ return result;
159
+ }
160
+
106
161
  static JSStringRef CreateUTF8(const char* string, size_t length) {
107
162
  if (length == NAPI_AUTO_LENGTH) {
108
163
  return JSStringCreateWithUTF8CString(string);
109
164
  }
110
165
 
111
- std::u16string u16str{std::wstring_convert<
112
- std::codecvt_utf8_utf16<char16_t>, char16_t>{}.from_bytes(string, string + length)};
166
+ std::u16string u16str{Utf8ToUtf16(string, length)};
113
167
  return JSStringCreateWithCharacters(reinterpret_cast<JSChar*>(u16str.data()), u16str.size());
114
168
  }
115
169
 
@@ -28,4 +28,8 @@ endif()
28
28
 
29
29
  if(JSRUNTIMEHOST_POLYFILL_PERFORMANCE)
30
30
  add_subdirectory(Performance)
31
+ endif()
32
+
33
+ if(JSRUNTIMEHOST_POLYFILL_TEXTDECODER)
34
+ add_subdirectory(TextDecoder)
31
35
  endif()
@@ -0,0 +1,15 @@
1
+ set(SOURCES
2
+ "Include/Babylon/Polyfills/TextDecoder.h"
3
+ "Source/TextDecoder.cpp")
4
+
5
+ add_library(TextDecoder ${SOURCES})
6
+ warnings_as_errors(TextDecoder)
7
+
8
+ target_include_directories(TextDecoder PUBLIC "Include")
9
+
10
+ target_link_libraries(TextDecoder
11
+ PUBLIC napi
12
+ PUBLIC Foundation)
13
+
14
+ set_property(TARGET TextDecoder PROPERTY FOLDER Polyfills)
15
+ source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${SOURCES})
@@ -0,0 +1,9 @@
1
+ #pragma once
2
+
3
+ #include <napi/env.h>
4
+ #include <Babylon/Api.h>
5
+
6
+ namespace Babylon::Polyfills::TextDecoder
7
+ {
8
+ void BABYLON_API Initialize(Napi::Env env);
9
+ }
@@ -0,0 +1,39 @@
1
+ # TextDecoder Polyfill
2
+
3
+ A C++ implementation of the [WHATWG Encoding API](https://encoding.spec.whatwg.org/) `TextDecoder` interface for use in Babylon Native JavaScript runtimes via [Napi](https://github.com/nodejs/node-addon-api).
4
+
5
+ ## Current State
6
+
7
+ ### Supported
8
+
9
+ - Decoding `Uint8Array`, `Int8Array`, and other typed array views from a UTF-8 encoded byte sequence.
10
+ - Decoding raw `ArrayBuffer` objects.
11
+ - Constructing `TextDecoder` with no argument (defaults to `utf-8`).
12
+ - Constructing `TextDecoder` with the explicit encoding label `"utf-8"` or `"UTF-8"`.
13
+ - Calling `decode()` with no argument or `undefined` returns an empty string (matches the Web API).
14
+
15
+ ### Not Supported
16
+
17
+ - Encodings other than UTF-8 — passing any other label (e.g. `"utf-16"`, `"iso-8859-1"`) throws a JavaScript `Error`.
18
+ - `DataView` is not accepted by `decode()` — due to missing `Napi::DataView` support in the underlying JSI layer.
19
+ - Passing a non-BufferSource value (e.g. a string or number) to `decode()` throws a `TypeError`.
20
+ - The `fatal` option: decoding errors are not detected and do not throw a `TypeError`.
21
+ - The `ignoreBOM` option: the byte order mark is not stripped.
22
+ - Streaming decode (passing `{ stream: true }` to `decode()`) — each call is stateless.
23
+ - The `encoding` property on the `TextDecoder` instance is not exposed.
24
+
25
+ ## Usage
26
+
27
+ ```javascript
28
+ const decoder = new TextDecoder(); // utf-8
29
+ const decoder = new TextDecoder("utf-8"); // explicit, also fine
30
+
31
+ const bytes = new Uint8Array([72, 101, 108, 108, 111]);
32
+ decoder.decode(bytes); // "Hello"
33
+ ```
34
+
35
+ Passing an unsupported encoding throws:
36
+
37
+ ```javascript
38
+ new TextDecoder("utf-16"); // Error: TextDecoder: unsupported encoding 'utf-16', only 'utf-8' is supported
39
+ ```
@@ -0,0 +1,91 @@
1
+ #include <Babylon/Polyfills/TextDecoder.h>
2
+
3
+ #include <napi/napi.h>
4
+ #include <cstring>
5
+ #include <string>
6
+
7
+ namespace
8
+ {
9
+ class TextDecoder final : public Napi::ObjectWrap<TextDecoder>
10
+ {
11
+ public:
12
+ static void Initialize(Napi::Env env)
13
+ {
14
+ Napi::HandleScope scope{env};
15
+
16
+ static constexpr auto JS_TEXTDECODER_CONSTRUCTOR_NAME = "TextDecoder";
17
+ if (env.Global().Get(JS_TEXTDECODER_CONSTRUCTOR_NAME).IsUndefined())
18
+ {
19
+ Napi::Function func = DefineClass(
20
+ env,
21
+ JS_TEXTDECODER_CONSTRUCTOR_NAME,
22
+ {
23
+ InstanceMethod("decode", &TextDecoder::Decode),
24
+ });
25
+
26
+ env.Global().Set(JS_TEXTDECODER_CONSTRUCTOR_NAME, func);
27
+ }
28
+ }
29
+
30
+ explicit TextDecoder(const Napi::CallbackInfo& info)
31
+ : Napi::ObjectWrap<TextDecoder>{info}
32
+ {
33
+ if (info.Length() > 0 && info[0].IsString())
34
+ {
35
+ auto encoding = info[0].As<Napi::String>().Utf8Value();
36
+ if (encoding != "utf-8" && encoding != "UTF-8")
37
+ {
38
+ throw Napi::Error::New(Env(), "TextDecoder: unsupported encoding '" + encoding + "', only 'utf-8' is supported");
39
+ }
40
+ }
41
+ }
42
+
43
+ private:
44
+ Napi::Value Decode(const Napi::CallbackInfo& info)
45
+ {
46
+ if (info.Length() < 1 || info[0].IsUndefined())
47
+ {
48
+ return Napi::String::New(info.Env(), "");
49
+ }
50
+
51
+ std::string data;
52
+
53
+ if (info[0].IsTypedArray())
54
+ {
55
+ auto typedArray = info[0].As<Napi::TypedArray>();
56
+ auto arrayBuffer = typedArray.ArrayBuffer();
57
+ auto byteOffset = typedArray.ByteOffset();
58
+ auto byteLength = typedArray.ByteLength();
59
+ data.resize(byteLength);
60
+ if (byteLength > 0)
61
+ {
62
+ std::memcpy(data.data(), static_cast<uint8_t*>(arrayBuffer.Data()) + byteOffset, byteLength);
63
+ }
64
+ }
65
+ else if (info[0].IsArrayBuffer())
66
+ {
67
+ auto arrayBuffer = info[0].As<Napi::ArrayBuffer>();
68
+ auto byteLength = arrayBuffer.ByteLength();
69
+ data.resize(byteLength);
70
+ if (byteLength > 0)
71
+ {
72
+ std::memcpy(data.data(), arrayBuffer.Data(), byteLength);
73
+ }
74
+ }
75
+ else
76
+ {
77
+ throw Napi::TypeError::New(Env(), "TextDecoder.decode: input must be a BufferSource (ArrayBuffer or TypedArray)");
78
+ }
79
+
80
+ return Napi::String::New(info.Env(), data);
81
+ }
82
+ };
83
+ }
84
+
85
+ namespace Babylon::Polyfills::TextDecoder
86
+ {
87
+ void BABYLON_API Initialize(Napi::Env env)
88
+ {
89
+ ::TextDecoder::Initialize(env);
90
+ }
91
+ }