Repolode
bkaradzic

bkaradzic/bgfx

一个跨平台 C++ 渲染库,统一封装 Direct3D、Metal、OpenGL、Vulkan 等图形 API,可接入自有引擎或框架。

Star
17,616
Fork
2,163
未关闭 Issue
66
最近提交
昨天

这是什么?

bgfx 是位于应用程序与图形 API 之间的渲染库。开发者无需为 Direct3D 11/12、Metal、OpenGL、OpenGL ES、Vulkan 和 WebGL 分别编写代码,而是通过统一接口提交绘制调用,由 bgfx 调度到目标平台可用的后端。它采用「自带引擎或框架」的设计思路,专注于渲染本身,不提供场景管理、资源流水线等完整游戏引擎功能。

该库支持 Windows、Linux、macOS、iOS、tvOS、Android、树莓派以及通过 Emscripten 编译的 WebAssembly,并提供 C#、Python、Rust、Zig、Java、Go、Lua 等语言的绑定。项目采用 BSD-2-Clause 许可证,已有多款游戏和工具在使用。

核心功能

  • 01统一接口同时支持 Direct3D 11/12、Metal、OpenGL、OpenGL ES、Vulkan 和 WebGL。
  • 02覆盖桌面、移动端、主机授权平台及 WebAssembly 等多个平台。
  • 03提供 C#、Python、Rust、Zig、Java、Go、Lua 等语言的 API 绑定。
  • 04作为渲染层嵌入已有引擎或框架,而非替代它们。
  • 05采用 BSD-2-Clause 许可证。

适用场景

  • 为自研游戏引擎或应用框架增加多图形后端渲染能力。
  • 开发需要同时运行在桌面和移动端的 3D 工具或可视化应用。
  • 通过 WebGL 或 WebAssembly 为浏览器端内容提供图形层。
  • 在已有 bgfx 绑定的语言中快速验证渲染代码。

快速上手

  1. 1

    阅读适用于你的平台和编译器的官方构建指南

使用前须知

  • 它是渲染库而非完整引擎,你需要自带引擎或框架。
  • GNM 后端仅供获得授权的 PS4 开发者使用。

收录于专题

标签

常见问题

bgfx 是什么?
一个跨平台 C++ 渲染库,统一封装 Direct3D、Metal、OpenGL、Vulkan 等图形 API,可接入自有引擎或框架。 bgfx 是位于应用程序与图形 API 之间的渲染库。开发者无需为 Direct3D 11/12、Metal、OpenGL、OpenGL ES、Vulkan 和 WebGL 分别编写代码,而是通过统一接口提交绘制调用,由 bgfx 调度到目标平台可用的后端。它采用「自带引擎或框架」的设计思路,专注于渲染本身,不提供场景管理、资源流水线等完整游戏引擎功能。
bgfx 可以免费使用吗?用的什么许可证?
bgfx 以 BSD-2-Clause 许可证开源。用于商业产品前,请先确认许可证条款。
bgfx 还在维护吗?
活跃维护中。bgfx 最近一次提交是在 2026年11月6日。
bgfx 适合用来做什么?
为自研游戏引擎或应用框架增加多图形后端渲染能力。 开发需要同时运行在桌面和移动端的 3D 工具或可视化应用。 通过 WebGL 或 WebAssembly 为浏览器端内容提供图形层。 在已有 bgfx 绑定的语言中快速验证渲染代码。
bgfx 怎么安装和运行?
阅读适用于你的平台和编译器的官方构建指南
在哪里获取 bgfx?
源代码和安装说明在 GitHub 上:https://github.com/bkaradzic/bgfx

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目