@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.
- package/package.json +1 -1
- package/react-native-babylon.podspec +2 -0
- package/shared/BabylonNative/CMakeLists.txt +2 -0
- package/shared/BabylonNative/Repo/CMakeLists.txt +16 -12
- package/shared/BabylonNative/Repo/Core/Graphics/CMakeLists.txt +41 -21
- package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/iOS/Babylon/Graphics/Platform.h +2 -2
- package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/macOS/Babylon/Graphics/Platform.h +2 -2
- package/shared/BabylonNative/Repo/Core/Graphics/Include/Platform/visionOS/Babylon/Graphics/Platform.h +2 -2
- package/shared/BabylonNative/Repo/Core/Graphics/Include/RendererType/Metal/Babylon/Graphics/RendererType.h +6 -6
- package/shared/BabylonNative/Repo/Core/Graphics/InternalInclude/Babylon/Graphics/BgfxCallback.h +1 -1
- package/shared/BabylonNative/Repo/Core/Graphics/Source/BgfxCallback.cpp +32 -9
- package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl.cpp +7 -5
- package/shared/BabylonNative/Repo/Core/Graphics/Source/{DeviceImpl_Metal.cpp → DeviceImpl_Metal.mm} +4 -3
- package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_iOS.mm +5 -3
- package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_macOS.mm +10 -1
- package/shared/BabylonNative/Repo/Core/Graphics/Source/DeviceImpl_visionOS.mm +2 -4
- package/shared/BabylonNative/Repo/Dependencies/CMakeLists.txt +77 -12
- package/shared/BabylonNative/Repo/Dependencies/xr/CMakeLists.txt +1 -3
- package/shared/BabylonNative/Repo/Plugins/ExternalTexture/CMakeLists.txt +1 -6
- package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/ExternalTexture_D3D11.cpp +4 -0
- package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/ExternalTexture_D3D12.cpp +4 -0
- package/shared/BabylonNative/Repo/Plugins/ExternalTexture/Source/{ExternalTexture_Metal.mm → ExternalTexture_Metal.cpp} +128 -120
- package/shared/BabylonNative/Repo/Plugins/NativeCamera/CMakeLists.txt +2 -2
- package/shared/BabylonNative/Repo/Plugins/NativeCamera/Source/Apple/CameraDevice.mm +5 -5
- package/shared/BabylonNative/Repo/Plugins/NativeEngine/CMakeLists.txt +2 -1
- package/shared/BabylonNative/Repo/Plugins/NativeEngine/Source/NativeEngine.cpp +2 -1
- package/shared/BabylonNative/Repo/Plugins/NativeEngine/Source/ShaderProvider.cpp +6 -6
- package/shared/BabylonNative/Repo/Plugins/NativeOptimizations/CMakeLists.txt +1 -2
- package/shared/BabylonNative/Repo/Plugins/NativeTracing/CMakeLists.txt +1 -2
- package/shared/BabylonNative/Repo/Plugins/NativeXr/Source/NativeXrImpl.cpp +1 -0
- package/shared/BabylonNative/Repo/Plugins/ShaderCache/CMakeLists.txt +0 -2
- package/shared/BabylonNative/Repo/Plugins/ShaderCache/Include/Babylon/Plugins/ShaderCache.h +2 -2
- package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCache.cpp +2 -2
- package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCacheImpl.cpp +4 -4
- package/shared/BabylonNative/Repo/Plugins/ShaderCache/Source/ShaderCacheImpl.h +2 -2
- package/shared/BabylonNative/Repo/Plugins/ShaderCompiler/Source/ShaderCompilerCommon.cpp +2 -0
- package/shared/BabylonNative/Repo/Plugins/ShaderCompiler/Source/ShaderCompilerTraversers.cpp +4 -0
- package/shared/BabylonNative/Repo/Plugins/TestUtils/CMakeLists.txt +6 -8
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Include/Babylon/Plugins/TestUtils.h +0 -1
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils.cpp +20 -6
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils.h +13 -13
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Android/TestUtilsImpl.cpp → TestUtils_Android.cpp} +1 -10
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Unix/TestUtilsImpl.cpp → TestUtils_Unix.cpp} +10 -20
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{Win32/TestUtilsImpl.cpp → TestUtils_Win32.cpp} +10 -20
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/{WinRT/TestUtilsImpl.cpp → TestUtils_WinRT.cpp} +9 -13
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils_iOS.mm +25 -0
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtils_macOS.mm +50 -0
- package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_boxblur.h +1 -1
- package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_gaussblur.h +1 -1
- package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/fs_nanovg_fill.h +1 -1
- package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/vs_fspass.h +1 -1
- package/shared/BabylonNative/Repo/Polyfills/Canvas/Source/Shaders/dx11/vs_nanovg_fill.h +1 -1
- package/shared/BabylonNative/Repo/Polyfills/Canvas/shaderc.cmake +2 -2
- package/shared/BabylonNative/Repo/azure-pipelines.yml +36 -24
- package/shared/BabylonNative/deps/arcana.cpp-src/CMakeLists.txt +17 -1
- package/shared/BabylonNative/deps/arcana.cpp-src/README.md +1 -1
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/arcana/string.h +0 -12
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/arcana/threading/cancellation.h +25 -12
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows.Test/Threading/CancellationMemoryLeakTest.cpp +37 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/CMakeLists.txt +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/README.md +5 -5
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/LICENSE +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/README.md +31 -14
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/args.h +5 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/aviwriter.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bgfx_utils.cpp +4 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bgfx_utils.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/common.h +43 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/common.sh +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/debugdraw.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/debugdraw.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill.bin.h +180 -29
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_lit.bin.h +305 -92
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_lit.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_texture.bin.h +328 -26
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_fill_texture.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines.bin.h +227 -13
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines_stipple.bin.h +290 -38
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/fs_debugdraw_lines_stipple.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill.bin.h +319 -95
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill.sc +2 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit.bin.h +410 -133
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit.sc +2 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit_mesh.bin.h +378 -120
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_lit_mesh.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_mesh.bin.h +290 -85
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_mesh.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_texture.bin.h +259 -18
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_fill_texture.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines.bin.h +228 -14
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines_stipple.bin.h +255 -16
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/debugdraw/vs_debugdraw_lines_stipple.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/cmd.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/cmd.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dbg.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dialog.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/dialog.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_android.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_glfw.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_html5.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_ios.mm +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_noop.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_osx.mm +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_p.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_sdl.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_windows.cpp +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/entry_x11.cpp +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/input.cpp +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/entry/input.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/example-glue.cpp +21 -9
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_basic.bin.h +391 -75
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field.bin.h +382 -119
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_drop_shadow.bin.h +587 -227
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_drop_shadow_image.bin.h +655 -265
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline.bin.h +452 -164
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline_drop_shadow_image.bin.h +719 -307
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_outline_image.bin.h +535 -208
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/fs_font_distance_field_subpixel.bin.h +495 -125
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_basic.bin.h +254 -16
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field.bin.h +254 -16
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_drop_shadow.bin.h +340 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_drop_shadow_image.bin.h +340 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline.bin.h +310 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline_drop_shadow_image.bin.h +340 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_outline_image.bin.h +310 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/font/vs_font_distance_field_subpixel.bin.h +254 -16
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image.bin.h +277 -59
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_ocornut_imgui.bin.h +324 -25
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/imgui.cpp +9 -9
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/imgui.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_image.bin.h +219 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_ocornut_imgui.bin.h +239 -7
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/fs_nanovg_fill.bin.h +925 -472
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/nanovg_bgfx.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/nanovg_bgfx.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/nanovg/vs_nanovg_fill.bin.h +223 -7
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/packrect.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/fs_particle.bin.h +382 -70
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/fs_particle.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/particle_system.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/particle_system.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/vs_particle.bin.h +263 -18
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/ps/vs_particle.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/shaderlib.sh +10 -7
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/bgfx.h +149 -7
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/c99/bgfx.h +225 -101
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/defines.h +30 -21
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/embedded_shader.h +110 -60
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/include/bgfx/platform.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/makefile +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bgfx.idl +189 -70
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bgfx.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-bf.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-c3.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-cs.lua +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/bindings-zig.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/example-common.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/genie.lua +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/geometryc.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/geometryv.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shader-embeded.mk +18 -4
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shader.mk +21 -6
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/shaderc.lua +139 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.h +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.hpp +2 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.bgfx.idl.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/temp.defines.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/texturec.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/texturev.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/scripts/tools.mk +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/amalgamated.cpp +2 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/amalgamated.mm +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx.cpp +406 -164
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx.idl.inl +37 -9
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_compute.sh +40 -43
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_p.h +795 -170
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/bgfx_shader.sh +205 -73
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/charset.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/config.h +18 -4
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/debug_renderdoc.cpp +8 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/debug_renderdoc.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/dxgi.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/dxgi.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/emscripten.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear0.bin.h +190 -36
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear0.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear1.bin.h +223 -46
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear1.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear2.bin.h +253 -55
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear2.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear3.bin.h +283 -65
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear3.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear4.bin.h +314 -75
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear4.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear5.bin.h +343 -85
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear5.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear6.bin.h +373 -94
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear6.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear7.bin.h +404 -105
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_clear7.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_debugfont.bin.h +401 -67
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/fs_debugfont.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_egl.cpp +114 -36
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_egl.h +5 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_html5.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_html5.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_wgl.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glcontext_wgl.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/glimports.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/makefile +17 -13
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/nvapi.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/nvapi.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer.h +50 -29
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_agc.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d.h +7 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d11.cpp +291 -180
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d11.h +5 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d12.cpp +635 -218
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_d3d12.h +78 -10
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gl.cpp +65 -45
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gl.h +24 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_gnm.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_mtl.h +50 -24
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_mtl.mm +158 -56
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_noop.cpp +8 -12
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_nvn.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_vk.cpp +810 -445
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_vk.h +194 -133
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_webgpu.cpp +6239 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/renderer_webgpu.h +897 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_dxbc.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_dxbc.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_spirv.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/shader_spirv.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/topology.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/topology.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/version.h +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vertexlayout.cpp +2 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vertexlayout.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_clear.bin.h +186 -24
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_clear.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_debugfont.bin.h +314 -44
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/src/vs_debugfont.sc +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/bc7/avpcl_mode4.cpp +2 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/nvcore/debug.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/3rdparty/nvtt/nvtt.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/LICENSE +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/README.md +2 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/bimg.h +5 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/decode.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/include/bimg/encode.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/makefile +183 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg_decode.lua +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/bimg_encode.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/genie.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/scripts/texturec.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/bimg_p.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/config.h +52 -40
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image.cpp +136 -120
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_cubemap_filter.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_decode.cpp +17 -5
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_encode.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/src/image_gnf.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bimg/tools/texturec/texturec.cpp +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/LICENSE +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/README.md +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/allocator.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/bounds.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/bx.h +43 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/commandline.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/config.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/constants.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/cpu.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/debug.h +15 -5
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/easing.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/endian.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/error.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/file.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/filepath.h +5 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/float4x4_t.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/handlealloc.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/hash.h +31 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/allocator.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/bounds.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/bx.inl +141 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/cpu.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/easing.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/endian.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/error.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/float4x4_t.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/handlealloc.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/hash.inl +28 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/math.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/mpscqueue.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/mutex.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/os.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/pixelformat.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/readerwriter.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/ringbuffer.inl +76 -8
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/rng.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_langext.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_neon.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_ref.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd128_sse.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd256_avx.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd256_ref.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/simd_ni.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/sort.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/spscqueue.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/string.inl +237 -48
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/timer.inl +67 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/typetraits.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/inline/uint32_t.inl +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/macros.h +6 -6
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/math.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/mpscqueue.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/mutex.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/os.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/pixelformat.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/platform.h +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/process.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/readerwriter.h +9 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/ringbuffer.h +145 -14
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/rng.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/semaphore.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/settings.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/simd_t.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/sort.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/spscqueue.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/string.h +111 -42
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/thread.h +5 -5
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/timer.h +59 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/typetraits.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/uint32_t.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/include/bx/url.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/bin2c.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/bx.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/genie.lua +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/scripts/toolchain.lua +36 -18
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/allocator.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/amalgamated.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/bounds.cpp +10 -10
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/bx.cpp +3 -3
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/commandline.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/crtnone.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/debug.cpp +866 -64
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/dtoa.cpp +3 -9
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/easing.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/file.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/filepath.cpp +7 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/hash.cpp +195 -37
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/math.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/mutex.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/os.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/process.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/semaphore.cpp +27 -6
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/settings.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/sort.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/string.cpp +206 -49
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/thread.cpp +35 -38
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/timer.cpp +5 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/src/url.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/allocator_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/atomic_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/cast_test.cpp +99 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/crt_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/dbg.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/easing_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/filepath_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/handle_bench.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/handle_test.cpp +6 -6
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/hash_test.cpp +37 -8
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/macros_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/main_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/math_bench.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/math_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/os_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/pixelformat_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/queue_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/readerwriter_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/ringbuffer_test.cpp +112 -7
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/rng_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/run_test.cpp +6 -4
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/settings_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/simd_bench.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/simd_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/sort_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/string_test.cpp +92 -39
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/test.h +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/thread_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/tokenizecmd_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/typetraits_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/uint32_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/url_test.cpp +1 -1
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tests/vsnprintf_test.cpp +365 -77
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/darwin/genie +0 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/linux/genie +0 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin/windows/genie.exe +0 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/bx/tools/bin2c/bin2c.cpp +2 -2
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/glslang.cmake +6 -5
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/spirv-opt.cmake +5 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/3rdparty/tint.cmake +98 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/CMakeLists.txt +1 -0
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/bgfx.cmake +11 -9
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/examples.cmake +16 -4
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bgfx/shaderc.cmake +21 -10
- package/shared/BabylonNative/deps/bgfx.cmake-src/cmake/bx/bx.cmake +5 -0
- package/shared/BabylonNative/deps/cmakeextensions-src/CMakeLists.txt +31 -5
- package/shared/BabylonNative/deps/cmakeextensions-src/README.md +6 -1
- package/shared/BabylonNative/deps/jsruntimehost-src/CMakeLists.txt +6 -5
- package/shared/BabylonNative/deps/jsruntimehost-src/Core/Node-API/Source/js_native_api_javascriptcore.cc +58 -4
- package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/CMakeLists.txt +4 -0
- package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/CMakeLists.txt +15 -0
- package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/Include/Babylon/Polyfills/TextDecoder.h +9 -0
- package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/README.md +39 -0
- package/shared/BabylonNative/deps/jsruntimehost-src/Polyfills/TextDecoder/Source/TextDecoder.cpp +91 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/Foundation.hpp +47 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSArray.hpp +124 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSAutoreleasePool.hpp +83 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSBundle.hpp +374 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSData.hpp +54 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDate.hpp +53 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDefines.hpp +45 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSDictionary.hpp +128 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSEnumerator.hpp +78 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSError.hpp +173 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSLock.hpp +118 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSNotification.hpp +110 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSNumber.hpp +501 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSObjCRuntime.hpp +43 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSObject.hpp +302 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSPrivate.hpp +531 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSProcessInfo.hpp +386 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSRange.hpp +83 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSSet.hpp +87 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSSharedPtr.hpp +310 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSString.hpp +255 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSTypes.hpp +51 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Foundation/NSURL.hpp +90 -0
- package/shared/BabylonNative/deps/metal-cpp-src/LICENSE.txt +202 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4AccelerationStructure.hpp +1395 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Archive.hpp +93 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ArgumentTable.hpp +187 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4BinaryFunction.hpp +50 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4BinaryFunctionDescriptor.hpp +97 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandAllocator.hpp +100 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandBuffer.hpp +193 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandEncoder.hpp +134 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommandQueue.hpp +283 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CommitFeedback.hpp +62 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Compiler.hpp +345 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4CompilerTask.hpp +63 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ComputeCommandEncoder.hpp +300 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4ComputePipeline.hpp +158 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4Counters.hpp +138 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4FunctionDescriptor.hpp +49 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LibraryDescriptor.hpp +98 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LibraryFunctionDescriptor.hpp +86 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4LinkingDescriptor.hpp +204 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MachineLearningCommandEncoder.hpp +66 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MachineLearningPipeline.hpp +172 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4MeshRenderPipeline.hpp +413 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4PipelineDataSetSerializer.hpp +85 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4PipelineState.hpp +150 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderCommandEncoder.hpp +340 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderPass.hpp +280 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4RenderPipeline.hpp +587 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4SpecializedFunctionDescriptor.hpp +100 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4StitchedFunctionDescriptor.hpp +86 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTL4TileRenderPipeline.hpp +173 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructure.hpp +1887 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructureCommandEncoder.hpp +260 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAccelerationStructureTypes.hpp +292 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLAllocation.hpp +40 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLArgument.hpp +787 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLArgumentEncoder.hpp +235 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBinaryArchive.hpp +152 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBlitCommandEncoder.hpp +226 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBlitPass.hpp +154 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLBuffer.hpp +119 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCaptureManager.hpp +217 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCaptureScope.hpp +91 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandBuffer.hpp +464 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandEncoder.hpp +117 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCommandQueue.hpp +158 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputeCommandEncoder.hpp +324 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputePass.hpp +169 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLComputePipeline.hpp +439 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLCounters.hpp +243 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDataType.hpp +129 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDefines.hpp +41 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDepthStencil.hpp +277 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDevice.hpp +1493 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDrawable.hpp +90 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLDynamicLibrary.hpp +78 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLEvent.hpp +170 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFence.hpp +55 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionConstantValues.hpp +76 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionDescriptor.hpp +153 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionHandle.hpp +65 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionLog.hpp +101 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLFunctionStitching.hpp +319 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLGPUAddress.hpp +36 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLHeaderBridge.hpp +3120 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLHeap.hpp +318 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCommandBuffer.hpp +182 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCommandQueue.hpp +211 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIOCompressor.hpp +94 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIndirectCommandBuffer.hpp +376 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIndirectCommandEncoder.hpp +272 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLIntersectionFunctionTable.hpp +173 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLibrary.hpp +786 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLinkedFunctions.hpp +110 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLLogState.hpp +111 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLParallelRenderCommandEncoder.hpp +83 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPipeline.hpp +104 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPixelFormat.hpp +173 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLPrivate.hpp +156 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRasterizationRate.hpp +337 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderCommandEncoder.hpp +1019 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderPass.hpp +792 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLRenderPipeline.hpp +1876 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResidencySet.hpp +178 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResource.hpp +190 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceStateCommandEncoder.hpp +98 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceStatePass.hpp +154 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLResourceViewPool.hpp +118 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLSampler.hpp +345 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLStageInputOutputDescriptor.hpp +356 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTensor.hpp +297 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTexture.hpp +803 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTextureViewPool.hpp +59 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLTypes.hpp +164 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVersion.hpp +32 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVertexDescriptor.hpp +326 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/MTLVisibleFunctionTable.hpp +96 -0
- package/shared/BabylonNative/deps/metal-cpp-src/Metal/Metal.hpp +120 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXFrameInterpolator.hpp +47 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXSpatialScaler.hpp +49 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXTemporalDenoisedScaler.hpp +49 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTL4FXTemporalScaler.hpp +49 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXDefines.hpp +41 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXFrameInterpolator.hpp +719 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXPrivate.hpp +482 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXSpatialScaler.hpp +397 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXTemporalDenoisedScaler.hpp +1208 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MTLFXTemporalScaler.hpp +803 -0
- package/shared/BabylonNative/deps/metal-cpp-src/MetalFX/MetalFX.hpp +35 -0
- package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CADefines.hpp +41 -0
- package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAMetalDrawable.hpp +57 -0
- package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAMetalLayer.hpp +216 -0
- package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/CAPrivate.hpp +150 -0
- package/shared/BabylonNative/deps/metal-cpp-src/QuartzCore/QuartzCore.hpp +28 -0
- package/shared/BabylonNative/deps/metal-cpp-src/README.md +313 -0
- package/shared/BabylonNative/deps/metal-cpp-src/SingleHeader/MakeSingleHeader.py +271 -0
- package/shared/BabylonNative/deps/metal-cpp-src/SingleHeader/Metal.hpp +28735 -0
- package/shared/BabylonNative/deps/spirv-cross-src/spirv_hlsl.cpp +173 -222
- package/shared/BabylonNative/deps/urllib-src/CMakeLists.txt +6 -7
- package/shared/BabylonNative/deps/urllib-src/Source/UrlRequest_Unix.cpp +1 -1
- package/shared/BabylonNative.cpp +4 -0
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/Apple/TestUtilsImpl.mm +0 -57
- package/shared/BabylonNative/Repo/Plugins/TestUtils/Source/TestUtilsImplData.h +0 -18
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Android/Arcana.Android.vcxproj +0 -186
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Shared/Arcana.vcxitems +0 -47
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows/Arcana.Windows.Reference.vcxitems +0 -30
- package/shared/BabylonNative/deps/arcana.cpp-src/Source/Windows/Arcana.Windows.vcxproj +0 -218
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bounds.cpp +0 -2178
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/bounds.h +0 -448
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_color.bin.h +0 -100
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_color.sc +0 -13
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_cubemap.bin.h +0 -223
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_cubemap.sc +0 -21
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image_swizz.bin.h +0 -256
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_image_swizz.sc +0 -22
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_latlong.bin.h +0 -308
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_latlong.sc +0 -38
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_texture.bin.h +0 -180
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/fs_imgui_texture.sc +0 -16
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_color.bin.h +0 -195
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_color.sc +0 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_cubemap.bin.h +0 -203
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_cubemap.sc +0 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_latlong.bin.h +0 -205
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_latlong.sc +0 -15
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_texture.bin.h +0 -233
- package/shared/BabylonNative/deps/bgfx.cmake-src/bgfx/examples/common/imgui/vs_imgui_texture.sc +0 -16
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* Copyright 2011-
|
|
2
|
+
* Copyright 2011-2026 Branimir Karadzic. All rights reserved.
|
|
3
3
|
* License: https://github.com/bkaradzic/bgfx/blob/master/LICENSE
|
|
4
4
|
*/
|
|
5
5
|
|
|
@@ -69,10 +69,99 @@ namespace bgfx
|
|
|
69
69
|
}
|
|
70
70
|
#endif // BGFX_CONFIG_USE_TINYSTL
|
|
71
71
|
|
|
72
|
+
struct Superluminal
|
|
73
|
+
{
|
|
74
|
+
struct SuppressTailCallOptimization
|
|
75
|
+
{
|
|
76
|
+
int64_t SuppressTailCall[3];
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
typedef void (*SuperluminalBeginEventtFn)(const char* _inID, const char* _inData, uint32_t _inColor);
|
|
80
|
+
typedef SuppressTailCallOptimization(*SuperluminalEndEventFn)();
|
|
81
|
+
|
|
82
|
+
static void stubSuperluminalBeginEvent(const char* _inID, const char* _inData, uint32_t _inColor)
|
|
83
|
+
{
|
|
84
|
+
BX_UNUSED(_inID, _inData, _inColor);
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
static SuppressTailCallOptimization stubSuperluminalEndEvent()
|
|
88
|
+
{
|
|
89
|
+
return {};
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
bool init()
|
|
93
|
+
{
|
|
94
|
+
if (!BX_ENABLED(BGFX_CONFIG_PROFILER) )
|
|
95
|
+
{
|
|
96
|
+
return false;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
const char* superluminalDllName = "PerformanceAPI.dll";
|
|
100
|
+
superluminalDll = bx::dlopen(superluminalDllName);
|
|
101
|
+
|
|
102
|
+
if (NULL != superluminalDll)
|
|
103
|
+
{
|
|
104
|
+
void* funcPtrs[11];
|
|
105
|
+
|
|
106
|
+
typedef int (*PerformanceAPI_GetAPI)(int32_t _version, void** _funcPtrs);
|
|
107
|
+
|
|
108
|
+
constexpr int32_t version = 0x30000;
|
|
109
|
+
|
|
110
|
+
PerformanceAPI_GetAPI getApi = bx::dlsym<PerformanceAPI_GetAPI>(superluminalDll, "PerformanceAPI_GetAPI");
|
|
111
|
+
if (NULL == getApi)
|
|
112
|
+
{
|
|
113
|
+
BX_TRACE("Failed to obtain Superluminal's %s GetAPI function!", superluminalDllName);
|
|
114
|
+
bx::dlclose(superluminalDll);
|
|
115
|
+
return false;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
if (getApi(version, funcPtrs) )
|
|
119
|
+
{
|
|
120
|
+
BX_TRACE("Superluminal's PerformanceAPI.dll is loaded!");
|
|
121
|
+
beginEvent = (SuperluminalBeginEventtFn)funcPtrs[2];
|
|
122
|
+
endEvent = (SuperluminalEndEventFn )funcPtrs[6];
|
|
123
|
+
return true;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
BX_TRACE("Failed to obtain Superluminal's %s GetAPI function!", superluminalDllName);
|
|
127
|
+
bx::dlclose(superluminalDll);
|
|
128
|
+
}
|
|
129
|
+
else
|
|
130
|
+
{
|
|
131
|
+
BX_TRACE("Failed to load Superluminal's %s!", superluminalDllName);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
void shutdown()
|
|
138
|
+
{
|
|
139
|
+
if (NULL != superluminalDll)
|
|
140
|
+
{
|
|
141
|
+
bx::dlclose(superluminalDll);
|
|
142
|
+
superluminalDll = NULL;
|
|
143
|
+
beginEvent = stubSuperluminalBeginEvent;
|
|
144
|
+
endEvent = stubSuperluminalEndEvent;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
void* superluminalDll = NULL;
|
|
149
|
+
SuperluminalBeginEventtFn beginEvent = stubSuperluminalBeginEvent;
|
|
150
|
+
SuperluminalEndEventFn endEvent = stubSuperluminalEndEvent;
|
|
151
|
+
};
|
|
152
|
+
|
|
72
153
|
struct CallbackStub : public CallbackI
|
|
73
154
|
{
|
|
155
|
+
Superluminal m_superluminal;
|
|
156
|
+
|
|
157
|
+
CallbackStub()
|
|
158
|
+
{
|
|
159
|
+
m_superluminal.init();
|
|
160
|
+
}
|
|
161
|
+
|
|
74
162
|
virtual ~CallbackStub()
|
|
75
163
|
{
|
|
164
|
+
m_superluminal.shutdown();
|
|
76
165
|
}
|
|
77
166
|
|
|
78
167
|
virtual void fatal(const char* _filePath, uint16_t _line, Fatal::Enum _code, const char* _str) override
|
|
@@ -108,16 +197,19 @@ namespace bgfx
|
|
|
108
197
|
bx::debugOutput(out);
|
|
109
198
|
}
|
|
110
199
|
|
|
111
|
-
virtual void profilerBegin(const char*
|
|
200
|
+
virtual void profilerBegin(const char* _name, uint32_t _abgr, const char* /*_filePath*/, uint16_t /*_line*/) override
|
|
112
201
|
{
|
|
202
|
+
m_superluminal.beginEvent(" ", _name, _abgr);
|
|
113
203
|
}
|
|
114
204
|
|
|
115
|
-
virtual void profilerBeginLiteral(const char*
|
|
205
|
+
virtual void profilerBeginLiteral(const char* _name, uint32_t _abgr, const char* /*_filePath*/, uint16_t /*_line*/) override
|
|
116
206
|
{
|
|
207
|
+
m_superluminal.beginEvent(_name, NULL, _abgr);
|
|
117
208
|
}
|
|
118
209
|
|
|
119
210
|
virtual void profilerEnd() override
|
|
120
211
|
{
|
|
212
|
+
m_superluminal.endEvent();
|
|
121
213
|
}
|
|
122
214
|
|
|
123
215
|
virtual uint32_t cacheReadSize(uint64_t /*_id*/) override
|
|
@@ -134,7 +226,7 @@ namespace bgfx
|
|
|
134
226
|
{
|
|
135
227
|
}
|
|
136
228
|
|
|
137
|
-
virtual void screenShot(const char* _filePath, uint32_t _width, uint32_t _height, uint32_t _pitch, const void* _data, uint32_t _size, bool _yflip) override
|
|
229
|
+
virtual void screenShot(const char* _filePath, uint32_t _width, uint32_t _height, uint32_t _pitch, TextureFormat::Enum _format, const void* _data, uint32_t _size, bool _yflip) override
|
|
138
230
|
{
|
|
139
231
|
BX_UNUSED(_filePath, _width, _height, _pitch, _data, _size, _yflip);
|
|
140
232
|
|
|
@@ -146,7 +238,39 @@ namespace bgfx
|
|
|
146
238
|
bx::FileWriter writer;
|
|
147
239
|
if (bx::open(&writer, filePath) )
|
|
148
240
|
{
|
|
149
|
-
|
|
241
|
+
if (TextureFormat::RGBA8 == _format)
|
|
242
|
+
{
|
|
243
|
+
bimg::imageSwizzleBgra8(const_cast<void*>(_data), _pitch, _width, _height, _data, _pitch);
|
|
244
|
+
bimg::imageWriteTga(&writer, _width, _height, _pitch, _data, false, _yflip);
|
|
245
|
+
}
|
|
246
|
+
else if (TextureFormat::BGRA8 == _format)
|
|
247
|
+
{
|
|
248
|
+
bimg::imageWriteTga(&writer, _width, _height, _pitch, _data, false, _yflip);
|
|
249
|
+
}
|
|
250
|
+
else
|
|
251
|
+
{
|
|
252
|
+
const uint8_t dstBpp = bimg::getBitsPerPixel(bimg::TextureFormat::BGRA8);
|
|
253
|
+
const uint32_t dstPitch = _width * dstBpp / 8;
|
|
254
|
+
const uint32_t dstSize = _height * dstPitch;
|
|
255
|
+
|
|
256
|
+
void* dst = bx::alloc(g_allocator, dstSize);
|
|
257
|
+
|
|
258
|
+
bimg::imageConvert(
|
|
259
|
+
g_allocator
|
|
260
|
+
, dst
|
|
261
|
+
, bimg::TextureFormat::BGRA8
|
|
262
|
+
, _data
|
|
263
|
+
, bimg::TextureFormat::Enum(_format)
|
|
264
|
+
, _width
|
|
265
|
+
, _height
|
|
266
|
+
, 1
|
|
267
|
+
);
|
|
268
|
+
|
|
269
|
+
bimg::imageWriteTga(&writer, _width, _height, _pitch, _data, false, _yflip);
|
|
270
|
+
|
|
271
|
+
bx::free(g_allocator, dst);
|
|
272
|
+
}
|
|
273
|
+
|
|
150
274
|
bx::close(&writer);
|
|
151
275
|
}
|
|
152
276
|
}
|
|
@@ -381,7 +505,7 @@ namespace bgfx
|
|
|
381
505
|
bx::write(&writer, tc, bx::ErrorAssert{});
|
|
382
506
|
|
|
383
507
|
rci->destroyTexture(_handle);
|
|
384
|
-
rci->createTexture(_handle, mem, _flags, 0);
|
|
508
|
+
rci->createTexture(_handle, mem, _flags, 0, 0);
|
|
385
509
|
|
|
386
510
|
release(mem);
|
|
387
511
|
|
|
@@ -645,10 +769,10 @@ namespace bgfx
|
|
|
645
769
|
.add(Attrib::TexCoord0, 2, AttribType::Float)
|
|
646
770
|
.end();
|
|
647
771
|
|
|
648
|
-
uint16_t width = 2048;
|
|
649
|
-
uint16_t height = 24;
|
|
650
|
-
uint8_t bpp = 1;
|
|
651
|
-
uint32_t pitch = width*bpp;
|
|
772
|
+
const uint16_t width = 2048;
|
|
773
|
+
const uint16_t height = 24;
|
|
774
|
+
const uint8_t bpp = 1;
|
|
775
|
+
const uint32_t pitch = width*bpp;
|
|
652
776
|
|
|
653
777
|
const Memory* mem;
|
|
654
778
|
|
|
@@ -675,6 +799,7 @@ namespace bgfx
|
|
|
675
799
|
m_vb = s_ctx->createTransientVertexBuffer(kNumBatchVertices*m_layout.m_stride, &m_layout);
|
|
676
800
|
m_ib = s_ctx->createTransientIndexBuffer(kNumBatchIndices*2);
|
|
677
801
|
m_scale = bx::max<uint8_t>(scale, 1);
|
|
802
|
+
m_usedData = 0;
|
|
678
803
|
}
|
|
679
804
|
|
|
680
805
|
void TextVideoMemBlitter::shutdown()
|
|
@@ -733,7 +858,7 @@ namespace bgfx
|
|
|
733
858
|
};
|
|
734
859
|
static_assert(BX_COUNTOF(s_paletteLinear) == 16);
|
|
735
860
|
|
|
736
|
-
void
|
|
861
|
+
void dbgTextSubmit(RendererContextI* _renderCtx, TextVideoMemBlitter& _blitter, const TextVideoMem& _mem)
|
|
737
862
|
{
|
|
738
863
|
struct Vertex
|
|
739
864
|
{
|
|
@@ -756,7 +881,7 @@ namespace bgfx
|
|
|
756
881
|
const float fontHeight = (_mem.m_small ? 8.0f : 16.0f)*_blitter.m_scale;
|
|
757
882
|
const float fontWidth = 8.0f * _blitter.m_scale;
|
|
758
883
|
|
|
759
|
-
_renderCtx->
|
|
884
|
+
_renderCtx->dbgTextRenderBegin(_blitter);
|
|
760
885
|
|
|
761
886
|
const uint32_t* palette = 0 != (s_ctx->m_init.resolution.reset & BGFX_RESET_SRGB_BACKBUFFER)
|
|
762
887
|
? s_paletteLinear
|
|
@@ -765,10 +890,10 @@ namespace bgfx
|
|
|
765
890
|
|
|
766
891
|
for (;yy < _mem.m_height;)
|
|
767
892
|
{
|
|
768
|
-
Vertex*
|
|
893
|
+
Vertex* vertex = (Vertex *)_blitter.m_vb->data;
|
|
769
894
|
uint16_t* indices = (uint16_t*)_blitter.m_ib->data;
|
|
770
895
|
uint32_t startVertex = 0;
|
|
771
|
-
uint32_t numIndices
|
|
896
|
+
uint32_t numIndices = 0;
|
|
772
897
|
|
|
773
898
|
for (; yy < _mem.m_height && numIndices < kNumBatchIndices; ++yy)
|
|
774
899
|
{
|
|
@@ -791,7 +916,7 @@ namespace bgfx
|
|
|
791
916
|
const uint32_t fg = palette[attr&0xf];
|
|
792
917
|
const uint32_t bg = palette[(attr>>4)&0xf];
|
|
793
918
|
|
|
794
|
-
Vertex vert[4] =
|
|
919
|
+
const Vertex vert[4] =
|
|
795
920
|
{
|
|
796
921
|
{ (xx )*fontWidth, (yy )*fontHeight, 0.0f, fg, bg, (ch )*8.0f*texelWidth, utop },
|
|
797
922
|
{ (xx+1)*fontWidth, (yy )*fontHeight, 0.0f, fg, bg, (ch+1)*8.0f*texelWidth, utop },
|
|
@@ -824,8 +949,10 @@ namespace bgfx
|
|
|
824
949
|
}
|
|
825
950
|
}
|
|
826
951
|
|
|
827
|
-
_renderCtx->
|
|
952
|
+
_renderCtx->dbgTextRender(_blitter, numIndices);
|
|
828
953
|
}
|
|
954
|
+
|
|
955
|
+
_renderCtx->dbgTextRenderEnd(_blitter);
|
|
829
956
|
}
|
|
830
957
|
|
|
831
958
|
void ClearQuad::init()
|
|
@@ -834,7 +961,8 @@ namespace bgfx
|
|
|
834
961
|
|
|
835
962
|
if (RendererType::Noop != g_caps.rendererType)
|
|
836
963
|
{
|
|
837
|
-
|
|
964
|
+
VertexLayout layout;
|
|
965
|
+
layout
|
|
838
966
|
.begin()
|
|
839
967
|
.add(Attrib::Position, 2, AttribType::Float)
|
|
840
968
|
.end();
|
|
@@ -862,7 +990,7 @@ namespace bgfx
|
|
|
862
990
|
float m_y;
|
|
863
991
|
};
|
|
864
992
|
|
|
865
|
-
const uint16_t stride =
|
|
993
|
+
const uint16_t stride = layout.m_stride;
|
|
866
994
|
const bgfx::Memory* mem = bgfx::alloc(4 * stride);
|
|
867
995
|
Vertex* vertex = (Vertex*)mem->data;
|
|
868
996
|
BX_ASSERT(stride == sizeof(Vertex), "Stride/Vertex mismatch (stride %d, sizeof(Vertex) %d)", stride, sizeof(Vertex));
|
|
@@ -879,7 +1007,8 @@ namespace bgfx
|
|
|
879
1007
|
vertex->m_x = 1.0f;
|
|
880
1008
|
vertex->m_y = 1.0f;
|
|
881
1009
|
|
|
882
|
-
|
|
1010
|
+
m_layout = s_ctx->createVertexLayout(layout);
|
|
1011
|
+
m_vb = s_ctx->createVertexBuffer(mem, layout, 0);
|
|
883
1012
|
}
|
|
884
1013
|
}
|
|
885
1014
|
|
|
@@ -899,6 +1028,7 @@ namespace bgfx
|
|
|
899
1028
|
}
|
|
900
1029
|
|
|
901
1030
|
s_ctx->destroyVertexBuffer(m_vb);
|
|
1031
|
+
s_ctx->destroyVertexLayout(m_layout);
|
|
902
1032
|
}
|
|
903
1033
|
}
|
|
904
1034
|
|
|
@@ -1259,15 +1389,9 @@ namespace bgfx
|
|
|
1259
1389
|
if (UINT32_MAX != m_draw.m_streamMask)
|
|
1260
1390
|
{
|
|
1261
1391
|
uint32_t numVertices = UINT32_MAX;
|
|
1262
|
-
for (
|
|
1263
|
-
; 0 != streamMask
|
|
1264
|
-
; streamMask >>= 1, idx += 1
|
|
1265
|
-
)
|
|
1392
|
+
for (BitMaskToIndexIteratorT it(m_draw.m_streamMask); !it.isDone(); it.next() )
|
|
1266
1393
|
{
|
|
1267
|
-
|
|
1268
|
-
streamMask >>= ntz;
|
|
1269
|
-
idx += ntz;
|
|
1270
|
-
numVertices = bx::min(numVertices, m_numVertices[idx]);
|
|
1394
|
+
numVertices = bx::min(numVertices, m_numVertices[it.idx]);
|
|
1271
1395
|
}
|
|
1272
1396
|
|
|
1273
1397
|
m_draw.m_numVertices = numVertices;
|
|
@@ -1352,35 +1476,36 @@ namespace bgfx
|
|
|
1352
1476
|
, "Exceed number of available blit items per frame. BGFX_CONFIG_MAX_BLIT_ITEMS is %d. Skipping blit."
|
|
1353
1477
|
, BGFX_CONFIG_MAX_BLIT_ITEMS
|
|
1354
1478
|
);
|
|
1355
|
-
|
|
1479
|
+
const uint32_t blitItemIdx = bx::atomicFetchAndAddsat<uint32_t>(&m_frame->m_numBlitItems, 1, BGFX_CONFIG_MAX_BLIT_ITEMS);
|
|
1480
|
+
if (BGFX_CONFIG_MAX_BLIT_ITEMS-1 <= blitItemIdx)
|
|
1356
1481
|
{
|
|
1357
|
-
|
|
1482
|
+
return;
|
|
1483
|
+
}
|
|
1358
1484
|
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
|
|
1367
|
-
|
|
1368
|
-
|
|
1369
|
-
|
|
1370
|
-
|
|
1371
|
-
|
|
1372
|
-
|
|
1485
|
+
BlitItem& bi = m_frame->m_blitItem[blitItemIdx];
|
|
1486
|
+
bi.m_srcX = _srcX;
|
|
1487
|
+
bi.m_srcY = _srcY;
|
|
1488
|
+
bi.m_srcZ = _srcZ;
|
|
1489
|
+
bi.m_dstX = _dstX;
|
|
1490
|
+
bi.m_dstY = _dstY;
|
|
1491
|
+
bi.m_dstZ = _dstZ;
|
|
1492
|
+
bi.m_width = _width;
|
|
1493
|
+
bi.m_height = _height;
|
|
1494
|
+
bi.m_depth = _depth;
|
|
1495
|
+
bi.m_srcMip = _srcMip;
|
|
1496
|
+
bi.m_dstMip = _dstMip;
|
|
1497
|
+
bi.m_src = _src;
|
|
1498
|
+
bi.m_dst = _dst;
|
|
1373
1499
|
|
|
1374
|
-
|
|
1375
|
-
|
|
1376
|
-
|
|
1377
|
-
|
|
1378
|
-
}
|
|
1500
|
+
BlitKey key;
|
|
1501
|
+
key.m_view = _id;
|
|
1502
|
+
key.m_item = bx::narrowCast<uint16_t>(blitItemIdx);
|
|
1503
|
+
m_frame->m_blitKeys[blitItemIdx] = key.encode();
|
|
1379
1504
|
}
|
|
1380
1505
|
|
|
1381
1506
|
void Frame::sort()
|
|
1382
1507
|
{
|
|
1383
|
-
BGFX_PROFILER_SCOPE("bgfx/Sort",
|
|
1508
|
+
BGFX_PROFILER_SCOPE("bgfx/Sort", kColorSubmit);
|
|
1384
1509
|
|
|
1385
1510
|
ViewId viewRemap[BGFX_CONFIG_MAX_VIEWS];
|
|
1386
1511
|
for (uint32_t ii = 0; ii < BGFX_CONFIG_MAX_VIEWS; ++ii)
|
|
@@ -1430,6 +1555,8 @@ namespace bgfx
|
|
|
1430
1555
|
}
|
|
1431
1556
|
|
|
1432
1557
|
bx::radixSort(m_blitKeys, (uint32_t*)&s_ctx->m_tempKeys, m_numBlitItems);
|
|
1558
|
+
|
|
1559
|
+
m_uniformCacheFrame.sort(viewRemap, s_ctx->m_tempKeys);
|
|
1433
1560
|
}
|
|
1434
1561
|
|
|
1435
1562
|
RenderFrame::Enum renderFrame(int32_t _msecs)
|
|
@@ -1468,7 +1595,7 @@ namespace bgfx
|
|
|
1468
1595
|
return RenderFrame::NoContext;
|
|
1469
1596
|
}
|
|
1470
1597
|
|
|
1471
|
-
const uint32_t g_uniformTypeSize[
|
|
1598
|
+
const uint32_t g_uniformTypeSize[] =
|
|
1472
1599
|
{
|
|
1473
1600
|
sizeof(int32_t),
|
|
1474
1601
|
0,
|
|
@@ -1477,10 +1604,11 @@ namespace bgfx
|
|
|
1477
1604
|
4*4*sizeof(float),
|
|
1478
1605
|
1,
|
|
1479
1606
|
};
|
|
1607
|
+
static_assert(UniformType::Count+1 == BX_COUNTOF(g_uniformTypeSize), "Must match UniformType::Enum!");
|
|
1480
1608
|
|
|
1481
1609
|
void UniformBuffer::writeUniform(UniformType::Enum _type, uint16_t _loc, const void* _value, uint16_t _num)
|
|
1482
1610
|
{
|
|
1483
|
-
const uint32_t opcode = encodeOpcode(
|
|
1611
|
+
const uint32_t opcode = encodeOpcode(uint8_t(_type), _loc, _num, true);
|
|
1484
1612
|
write(opcode);
|
|
1485
1613
|
write(_value, g_uniformTypeSize[_type]*_num);
|
|
1486
1614
|
}
|
|
@@ -1525,23 +1653,26 @@ namespace bgfx
|
|
|
1525
1653
|
CAPS_FLAGS(BGFX_CAPS_INDEX32),
|
|
1526
1654
|
CAPS_FLAGS(BGFX_CAPS_INSTANCING),
|
|
1527
1655
|
CAPS_FLAGS(BGFX_CAPS_OCCLUSION_QUERY),
|
|
1656
|
+
CAPS_FLAGS(BGFX_CAPS_PRIMITIVE_ID),
|
|
1528
1657
|
CAPS_FLAGS(BGFX_CAPS_RENDERER_MULTITHREADED),
|
|
1529
1658
|
CAPS_FLAGS(BGFX_CAPS_SWAP_CHAIN),
|
|
1530
1659
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_2D_ARRAY),
|
|
1531
1660
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_3D),
|
|
1532
1661
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_BLIT),
|
|
1533
|
-
CAPS_FLAGS(BGFX_CAPS_TRANSPARENT_BACKBUFFER),
|
|
1534
1662
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_COMPARE_ALL),
|
|
1535
1663
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_COMPARE_LEQUAL),
|
|
1536
1664
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_CUBE_ARRAY),
|
|
1537
1665
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_DIRECT_ACCESS),
|
|
1666
|
+
CAPS_FLAGS(BGFX_CAPS_TEXTURE_EXTERNAL),
|
|
1667
|
+
CAPS_FLAGS(BGFX_CAPS_TEXTURE_EXTERNAL_SHARED),
|
|
1538
1668
|
CAPS_FLAGS(BGFX_CAPS_TEXTURE_READ_BACK),
|
|
1669
|
+
CAPS_FLAGS(BGFX_CAPS_TRANSPARENT_BACKBUFFER),
|
|
1670
|
+
CAPS_FLAGS(BGFX_CAPS_VARIABLE_RATE_SHADING),
|
|
1539
1671
|
CAPS_FLAGS(BGFX_CAPS_VERTEX_ATTRIB_HALF),
|
|
1540
1672
|
CAPS_FLAGS(BGFX_CAPS_VERTEX_ATTRIB_UINT10),
|
|
1541
1673
|
CAPS_FLAGS(BGFX_CAPS_VERTEX_ATTRIB_INT8),
|
|
1542
1674
|
CAPS_FLAGS(BGFX_CAPS_VERTEX_ATTRIB_UINT16),
|
|
1543
1675
|
CAPS_FLAGS(BGFX_CAPS_VERTEX_ID),
|
|
1544
|
-
CAPS_FLAGS(BGFX_CAPS_PRIMITIVE_ID),
|
|
1545
1676
|
CAPS_FLAGS(BGFX_CAPS_VIEWPORT_LAYER_ARRAY),
|
|
1546
1677
|
#undef CAPS_FLAGS
|
|
1547
1678
|
};
|
|
@@ -1610,6 +1741,18 @@ namespace bgfx
|
|
|
1610
1741
|
BX_TRACE("\t C Seq %016" PRIx64, kSortKeyComputeSeqMask);
|
|
1611
1742
|
BX_TRACE("\t C Program %016" PRIx64, kSortKeyComputeProgramMask);
|
|
1612
1743
|
|
|
1744
|
+
BX_TRACE("");
|
|
1745
|
+
BX_TRACE("Blit key masks:");
|
|
1746
|
+
BX_TRACE("\tView %08" PRIx32, BlitKey::kViewMask);
|
|
1747
|
+
BX_TRACE("\tItem %08" PRIx32, BlitKey::kItemMask);
|
|
1748
|
+
|
|
1749
|
+
BX_TRACE("");
|
|
1750
|
+
BX_TRACE("Uniform cache key masks:");
|
|
1751
|
+
BX_TRACE("\tView %016" PRIx64, UniformCacheKey::kViewMask);
|
|
1752
|
+
BX_TRACE("\tHandle %016" PRIx64, UniformCacheKey::kHandleMask);
|
|
1753
|
+
BX_TRACE("\tOffset %016" PRIx64, UniformCacheKey::kOffsetMask);
|
|
1754
|
+
BX_TRACE("\tSize %016" PRIx64, UniformCacheKey::kSizeMask);
|
|
1755
|
+
|
|
1613
1756
|
BX_TRACE("");
|
|
1614
1757
|
BX_TRACE("Capabilities (renderer %s, vendor 0x%04x, device 0x%04x):"
|
|
1615
1758
|
, s_ctx->m_renderCtx->getRendererName()
|
|
@@ -1657,39 +1800,46 @@ namespace bgfx
|
|
|
1657
1800
|
|
|
1658
1801
|
BX_TRACE("");
|
|
1659
1802
|
BX_TRACE("Supported texture formats:");
|
|
1660
|
-
BX_TRACE("\t
|
|
1661
|
-
BX_TRACE("\t
|
|
1662
|
-
BX_TRACE("\t
|
|
1663
|
-
BX_TRACE("\t
|
|
1664
|
-
BX_TRACE("\t
|
|
1665
|
-
BX_TRACE("\t
|
|
1666
|
-
BX_TRACE("\t
|
|
1667
|
-
BX_TRACE("\t
|
|
1668
|
-
BX_TRACE("\t
|
|
1669
|
-
BX_TRACE("\t
|
|
1670
|
-
BX_TRACE("\t
|
|
1671
|
-
BX_TRACE("\t
|
|
1672
|
-
BX_TRACE("\t
|
|
1803
|
+
BX_TRACE("\t +----------------- 2D: x = supported / * = emulated");
|
|
1804
|
+
BX_TRACE("\t |+---------------- 2D: sRGB format");
|
|
1805
|
+
BX_TRACE("\t ||+--------------- 3D: x = supported / * = emulated");
|
|
1806
|
+
BX_TRACE("\t |||+-------------- 3D: sRGB format");
|
|
1807
|
+
BX_TRACE("\t ||||+------------- Cube: x = supported / * = emulated");
|
|
1808
|
+
BX_TRACE("\t |||||+------------ Cube: sRGB format");
|
|
1809
|
+
BX_TRACE("\t ||||||+----------- Vertex format");
|
|
1810
|
+
BX_TRACE("\t |||||||+---------- Image: i = read-write / r = read / w = write");
|
|
1811
|
+
BX_TRACE("\t ||||||||+--------- Framebuffer");
|
|
1812
|
+
BX_TRACE("\t |||||||||+-------- MSAA framebuffer");
|
|
1813
|
+
BX_TRACE("\t ||||||||||+------- MSAA texture");
|
|
1814
|
+
BX_TRACE("\t |||||||||||+------ Auto-generated mips");
|
|
1815
|
+
BX_TRACE("\t ||||||||||||+----- Back-buffer");
|
|
1816
|
+
BX_TRACE("\t ||||||||||||| +-- name");
|
|
1673
1817
|
for (uint32_t ii = 0; ii < TextureFormat::Count; ++ii)
|
|
1674
1818
|
{
|
|
1675
1819
|
if (TextureFormat::Unknown != ii
|
|
1676
1820
|
&& TextureFormat::UnknownDepth != ii)
|
|
1677
1821
|
{
|
|
1678
1822
|
uint32_t flags = g_caps.formats[ii];
|
|
1679
|
-
BX_TRACE("\t[%c%c%c%c%c%c%c%c%c%c%c%c] %s"
|
|
1680
|
-
,
|
|
1681
|
-
|
|
1682
|
-
,
|
|
1683
|
-
,
|
|
1684
|
-
|
|
1685
|
-
,
|
|
1686
|
-
,
|
|
1687
|
-
|
|
1688
|
-
|
|
1689
|
-
,
|
|
1690
|
-
, flags&
|
|
1691
|
-
|
|
1692
|
-
|
|
1823
|
+
BX_TRACE("\t[%c%c%c%c%c%c%c%c%c%c%c%c%c] %s"
|
|
1824
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_2D ? 'x'
|
|
1825
|
+
: flags & BGFX_CAPS_FORMAT_TEXTURE_2D_EMULATED ? '*' : ' '
|
|
1826
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_2D_SRGB ? 'l' : ' '
|
|
1827
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_3D ? 'x'
|
|
1828
|
+
: flags & BGFX_CAPS_FORMAT_TEXTURE_3D_EMULATED ? '*' : ' '
|
|
1829
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_3D_SRGB ? 'l' : ' '
|
|
1830
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_CUBE ? 'x'
|
|
1831
|
+
: flags & BGFX_CAPS_FORMAT_TEXTURE_CUBE_EMULATED ? '*' : ' '
|
|
1832
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_CUBE_SRGB ? 'l' : ' '
|
|
1833
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_VERTEX ? 'v' : ' '
|
|
1834
|
+
, (flags & BGFX_CAPS_FORMAT_TEXTURE_IMAGE_READ) &&
|
|
1835
|
+
(flags & BGFX_CAPS_FORMAT_TEXTURE_IMAGE_WRITE) ? 'i'
|
|
1836
|
+
: flags & BGFX_CAPS_FORMAT_TEXTURE_IMAGE_READ ? 'r'
|
|
1837
|
+
: flags & BGFX_CAPS_FORMAT_TEXTURE_IMAGE_WRITE ? 'w' : ' '
|
|
1838
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_FRAMEBUFFER ? 'f' : ' '
|
|
1839
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_FRAMEBUFFER_MSAA ? '+' : ' '
|
|
1840
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_MSAA ? 'm' : ' '
|
|
1841
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_MIP_AUTOGEN ? 'M' : ' '
|
|
1842
|
+
, flags & BGFX_CAPS_FORMAT_TEXTURE_BACKBUFFER ? 'b' : ' '
|
|
1693
1843
|
, getName(TextureFormat::Enum(ii) )
|
|
1694
1844
|
);
|
|
1695
1845
|
BX_UNUSED(flags);
|
|
@@ -1779,7 +1929,12 @@ namespace bgfx
|
|
|
1779
1929
|
|
|
1780
1930
|
const char* getName(UniformHandle _handle)
|
|
1781
1931
|
{
|
|
1782
|
-
return
|
|
1932
|
+
return getUniformRef(_handle).m_name.getCPtr();
|
|
1933
|
+
}
|
|
1934
|
+
|
|
1935
|
+
const UniformRef& getUniformRef(UniformHandle _handle)
|
|
1936
|
+
{
|
|
1937
|
+
return s_ctx->m_uniformRef[_handle.idx];
|
|
1783
1938
|
}
|
|
1784
1939
|
|
|
1785
1940
|
const char* getName(ShaderHandle _handle)
|
|
@@ -2241,7 +2396,9 @@ namespace bgfx
|
|
|
2241
2396
|
|
|
2242
2397
|
for (uint16_t ii = 0, num = _frame->m_freeUniform.getNumQueued(); ii < num; ++ii)
|
|
2243
2398
|
{
|
|
2244
|
-
|
|
2399
|
+
UniformHandle handle = _frame->m_freeUniform.get(ii);
|
|
2400
|
+
m_uniformCache.invalidate(handle);
|
|
2401
|
+
m_uniformHandle.free(handle.idx);
|
|
2245
2402
|
}
|
|
2246
2403
|
}
|
|
2247
2404
|
|
|
@@ -2284,7 +2441,7 @@ namespace bgfx
|
|
|
2284
2441
|
#endif // BGFX_CONFIG_MULTITHREADED
|
|
2285
2442
|
}
|
|
2286
2443
|
|
|
2287
|
-
uint32_t Context::frame(
|
|
2444
|
+
uint32_t Context::frame(uint8_t _flags)
|
|
2288
2445
|
{
|
|
2289
2446
|
m_encoder[0].end(true);
|
|
2290
2447
|
|
|
@@ -2297,11 +2454,16 @@ namespace bgfx
|
|
|
2297
2454
|
encoderApiWait();
|
|
2298
2455
|
#endif // BGFX_CONFIG_MULTITHREADED
|
|
2299
2456
|
|
|
2300
|
-
|
|
2457
|
+
if (0 != (_flags & BGFX_FRAME_DISCARD) )
|
|
2458
|
+
{
|
|
2459
|
+
m_submit->m_numRenderItems = 0;
|
|
2460
|
+
}
|
|
2461
|
+
|
|
2462
|
+
m_submit->m_capture = 0 != (_flags & BGFX_FRAME_DEBUG_CAPTURE);
|
|
2301
2463
|
|
|
2302
2464
|
uint32_t frameNum = m_submit->m_frameNum;
|
|
2303
2465
|
|
|
2304
|
-
BGFX_PROFILER_SCOPE("bgfx/API thread frame",
|
|
2466
|
+
BGFX_PROFILER_SCOPE("bgfx/API thread frame", kColorSubmit);
|
|
2305
2467
|
// wait for render thread to finish
|
|
2306
2468
|
renderSemWait();
|
|
2307
2469
|
frameNoRenderWait();
|
|
@@ -2328,6 +2490,10 @@ namespace bgfx
|
|
|
2328
2490
|
m_submit->m_perfStats.numViews = 0;
|
|
2329
2491
|
|
|
2330
2492
|
bx::memCopy(m_submit->m_viewRemap, m_viewRemap, sizeof(m_viewRemap) );
|
|
2493
|
+
|
|
2494
|
+
m_uniformCache.frame(m_submit->m_uniformCacheFrame);
|
|
2495
|
+
|
|
2496
|
+
static_assert(bx::isTriviallyCopyable<View>(), "Must be memcopyiable...");
|
|
2331
2497
|
bx::memCopy(m_submit->m_view, m_view, sizeof(m_view) );
|
|
2332
2498
|
|
|
2333
2499
|
if (m_colorPaletteDirty > 0)
|
|
@@ -2362,7 +2528,7 @@ namespace bgfx
|
|
|
2362
2528
|
, m_init.resolution.height
|
|
2363
2529
|
);
|
|
2364
2530
|
|
|
2365
|
-
int64_t now = bx::getHPCounter();
|
|
2531
|
+
const int64_t now = bx::getHPCounter();
|
|
2366
2532
|
m_submit->m_perfStats.cpuTimeFrame = now - m_frameTimeLast;
|
|
2367
2533
|
m_frameTimeLast = now;
|
|
2368
2534
|
}
|
|
@@ -2412,39 +2578,39 @@ namespace bgfx
|
|
|
2412
2578
|
|
|
2413
2579
|
id pool;
|
|
2414
2580
|
};
|
|
2415
|
-
#endif // BX_PLATFORM_OSX
|
|
2581
|
+
#endif // BX_PLATFORM_OSX || BX_PLATFORM_IOS || BX_PLATFORM_VISIONOS
|
|
2416
2582
|
|
|
2417
2583
|
RenderFrame::Enum Context::renderFrame(int32_t _msecs)
|
|
2418
2584
|
{
|
|
2419
|
-
BGFX_PROFILER_SCOPE("bgfx::renderFrame",
|
|
2585
|
+
BGFX_PROFILER_SCOPE("bgfx::renderFrame", kColorSubmit);
|
|
2420
2586
|
|
|
2421
2587
|
#if BX_PLATFORM_OSX || BX_PLATFORM_IOS || BX_PLATFORM_VISIONOS
|
|
2422
2588
|
NSAutoreleasePoolScope pool;
|
|
2423
|
-
#endif // BX_PLATFORM_OSX
|
|
2589
|
+
#endif // BX_PLATFORM_OSX || BX_PLATFORM_IOS || BX_PLATFORM_VISIONOS
|
|
2424
2590
|
|
|
2425
2591
|
if (!m_flipAfterRender)
|
|
2426
2592
|
{
|
|
2427
|
-
BGFX_PROFILER_SCOPE("bgfx/flip",
|
|
2593
|
+
BGFX_PROFILER_SCOPE("bgfx/flip", kColorSubmit);
|
|
2428
2594
|
flip();
|
|
2429
2595
|
}
|
|
2430
2596
|
|
|
2431
2597
|
if (apiSemWait(_msecs) )
|
|
2432
2598
|
{
|
|
2433
2599
|
{
|
|
2434
|
-
BGFX_PROFILER_SCOPE("bgfx/Exec commands pre",
|
|
2600
|
+
BGFX_PROFILER_SCOPE("bgfx/Exec commands pre", kColorResource);
|
|
2435
2601
|
rendererExecCommands(m_render->m_cmdPre);
|
|
2436
2602
|
}
|
|
2437
2603
|
|
|
2438
2604
|
if (m_rendererInitialized)
|
|
2439
2605
|
{
|
|
2440
2606
|
{
|
|
2441
|
-
BGFX_PROFILER_SCOPE("bgfx/Render submit",
|
|
2607
|
+
BGFX_PROFILER_SCOPE("bgfx/Render submit", kColorSubmit);
|
|
2442
2608
|
m_renderCtx->submit(m_render, m_clearQuad, m_textVideoMemBlitter);
|
|
2443
2609
|
m_flipped = false;
|
|
2444
2610
|
}
|
|
2445
2611
|
|
|
2446
2612
|
{
|
|
2447
|
-
BGFX_PROFILER_SCOPE("bgfx/Screenshot",
|
|
2613
|
+
BGFX_PROFILER_SCOPE("bgfx/Screenshot", kColorResource);
|
|
2448
2614
|
for (uint8_t ii = 0, num = m_render->m_numScreenShots; ii < num; ++ii)
|
|
2449
2615
|
{
|
|
2450
2616
|
const ScreenShot& screenShot = m_render->m_screenShot[ii];
|
|
@@ -2454,7 +2620,7 @@ namespace bgfx
|
|
|
2454
2620
|
}
|
|
2455
2621
|
|
|
2456
2622
|
{
|
|
2457
|
-
BGFX_PROFILER_SCOPE("bgfx/Exec commands post",
|
|
2623
|
+
BGFX_PROFILER_SCOPE("bgfx/Exec commands post", kColorResource);
|
|
2458
2624
|
rendererExecCommands(m_render->m_cmdPost);
|
|
2459
2625
|
}
|
|
2460
2626
|
|
|
@@ -2462,7 +2628,7 @@ namespace bgfx
|
|
|
2462
2628
|
|
|
2463
2629
|
if (m_flipAfterRender)
|
|
2464
2630
|
{
|
|
2465
|
-
BGFX_PROFILER_SCOPE("bgfx/flip",
|
|
2631
|
+
BGFX_PROFILER_SCOPE("bgfx/flip", kColorSubmit);
|
|
2466
2632
|
flip();
|
|
2467
2633
|
}
|
|
2468
2634
|
}
|
|
@@ -2518,13 +2684,11 @@ namespace bgfx
|
|
|
2518
2684
|
|
|
2519
2685
|
void Context::flushTextureUpdateBatch(CommandBuffer& _cmdbuf)
|
|
2520
2686
|
{
|
|
2521
|
-
BGFX_PROFILER_SCOPE("flushTextureUpdateBatch",
|
|
2687
|
+
BGFX_PROFILER_SCOPE("flushTextureUpdateBatch", kColorResource);
|
|
2522
2688
|
if (m_textureUpdateBatch.sort() )
|
|
2523
2689
|
{
|
|
2524
2690
|
const uint32_t pos = _cmdbuf.m_pos;
|
|
2525
2691
|
|
|
2526
|
-
uint32_t currentKey = UINT32_MAX;
|
|
2527
|
-
|
|
2528
2692
|
for (uint32_t ii = 0, num = m_textureUpdateBatch.m_num; ii < num; ++ii)
|
|
2529
2693
|
{
|
|
2530
2694
|
_cmdbuf.m_pos = m_textureUpdateBatch.m_values[ii];
|
|
@@ -2553,27 +2717,11 @@ namespace bgfx
|
|
|
2553
2717
|
const Memory* mem;
|
|
2554
2718
|
_cmdbuf.read(mem);
|
|
2555
2719
|
|
|
2556
|
-
uint32_t key = m_textureUpdateBatch.m_keys[ii];
|
|
2557
|
-
if (key != currentKey)
|
|
2558
|
-
{
|
|
2559
|
-
if (currentKey != UINT32_MAX)
|
|
2560
|
-
{
|
|
2561
|
-
m_renderCtx->updateTextureEnd();
|
|
2562
|
-
}
|
|
2563
|
-
currentKey = key;
|
|
2564
|
-
m_renderCtx->updateTextureBegin(handle, side, mip);
|
|
2565
|
-
}
|
|
2566
|
-
|
|
2567
2720
|
m_renderCtx->updateTexture(handle, side, mip, rect, zz, depth, pitch, mem);
|
|
2568
2721
|
|
|
2569
2722
|
release(mem);
|
|
2570
2723
|
}
|
|
2571
2724
|
|
|
2572
|
-
if (currentKey != UINT32_MAX)
|
|
2573
|
-
{
|
|
2574
|
-
m_renderCtx->updateTextureEnd();
|
|
2575
|
-
}
|
|
2576
|
-
|
|
2577
2725
|
m_textureUpdateBatch.reset();
|
|
2578
2726
|
|
|
2579
2727
|
_cmdbuf.m_pos = pos;
|
|
@@ -2599,6 +2747,7 @@ namespace bgfx
|
|
|
2599
2747
|
BGFX_RENDERER_CONTEXT(nvn);
|
|
2600
2748
|
BGFX_RENDERER_CONTEXT(gl);
|
|
2601
2749
|
BGFX_RENDERER_CONTEXT(vk);
|
|
2750
|
+
BGFX_RENDERER_CONTEXT(wgpu);
|
|
2602
2751
|
|
|
2603
2752
|
#undef BGFX_RENDERER_CONTEXT
|
|
2604
2753
|
|
|
@@ -2626,14 +2775,19 @@ namespace bgfx
|
|
|
2626
2775
|
{ gl::rendererCreate, gl::rendererDestroy, BGFX_RENDERER_OPENGL_NAME, !!BGFX_CONFIG_RENDERER_OPENGLES }, // OpenGLES
|
|
2627
2776
|
{ gl::rendererCreate, gl::rendererDestroy, BGFX_RENDERER_OPENGL_NAME, !!BGFX_CONFIG_RENDERER_OPENGL }, // OpenGL
|
|
2628
2777
|
{ vk::rendererCreate, vk::rendererDestroy, BGFX_RENDERER_VULKAN_NAME, !!BGFX_CONFIG_RENDERER_VULKAN }, // Vulkan
|
|
2778
|
+
{ wgpu::rendererCreate, wgpu::rendererDestroy, BGFX_RENDERER_WEBGPU_NAME, !!BGFX_CONFIG_RENDERER_WEBGPU }, // WebGPU
|
|
2629
2779
|
};
|
|
2630
2780
|
static_assert(BX_COUNTOF(s_rendererCreator) == RendererType::Count);
|
|
2631
2781
|
|
|
2632
2782
|
void* findModule(const char* _name)
|
|
2633
2783
|
{
|
|
2634
2784
|
#if BX_PLATFORM_WINDOWS
|
|
2635
|
-
|
|
2636
|
-
|
|
2785
|
+
if (NULL == _name
|
|
2786
|
+
|| '\0' == *_name)
|
|
2787
|
+
{
|
|
2788
|
+
return GetModuleHandleA(NULL);
|
|
2789
|
+
}
|
|
2790
|
+
|
|
2637
2791
|
HANDLE process = GetCurrentProcess();
|
|
2638
2792
|
DWORD size;
|
|
2639
2793
|
BOOL result = EnumProcessModules(process
|
|
@@ -2831,7 +2985,8 @@ namespace bgfx
|
|
|
2831
2985
|
{
|
|
2832
2986
|
RendererType::Enum renderer = RendererType::Enum(scores[ii] & 0xff);
|
|
2833
2987
|
renderCtx = s_rendererCreator[renderer].createFn(_init);
|
|
2834
|
-
if (NULL != renderCtx
|
|
2988
|
+
if (NULL != renderCtx
|
|
2989
|
+
|| !_init.fallback)
|
|
2835
2990
|
{
|
|
2836
2991
|
break;
|
|
2837
2992
|
}
|
|
@@ -2929,7 +3084,7 @@ namespace bgfx
|
|
|
2929
3084
|
|
|
2930
3085
|
case CommandBuffer::CreateIndexBuffer:
|
|
2931
3086
|
{
|
|
2932
|
-
BGFX_PROFILER_SCOPE("CreateIndexBuffer",
|
|
3087
|
+
BGFX_PROFILER_SCOPE("CreateIndexBuffer", kColorResource);
|
|
2933
3088
|
|
|
2934
3089
|
IndexBufferHandle handle;
|
|
2935
3090
|
_cmdbuf.read(handle);
|
|
@@ -2948,7 +3103,7 @@ namespace bgfx
|
|
|
2948
3103
|
|
|
2949
3104
|
case CommandBuffer::DestroyIndexBuffer:
|
|
2950
3105
|
{
|
|
2951
|
-
BGFX_PROFILER_SCOPE("DestroyIndexBuffer",
|
|
3106
|
+
BGFX_PROFILER_SCOPE("DestroyIndexBuffer", kColorResource);
|
|
2952
3107
|
|
|
2953
3108
|
IndexBufferHandle handle;
|
|
2954
3109
|
_cmdbuf.read(handle);
|
|
@@ -2959,7 +3114,7 @@ namespace bgfx
|
|
|
2959
3114
|
|
|
2960
3115
|
case CommandBuffer::CreateVertexLayout:
|
|
2961
3116
|
{
|
|
2962
|
-
BGFX_PROFILER_SCOPE("CreateVertexLayout",
|
|
3117
|
+
BGFX_PROFILER_SCOPE("CreateVertexLayout", kColorResource);
|
|
2963
3118
|
|
|
2964
3119
|
VertexLayoutHandle handle;
|
|
2965
3120
|
_cmdbuf.read(handle);
|
|
@@ -2973,7 +3128,7 @@ namespace bgfx
|
|
|
2973
3128
|
|
|
2974
3129
|
case CommandBuffer::DestroyVertexLayout:
|
|
2975
3130
|
{
|
|
2976
|
-
BGFX_PROFILER_SCOPE("DestroyVertexLayout",
|
|
3131
|
+
BGFX_PROFILER_SCOPE("DestroyVertexLayout", kColorResource);
|
|
2977
3132
|
|
|
2978
3133
|
VertexLayoutHandle handle;
|
|
2979
3134
|
_cmdbuf.read(handle);
|
|
@@ -2984,7 +3139,7 @@ namespace bgfx
|
|
|
2984
3139
|
|
|
2985
3140
|
case CommandBuffer::CreateVertexBuffer:
|
|
2986
3141
|
{
|
|
2987
|
-
BGFX_PROFILER_SCOPE("CreateVertexBuffer",
|
|
3142
|
+
BGFX_PROFILER_SCOPE("CreateVertexBuffer", kColorResource);
|
|
2988
3143
|
|
|
2989
3144
|
VertexBufferHandle handle;
|
|
2990
3145
|
_cmdbuf.read(handle);
|
|
@@ -3006,7 +3161,7 @@ namespace bgfx
|
|
|
3006
3161
|
|
|
3007
3162
|
case CommandBuffer::DestroyVertexBuffer:
|
|
3008
3163
|
{
|
|
3009
|
-
BGFX_PROFILER_SCOPE("DestroyVertexBuffer",
|
|
3164
|
+
BGFX_PROFILER_SCOPE("DestroyVertexBuffer", kColorResource);
|
|
3010
3165
|
|
|
3011
3166
|
VertexBufferHandle handle;
|
|
3012
3167
|
_cmdbuf.read(handle);
|
|
@@ -3017,7 +3172,7 @@ namespace bgfx
|
|
|
3017
3172
|
|
|
3018
3173
|
case CommandBuffer::CreateDynamicIndexBuffer:
|
|
3019
3174
|
{
|
|
3020
|
-
BGFX_PROFILER_SCOPE("CreateDynamicIndexBuffer",
|
|
3175
|
+
BGFX_PROFILER_SCOPE("CreateDynamicIndexBuffer", kColorResource);
|
|
3021
3176
|
|
|
3022
3177
|
IndexBufferHandle handle;
|
|
3023
3178
|
_cmdbuf.read(handle);
|
|
@@ -3034,7 +3189,7 @@ namespace bgfx
|
|
|
3034
3189
|
|
|
3035
3190
|
case CommandBuffer::UpdateDynamicIndexBuffer:
|
|
3036
3191
|
{
|
|
3037
|
-
BGFX_PROFILER_SCOPE("UpdateDynamicIndexBuffer",
|
|
3192
|
+
BGFX_PROFILER_SCOPE("UpdateDynamicIndexBuffer", kColorResource);
|
|
3038
3193
|
|
|
3039
3194
|
IndexBufferHandle handle;
|
|
3040
3195
|
_cmdbuf.read(handle);
|
|
@@ -3056,7 +3211,7 @@ namespace bgfx
|
|
|
3056
3211
|
|
|
3057
3212
|
case CommandBuffer::DestroyDynamicIndexBuffer:
|
|
3058
3213
|
{
|
|
3059
|
-
BGFX_PROFILER_SCOPE("DestroyDynamicIndexBuffer",
|
|
3214
|
+
BGFX_PROFILER_SCOPE("DestroyDynamicIndexBuffer", kColorResource);
|
|
3060
3215
|
|
|
3061
3216
|
IndexBufferHandle handle;
|
|
3062
3217
|
_cmdbuf.read(handle);
|
|
@@ -3067,7 +3222,7 @@ namespace bgfx
|
|
|
3067
3222
|
|
|
3068
3223
|
case CommandBuffer::CreateDynamicVertexBuffer:
|
|
3069
3224
|
{
|
|
3070
|
-
BGFX_PROFILER_SCOPE("CreateDynamicVertexBuffer",
|
|
3225
|
+
BGFX_PROFILER_SCOPE("CreateDynamicVertexBuffer", kColorResource);
|
|
3071
3226
|
|
|
3072
3227
|
VertexBufferHandle handle;
|
|
3073
3228
|
_cmdbuf.read(handle);
|
|
@@ -3084,7 +3239,7 @@ namespace bgfx
|
|
|
3084
3239
|
|
|
3085
3240
|
case CommandBuffer::UpdateDynamicVertexBuffer:
|
|
3086
3241
|
{
|
|
3087
|
-
BGFX_PROFILER_SCOPE("UpdateDynamicVertexBuffer",
|
|
3242
|
+
BGFX_PROFILER_SCOPE("UpdateDynamicVertexBuffer", kColorResource);
|
|
3088
3243
|
|
|
3089
3244
|
VertexBufferHandle handle;
|
|
3090
3245
|
_cmdbuf.read(handle);
|
|
@@ -3106,7 +3261,7 @@ namespace bgfx
|
|
|
3106
3261
|
|
|
3107
3262
|
case CommandBuffer::DestroyDynamicVertexBuffer:
|
|
3108
3263
|
{
|
|
3109
|
-
BGFX_PROFILER_SCOPE("DestroyDynamicVertexBuffer",
|
|
3264
|
+
BGFX_PROFILER_SCOPE("DestroyDynamicVertexBuffer", kColorResource);
|
|
3110
3265
|
|
|
3111
3266
|
VertexBufferHandle handle;
|
|
3112
3267
|
_cmdbuf.read(handle);
|
|
@@ -3117,7 +3272,7 @@ namespace bgfx
|
|
|
3117
3272
|
|
|
3118
3273
|
case CommandBuffer::CreateShader:
|
|
3119
3274
|
{
|
|
3120
|
-
BGFX_PROFILER_SCOPE("CreateShader",
|
|
3275
|
+
BGFX_PROFILER_SCOPE("CreateShader", kColorResource);
|
|
3121
3276
|
|
|
3122
3277
|
ShaderHandle handle;
|
|
3123
3278
|
_cmdbuf.read(handle);
|
|
@@ -3133,7 +3288,7 @@ namespace bgfx
|
|
|
3133
3288
|
|
|
3134
3289
|
case CommandBuffer::DestroyShader:
|
|
3135
3290
|
{
|
|
3136
|
-
BGFX_PROFILER_SCOPE("DestroyShader",
|
|
3291
|
+
BGFX_PROFILER_SCOPE("DestroyShader", kColorResource);
|
|
3137
3292
|
|
|
3138
3293
|
ShaderHandle handle;
|
|
3139
3294
|
_cmdbuf.read(handle);
|
|
@@ -3144,7 +3299,7 @@ namespace bgfx
|
|
|
3144
3299
|
|
|
3145
3300
|
case CommandBuffer::CreateProgram:
|
|
3146
3301
|
{
|
|
3147
|
-
BGFX_PROFILER_SCOPE("CreateProgram",
|
|
3302
|
+
BGFX_PROFILER_SCOPE("CreateProgram", kColorResource);
|
|
3148
3303
|
|
|
3149
3304
|
ProgramHandle handle;
|
|
3150
3305
|
_cmdbuf.read(handle);
|
|
@@ -3161,7 +3316,7 @@ namespace bgfx
|
|
|
3161
3316
|
|
|
3162
3317
|
case CommandBuffer::DestroyProgram:
|
|
3163
3318
|
{
|
|
3164
|
-
BGFX_PROFILER_SCOPE("DestroyProgram",
|
|
3319
|
+
BGFX_PROFILER_SCOPE("DestroyProgram", kColorResource);
|
|
3165
3320
|
|
|
3166
3321
|
ProgramHandle handle;
|
|
3167
3322
|
_cmdbuf.read(handle);
|
|
@@ -3172,7 +3327,7 @@ namespace bgfx
|
|
|
3172
3327
|
|
|
3173
3328
|
case CommandBuffer::CreateTexture:
|
|
3174
3329
|
{
|
|
3175
|
-
BGFX_PROFILER_SCOPE("CreateTexture",
|
|
3330
|
+
BGFX_PROFILER_SCOPE("CreateTexture", kColorResource);
|
|
3176
3331
|
|
|
3177
3332
|
TextureHandle handle;
|
|
3178
3333
|
_cmdbuf.read(handle);
|
|
@@ -3186,7 +3341,11 @@ namespace bgfx
|
|
|
3186
3341
|
uint8_t skip;
|
|
3187
3342
|
_cmdbuf.read(skip);
|
|
3188
3343
|
|
|
3189
|
-
|
|
3344
|
+
uintptr_t external;
|
|
3345
|
+
_cmdbuf.read(external);
|
|
3346
|
+
|
|
3347
|
+
void* ptr = m_renderCtx->createTexture(handle, mem, flags, skip, external);
|
|
3348
|
+
|
|
3190
3349
|
if (NULL != ptr)
|
|
3191
3350
|
{
|
|
3192
3351
|
setDirectAccessPtr(handle, ptr);
|
|
@@ -3215,7 +3374,7 @@ namespace bgfx
|
|
|
3215
3374
|
|
|
3216
3375
|
case CommandBuffer::UpdateTexture:
|
|
3217
3376
|
{
|
|
3218
|
-
BGFX_PROFILER_SCOPE("UpdateTexture",
|
|
3377
|
+
BGFX_PROFILER_SCOPE("UpdateTexture", kColorResource);
|
|
3219
3378
|
|
|
3220
3379
|
if (m_textureUpdateBatch.isFull() )
|
|
3221
3380
|
{
|
|
@@ -3250,7 +3409,7 @@ namespace bgfx
|
|
|
3250
3409
|
|
|
3251
3410
|
case CommandBuffer::ReadTexture:
|
|
3252
3411
|
{
|
|
3253
|
-
BGFX_PROFILER_SCOPE("ReadTexture",
|
|
3412
|
+
BGFX_PROFILER_SCOPE("ReadTexture", kColorResource);
|
|
3254
3413
|
|
|
3255
3414
|
TextureHandle handle;
|
|
3256
3415
|
_cmdbuf.read(handle);
|
|
@@ -3267,7 +3426,7 @@ namespace bgfx
|
|
|
3267
3426
|
|
|
3268
3427
|
case CommandBuffer::ResizeTexture:
|
|
3269
3428
|
{
|
|
3270
|
-
BGFX_PROFILER_SCOPE("ResizeTexture",
|
|
3429
|
+
BGFX_PROFILER_SCOPE("ResizeTexture", kColorResource);
|
|
3271
3430
|
|
|
3272
3431
|
TextureHandle handle;
|
|
3273
3432
|
_cmdbuf.read(handle);
|
|
@@ -3290,7 +3449,7 @@ namespace bgfx
|
|
|
3290
3449
|
|
|
3291
3450
|
case CommandBuffer::DestroyTexture:
|
|
3292
3451
|
{
|
|
3293
|
-
BGFX_PROFILER_SCOPE("DestroyTexture",
|
|
3452
|
+
BGFX_PROFILER_SCOPE("DestroyTexture", kColorResource);
|
|
3294
3453
|
|
|
3295
3454
|
TextureHandle handle;
|
|
3296
3455
|
_cmdbuf.read(handle);
|
|
@@ -3301,7 +3460,7 @@ namespace bgfx
|
|
|
3301
3460
|
|
|
3302
3461
|
case CommandBuffer::CreateFrameBuffer:
|
|
3303
3462
|
{
|
|
3304
|
-
BGFX_PROFILER_SCOPE("CreateFrameBuffer",
|
|
3463
|
+
BGFX_PROFILER_SCOPE("CreateFrameBuffer", kColorResource);
|
|
3305
3464
|
|
|
3306
3465
|
FrameBufferHandle handle;
|
|
3307
3466
|
_cmdbuf.read(handle);
|
|
@@ -3343,7 +3502,7 @@ namespace bgfx
|
|
|
3343
3502
|
|
|
3344
3503
|
case CommandBuffer::DestroyFrameBuffer:
|
|
3345
3504
|
{
|
|
3346
|
-
BGFX_PROFILER_SCOPE("DestroyFrameBuffer",
|
|
3505
|
+
BGFX_PROFILER_SCOPE("DestroyFrameBuffer", kColorResource);
|
|
3347
3506
|
|
|
3348
3507
|
FrameBufferHandle handle;
|
|
3349
3508
|
_cmdbuf.read(handle);
|
|
@@ -3354,7 +3513,7 @@ namespace bgfx
|
|
|
3354
3513
|
|
|
3355
3514
|
case CommandBuffer::CreateUniform:
|
|
3356
3515
|
{
|
|
3357
|
-
BGFX_PROFILER_SCOPE("CreateUniform",
|
|
3516
|
+
BGFX_PROFILER_SCOPE("CreateUniform", kColorResource);
|
|
3358
3517
|
|
|
3359
3518
|
UniformHandle handle;
|
|
3360
3519
|
_cmdbuf.read(handle);
|
|
@@ -3376,7 +3535,7 @@ namespace bgfx
|
|
|
3376
3535
|
|
|
3377
3536
|
case CommandBuffer::DestroyUniform:
|
|
3378
3537
|
{
|
|
3379
|
-
BGFX_PROFILER_SCOPE("DestroyUniform",
|
|
3538
|
+
BGFX_PROFILER_SCOPE("DestroyUniform", kColorResource);
|
|
3380
3539
|
|
|
3381
3540
|
UniformHandle handle;
|
|
3382
3541
|
_cmdbuf.read(handle);
|
|
@@ -3387,7 +3546,7 @@ namespace bgfx
|
|
|
3387
3546
|
|
|
3388
3547
|
case CommandBuffer::UpdateViewName:
|
|
3389
3548
|
{
|
|
3390
|
-
BGFX_PROFILER_SCOPE("UpdateViewName",
|
|
3549
|
+
BGFX_PROFILER_SCOPE("UpdateViewName", kColorResource);
|
|
3391
3550
|
|
|
3392
3551
|
ViewId id;
|
|
3393
3552
|
_cmdbuf.read(id);
|
|
@@ -3403,7 +3562,7 @@ namespace bgfx
|
|
|
3403
3562
|
|
|
3404
3563
|
case CommandBuffer::InvalidateOcclusionQuery:
|
|
3405
3564
|
{
|
|
3406
|
-
BGFX_PROFILER_SCOPE("InvalidateOcclusionQuery",
|
|
3565
|
+
BGFX_PROFILER_SCOPE("InvalidateOcclusionQuery", kColorResource);
|
|
3407
3566
|
|
|
3408
3567
|
OcclusionQueryHandle handle;
|
|
3409
3568
|
_cmdbuf.read(handle);
|
|
@@ -3414,7 +3573,7 @@ namespace bgfx
|
|
|
3414
3573
|
|
|
3415
3574
|
case CommandBuffer::SetName:
|
|
3416
3575
|
{
|
|
3417
|
-
BGFX_PROFILER_SCOPE("SetName",
|
|
3576
|
+
BGFX_PROFILER_SCOPE("SetName", kColorResource);
|
|
3418
3577
|
|
|
3419
3578
|
Handle handle;
|
|
3420
3579
|
_cmdbuf.read(handle);
|
|
@@ -3492,6 +3651,7 @@ namespace bgfx
|
|
|
3492
3651
|
: ndt(NULL)
|
|
3493
3652
|
, nwh(NULL)
|
|
3494
3653
|
, context(NULL)
|
|
3654
|
+
, queue(NULL)
|
|
3495
3655
|
, backBuffer(NULL)
|
|
3496
3656
|
, backBufferDS(NULL)
|
|
3497
3657
|
, type(NativeWindowHandleType::Default)
|
|
@@ -3499,7 +3659,7 @@ namespace bgfx
|
|
|
3499
3659
|
}
|
|
3500
3660
|
|
|
3501
3661
|
Resolution::Resolution()
|
|
3502
|
-
: formatColor(TextureFormat::
|
|
3662
|
+
: formatColor(TextureFormat::BGRA8)
|
|
3503
3663
|
, formatDepthStencil(TextureFormat::D24S8)
|
|
3504
3664
|
, width(1280)
|
|
3505
3665
|
, height(720)
|
|
@@ -3526,6 +3686,7 @@ namespace bgfx
|
|
|
3526
3686
|
, capabilities(UINT64_MAX)
|
|
3527
3687
|
, debug(BX_ENABLED(BGFX_CONFIG_DEBUG) )
|
|
3528
3688
|
, profile(BX_ENABLED(BGFX_CONFIG_DEBUG_ANNOTATION) )
|
|
3689
|
+
, fallback(true)
|
|
3529
3690
|
, callback(NULL)
|
|
3530
3691
|
, allocator(NULL)
|
|
3531
3692
|
{
|
|
@@ -3768,6 +3929,7 @@ namespace bgfx
|
|
|
3768
3929
|
{
|
|
3769
3930
|
BGFX_CHECK_HANDLE("setUniform", s_ctx->m_uniformHandle, _handle);
|
|
3770
3931
|
const UniformRef& uniform = s_ctx->m_uniformRef[_handle.idx];
|
|
3932
|
+
BX_ASSERT(uniform.m_freq == UniformFreq::Draw, "Setting uniform per draw call, but uniform is created with different bgfx::UniformFreq::Enum!");
|
|
3771
3933
|
BX_ASSERT(isValid(_handle) && 0 < uniform.m_refCount, "Setting invalid uniform (handle %3d)!", _handle.idx);
|
|
3772
3934
|
BX_ASSERT(_num == UINT16_MAX || uniform.m_num >= _num, "Truncated uniform update. %d (max: %d)", _num, uniform.m_num);
|
|
3773
3935
|
BGFX_ENCODER(setUniform(uniform.m_type, _handle, _value, UINT16_MAX != _num ? _num : uniform.m_num) );
|
|
@@ -4119,10 +4281,10 @@ namespace bgfx
|
|
|
4119
4281
|
s_ctx->end(_encoder);
|
|
4120
4282
|
}
|
|
4121
4283
|
|
|
4122
|
-
uint32_t frame(
|
|
4284
|
+
uint32_t frame(uint8_t _flags)
|
|
4123
4285
|
{
|
|
4124
4286
|
BGFX_CHECK_API_THREAD();
|
|
4125
|
-
return s_ctx->frame(
|
|
4287
|
+
return s_ctx->frame(_flags);
|
|
4126
4288
|
}
|
|
4127
4289
|
|
|
4128
4290
|
const Caps* getCaps()
|
|
@@ -4598,8 +4760,8 @@ namespace bgfx
|
|
|
4598
4760
|
BGFX_ERROR_CHECK(
|
|
4599
4761
|
// if BGFX_TEXTURE_RT_MSAA_X2 or greater than either BGFX_TEXTURE_RT_WRITE_ONLY or BGFX_TEXTURE_MSAA_SAMPLE is required
|
|
4600
4762
|
// if BGFX_TEXTURE_RT with no MSSA then this is not required.
|
|
4601
|
-
|
|
4602
|
-
|| (0 !=
|
|
4763
|
+
(1 == ( (tr.m_flags & BGFX_TEXTURE_RT_MSAA_MASK) >> BGFX_TEXTURE_RT_MSAA_SHIFT) )
|
|
4764
|
+
|| (0 != (tr.m_flags & (BGFX_TEXTURE_RT_WRITE_ONLY | BGFX_TEXTURE_MSAA_SAMPLE) ) )
|
|
4603
4765
|
, _err
|
|
4604
4766
|
, BGFX_ERROR_FRAME_BUFFER_VALIDATION
|
|
4605
4767
|
, "Frame buffer depth MSAA texture cannot be resolved. It must be created with either `BGFX_TEXTURE_RT_WRITE_ONLY` or `BGFX_TEXTURE_MSAA_SAMPLE` flag."
|
|
@@ -4790,6 +4952,16 @@ namespace bgfx
|
|
|
4790
4952
|
, getName(_format)
|
|
4791
4953
|
);
|
|
4792
4954
|
|
|
4955
|
+
BGFX_ERROR_CHECK(false
|
|
4956
|
+
|| 1 >= ( (_flags & BGFX_TEXTURE_RT_MSAA_MASK) >> BGFX_TEXTURE_RT_MSAA_SHIFT)
|
|
4957
|
+
|| 0 != (g_caps.formats[_format] & BGFX_CAPS_FORMAT_TEXTURE_FRAMEBUFFER_MSAA)
|
|
4958
|
+
, _err
|
|
4959
|
+
, BGFX_ERROR_TEXTURE_VALIDATION
|
|
4960
|
+
, "Creating MSAA render target for this texture format is not supported."
|
|
4961
|
+
, "Texture format: %s."
|
|
4962
|
+
, getName(_format)
|
|
4963
|
+
);
|
|
4964
|
+
|
|
4793
4965
|
BGFX_ERROR_CHECK(false
|
|
4794
4966
|
|| 0 == (_flags & BGFX_TEXTURE_MSAA_SAMPLE)
|
|
4795
4967
|
|| 0 != (g_caps.formats[_format] & BGFX_CAPS_FORMAT_TEXTURE_MSAA)
|
|
@@ -4879,7 +5051,7 @@ namespace bgfx
|
|
|
4879
5051
|
TextureHandle createTexture(const Memory* _mem, uint64_t _flags, uint8_t _skip, TextureInfo* _info)
|
|
4880
5052
|
{
|
|
4881
5053
|
BX_ASSERT(NULL != _mem, "_mem can't be NULL");
|
|
4882
|
-
return s_ctx->createTexture(_mem, _flags, _skip, _info, BackbufferRatio::Count, false);
|
|
5054
|
+
return s_ctx->createTexture(_mem, _flags, _skip, _info, BackbufferRatio::Count, false, 0);
|
|
4883
5055
|
}
|
|
4884
5056
|
|
|
4885
5057
|
void getTextureSizeFromRatio(BackbufferRatio::Enum _ratio, uint16_t& _width, uint16_t& _height)
|
|
@@ -4900,7 +5072,17 @@ namespace bgfx
|
|
|
4900
5072
|
_height = bx::max<uint16_t>(1, _height);
|
|
4901
5073
|
}
|
|
4902
5074
|
|
|
4903
|
-
static TextureHandle createTexture2D(
|
|
5075
|
+
static TextureHandle createTexture2D(
|
|
5076
|
+
BackbufferRatio::Enum _ratio
|
|
5077
|
+
, uint16_t _width
|
|
5078
|
+
, uint16_t _height
|
|
5079
|
+
, bool _hasMips
|
|
5080
|
+
, uint16_t _numLayers
|
|
5081
|
+
, TextureFormat::Enum _format
|
|
5082
|
+
, uint64_t _flags
|
|
5083
|
+
, const Memory* _mem
|
|
5084
|
+
, uint64_t _external
|
|
5085
|
+
)
|
|
4904
5086
|
{
|
|
4905
5087
|
if (BackbufferRatio::Count != _ratio)
|
|
4906
5088
|
{
|
|
@@ -4949,23 +5131,36 @@ namespace bgfx
|
|
|
4949
5131
|
tc.m_mem = _mem;
|
|
4950
5132
|
bx::write(&writer, tc, bx::ErrorAssert{});
|
|
4951
5133
|
|
|
4952
|
-
return s_ctx->createTexture(mem, _flags, 0, NULL, _ratio, NULL != _mem);
|
|
5134
|
+
return s_ctx->createTexture(mem, _flags, 0, NULL, _ratio, NULL != _mem, _external);
|
|
4953
5135
|
}
|
|
4954
5136
|
|
|
4955
|
-
TextureHandle createTexture2D(uint16_t _width, uint16_t _height, bool _hasMips, uint16_t _numLayers, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem)
|
|
5137
|
+
TextureHandle createTexture2D(uint16_t _width, uint16_t _height, bool _hasMips, uint16_t _numLayers, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem, uint64_t _external)
|
|
4956
5138
|
{
|
|
5139
|
+
BX_ASSERT(false
|
|
5140
|
+
|| 0 == _external
|
|
5141
|
+
|| 0 != (g_caps.supported & BGFX_CAPS_TEXTURE_EXTERNAL)
|
|
5142
|
+
, "External texture is not supported! "
|
|
5143
|
+
"Use bgfx::getCaps to check `BGFX_CAPS_TEXTURE_EXTERNAL` backend renderer capabilities."
|
|
5144
|
+
);
|
|
4957
5145
|
BX_ASSERT(_width > 0 && _height > 0, "Invalid texture size (width %d, height %d).", _width, _height);
|
|
4958
|
-
return createTexture2D(BackbufferRatio::Count, _width, _height, _hasMips, _numLayers, _format, _flags, _mem);
|
|
5146
|
+
return createTexture2D(BackbufferRatio::Count, _width, _height, _hasMips, _numLayers, _format, _flags, _mem, _external);
|
|
4959
5147
|
}
|
|
4960
5148
|
|
|
4961
5149
|
TextureHandle createTexture2D(BackbufferRatio::Enum _ratio, bool _hasMips, uint16_t _numLayers, TextureFormat::Enum _format, uint64_t _flags)
|
|
4962
5150
|
{
|
|
4963
5151
|
BX_ASSERT(_ratio < BackbufferRatio::Count, "Invalid back buffer ratio.");
|
|
4964
|
-
return createTexture2D(_ratio, 0, 0, _hasMips, _numLayers, _format, _flags, NULL);
|
|
5152
|
+
return createTexture2D(_ratio, 0, 0, _hasMips, _numLayers, _format, _flags, NULL, 0);
|
|
4965
5153
|
}
|
|
4966
5154
|
|
|
4967
|
-
TextureHandle createTexture3D(uint16_t _width, uint16_t _height, uint16_t _depth, bool _hasMips, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem)
|
|
5155
|
+
TextureHandle createTexture3D(uint16_t _width, uint16_t _height, uint16_t _depth, bool _hasMips, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem, uint64_t _external)
|
|
4968
5156
|
{
|
|
5157
|
+
BX_ASSERT(false
|
|
5158
|
+
|| 0 == _external
|
|
5159
|
+
|| 0 != (g_caps.supported & BGFX_CAPS_TEXTURE_EXTERNAL)
|
|
5160
|
+
, "External texture is not supported! "
|
|
5161
|
+
"Use bgfx::getCaps to check `BGFX_CAPS_TEXTURE_EXTERNAL` backend renderer capabilities."
|
|
5162
|
+
);
|
|
5163
|
+
|
|
4969
5164
|
bx::ErrorAssert err;
|
|
4970
5165
|
isTextureValid(_width, _height, _depth, false, 1, _format, _flags, &err);
|
|
4971
5166
|
|
|
@@ -5005,11 +5200,18 @@ namespace bgfx
|
|
|
5005
5200
|
tc.m_mem = _mem;
|
|
5006
5201
|
bx::write(&writer, tc, bx::ErrorAssert{});
|
|
5007
5202
|
|
|
5008
|
-
return s_ctx->createTexture(mem, _flags, 0, NULL, BackbufferRatio::Count, NULL != _mem);
|
|
5203
|
+
return s_ctx->createTexture(mem, _flags, 0, NULL, BackbufferRatio::Count, NULL != _mem, _external);
|
|
5009
5204
|
}
|
|
5010
5205
|
|
|
5011
|
-
TextureHandle createTextureCube(uint16_t _size, bool _hasMips, uint16_t _numLayers, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem)
|
|
5206
|
+
TextureHandle createTextureCube(uint16_t _size, bool _hasMips, uint16_t _numLayers, TextureFormat::Enum _format, uint64_t _flags, const Memory* _mem, uint64_t _external)
|
|
5012
5207
|
{
|
|
5208
|
+
BX_ASSERT(false
|
|
5209
|
+
|| 0 == _external
|
|
5210
|
+
|| 0 != (g_caps.supported & BGFX_CAPS_TEXTURE_EXTERNAL)
|
|
5211
|
+
, "External texture is not supported! "
|
|
5212
|
+
"Use bgfx::getCaps to check `BGFX_CAPS_TEXTURE_EXTERNAL` backend renderer capabilities."
|
|
5213
|
+
);
|
|
5214
|
+
|
|
5013
5215
|
bx::ErrorAssert err;
|
|
5014
5216
|
isTextureValid(_size, _size, 0, true, _numLayers, _format, _flags, &err);
|
|
5015
5217
|
|
|
@@ -5050,7 +5252,7 @@ namespace bgfx
|
|
|
5050
5252
|
tc.m_mem = _mem;
|
|
5051
5253
|
bx::write(&writer, tc, bx::ErrorAssert{});
|
|
5052
5254
|
|
|
5053
|
-
return s_ctx->createTexture(mem, _flags, 0, NULL, BackbufferRatio::Count, NULL != _mem);
|
|
5255
|
+
return s_ctx->createTexture(mem, _flags, 0, NULL, BackbufferRatio::Count, NULL != _mem, _external);
|
|
5054
5256
|
}
|
|
5055
5257
|
|
|
5056
5258
|
void setName(TextureHandle _handle, const char* _name, int32_t _len)
|
|
@@ -5201,7 +5403,24 @@ namespace bgfx
|
|
|
5201
5403
|
|
|
5202
5404
|
UniformHandle createUniform(const char* _name, UniformType::Enum _type, uint16_t _num)
|
|
5203
5405
|
{
|
|
5204
|
-
|
|
5406
|
+
BX_ASSERT(UniformType::End != _type && UniformType::Count > _type
|
|
5407
|
+
, "UniformType argument is not valid (_type: %d)!"
|
|
5408
|
+
, _type
|
|
5409
|
+
);
|
|
5410
|
+
return s_ctx->createUniform(_name, UniformFreq::Draw, _type, _num);
|
|
5411
|
+
}
|
|
5412
|
+
|
|
5413
|
+
UniformHandle createUniform(const char* _name, UniformFreq::Enum _freq, UniformType::Enum _type, uint16_t _num)
|
|
5414
|
+
{
|
|
5415
|
+
BX_ASSERT(UniformType::End != _type && UniformType::Count > _type
|
|
5416
|
+
, "UniformType argument is not valid (_type: %d)!"
|
|
5417
|
+
, _type
|
|
5418
|
+
);
|
|
5419
|
+
BX_ASSERT(UniformFreq::Count > _freq
|
|
5420
|
+
, "UniformFreq argument is not valid (_freq: %d)!"
|
|
5421
|
+
, _freq
|
|
5422
|
+
);
|
|
5423
|
+
return s_ctx->createUniform(_name, _freq, _type, _num);
|
|
5205
5424
|
}
|
|
5206
5425
|
|
|
5207
5426
|
void getUniformInfo(UniformHandle _handle, UniformInfo& _info)
|
|
@@ -5332,6 +5551,12 @@ namespace bgfx
|
|
|
5332
5551
|
s_ctx->setViewOrder(_id, _num, _order);
|
|
5333
5552
|
}
|
|
5334
5553
|
|
|
5554
|
+
void setViewShadingRate(ViewId _id, ShadingRate::Enum _shadingRate)
|
|
5555
|
+
{
|
|
5556
|
+
BX_ASSERT(checkView(_id), "Invalid view id: %d", _id);
|
|
5557
|
+
s_ctx->setViewShadingRate(_id, _shadingRate);
|
|
5558
|
+
}
|
|
5559
|
+
|
|
5335
5560
|
void resetView(ViewId _id)
|
|
5336
5561
|
{
|
|
5337
5562
|
BX_ASSERT(checkView(_id), "Invalid view id: %d", _id);
|
|
@@ -5403,6 +5628,19 @@ namespace bgfx
|
|
|
5403
5628
|
s_ctx->m_encoder0->setUniform(_handle, _value, _num);
|
|
5404
5629
|
}
|
|
5405
5630
|
|
|
5631
|
+
void setViewUniform(ViewId _id, UniformHandle _handle, const void* _value, uint16_t _num)
|
|
5632
|
+
{
|
|
5633
|
+
BX_ASSERT(checkView(_id), "Invalid view id: %d", _id);
|
|
5634
|
+
BGFX_CHECK_HANDLE("setUniform", s_ctx->m_uniformHandle, _handle);
|
|
5635
|
+
s_ctx->setViewUniform(_id, _handle, _value, _num);
|
|
5636
|
+
}
|
|
5637
|
+
|
|
5638
|
+
void setFrameUniform(UniformHandle _handle, const void* _value, uint16_t _num)
|
|
5639
|
+
{
|
|
5640
|
+
BGFX_CHECK_HANDLE("setUniform", s_ctx->m_uniformHandle, _handle);
|
|
5641
|
+
s_ctx->setViewUniform(UINT16_MAX, _handle, _value, _num);
|
|
5642
|
+
}
|
|
5643
|
+
|
|
5406
5644
|
void setIndexBuffer(IndexBufferHandle _handle)
|
|
5407
5645
|
{
|
|
5408
5646
|
BGFX_CHECK_ENCODER0();
|
|
@@ -5845,6 +6083,8 @@ static_assert( (0
|
|
|
5845
6083
|
| BGFX_CAPS_TEXTURE_BLIT
|
|
5846
6084
|
| BGFX_CAPS_TEXTURE_CUBE_ARRAY
|
|
5847
6085
|
| BGFX_CAPS_TEXTURE_DIRECT_ACCESS
|
|
6086
|
+
| BGFX_CAPS_TEXTURE_EXTERNAL
|
|
6087
|
+
| BGFX_CAPS_TEXTURE_EXTERNAL_SHARED
|
|
5848
6088
|
| BGFX_CAPS_TEXTURE_READ_BACK
|
|
5849
6089
|
| BGFX_CAPS_VERTEX_ATTRIB_HALF
|
|
5850
6090
|
| BGFX_CAPS_VERTEX_ATTRIB_UINT10
|
|
@@ -5875,6 +6115,8 @@ static_assert( (0
|
|
|
5875
6115
|
^ BGFX_CAPS_TEXTURE_BLIT
|
|
5876
6116
|
^ BGFX_CAPS_TEXTURE_CUBE_ARRAY
|
|
5877
6117
|
^ BGFX_CAPS_TEXTURE_DIRECT_ACCESS
|
|
6118
|
+
^ BGFX_CAPS_TEXTURE_EXTERNAL
|
|
6119
|
+
^ BGFX_CAPS_TEXTURE_EXTERNAL_SHARED
|
|
5878
6120
|
^ BGFX_CAPS_TEXTURE_READ_BACK
|
|
5879
6121
|
^ BGFX_CAPS_VERTEX_ATTRIB_HALF
|
|
5880
6122
|
^ BGFX_CAPS_VERTEX_ATTRIB_UINT10
|
|
@@ -5936,9 +6178,9 @@ namespace bgfx
|
|
|
5936
6178
|
m_interface->vtbl->cache_write(m_interface, _id, _data, _size);
|
|
5937
6179
|
}
|
|
5938
6180
|
|
|
5939
|
-
virtual void screenShot(const char* _filePath, uint32_t _width, uint32_t _height, uint32_t _pitch, const void* _data, uint32_t _size, bool _yflip) override
|
|
6181
|
+
virtual void screenShot(const char* _filePath, uint32_t _width, uint32_t _height, uint32_t _pitch, TextureFormat::Enum _format, const void* _data, uint32_t _size, bool _yflip) override
|
|
5940
6182
|
{
|
|
5941
|
-
m_interface->vtbl->screen_shot(m_interface, _filePath, _width, _height, _pitch, _data, _size, _yflip);
|
|
6183
|
+
m_interface->vtbl->screen_shot(m_interface, _filePath, _width, _height, _pitch, (bgfx_texture_format_t)_format, _data, _size, _yflip);
|
|
5942
6184
|
}
|
|
5943
6185
|
|
|
5944
6186
|
virtual void captureBegin(uint32_t _width, uint32_t _height, uint32_t _pitch, TextureFormat::Enum _format, bool _yflip) override
|