Commit Graph

2065 Commits

Author SHA1 Message Date
Бранимир Караџић
35a9771c34 entry: Fixed reset logic. 2020-11-29 15:11:37 -08:00
Бранимир Караџић
86583e9bbd Cleanup. 2020-11-25 22:29:40 -08:00
Бранимир Караџић
3d01e274ff Added cubemap test texture. 2020-11-25 16:20:37 -08:00
Бранимир Караџић
2b4bf6d913 Metal: Fixed screenshot. 2020-11-10 17:14:54 -08:00
Cedric Guillemet
e06dd2435e
gcc fix warning (#2295)
error: extra ‘;’ [-Werror=pedantic]
2020-10-23 07:44:18 -07:00
Federico Bertola
d4b518ecae
Fixed reference to 'sqrt' (#2293) 2020-10-21 06:59:51 -07:00
Бранимир Караџић
626ca46aa0 Bounds: Overlap cone/plane. 2020-10-17 22:16:18 -07:00
Бранимир Караџић
3a8e0e2bb1 Fixed blit on cubemaps. 2020-10-09 20:47:50 -07:00
Бранимир Караџић
adf93db26b Updated ImGui. 2020-10-09 08:50:40 -07:00
Branimir Karadžić
729c6b98ed Rebuilt shaders. 2020-10-04 22:39:41 -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
Бранимир Караџић
b2259d7c11 Updated screenshots. 2020-09-19 20:05:25 -07:00
Branimir Karadžić
73508ac80f Fixed warnings. 2020-09-07 10:06:47 -07:00
Бранимир Караџић
66deeb10c2 21-deferred: Fixed depth format selection. 2020-09-05 12:15:07 -07:00
Wencey Wang
0093a67681
Fix Windows ARM build (#2254) 2020-09-02 08:31:39 -07:00
Бранимир Караџић
4d4ef74fe6 Fixed GCC warning.: 2020-09-01 20:21:58 -07:00
kingscallop
ba3be9affd
Fixes example 42 (#2235)
Because example 42 was using the shaders from example 07 (callback), which have
input vertex attributes position and color, while the mesh from example 42 has
attributes position and normal, this causes problems on Windows when using
AMD gpus (no bunny mesh would appear on the window).
2020-08-16 11:44:00 -07:00
kingscallop
e5d25a7d88
Fixes example 41 on OpenGL (#2234)
The glsl function findMSB is overriden, causing an error on Windows and Linux
when running on AMD or Intel gpus. Nvidia, for whatever reason, seems to allow
overriding the function.
2020-08-16 11:43:28 -07:00
kingscallop
a39b14cacc
Fixes example 37 on Windows using AMD GCN 1.0 gpus (#2232)
When compiling shader cs_gdr_stream_compaction.sc on GCN 1.0 gpus
the following error appears:

Compute link error: HW_UNSUPPORTED.
ERROR: Internal compile error, error code: E_SC_NOTSUPPORTED
Shader not supported by HW

These changes avoid the error.
2020-08-16 11:41:53 -07:00
kingscallop
988077804f
Fix X11 flicker when window is being resized (#2203) 2020-07-18 11:41:01 -07:00
Бранимир Караџић
8acb8383b0 Fixed issue #2201. 2020-07-16 06:57:18 -07:00
云风
ecb0143a40
update sdf see #2193 (#2196) 2020-07-06 23:43:21 -07:00
Бранимир Караџић
301629ed16 Cleanup. 2020-07-05 21:30:52 -07:00
Бранимир Караџић
7efb218fd1 Fixed issue #2192. 2020-07-03 00:07:46 -07:00
Бранимир Караџић
c08f2db901 02-metaballs: Added settings. 2020-07-02 20:55:07 -07:00
Бранимир Караџић
38ac02695d Fixed emscripten build. 2020-06-19 20:36:44 -07:00
Бранимир Караџић
77c974b69f Fixed use of BX_ASSERT in entry_html5. 2020-06-16 18:44:31 -07:00
Бранимир Караџић
2cbcb6ea90 RRenamed BX_CHECK to BX_ASSERT. 2020-06-16 10:06:18 -07:00
juj
75384ccfe1
Add checks for Emscripten API return values to make sure API calls are not failing (#2160) 2020-06-05 07:34:11 -07:00
Бранимир Караџић
0a80a7bfcc
Updated license text. (#2157) 2020-06-03 14:50:54 -07:00
Бранимир Караџић
d042d3d70a 42-bunnylod: Switched to flat shaded to better show LOD. 2020-06-01 11:47:38 -07:00
Бранимир Караџић
dba154036f Cleanup. 2020-05-31 15:41:18 -07:00
Бранимир Караџић
a53871ccdc Added screenshot. 2020-05-31 11:50:52 -07:00
Бранимир Караџић
99637d536b Fixed warning. 2020-05-31 11:09:13 -07:00
云风
d1586fcb38
Improve example 42 (#2156)
* rename to weldVertices

* cache to temp/bunnylod.cache

* use bgfx::weldVertices instead
2020-05-30 22:38:42 -07:00
Бранимир Караџић
adc701d611 Fixed warning. 2020-05-30 21:42:08 -07:00
Бранимир Караџић
dfaf816822 Cleanup. 2020-05-30 13:05:43 -07:00
Бранимир Караџић
a433c040d8 42-bunnylod: Better slider control towards 0. 2020-05-30 12:54:00 -07:00
Бранимир Караџић
4007876315 Fixed model. 2020-05-30 11:21:57 -07:00
Бранимир Караџић
a5f79320a5 Cleanup. 2020-05-30 11:12:10 -07:00
云风
be95d12307
Add examples 42 : BunnyLOD (#2155) 2020-05-30 10:49:06 -07:00
juj
098e6194d9
Update examples to build on Emscripten Wasm. Add separate wasm and wasm2js targets. (#2145) 2020-05-16 19:45:55 -07:00
Hugo Amnov
79321ffce2
Replace freetype with stb_truetype in font examples (#2139)
* Replace freetype with stb_truetype in font example

* Remove freetype
2020-05-10 17:44:14 -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
Бранимир Караџић
76e355e11f Updated Metal shaders. 2020-05-03 14:20:48 -07:00
Бранимир Караџић
cf170738b1 Updated Vulkan shaders. 2020-05-03 14:20:25 -07:00
Бранимир Караџић
90f30592bf Merge branch 'master' of github.com:bkaradzic/bgfx 2020-05-03 13:54:36 -07:00
Hugo Amnov
b48b084d25
Vulkan cleanup for Webgpu (#2127)
* Harmonize and simplify Vulkan SPIRV bindings mappings

* Handle Vulkan V-flip properly

* Update Embedded shaders
2020-05-03 13:54:30 -07:00
Бранимир Караџић
06d508a8e4 Updated makefile. 2020-05-03 13:54:20 -07:00
Hugo Amnov
f9b1a9f5d4
Vulkan cleanup and minor bug fixes (#2129) 2020-05-03 13:27:31 -07:00
Бранимир Караџић
d7abbecb38 Fixed maybe uninitialized warning. 2020-04-12 13:22:53 -07:00
Бранимир Караџић
b3d1460368 Cleanup. 2020-04-10 21:11:18 -07:00
Бранимир Караџић
cb604eb1fe Cleanup. 2020-04-10 12:02:29 -07:00
Бранимир Караџић
93f1d78cec Cleanup. 2020-04-08 18:10:31 -07:00
Бранимир Караџић
428040da52 Added texture-uv-filtering-test and renamed other test textures. 2020-04-07 19:02:57 -07:00
Attila Kocsis
0e8e22b049 entry_osx: setMouseLock implementation 2020-03-29 16:16:16 +00:00
attilaz
bf0a6f31af setMouseLock windows fix for _lock = false case 2020-03-28 22:01:59 +00:00
Бранимир Караџић
a577989f07 Cleanup. 2020-03-24 08:18:27 -07:00
Cedric Guillemet
dbb83d2525 PR feedback 2020-03-18 02:14:20 +00:00
Cedric Guillemet
c49db61702 missing conversion in bgfx_utils 2020-03-18 02:14:20 +00:00
Cedric Guillemet
063bd173ea wrong arguments for submit in example 41 2020-03-18 02:14:20 +00:00
Cedric Guillemet
0881d98bd2 Discard flags for submit call 2020-03-18 02:14:20 +00:00
Бранимир Караџић
4d50e90dd2 Removed support for SteamLink (discontinued 11/2018). 2020-03-11 21:49:11 -07:00
Attila Kocsis
8a3786c59c Added desciption labels to 08-update
Added row of cubes whose compressed texture is created with empty content then updated using bgx::updateTexture2D.

Fixed default srcPitch in d3d11 renderer for compressed textures.
2020-02-07 07:23:17 -08:00
Бранимир Караџић
d05a139ae8 Cleanup. 2020-02-06 20:09:38 -08:00
Hugo Amnov
fa9abba09f Remove duplicate outdated loading code 2020-02-01 11:56:03 -08:00
Hugo Amnov
32e1d9f9b5 Update entry_asmjs to updated Emscripten html5 API 2020-01-21 20:10:16 -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
Oliver Collyer
d9a9215f3a Fixed ambiguity calling sqrt 2020-01-17 20:01:44 -08:00
Бранимир Караџић
82f56b5987 Happy New Year! 2020-01-14 21:37:06 -08:00
Oliver Collyer
aeb77dde38 Overloaded nvgluCreateFramebuffer functions
Added overloaded nvgluCreateFramebuffer functions for creating a framebuffer that automatically mirrors the size of the back buffer
2020-01-05 08:43:53 -08:00
Бранимир Караџић
1926e9c0a3 Cleanup. 2019-10-31 07:32:36 -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
Бранимир Караџић
e234a7add3 Cleanup. 2019-10-27 15:20:26 -07:00
Бранимир Караџић
510701532b Cleanup. 2019-10-27 08:30:24 -07:00
attilaz
652cbac63d added cofactor function to shaderlib.sh
It is useful to transform normals.
2019-09-20 07:49:39 -07:00
Бранимир Караџић
6533baff7b Cleanup. 2019-09-08 22:10:42 -07:00
Бранимир Караџић
016f29eea7 Cleanup. 2019-08-24 11:29:45 -07:00
Leandro Freire
33ac8934ff Fixed tabs/spaces 2019-08-17 14:56:23 -07:00
Бранимир Караџић
3f647f1ca1 Fixed tabs/spaces. 2019-08-17 13:32:18 -07:00
Leandro Freire
d7c70c49e3 Add url to examples 2019-08-17 13:27:38 -07:00
Leandro Freire
1db46f4fe6 Rename variables and constants 2019-08-17 12:32:16 -07:00
Бранимир Караџић
2814ee8bb7 Fixed openUrl. 2019-08-16 07:05:01 -07:00
attilaz
75d5662f0b Metal: added support for binding buffers to vertex/fragment shader stages
I have removed the SamplerInfo workaround, because new shaderc preserves texture stages. Some shaders needed recompile with latest shaderc to get the new behavior.
2019-08-16 06:58:44 -07:00
Attila Kocsis
e0b99aa358 15-shadowmaps-simple: Fixed float depth packing mode 2019-08-16 06:49:25 -07:00
Бранимир Караџић
e9a199d22b VK: Added 21-deferred shaders. 2019-08-15 21:55:01 -07:00
Бранимир Караџић
07a0ecd743 Cleanup. 2019-08-15 08:11:34 -07:00
Бранимир Караџић
1768ace0f7 Cleanup. 2019-08-14 22:31:32 -07:00
Бранимир Караџић
7b01a4dc9a Cleanup. 2019-08-14 22:21:29 -07:00
Бранимир Караџић
70d460bf32 Fixed build. 2019-08-14 21:46:50 -07:00
Бранимир Караџић
83ad581efd examples: Added example URL. 2019-08-14 21:19:49 -07:00
Бранимир Караџић
a5898b131b examples: Added documentation link. 2019-08-14 21:19:03 -07:00
Бранимир Караџић
6f1485190f VK: Added compute shaders. 2019-08-13 20:32:22 -07:00
Бранимир Караџић
3ea3f32c06 VK: Added compute shaders. 2019-08-13 20:00:48 -07:00
Бранимир Караџић
4ed381b2e9 VK: Added compute shaders. 2019-08-13 19:34:59 -07:00
Бранимир Караџић
4986981378 VK: Added compute shaders. 2019-08-13 18:47:21 -07:00
Leandro Freire
855623e153 Rename VertexDecl to VertexLayout 2019-08-13 18:42:01 -07:00
Бранимир Караџић
73362c3989 Rebuilt shaders. 2019-08-10 10:26:00 -07:00
Бранимир Караџић
0e673379d6 Added SPIRV shaders. 2019-08-07 21:53:56 -07:00