Commit Graph
869 Commits
Author SHA1 Message Date
Branimir Karadžić e4c9e10ca9 Replaced per-view sequence counter with render item index. (#4013) 2026-10-02 04:52:42 +00:00
Branimir Karadžić 8d4af17207 Fixed leaks when init fails. (#4012) 2026-10-01 19:01:49 +00:00
Branimir Karadžić cad0fde4a4 GL: Return from init on context creation failure instead of fatal. (#4011) 2026-10-01 16:17:27 +00:00
Branimir Karadžić 7346c3e731 Reduced per-view memory usage. (#4010) 2026-10-01 06:08:47 +00:00
Branimir Karadžić 997b0cfe36 Fixed MRT clear with UINT8_MAX palette index clearing the attachment on clear quad. (#4006) 2026-09-30 12:06:59 -07:00
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ć 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
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ć 2e51cb6aa9 Added depth control, sample mask, and read-only depth/stencil attachments. (#3971) 2026-09-11 05:22:53 +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ć 01dbbbc08c Added swap-chain. (#3959) 2026-09-05 01:44:33 +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
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ć 7f0b9c930b Fixed amalgamated build. (#3933) 2026-08-27 16:08:40 +00:00
Branimir Karadžić 1dfc38978d D3D12: Fixed scratch descriptor heap sizing. Added present pacing for window frame buffers. (#3930) 2026-08-26 06:23:28 +00:00
Branimir Karadžić 0432b5d3c5 Reworked blit to use regions, added buffer blit and read buffer. (#3924) 2026-08-25 03:31:09 +00:00
Branimir Karadžić 91b3aa3785 Fix stencil-aspect readback, depth format reporting, and blit bugs. (#3910) 2026-08-21 00:51:39 +00:00
Branimir Karadžić 35a98dd645 Grow per-frame storage on-demand instead statically allocating for the maximum. (#3900) 2026-08-16 17:26:25 -07:00
Branimir Karadžić 0e698a6ad2 Metal: Fixed swizzled format caps, sampler border color, headless render pass, and empty frame buffer validation. (#3896) 2026-08-14 23:41:57 -07:00
Branimir Karadžić 7a09f00333 Fixed MSAA/framebuffer, format caps, stencil, and debug name issues. (#3895) 2026-08-15 06:08:05 +00:00
Branimir Karadžić 3d3b08778e Support depth-1 volume textures. (#3883) 2026-08-12 18:24:25 -07:00
Branimir Karadžić b99e390016 Fixed blits and cached uniforms submitted at wrong view when setViewOrder is used. (#3872) 2026-08-05 21:44:21 +00:00
Branimir Karadžić 8377801ee0 Add BC4S, BC5S, BC6HU, RGB10A2U and D32FS8 texture formats. (#3857) 2026-07-29 21:25:53 +00:00
Branimir Karadžić 1862bf0480 Guard against undersized texture updates. Fix compute image views. (#3856) 2026-07-29 14:10:57 +00:00
Branimir Karadžić ce18bdb6c6 Allow negative x/y in bgfx::setViewRect. (#3848) 2026-07-25 15:04:06 +00:00
Branimir Karadžić 435627021d Added clear texture API. (#3836) 2026-07-16 05:41:58 +00:00
Branimir Karadžić a4555482f9 Increased number of texcoord attributes, increased instance data, added int32/uint32 vertex attributes. (#3832) 2026-07-14 05:15:13 +00:00
Branimir Karadžić 6eb09a4a9b Added setImage with array layer range for compute images. (#3829) 2026-07-13 04:19:07 +00:00
Branimir Karadžić 6425068e04 Fixed bgfx::Init default numDrawCalls/numDrawCallsPeakFrames. (#3816) 2026-07-08 19:21:52 +00:00
Branimir Karadžić a62a6f008b Fixed indexed draw indirect with dynamic/transient index buffers. (#3813) 2026-07-06 21:45:53 +00:00
Branimir Karadžić e8ad6b69d7 Fixed alignment issue. Closes #3809. (#3810) 2026-07-04 04:49:00 +00:00
Branimir Karadžić 63a75bc0ea Fixed s_renderFrameCalled cleanup. (#3804) 2026-07-01 05:31:36 +00:00
Branimir Karadžić 86ad82cfe2 Reduce amount of memory used. Allow dynamic draw call buffer resizing per frame. (#3790) 2026-06-28 05:05:25 +00:00
Branimir Karadžić d6a333709d D3D12: Fix ExecuteIndirect path. (#3787) 2026-06-27 04:48:01 +00:00
Branimir Karadžić bb86d0a221 Reduce binary size when features are not used. (#3781) 2026-06-25 02:49:38 +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ć a0959eaf39 Do not set default BGFX_RESOLVE_AUTO_GEN_MIPS to depth textures. (#3766) 2026-06-17 16:39:33 +00:00
Branimir Karadžić 2f8d0d5f7e Validate depth attachments don't use BGFX_RESOLVE_AUTO_GEN_MIPS. Closes #2862. (#3764) 2026-06-16 21:26:46 -07: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ć bd0137f3fb Asserted vertex layout override stride matches buffer stride. Closes #2762. (#3745) 2026-06-08 22:06:29 -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ć 11151de78d Added setTexture view API. (#3728) 2026-06-06 17:34:02 +00:00
Branimir Karadžić 65f9425d8c Updated to new SIMD. (#3699) 2026-05-03 18:51:10 +00:00
ShuangLiu1992 cceedb60cf Fix: reset s_renderFrameCalled in bgfx::shutdown() to allow re-init (#3690)
bgfx::renderFrame() sets s_renderFrameCalled = true on its first call
(line 1541) and never clears it. bgfx::shutdown() resets s_threadIndex
to 0 (line 3958) but leaves s_renderFrameCalled sticky, which means
that on a 2nd renderFrame after shutdown the gate at line 1534 still
runs BGFX_CHECK_RENDER_THREAD(). That assertion checks
(s_ctx != NULL && single-threaded) || (~BGFX_API_THREAD_MAGIC == s_threadIndex);
both branches fail post-shutdown (s_ctx is NULL, s_threadIndex is 0),
and the assertion fires in debug builds — blocking re-init of the
bgfx context within the same process.

Adding the symmetric s_renderFrameCalled reset to shutdown() makes
shutdown leave bgfx in the same state as a fresh process, so a
subsequent renderFrame()+init() pair behaves like the first one.

Verified locally: a downstream test that constructs an SDL+bgfx
context, runs a frame, destroys it, then constructs another from the
same thread now passes in debug builds with this patch (it asserts at
line 1536 without it).
2026-04-25 20:15:29 -07:00
Branimir Karadžić e528e9d880 Fixed stremMask check. (#3681) 2026-04-21 11:15:04 -07:00
Branimir Karadžić 6c820091e4 macOS: Fixed deprecated warning. (#3672) 2026-04-19 01:36:19 +00:00
Branimir Karadžić 0b0ddb7f6b Added generate mips on frame buffer resolve. (#3664) 2026-04-17 05:04:57 +00:00