Commit Graph

51 Commits

Author SHA1 Message Date
Бранимир Караџић 796acfa98b Added Attachment.numLayers needed for viewport layer array support. 2020-12-12 10:04:14 -08:00
Бранимир Караџић 8dd39d42df Cleanup. 2020-12-02 21:08:25 -08:00
Aleš Mlakar 93f0cdfaf4
IDL Beef bindings (#2290)
Co-authored-by: Aleš Mlakar <ales.ambits@gmail.com>
2020-10-19 06:54:18 -07:00
kingscallop 436b7fab9e
Adds UAV support for D3D12, Vulkan and reworked for OpenGL, D3D11 (#2119)
* Adds UAV support for D3D12, Vulkan and reworked support for OpenGL, D3D11

UAV support is now uniform across compute and draw.
To set a UAV you just use bgfx::setImage() and IMAGE2D in the shader, just like in compute.
Due to these changes shaders will have to be recompiled.

The changes include:
	- D3D11 requires patching of the UAV slot number (which is now done by modifying the DXBC instead of using a macro)
	- If the DXBC binary includes a debug chunk, that is also patched to match the new slot number
	- All the other renderers don't need any kind of patching
	- There are some shader annotations to better convert the UAV format used in hlsl to spirv

Possibility of further enhancements:
	- bgfx::setViewFrameBuffer() only supports binding to a framebuffer or, using BGFX_INVALID_HANDLE, to bind the default backbuffer. This doesn't allow for the case where there is no need to bind to either one of them, for example when using a fragment shader only to read and write to an UAV.

* Bump shader version, because they need to be recompiled.
2020-10-04 21:51:41 -07:00
云风 0e1c095c3b
add *_with_layout APIs (#2251) 2020-09-01 20:19:14 -07:00
云风 4d6445896e
Add missing VertexLayoutHandle for C APIs (#2249) 2020-09-01 08:36:52 -07:00
Бранимир Караџић 8065659e90 Added configurable minimum resource command buffer size. 2020-06-03 17:58:54 -07:00
Бранимир Караџић 977188e9de Added weldVertices 32-bit indices support. 2020-05-30 21:38:41 -07:00
Бранимир Караџић 1c063fdc67 Fixed spelling. 2020-05-30 08:22:08 -07:00
Hugo Amnov b62302631e
Add Webgpu backend (#2132)
* WebGPU first draft (shaderc bin version 8)

* WebGPU scripts
2020-05-08 08:53:53 -07:00
Бранимир Караџић f2e79bbe41 Fixed #2133. 2020-05-03 19:58:15 -07:00
Бранимир Караџић 7792a893af Cleanup. 2020-04-25 09:50:52 -07:00
Бранимир Караџић 00d1225cc6 Updated docs. 2020-04-16 21:27:48 -07:00
Бранимир Караџић 6a1db4c2a2 Updated docs. 2020-04-14 20:13:22 -07:00
Бранимир Караџић 000a3b704c Cleanup. 2020-04-14 08:37:07 -07:00
Бранимир Караџић 06460b8ac2 Fixed discard flags. 2020-04-02 19:04:13 -07:00
Бранимир Караџић 23f9ba6552 Cleanup dicard flags. 2020-04-01 19:23:40 -07:00
Cedric Guillemet dbb83d2525 PR feedback 2020-03-18 02:14:20 +00:00
Cedric Guillemet 0881d98bd2 Discard flags for submit call 2020-03-18 02:14:20 +00:00
Vladimir Vukicevic 9499acce56 Add Valid property to handle types 2020-02-18 17:54:55 +00:00
Vladimir Vukicevic 8165a837a7 CSharp bindings: move DllName definition to other, optional file 2020-02-05 18:31:31 -08:00
Бранимир Караџић 880f932cb8 Fixed issue #2002. 2020-01-22 19:54:14 -08:00
Бранимир Караџић b14f9dc280 Cleanup. 2020-01-21 20:08:48 -08:00
Бранимир Караџић de9a508409 Cleanup. 2020-01-21 09:16:55 -08:00
Cedric Guillemet 9ee39e8241 PR feedback 2020-01-21 09:11:53 -08:00
Cedric Guillemet b4cac17b93 default parameters 2020-01-21 09:11:53 -08:00
Cedric Guillemet 4b83e0f5bc discard flags 2020-01-21 09:11:53 -08:00
Бранимир Караџић 4eb5a125c6 Updated API version. 2019-10-31 07:31:09 -07:00
Sandy c7950c6db3 view stats: Make CPU and GPU timestamps available (#1921)
* view stats: Make GPU begin and end times available

* view stats: Make CPU start and end times available

* view stats: Remove redundant `gpuTimeElapsed`

Value can be derived by `gpuTimeEnd - gpuTimeBegin`

* view stats: Remove redundant `cpuTimeElapsed`

Value can be derived by `cpuTimeEnd - cpuTimeBegin`
2019-10-31 07:30:35 -07:00
Бранимир Караџић bd9600e167 Fixed IDL. 2019-10-25 20:13:21 -07:00
Бранимир Караџић ff3a629dd4 Added D bindings. 2019-10-09 07:24:51 -07:00
Бранимир Караџић b079e67426 Cleanup. 2019-08-17 21:35:20 -07:00
Leandro Freire 1db46f4fe6 Rename variables and constants 2019-08-17 12:32:16 -07:00
Leandro Freire 855623e153 Rename VertexDecl to VertexLayout 2019-08-13 18:42:01 -07:00
Бранимир Караџић d5fcbf98cf Updated IDL. 2019-07-14 21:19:46 -07:00
Бранимир Караџић 6b32a32bb2 IDL C#: Added flag comments. 2019-07-14 18:23:57 -07:00
Бранимир Караџић 45fb76865e IDL C#: Added flag comments. 2019-07-12 22:40:21 -07:00
Бранимир Караџић 541a379722 IDL C#: Added enum comments. 2019-07-11 21:31:18 -07:00
Бранимир Караџић 758641c92d IDL C#: Generated bindings. 2019-07-10 21:28:00 -07:00
Sebastian Marketsmueller e938ddf88c c# bindings: bring back bool as params, only replace by byte in structs. (#1813)
* fix some c# bindings gen: support arrays, move chars to bytes, marshal char* return correctly

* bring back bool as parameters only
2019-07-10 21:27:03 -07:00
Бранимир Караџић f0caf7bfb7 IDL C#: Static counts. 2019-07-09 22:43:50 -07:00
Sebastian Marketsmueller 1416c5981d fix some c# bindings gen: support arrays, move chars to bytes, marshal char* return correctly 2019-07-10 04:55:33 +00:00
Vladimir Vukicevic c688a66d89 Make c# bindings bgfx a static class; make it public; put it in a namespace 2019-07-09 01:35:09 +00:00
Бранимир Караџић 63a4fe7750 IDL C#: Added params XML docs. 2019-07-08 07:51:39 -07:00
Бранимир Караџић 102b3d2b39 IDL: Updated codegen. 2019-07-07 18:41:26 -07:00
Бранимир Караџић ceba5d8b24 Cleanup. 2019-07-06 11:53:04 -07:00
Бранимир Караџић deb7f2b23f IDL C#: Removed C++ only functions. 2019-07-06 11:25:12 -07:00
Бранимир Караџић d73a5c3441 IDL: Fixed nested structs. 2019-07-06 10:15:41 -07:00
Бранимир Караџић d01601f6e4 IDL: Added XML comments. 2019-07-05 15:59:19 -07:00
Бранимир Караџић 6c022fcc58 IDL: Fixed functions that require _this. 2019-07-05 08:19:45 -07:00