# bgfx

> BSD-2 cross-platform rendering library: bring your own engine

**Category:** Libraries  
**Pricing:** open-source  
**URL:** https://bkaradzic.github.io/bgfx/overview.html  
**GitHub:** https://github.com/bkaradzic/bgfx  
**Added:** 2026-10-19

---

## The Hook

bgfx is a long-running C/C++ rendering library that hides the graphics API: you write against one interface and it runs on Direct3D 11/12, Metal, Vulkan, OpenGL, OpenGL ES, WebGL 2 and WebGPU, from Windows and consoles to Android, iOS and the browser via Emscripten.

## What's Good

BSD-2-Clause (bkaradzic/bgfx), actively pushed (2026-10-19) since 2012. It is the renderer, not an engine, so it fits custom engines and tools that need one code path across platforms. A shader compiler, texture and geometry tools and dozens of examples come with it, and bindings exist for C#, Rust, Zig, Python and more. Used by a long list of shipped games and apps. ★~17.6k.

## The Catch

Low-level by design: no scene graph, physics, audio or editor, so you are building an engine, not a game. It uses its own GENie build setup and the companion bx and bimg repos, which takes a while to get comfortable with. No tagged releases; you track the main branch. For a ready engine, Godot or Raylib are the faster start.

## Verdict

The proven way to put one renderer on every platform — for people building their own engine.
