bgfx/scripts
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
..
bgfx-codegen.lua Updated IDL scripts. 2019-07-04 18:47:08 -07:00
bgfx.doxygen Switching to genie. 2014-09-10 21:04:42 -07:00
bgfx.idl Adds UAV support for D3D12, Vulkan and reworked for OpenGL, D3D11 (#2119) 2020-10-04 21:51:41 -07:00
bgfx.lua Fixed build. 2020-06-20 09:06:37 -07:00
bgfx.natvis Updated natvis. 2020-09-30 13:49:34 -07:00
bindings-cs.lua Add Valid property to handle types 2020-02-18 17:54:55 +00:00
bindings-d.lua Add D language bindings generator (#1907) 2019-10-09 07:23:17 -07:00
build.ninja using meshoptimizer for vertex cache/fetch optim and index/vertex buffer compression 2019-04-13 16:07:06 +02:00
codegen.lua Fixed IDL generator mix of short/long Doxygen comments. 2020-05-30 09:21:49 -07:00
doxygen.lua Updated IDL scripts. 2019-07-04 18:47:08 -07:00
example-common.lua Removed support for SteamLink (discontinued 11/2018). 2020-03-11 21:51:55 -07:00
genie.lua Updated version number. 2020-09-05 11:24:50 -07:00
geometryc.lua Renamed vertexdecl.* to vertexlayout.* 2020-03-28 20:06:03 -07:00
geometryv.lua Update examples to build on Emscripten Wasm. Add separate wasm and wasm2js targets. (#2145) 2020-05-16 19:45:55 -07:00
idl.lua Updated IDL. 2019-07-14 21:19:46 -07:00
shader-embeded.mk Happy New Year! 2020-01-14 21:37:06 -08:00
shader.mk Happy New Year! 2020-01-14 21:37:06 -08:00
shaderc.lua Updated glslang. 2020-07-10 17:17:00 -07:00
temp.bgfx.h Fixed typo. 2020-02-10 08:59:34 -08:00
temp.bgfx.idl.inl Happy New Year! 2020-01-14 21:37:06 -08:00
temp.defines.h Happy New Year! 2020-01-14 21:37:06 -08:00
texturec.lua Happy New Year! 2020-01-14 21:37:06 -08:00
texturev.lua Update examples to build on Emscripten Wasm. Add separate wasm and wasm2js targets. (#2145) 2020-05-16 19:45:55 -07:00
tools.mk Happy New Year! 2020-01-14 21:37:06 -08:00