Ion
bgfx
Ion | bgfx | |
---|---|---|
1 | 76 | |
1,433 | 15,313 | |
- | 1.2% | |
0.0 | 9.2 | |
over 2 years ago | 7 days ago | |
C++ | C++ | |
Apache License 2.0 | BSD 2-clause "Simplified" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Ion
bgfx
- Bgfx: Cross-platform, graphics API agnostic rendering library
-
SDL3 new GPU API merged
I previously integrated bgfx [1], which allows you to write graphics code and shaders once and supports consoles, with SDL2 stack and Swift [2]. It was quite a nice experience, especially for someone who had never worked with any of these tools before. I'm excited for SDL3 as it introduces console abstractions, eliminating the need for additional dependencies for the GPU API, especially for someone who casually experiments with graphics. Moreover, Godot officially supports the Steam Deck, and hopefully, more consoles will be supported in the future. On a related note, Miguel de Icaza is advocating for Swift adoption in Godot, and he is working on porting the editor to SwiftUI on iPad, which is quite interesting to see the progress [3].
[1] https://bkaradzic.github.io/bgfx/overview.html
[2] https://github.com/bgbernovici/myndsmith
[3] https://blog.la-terminal.net/xogot-code-editing/
-
I learned Vulkan and wrote a small game engine with it (in 3 months)
I'm curious why webgpu is receiving so much attention. There have been many low-level cross-platform graphics abstractions over the years. The bgfx [1] project had its first commit ~12 years ago and it's still going! It's much more mature than webgpu. I'm guessing being W3C backed is what's propelling it?
[1] https://github.com/bkaradzic/bgfx
-
Orthodox C++
I don't use orthodox C++, but the author of this is also the author of bgfx, which is a very popular graphics api abstraction. It runs on (and has commercial products on) Android, ios, Playstation, Xbox, PC, Mac, Linux, and wasm. While the coding style might be unpopular, it has successful projects.
https://github.com/bkaradzic/bgfx
- WebKit Switching to Skia for 2D Graphics Rendering
-
Is it possible and realistic to learn independent of an API?
Sort of, I'd recommend a modern higher level API. I'm not sure what the current recommended ones are (probably bgfx), but assuming the wrapper is "low level enough", then the concepts you learn are still going to apply.
-
Ask HN: Released games built on FOSS engines?
https://github.com/bkaradzic/bgfx for just that FOSS intermediate rendering library (includes Minecraft)
- Valve Says Counter-Strike 2 for macOS Not Happening, There Aren't Enough Players
-
The Ultimate Cross-Platform Rendering Engine?
BGFX: Pretty mature and easy to use with many backends.
- Cairo – Open-Source 2D Graphics Layer/API with Fonts and Many Back-Ends
What are some alternatives?
Skia - Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.
GLFW - A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
Horde3D - Horde3D is a small 3D rendering and animation engine. It is written in an effort to create an engine being as lightweight and conceptually clean as possible.
Ogre 3D - scene-oriented, flexible 3D engine (C++, Python, C#, Java)
OpenSceneGraph - OpenSceneGraph git repository
sokol - minimal cross-platform standalone C headers
Partio - C++ (with python bindings) library for easily reading/writing/manipulating common animation particle formats such as PDB, BGEO, PTC. https://wdas.github.io/partio
magnum - Lightweight and modular C++11 graphics middleware for games and data visualization
dcompute - DCompute: Native execution of D on GPUs and other Accelerators
DiligentEngine - A modern cross-platform low-level graphics library and rendering framework