Commit Graph

2227 Commits

Author SHA1 Message Date
Bryan McNett a93a714632
fix for save file dialog in windows (#3003)
the save file dialog in windows was an open file dialog, by mistake

Co-authored-by: Bryan McNett <bryan@mcnett.org>
2022-12-23 23:00:26 -08:00
Бранимир Караџић 43296d6f3f Cleanup. 2022-12-12 07:53:08 -08:00
Бранимир Караџић 6a03a1ec5e Rebuilt Metal shaders. 2022-10-29 09:17:29 -07:00
Бранимир Караџић 0069766e61 Rebuilt SPIR-V shaders. 2022-10-29 09:03:13 -07:00
Бранимир Караџић f8af71c4ce Rebuilt SPIR-V shaders. 2022-10-27 19:44:24 -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
Бранимир Караџић 39c8d091f4 Cleanup. 2022-10-21 09:13:51 -07:00
Raziel Alphadios 4f76738e96
Add astc to ninja scripts (#2959)
Co-authored-by: Raziel Alphadios <raziely@gmail.com>
2022-10-20 22:16:44 -07:00
pezcode ba467be036
Add support for indirect draw with indirect count (#2925)
* Add indirect draw with indirect count (BGFX_CAPS_DRAW_INDIRECT_COUNT)

* Update bindings

* VK: Add support for BGFX_CAPS_DRAW_INDIRECT_COUNT

* D3D12: Add support for BGFX_CAPS_DRAW_INDIRECT_COUNT

* GL: Add support for BGFX_CAPS_DRAW_INDIRECT_COUNT

* 48-drawindirect: Use BGFX_CAPS_DRAW_INDIRECT_COUNT if available

* 48-drawindirect: Update shaders
2022-09-17 18:16:19 -07:00
Branimir Karadžić 408988946d Cleanup. 2022-09-16 20:12:31 -07:00
blackhole 2b11045331
Example 49 - hextile (Changes to fix regular tiling (tiling rate) to match hex tile rate) (#2924) 2022-09-16 13:48:19 -07:00
blackhole a8a10b0b89
Adds example 49-hextile (#2922)
* First commit - tested with dx11 on windows

* Minor changes & adding some comments.

* Update hextile.cpp

* update some bin files

* rename texture

* minor comment update

* Added support to configure tile rate as well as tile rotation strength, update bin files & screenshot

* use texture from polyhaven, updated screenshot, updated bin files & minor changes to shader.

* missed pushing texture

* update license

* Update hextile.cpp

* Fix regular tiling

* use ktx with mipmaps

* minor change to ensure that regular tiling & hextile matches with default tile rate.

* minor c

Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2022-09-15 19:03:07 -07:00
Бранимир Караџић 9ad3825cee D3D12: Linux build. 2022-09-14 20:59:59 -07:00
SnapperTT 4613bd1e02
Parallelised compute shader in example 48 (#2906)
* Parallelised compute shader in example 48

* Ex48 - Dispatch numToDraw/64 workgroups of 64 local threads

* fixed vs build (again)
2022-08-29 06:44:55 -07:00
SnapperTT 8d412e16e4
Fix vs build (#2904) 2022-08-27 07:35:30 -07:00
SnapperTT 135dc7fa27
Adds example 48-multidrawindirect (#2894)
* Added example 48-multidrawindirect

* Added example 48-multidrawindirect

* enable shader.mk to build directories that only have compute shaders

* compiled shaders for example 48

* MultidrawIndirect example renamed to DrawIndirect, sets draw mtx in compute

* update 48-drawindirect shaders

* fix typos

* fixed bgfx::setPlatformData change for example48

* fix docs

* added name to cs_drawindirect.sc

* style updates for example 44

* add slider to example 48-drawindirect
2022-08-26 21:32:15 -07:00
Бранимир Караџић ed8d6da5f4 Cleanup. 2022-08-25 21:12:09 -07:00
Бранимир Караџић 72cbe83275 Removed bgfx::setPlatformData usage from entry example harness. 2022-08-25 20:07:03 -07:00
Michał Cichoń c8c245c37b
pixelformat: Include compressed format in texture sets (#2893)
* pixelformat: Include compressed format in texture sets

* pixelformats: Show why texture preview is not shown
2022-08-25 06:51:48 -07:00
Michał Cichoń 549077fc0b
Pixelformats example mupltiple sources (#2889)
* Added texture conversion for pixelformat to runtime asset.

* pixelformats: Support multiple sources, cleanup
2022-08-23 12:51:00 -07:00
Бранимир Караџић db0074bb3e 47-pixelformats: Improved tooltips. 2022-08-22 23:29:13 -07:00
Бранимир Караџић c08e51441f 47-pixelformats: Scroll checkerboard. 2022-08-22 21:49:26 -07:00
Бранимир Караџић 58e82fb785 Cleanup. 2022-08-22 21:40:04 -07:00
Бранимир Караџић aa36d167b6 47-pixelformats: Add supported/emulated info. 2022-08-22 20:57:19 -07:00
Бранимир Караџић ae7eca02b7 Cleanup. 2022-08-22 20:45:14 -07:00
Бранимир Караџић 5d447dd7f3 Cleanup. 2022-08-22 20:41:35 -07:00
Бранимир Караџић ad5cc799a4 Added numeric min/max for type. 2022-08-22 20:33:50 -07:00
Michał Cichoń 7cc56a01de
pixelformats: Use "Alpha" instead of "Ignore Alpha" (#2875) 2022-08-22 12:50:13 -07:00
Michał Cichoń a4b71961c3
pixelformats: Add checkbox to ignore alpha channel, select RGBA8 by default (#2874) 2022-08-22 12:32:40 -07:00
Sandy 651432df1d
examples: Add imageformats example (#2872)
* examples: Add imageformats example

Example which renders RGBA color wheel, alpha gradient and full value channel textures to
catch conversion errors and bad internal type representations between different backend
renderers.

The example uses bimg to convert from a master texture to different textures.

Each texture is rendered in an ImGui list using `ImGui::Image`. A close-up is visible
when hovering over each image.

U and I textures are skipped because they don't work for sampling.
Compressed textures are skipped because they don't have conversion functions.
Depth textures are not rendered because they don't work with channels.

* pixelformats: Present texture format in table

* Update pixelformats.cpp

* Update pixelformats.cpp

* pixelformats: Update screenshot

* pixelformats: Add checkerboard background

Co-authored-by: Michał Cichoń <michcic@gmail.com>
Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
2022-08-22 12:16:58 -07:00
Бранимир Караџић 7d323e84f3 Updated ImGui. 2022-08-06 22:28:07 -07:00
luzpaz c4f9d9e912
Fix typo in source (#2840)
treshold->threshold
2022-07-13 06:19:47 -07:00
luzpaz e7936efa6a
Fix typos (#2839)
Found via `codespell -q 3 -S ./3rdparty,*.ttf -L attribut,ba,clude,conly,indext,inout,lod,nclude,retur,struc,unknwn,utput`
2022-07-12 14:21:31 -07:00
Бранимир Караџић 296ed0a81e Cleanup. 2022-06-20 21:16:17 -07:00
SnapperTT f8f394bdf2
Update callback.cpp (#2826) 2022-06-20 21:15:19 -07:00
SnapperTT a2268940bb
Fix #2824, gcc 12.1 build issues (#2825)
* Update shadowvolumes.cpp

* Update stencil.cpp
2022-06-20 08:10:10 -07:00
Бранимир Караџић aaba3b3a5e Cleanup. 2022-06-20 04:39:25 -07:00
SnapperTT 498d0b6e54
Update nanovg_bgfx.cpp (#2823)
Fix the transient vertex buffer's overflow assert being fired. Now if the tvb is overflowed a warning is emitted and the draw is skipped
2022-06-20 04:37:59 -07:00
Бранимир Караџић 2215e67ee1 Fixed ImGui assert. 2022-06-17 00:17:37 -07:00
Бранимир Караџић 664bb5ca21 39-assao: Rebuilt spir-v shaders. 2022-05-25 09:24:31 -07:00
云风 676df636d2
rename rearrangeIndices() to remapIndices() (#2773) 2022-04-18 17:37:29 -07:00
云风 c6d66c2483
bugfix and remove mergeIndices() (#2772) 2022-04-18 12:57:25 -07:00
云风 cae7c83f89
bugfix : weldVert and array_push (#2769) 2022-04-15 07:22:43 -07:00
Бранимир Караџић 04318d22c1 Rebuilt shaders. 2022-03-26 13:46:02 -07:00
Бранимир Караџић 8f96b8ade7 Cleanup. 2022-02-11 08:15:04 -08:00
pezcode 88a6317a93
Switch to imgui IO event API (#2726)
Added in imgui 1.87
2022-02-11 08:12:27 -08:00
pezcode 841ab98cfa
Imgui fixes (#2720)
* Pass Meta key modifier to ImGui

* Use index offset provided by ImGui

* Use vertex offset provided by ImGui

We need to tell ImGui we can support per-draw vertex offsets. Useful for
complex widgets like implot.
2022-02-06 17:31:27 -08:00
luzpaz 6875e96bcb
Fix various typos (#2719)
Found via `codespell -q 3 -S ./3rdparty,*.ttf -L attribut,ba,clude,conly,indext,inout,lod,nclude,retur,utput`
2022-02-05 11:34:15 -08:00
Jean Tampon cd2030cc11
Use shift directly instead of float casts (#2714) 2022-01-16 08:15:14 -08:00
Бранимир Караџић 4581f14cd4 Happy New Year! 2022-01-15 11:59:06 -08:00
Paul Gruenbacher 5b4a6dc330
Fix bad delete in font_manager.cpp (#2703)
Fix alloc-dealloc-mismatch (operator new [] vs operator delete
2022-01-03 12:52:53 -08:00
Бранимир Караџић 946852cec8 Fixed issue #2696. 2021-12-26 09:02:48 -08:00
XXxR4GALXxx be3cfd1bd9
Fix "GDI resource leak". (#2694)
"When you no longer need the HBRUSH object, call the DeleteObject function to delete it."
https://docs.microsoft.com/en-us/windows/win32/api/wingdi/nf-wingdi-createsolidbrush
👍
2021-12-25 13:45:19 -08:00
Raziel Alphadios 16ee93b88d
Change TTF init asserts to warns and add some details to the output (#2681)
Co-authored-by: Raziel Alphadios <raziely@gmail.com>
2021-12-08 14:27:13 -08:00
simon chen 5cbaa3bdcd
remove duplicate code (#2679) 2021-12-07 08:55:19 -08:00
Aleš Mlakar 130bc00608
shaderc: Ignore .@data uniforms when compiling for metal (#2677)
Co-authored-by: Aleš Mlakar <ales.ambits@gmail.com>
2021-12-06 09:39:05 -08:00
Aleš Mlakar f0a38398ae
40-svt: Use BGFX_TEXTURE_BLIT_DST when creating Atlas and Page Table textures so they can be blit to (#2678)
Co-authored-by: Aleš Mlakar <ales.ambits@gmail.com>
2021-12-06 09:38:23 -08:00
Бранимир Караџић 3b1f74bb51 09-hdr: Fixed texture creation. 2021-12-06 08:41:23 -08:00
Бранимир Караџић 73acc9e59b 41-tess: Updated GL shaders. 2021-11-21 07:58:19 -08:00
Бранимир Караџић 17bb4dce49 08-update: Fixed BC texture update. 2021-11-11 15:21:59 -08:00
DarkContact 08b8252f73
Fix font rendering (#2653)
* Fix subpixel font rendering

* remove const
2021-11-09 14:35:48 -08:00
Бранимир Караџић 796d1ceb39 08-update: Cleanup. 2021-11-01 18:27:27 -07:00
Бранимир Караџић 2df0a41918 08-update: Added blit test. 2021-11-01 08:43:22 -07:00
Raziel Alphadios 094d34194c
Cleanup: change POD casts from static_cast to functional/ctor casts, for consistency (#2648)
Co-authored-by: Raziel Alphadios <raziely@gmail.com>
2021-10-31 15:54:10 -07:00
Бранимир Караџић b2d13fc3b8 21-deferred: Fixed uniform leak. 2021-10-28 18:43:09 -07:00
Branimir Karadžić 1d0d9b7149 21-deferred: Rebuilt shaders. 2021-10-28 18:40:46 -07:00
pezcode d32d3b19b6
Fix 21-deferred with texture array frame buffer (#2646) 2021-10-28 16:46:57 -07:00
Бранимир Караџић e71ffa0016 Cleanup. 2021-10-27 17:00:39 -07:00
Raziel Alphadios 9cc470a390
Fix C5055 warnings on C++20 and up (#2637)
* Fix C5055 (operator 'operator-name': deprecated between enumerations and floating-point types) warnings on C++20 and up

* Changed static_casts to functional-style casts

Co-authored-by: Raziel Alphadios <raziely@gmail.com>
2021-10-27 09:33:03 -07:00
Бранимир Караџић 67f462eee8 Cleanup. 2021-10-26 18:44:37 -07:00
Бранимир Караџић 53772163f4 Added cmdRemove. 2021-10-26 18:20:35 -07:00
Бранимир Караџић 948d137dfd Merge branch 'master' of github.com:bkaradzic/bgfx 2021-10-25 18:59:59 -07:00
Бранимир Караџић 8392a44b3a Fixed assert macros, and improved error handling. 2021-10-25 18:59:32 -07:00
Branimir Karadžić 4f1b3f8a1b 37-gpudrivenrendering: Rebuilt shaders. 2021-10-22 11:33:10 -07:00
Tom Schroeder 6573fc44a8
Modified handle initialization to fix compilation error (clang-osx) (#2629) 2021-10-17 15:21:57 -07:00
Бранимир Караџић c5d1a1a8e3 Moving bounds from bgfx to bx. 2021-10-16 10:41:42 -07:00
Richard Schubert ffeba57b8a
Fix FSR (#2628)
* Clear full framebuffer

* Fix type coercion

* Use bgfx API properly

* Remove redundant calls
2021-10-15 07:36:46 -07:00
Бранимир Караџић a1d2c03eba Cleanup. 2021-10-14 21:03:34 -07:00
Бранимир Караџић 84a38eede0 Cleanup. 2021-10-13 19:54:27 -07:00
Бранимир Караџић 6921fc3438 Cleanup. 2021-10-08 19:06:53 -07:00
Branimir Karadžić 5890cef12b 46-fsr: Updated screenshot. 2021-10-06 18:05:00 -07:00
Branimir Karadžić 4717192086 Updated makefile. 2021-10-06 17:40:32 -07:00
Branimir Karadžić 778dffb6ee 46-fsr: Built shaders. 2021-10-06 17:40:15 -07:00
Branimir Karadžić ad8eb09cf6 Fixed warnings. 2021-10-06 17:39:48 -07:00
Бранимир Караџић 58441ea499 Cleanup. 2021-10-05 19:42:44 -07:00
Richard Schubert fc513e163b
Add new Example - AMD FidelityFX-FSR (#2612)
* Add new sample

* Add FSR shaders

* Add example template

* Add Antialiasing

* Add multi resolution rendering

* Implement magnifier

* Implement FSR EASU pass

* Implement FSR RCAS pass

* Improve wording of comments and UI

* Remove use of ffx_a.h in cpp

* Remove example external files

* Perform bilinear upsampling by compute shader

* Add FSR 16 Bit support

* Improve magnifier picking

* Fix magnifier picking

* Render magnifier widget

* Renaming of stuff

* Separate magnifier functionality

* Move FSR into separate class

* Reduce scope of FSR resources

* Fix FSR for Vulkan

* Fix OpenGL support

* Update sample screenshot
2021-10-05 09:01:50 -07:00
Бранимир Караџић f50d84da52 Rebuilt SPIR-V shaders. 2021-10-02 11:31:52 -07:00
Бранимир Караџић 3c9591d9f9 Cleanup. 2021-09-25 22:30:42 -07:00
Бранимир Караџић 23994e7f23 Bounds: Overlap aabb/obb, and obb/obb. 2021-09-25 19:20:06 -07:00
Бранимир Караџић f1ddf67114 Added initializer types. 2021-09-06 09:03:26 -07:00
Бранимир Караџић ee0fbea726 Added AGC renderer stub. 2021-08-24 19:35:09 -07:00
pezcode ec7cb7608e
Fix textureGather in example 39 (#2596) 2021-08-24 19:30:27 -07:00
Бранимир Караџић 568ee4ceac Cleanup. 2021-08-18 09:27:12 -07:00
DarkContact 8f60971dd6
fix deadlock and remove unused bx::Error (#2589) 2021-08-18 09:22:55 -07:00
Martijn Courteaux 078666d373
Allow to create a nvg texture from a BGFX texture. (#2548) 2021-06-25 13:29:51 -07:00
Бранимир Караџић e0d26507dc Added BGFX_CONFIG_ENCODER_API_ONLY configuration setting to enable/disable non-encoder API. 2021-06-11 08:05:58 -07:00
Branimir Karadžić f569fe32a6 Rebuilt all embedded shaders. 2021-06-06 14:51:46 -07:00
kingscallop 6440d669a8
Add missing examples in makefile (#2534) 2021-06-05 13:56:29 -07:00
kingscallop 1ab27e277b
Fix hardcoded bgfx dir from include paths in makefiles (#2532)
Only these four makefiles had these hardcoded paths.
All other makefiles don't specify the bgfx dir name.
2021-06-05 13:55:19 -07:00
Бранимир Караџић ed645ff01a Bounds: Moved pass-thru funcs into .inl header. 2021-06-05 10:29:59 -07:00