Commit Graph

2234 Commits

Author SHA1 Message Date
Бранимир Караџић
4d11ad55f3 Cleanup. 2023-04-03 07:23:49 -07:00
Бранимир Караџић
f8019cb3d4 Cleanup. 2023-03-02 21:45:20 -08:00
Francis Hart
403c4da2e0
Fix compiler warnings for nanovg wrapper (#3048)
* Fix compiler warnings for nanovg wrapper

Code for the nanovg wrapper was generating compiler warnings for
implicit casts from int32_t to uint16_t. These casts are unavoidable
due to how bgfx and nanovg APIs use different types for texture
width/height.

* Fix compiler warning from nanovg fontstash.h

This fixes some warnings for signed/unsigned comparsion
coming from the nanovg fontstash.h header.
2023-02-27 18:33:29 -08:00
Francis Hart
caa637dbd5
Expose nvgCreateBgfxTexture() helper function (#3046)
The nvgCreateBgfxTexture() helper function is already implemented in
the nanovg wrapper library, so its useful to expose this function
to the user.

Also expose the NVG_IMAGE_NODELETE flag so this can be passed to the
nvgCreateBgfxTexture() function, to indicate that the caller retains
ownership of the bgfx texture.
2023-02-27 07:10:53 -08:00
ShuangLiu1992
adb0f893a3
fix ios entry (#3027)
When initWithFrame is being called s_ctx has not been created yet. Fix with correct assign order.
2023-01-19 08:45:51 -08:00
Бранимир Караџић
466c6a4e95 Happy New Year! 2023-01-14 10:05:12 -08:00
Бранимир Караџић
4f3ce6abcb Entry: Resize window before calling init. 2023-01-13 07:08:51 -08:00
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