Commit Graph

519 Commits

Author SHA1 Message Date
Branimir Karadžić
d0f3beb0f7 Fixed warnings. (#3794) 2026-06-28 06:15:49 +00:00
Branimir Karadžić
d1c217ae41 D3D12: grow scratch descriptor heap on demand. (#3792) 2026-06-28 05:46:12 +00:00
Branimir Karadžić
ea0cf65d08 D3D12: ExecuteIndirect sucks on everything except maybe AMD. (#3788) 2026-06-26 23:00:07 -07:00
Branimir Karadžić
d6a333709d D3D12: Fix ExecuteIndirect path. (#3787) 2026-06-27 04:48:01 +00:00
Branimir Karadžić
481607d545 D3D12: Reduce per-draw submit cost. Add texture stress to drawstress. (#3784) 2026-06-26 07:16:28 +00:00
Branimir Karadžić
73629ada72 Dedup bindings per encoder. (#3772) 2026-06-20 05:22:12 +00:00
Branimir Karadžić
4f101d98be Don't present BGFX_FRAME_FLUSH frames. Fixed D3D12/VK flush sync. (#3771) 2026-06-19 19:39:42 +00:00
Branimir Karadžić
853173eb7c D3D12: Re-derive heap properties per device. Fixes adapter switch. (#3769) 2026-06-19 07:12:01 +00:00
Branimir Karadžić
befae614da Fix amalgamated build. (#3760) 2026-06-15 17:13:38 +00:00
Branimir Karadžić
d5ea625272 Added video decoder support. (#3756) 2026-06-14 06:49:15 +00:00
Branimir Karadžić
1dac10c2ad Fixed transcoded texture update using wrong decode/copy pitch with explicit source pitch. (#3747) 2026-06-08 23:02:33 -07:00
Branimir Karadžić
f19f599cde D3D11/D3D12/VK: Fixed partial update of transcoded texture overrunning buffer. Closes #2713. (#3744) 2026-06-08 21:52:24 -07:00
Branimir Karadžić
48181761e1 D3D12: LRU-recycle sampler descriptor blocks to fix heap exhaustion crash. Closes #3093. (#3743) 2026-06-08 21:31:31 -07:00
Branimir Karadžić
e92490c3f7 Added _layer parameter to bgfx::readTexture for texture array/cubemap readback. Closes #3235. (#3737) 2026-06-07 09:22:37 -07:00
Branimir Karadžić
944ccff1e4 D3D11/D3D12/VK/WebGPU: Fixed independent blend _rgba. (#3736) 2026-06-07 08:37:37 -07:00
falia18
34fa33c40b D3D12: fix D3D12_VERTEX_BUFFER_VIEW stride when both vertex layout handles are valid (#3250) 2026-06-06 20:39:08 -07:00
Branimir Karadžić
81b63b81c9 Unified ChunkedScratchBuffer implementation. (#3730) 2026-06-07 03:29:09 +00:00
Branimir Karadžić
91805892e9 Unified StateCache implementation. (#3729) 2026-06-06 18:19:56 -07:00
Branimir Karadžić
11151de78d Added setTexture view API. (#3728) 2026-06-06 17:34:02 +00:00
Branimir Karadžić
b0f61277f5 D3D12/WebGPU: Support cubemap/2d-array auto mip generation. Issue #3441. (#3724) 2026-06-02 05:40:36 +00:00
Branimir Karadžić
7d03e160fa Fix MSAA + mipmaps combination on D3D11/D3D12/Vulkan/Metal. (#3717) 2026-05-21 22:53:17 +00:00
Vincent Bousquet
a8250ceaf9 Lighter per frame VSync on/off for D3D11, D3D12 & Vulkan (#3706) 2026-05-17 15:44:33 +00:00
Branimir Karadžić
65f9425d8c Updated to new SIMD. (#3699) 2026-05-03 18:51:10 +00:00
Branimir Karadžić
331783cf9a Renamed bx::uint32_min/max/clamp/cntlz/cnttz/mod to typed equivalents. (#3692) 2026-04-27 04:19:08 +00:00
Branimir Karadžić
50bf41b224 Fixed stremMask check. (#3682) 2026-04-21 11:21:40 -07:00
Branimir Karadžić
4481b9b46b Cleanup. (#3674) 2026-04-19 16:49:37 +00:00
Vincent Bousquet
d0def7d137 DX12: use discard instead of sequential flip (#3667) 2026-04-19 16:46:31 +00:00
Branimir Karadžić
c5df1d91e8 Cleanup. (#3669) 2026-04-18 06:11:44 +00:00
Branimir Karadžić
0b0ddb7f6b Added generate mips on frame buffer resolve. (#3664) 2026-04-17 05:04:57 +00:00
MatthewBeshay
a2d3c83f0d Fix D3D12 fragment shader constant buffer misalignment (#3663)
The fragment shader CBV address was computed as gpuAddress + vsh->m_size,
but D3D12 requires constant buffer view addresses to be 256-byte aligned
(D3D12_CONSTANT_BUFFER_DATA_PLACEMENT_ALIGNMENT). When the vertex shader
constant buffer exceeds 256 bytes without being a multiple of 256, the
fragment shader reads from a misaligned address, producing corrupt uniform
values.

This causes rendering artifacts or completely black output for any shader
program where the VS constant buffer size is not a multiple of 256 bytes,
since the fragment shader receives incorrect uniform data (e.g. a non-zero
alpha reference threshold that discards all pixels).

The fix aligns the VS constant buffer size to 256 bytes before placing the
FS constants, and uses the aligned offset when computing the FS CBV address
in both the main render loop and the blitter path.
2026-04-15 21:10:01 +00:00
Vincent Bousquet
e9a4f671bc DX12: fix invalid state when creating a BLIT_DST texture without mem block (#3656)
* DX12: fix invalid state when creating a BLIT_DST texture without mem block

* Only set state when it's not external texture.

---------

Co-authored-by: Branimir Karadžić <branimirkaradzic@gmail.com>
2026-04-14 23:28:37 +00:00
Vincent Bousquet
173be4d0fa DX12: fix blitting inside a texture 2D array (#3657) 2026-04-09 21:21:17 +00:00
Branimir Karadžić
7c0d813b83 Remove unused shader parsers. (#3651)
* Removed shader parsers.

* Removed shader parsers.
2026-04-05 02:54:27 +00:00
Branimir Karadžić
a73c12db8f Added bgfx::AttribType::Int8/Uint16. (#3626) 2026-03-09 06:13:51 +00:00
Branimir Karadžić
91814c9729 Added flag for texture formats that can be used as back-buffer format. (#3605) 2026-02-22 02:44:26 +00:00
Branimir Karadžić
856208328c Use back buffer format when capturing screen shot. (#3603) 2026-02-20 00:46:41 +00:00
Branimir Karadžić
40e614c45d Added external texture parameter. (#3596)
* Added external texture parameter.

* Use uint64_t instead of uintptr_t for external texture because VkImage is always 64-bit.
2026-02-18 20:12:37 +00:00
Seremo
c5387cfec2 DX11/DX12: Fix detecting depth capabilities for BGFX_CAPS_FORMAT_TEXTURE_MSAA (#3562) 2026-01-22 18:34:12 +00:00
Branimir Karadžić
f4b6bc79e2 D3D12: Fixed texture update crash. (#3560) 2026-01-21 20:31:19 +00:00
Branimir Karadžić
33541e4bab D3D12: Added DXIL support. (#3558)
* Added DXIL support.

* Fixed Linux build.

* Fixed mingw build.

* Fixed build.
2026-01-20 01:43:31 +00:00
Branimir Karadžić
4baed6e076 Happy New Year! (#3550) 2026-01-14 16:26:51 +00:00
Branimir Karadžić
d9d99f51ad D3D12: Added pipeline stats. (#3534) 2026-01-07 04:44:12 +00:00
Branimir Karadžić
241e9c3330 Added Init.fallback option. Cleanup. (#3522) 2025-12-24 04:29:32 +00:00
Branimir Karadžić
f510ab6db8 Cleanup. (#3501) 2025-11-20 03:13:42 +00:00
Branimir Karadžić
a617e13eeb D3D12: Fixed crash when PIX is not present. (#3489) 2025-11-11 23:34:13 +00:00
Branimir Karadžić
9e8ecf4af4 Added EAC texture formats. (#3487) 2025-11-11 08:39:24 -08:00
Branimir Karadžić
35911ac2d9 Added uniform frequency. (#3485)
* Added uniform frequency.

* Cleanup.

* Cleanup.
2025-11-10 23:41:33 +00:00
Бранимир Караџић
358223c63e Added variable rate shading. 2025-11-06 17:21:53 -08:00
Branimir Karadžić
bcf89eb860 Cleanup. 2025-11-01 21:53:14 -07:00
Бранимир Караџић
f51e393d7b Cleanup. 2025-10-31 08:50:20 -07:00