* shaderc HLSL profile switch fix
* shader makefiles changed to match new hlsl profile switches
Co-authored-by: Ali Seyedof <ali.seyedof@xyzreality.com>
* 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>
* Android: Add local copy of native_app_glue, patched to compile as C++.
* Android: List android-x86_64 configuration in makefile
* Android: Build shared-lib and examples by default
* Docs: Update Android build prerequisites
* CI: Add Android builds
* CI: **DO NOT MERGE** pick bx/PR with android support update
This fixes the following warnings with clang based toolchain
warning: unknown warning option '-Wno-logical-op'; did you mean '-Wno-long-long'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]
* Add 'frameNumber' to Frame struct
Previously, the frame number returned from bgfx::frame() was tracked separately in the Context. Now,
we store that information in the Frame. This will allow us to attach the frame number to ViewStats.
* Add frame number to ViewStats
When ViewStats are enabled, we tag each timer query with the current frame number, then include
that information in the final results. In this way, clients can correlate specific work that they
submitted to specific GPU timing information.
NOTE: Some backends not implemented, yet. They will always have 0 for frame number.
The ones which are implemented are:
* OpenGL
* Vulkan
* D3D 9,11,12
* Noop
* 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
* 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>
* 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
* 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>
* Minor rewording & increase of clarity
* Corrected a noun that was being used as a verb
* Slight rewording of the C99 bindings notices
* Actually, this sounds better & looks nicer
Current docs are a little ambiguous with the term "profiling"; sometimes it means
bgfx::CallbackI functions, and sometimes per-view stats collection. This makes it a little clearer.