Commit Graph

54 Commits

Author SHA1 Message Date
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ć
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ć
c9e98db704 Cleanup. (#3679) 2026-04-21 03:58:53 +00:00
Branimir Karadžić
78076b02eb WebGPU: Fixed formats. (#3676) 2026-04-19 16:35:06 -07:00
Branimir Karadžić
ef52d84ca4 Cleanup. (#3670) 2026-04-18 18:43:48 +00:00
Branimir Karadžić
c5df1d91e8 Cleanup. (#3669) 2026-04-18 06:11:44 +00:00
Branimir Karadžić
a721b869ea WebGPU: Populate texture format caps from specs. (#3665) 2026-04-17 06:19:03 +00:00
Branimir Karadžić
0b0ddb7f6b Added generate mips on frame buffer resolve. (#3664) 2026-04-17 05:04:57 +00:00
Branimir Karadžić
a73c12db8f Added bgfx::AttribType::Int8/Uint16. (#3626) 2026-03-09 06:13:51 +00:00
Бранимир Караџић
de0cdd0740 Updated Tint. 2026-02-21 19:54:05 -08: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ć
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
Branimir Karadžić
fa852ad431 WebGPU: Use zero init to simplify struct init. (#3561) 2026-01-22 07:09:40 +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ć
9ca7782405 WebGPU: Expect release after destroy. (#3557) 2026-01-19 19:30:11 +00:00
Branimir Karadžić
717475d615 Various WebGPU fixes based on feedback. (#3554)
* Unset BGFX_CAPS_VERTEX_ATTRIB_UINT10. Remove MSAA 2x.

* Use destroy instead of release for buffers, textures, and querysets.

* Disable robustness, lazy clear resources in release builds.

* No need to pass entry point when there is only one entry point.
2026-01-16 19:29:31 +00:00
Branimir Karadžić
4baed6e076 Happy New Year! (#3550) 2026-01-14 16:26:51 +00:00
Branimir Karadžić
cded7e8d6c Fixed amalgamated build. (#3546) 2026-01-10 17:39:37 +00:00
Branimir Karadžić
868c66e1ed Added WebGPU. (#3544) 2026-01-10 04:09:39 +00:00
Бранимир Караџић
49c0e49527 Removed WebGPU. (#3198) 2023-11-09 17:15:22 -08:00
Branimir Karadžić
290295136b Added bx::Location, and removed allocator macros. 2023-04-23 19:19:22 -07:00
Raziel Alphadios
c2bc5177b5 Add support for remaining unsupported ASTC formats (#2963)
* Add support for remaining unsupported ASTC formats
Add new ASTC formats into pixelformats example and ninja scripts
Rebuild ASTC textures

* Update idl and generate
Move comma in pixelformats

Co-authored-by: Raziel Alphadios <raziely@gmail.com>
2022-10-25 17:03:40 -07:00
jwdevel
f1f77a6cd3 Record frame num in view stats (#2908)
* Add 'frameNumber' to Frame struct

Previously, the frame number returned from bgfx::frame() was tracked separately in the Context. Now,
we store that information in the Frame. This will allow us to attach the frame number to ViewStats.

* Add frame number to ViewStats

When ViewStats are enabled, we tag each timer query with the current frame number, then include
that information in the final results. In this way, clients can correlate specific work that they
submitted to specific GPU timing information.

NOTE: Some backends not implemented, yet. They will always have 0 for frame number.
The ones which are implemented are:
 * OpenGL
 * Vulkan
 * D3D 9,11,12
 * Noop
2022-09-18 19:09:48 -07:00
Sandy
85910e9778 Add BGR versions of 16 bit formats (#2897)
* pixelformats: Add BGRA4

* pixelformats: Add BGR5A1

* pixelformats: Add B5G6R5

* make idl
2022-08-25 16:08:06 -07:00
Бранимир Караџић
4581f14cd4 Happy New Year! 2022-01-15 11:59:06 -08:00
Branimir Karadžić
7bfb8a7b38 More fixes. 2021-10-25 19:15:55 -07:00
Hugo Amnov
9320a20e72 WebGPU: Don't need bindings backward compatibility (#2488) 2021-04-21 12:17:55 -07:00
Hugo Amnov
ec36cf9872 Simplify SPIRV bindings shifts (shaderc bin version 11) (#2487) 2021-04-21 09:33:12 -07:00
Hugo Amnov
9695c0b155 WebGPU: Update to Attachments changes (#2485) 2021-04-21 07:39:38 -07:00
Hugo Amnov
24be4a38d0 WebGPU: Add texture format to shaderc (bin version 10) + streamline storage Images in shaders (#2482)
* WebGPU: Add texture format (shaderc bin version 10)

* WebGPU: Simplify storage images + Fix format decorations

* Shaderc: Cleanup Texture name assumption in textures
2021-04-20 20:18:49 -07:00
Hugo Amnov
cf8ff18263 WebGPU update (#2477)
* WebGPU: Update to latest changes + Fixes

* WebGPU: Fix RG11B10F format as framebuffer
2021-04-18 11:39:52 -07:00
pezcode
302c978b1d Make shaderc output independent of backend enums (#2411)
* Fix typo in SPIR-V id

* Use backend-agnostic shaderc output

...as opposed to directly storing and comparing against Vulkan and WebGPU enums. This is backwards-compatible with existing code and shaders.

* Remove comments and Undefined value
2021-02-28 12:38:12 -08:00
pezcode
f983367d75 Vulkan synchronization fixes (#2386)
* Fix out of bounds index for unknown device types

* Vulkan: Insert barrier before image host reads

* Vulkan: Make commands wait for the wait semaphore

Making commands wait at BOTTOM_OF_PIPE is a no-op, resulting in instant execution

* Vulkan: Insert barrier between views/dispatches instead of waiting on the host

* Vulkan: Fix determination of access flag from image layout

This fixes two write-after-write races with copy commands after a layout transition to VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL

* Add BGFX_MAX_FRAME_LATENCY define

Affected backends either used a magic value of 3 or defined their own XX_MAX_FRAMES_IN_FLIGHT to be 3

* Vulkan: Include indirect draw in pipeline barrier

* Vulkan: honor init.resolution.numBackBuffers for swapchain size

* Make max frame latency configurable at compile time
2021-02-11 20:29:52 -08:00
Hugo Amnov
a515dd3c3d WebGPU update (#2364)
* Update WebGPU renderer to match new state of API

* Update WebGPU files
2021-01-19 15:18:30 -08:00
Бранимир Караџић
534733fe3c Cleanup. 2020-12-21 09:07:33 -08:00
Branimir Karadžić
5c304dad3b Fixed issue #2330. Added support for 32-bit indices in transient index buffer. 2020-12-15 19:01:25 -08:00
Бранимир Караџић
2b4bf6d913 Metal: Fixed screenshot. 2020-11-10 17:14:54 -08:00
pezcode
09c11bca29 Mip + blit fixes (#2281)
* D3D12: Fix readback for non-zero mip

* Fix blit with non-zero mip

This required clamping the blit extents to the mip size, which is moved out of the renderers now

* Assert formatting
2020-10-09 15:32:50 -07:00
Бранимир Караџић
e878147cf9 Added version info to debug stats. 2020-10-05 19:45:22 -07:00
Бранимир Караџић
3f6d049470 Fixed Emscripten function calls. 2020-06-19 09:31:32 -07:00
Бранимир Караџић
d86c16213e Cleanup. 2020-06-18 21:20:01 -07:00
Бранимир Караџић
2cbcb6ea90 RRenamed BX_CHECK to BX_ASSERT. 2020-06-16 10:06:18 -07:00
Бранимир Караџић
7676a2f2bd Cleanup. 2020-05-15 21:58:43 -07:00
Бранимир Караџић
30bda403f7 Cleanup. 2020-05-10 17:48:59 -07:00
Hugo Amnov
e1c211b537 WebGPU various small fixes (#2140) 2020-05-10 17:48:25 -07:00
Бранимир Караџић
f13e5adf4b Cleanup. 2020-05-08 19:57:18 -07:00
Hugo Amnov
66ce0d59c9 Fix order of uniforms staging and render commands (#2137) 2020-05-08 12:51:02 -07:00
Бранимир Караџић
aaf7e2429b Cleanup. 2020-05-08 11:43:38 -07:00