Branimir Karadžić
968e4f8dd9
Added explicit texture mip count, and per-binding sampler LOD clamp. ( #4002 )
2026-09-28 22:00:14 -07:00
Branimir Karadžić
ce3bee65f2
D3D1x/WebGPU: Survive device loss in the readback paths. ( #4001 )
2026-09-28 19:56:23 -07:00
James Green
d8b2a448aa
D3D11: Fixed the DXGI_SWAP_EFFECT_DISCARD fallback swap chain. ( #3997 )
...
The retry kept DXGI_SCALING_NONE, and createSwapChain/resizeBuffers
added DXGI_SWAP_CHAIN_FLAG_ALLOW_TEARING for every swap effect; both
are flip-model only, so the fallback failed with DXGI_ERROR_INVALID_CALL
and a bitblt chain could not be resized.
2026-09-25 15:35:15 -07:00
Branimir Karadžić
c00cc181cc
Metal: Allow metal binary. ( #3996 )
2026-09-24 22:20:22 -07:00
vrimar
ae6bc904d5
WGPU: Fixed 32-bit build, viewFormatCount narrowing since #3959 . ( #3995 )
2026-09-23 21:17:38 -07:00
Branimir Karadžić
81d81fba72
GL: Fixed timer query stall without a swap. WGPU: Reset read-only depth/stencil for swap chains. Fixed occlusion query result on handle reuse. ( #3993 )
2026-09-19 21:59:40 +00:00
Sam
e693f8f72d
GL: fix data-less compressed texture arrays and stale m_immutableStorage on handle reuse ( #3992 )
2026-09-19 12:41:29 -07:00
Branimir Karadžić
42f028887c
D3D11: Skipped MSAA resolve of integer formats. WGPU: Fixed uninitialized frame buffer size, and read-only depth/stencil pipeline state. ( #3991 )
2026-09-19 05:42:34 +00:00
Branimir Karadžić
fd070e679f
D3D12: Fixed depth-stencil plane states. ( #3990 )
2026-09-18 19:16:27 -07:00
Branimir Karadžić
1fb47dca7a
VK/WGPU: drain a view's blits and uniform cache before its dispatches. VK: block on the swapchain image of window framebuffers on a headless device ( #3989 )
2026-09-18 13:41:57 +00:00
Branimir Karadžić
1512f4d961
WebGL: EAC texture formats have no sRGB variant. ( #3988 )
2026-09-17 21:23:01 -07:00
U U U
d6890aa5c2
WebGL: Enabled EAC texture formats via WEBGL_compressed_texture_etc extension. ( #3980 )
...
EACR11/EACR11S/EACRG11/EACRG11S fell through to the default case, so on
WebGL the extension was never enabled and EAC textures silently failed
to load. Follow-up to #3487 .
2026-09-17 21:07:22 -07:00
Branimir Karadžić
ca8e4528a2
GL: Fixed main back buffer sRGB state with MSAA. ( #3987 )
2026-09-17 21:04:27 -07:00
vrimar
3ca5a63428
Recreate the main swap chain when only its flags change on reset. ( #3986 )
...
Context::reset moves the per-surface flags (MSAA, sRGB, HiDPI) off the reset flags onto SwapChain::flags, but every backend's updateResolution gate still compared only the stripped reset flags, so a runtime MSAA change was dropped.
(cherry picked from commit 1ffb270f91a63403c069fcf652bd2411d962b437)
2026-09-18 01:05:41 +00:00
Branimir Karadžić
5777fe1f66
D3D11/12/WGPU: Retried refused swap chain resize. D3D12/MTL/VK/WGPU: Fatal on failed pipeline creation. ( #3985 )
2026-09-17 14:14:56 +00:00
Branimir Karadžić
b380f0ee73
Fixed explicit swap chains in a headless init: MTL screenshots, MTL/VK/WGPU window list compaction, MTL/WGPU user depth pipeline format. ( #3984 )
2026-09-17 02:26:46 +00:00
Branimir Karadžić
6e6c062e1f
Closed the gaps between the GLSL and HLSL halves of bgfx_shader.sh. ( #3983 )
2026-09-16 04:30:06 +00:00
Branimir Karadžić
ee7f9f66e2
Fixed EGL headless bootstrap. D3D12: fixed explicit swap chain MSAA state. GL: Cleared and blitted texture slices. ( #3981 )
2026-09-15 05:56:24 +00:00
Branimir Karadžić
bd85653546
Added cube array samplers. ( #3979 )
2026-09-14 00:54:40 +00:00
Branimir Karadžić
dd38b306c8
VK: Fixed image layout tracking for read-only depth/stencil attachments. ( #3978 )
2026-09-13 09:49:40 -07:00
Branimir Karadžić
9499caafb0
Optimized bind state hashing, and matrix cache reservation. ( #3977 )
2026-09-13 06:22:34 +00:00
Branimir Karadžić
8ee74e8260
Optimized encoder bind state, and uniform updates. ( #3976 )
2026-09-12 22:43:02 +00:00
Branimir Karadžić
7e8bb589f1
Added setUniformRef, BGFX_TEXTURE_SRGB_MUTABLE, and byte-range compute buffer bindings. ( #3974 )
2026-09-12 06:49:53 +00:00
Branimir Karadžić
5e4943cd0e
D3D12: Fixed swap chain resource release during reset and shutdown. ( #3973 )
2026-09-12 05:53:05 +00:00
Branimir Karadžić
90f0995f8e
Rebuilt shaders. ( #3972 )
2026-09-10 23:39:39 -07:00
Branimir Karadžić
2e51cb6aa9
Added depth control, sample mask, and read-only depth/stencil attachments. ( #3971 )
2026-09-11 05:22:53 +00:00
Branimir Karadžić
9b636df330
GL: Don't toggle primitive restart on WebGL. Fixes #3967 . ( #3969 )
2026-09-07 20:58:25 +00:00
Branimir Karadžić
6fb33c492b
Metal: Fixed externaly created device release. ( #3966 )
2026-09-06 10:42:02 -07:00
Branimir Karadžić
7293e6f75b
D3D11, D3D12: swap chain, clear and subresource state fixes. GL: debug group must be pushed and popped on the same context. ( #3965 )
2026-09-06 00:49:55 +00:00
Branimir Karadžić
8c8b6b5692
Raised renderer baseline, and removed caps every backend now supports. ( #3962 )
2026-09-05 05:24:56 +00:00
Branimir Karadžić
f3d4ad0df0
Metal: Fixed 3D texture blit. ( #3960 )
2026-09-04 18:45:26 -07:00
Branimir Karadžić
01dbbbc08c
Added swap-chain. ( #3959 )
2026-09-05 01:44:33 +00:00
Бранимир Караџић
1ac4eb3cdd
WebGPU: Fixed compressed texture update bounds, and pipeline cache key.
2026-09-03 05:26:33 +00:00
Бранимир Караџић
49d0c38c0c
D3D12: Fixed 3D UAV mip depth range.
2026-09-03 03:33:25 +00:00
Бранимир Караџић
5a2eec3246
Fixed matrix cache growth strategy. Fixes #3952 .
2026-09-02 16:48:04 +00:00
Бранимир Караџић
67edbbd72a
D3D12: Device removed extended data.
2026-09-02 05:51:25 +00:00
Бранимир Караџић
8dbdcf411a
ChunkedScratchBufferT: grow the ring where the write head is.
2026-09-02 03:12:42 +00:00
Бранимир Караџић
340ef142c3
Enable primitive restart for strip topologies.
2026-09-01 23:47:00 +00:00
Бранимир Караџић
2963e09d6b
DXGI: Use IDXGISwapChain2 to set frame latency.
2026-09-01 00:45:17 +00:00
Nolram
a4af1f49dc
Re-capitalised "nVidia" to "NVIDIA" where applicable. A minor change, but it aids consistency and is now in-line with NVIDIA's own naming policy. You're welcome Jensen. ( #3945 )
2026-08-31 01:17:29 +00:00
Branimir Karadžić
3fab221b95
Use bx::hasUniqueObjectRepresentation to detect undesired padding. ( #3943 )
2026-08-30 18:38:21 +00:00
Branimir Karadžić
a7c3e28ae0
Fixed RenderBind hash collision on unoccupied bindings. ( #3942 )
2026-08-30 17:41:36 +00:00
Branimir Karadžić
5929f9826c
VK: Fixed 3D to 2D blit, and compressed texture update region exceeding mip extent. ( #3939 )
2026-08-30 05:59:25 +00:00
Branimir Karadžić
c949b911fc
Reduce default footprint: optional debug text, drop unused shader copies. ( #3938 )
2026-08-29 22:32:32 -07:00
Moţ
4b4c138fb0
vulkan: use BC1_RGBA formats so TextureFormat::BC1 keeps its 1-bit alpha ( #3937 )
...
VK_FORMAT_BC1_RGB_UNORM_BLOCK has no alpha component, so sampling a BC1
texture on Vulkan always returns a = 1.0 and the 1-bit punch-through
alpha of the source data is silently discarded.
This contradicts bgfx's own definition of the format - bgfx.h documents
TextureFormat::BC1 as "5-bit R, 6-bit G, 5-bit B, 1-bit A" - and it
disagrees with every other backend:
D3D11/D3D12 DXGI_FORMAT_BC1_UNORM
OpenGL GL_COMPRESSED_RGBA_S3TC_DXT1_EXT
all of which decode the punch-through alpha. There is no separate BC1A
format in bgfx, so the RGB variant is not an intentional distinction.
Switching to the RGBA variants costs nothing in terms of support: if
textureCompressionBC is available, the specification requires all of
BC1-BC7 with the same feature set, so VK_FORMAT_BC1_RGBA_UNORM_BLOCK is
available wherever VK_FORMAT_BC1_RGB_UNORM_BLOCK is. Fully opaque BC1
blocks decode identically under both.
2026-08-29 09:06:54 -07:00
Branimir Karadžić
7d81d2874b
Submit optimization: skip unused views, hash only occupied bind slots, index reserved FrameArenaT directly. ( #3936 )
2026-08-28 23:37:13 +00:00
Branimir Karadžić
f73862c579
D3D12: Fixed texture readback resource state. Disabled refcount asserts for external device. ( #3935 )
2026-08-27 19:27:48 +00:00
Branimir Karadžić
a81591b15f
EGL, WGL: Fixed caller-provided context handling. ( #3934 )
2026-08-27 18:12:48 +00:00
Branimir Karadžić
7f0b9c930b
Fixed amalgamated build. ( #3933 )
2026-08-27 16:08:40 +00:00
Branimir Karadžić
732724bf75
VK, WebGPU: Fixed frame buffer resize on headless reset. ( #3931 )
2026-08-26 06:40:45 +00:00