bgfx
BGFX wrapper for the nim programming language.
Wraps a native library — check OS Compatibility below for platform-specific linking notes.
Summary
| Latest Version | Unknown |
|---|---|
| License | BSD2 |
| CI Status | Failing |
| Downloads | 0 |
| Last Indexed | 2026-07-21 05:24 |
Tags
Installation
nimble install bgfx
choosenim install bgfx
git clone https://github.com/Halsys/nim-bgfx
OS Compatibility
| Platform | Linux | macOS | Windows | FreeBSD | OpenBSD | NetBSD | Android | iOS | WASM | Embedded |
|---|---|---|---|---|---|---|---|---|---|---|
| bgfx | ✓ | ✓ | ✓ | - | - | - | - | - | - | - |
Source
| Repository | https://github.com/Halsys/nim-bgfx |
|---|---|
| Homepage | https://github.com/Halsys/nim-bgfx |
| Registry Source | nimble_official |
README
nim-bgfx
bgfx graphics library binding and wrapper for the nim programming language.
bgfx is a rendering library that has a variety of graphics backends supported and a bunch of other neat features. * Supported backends; Direct3D 9, Direct3D 11, Direct3D 12 (WIP), Metal (WIP), Vulkan(WIP) OpenGL 2.1, OpenGL 3.1+, OpenGL ES 2, OpenGL ES 3.1, WebGL 1.0, and WebGL 2.0 * Other features include occlusion querying, compute shader programs, draw and compute bucket sorting, conversion to compressed formats, and more.
bgfx's original and primary maintainer is Branimir Karadzic.
nim-bgfx's is original and primary maintainer is Cory Noll Crimmins - Golden.
You may contact me(Cory), if you ever face a problem related to this library. However all problems relating to features and internal issues that are a part of bgfx should be taken up with bgfx's community and Branimir
Notes:
- This needs to be beta tested, but is known to work(examples included).
- This package has all of the C functions, macros, and types
- Compiles bgfx right out of the box (provided it is supported).
- Because the bgfx library was programmed with specific types in mind (i.e. uint8/16/32/64_t and float). You have to be incredibly specific because of nims type system (42'u16, 100'i32, 1.0'f32)
- This package does include nim examples.
- This package has the same license as bgfx... for your information.
- You are free to send improvements but you should;
- Make sure it matches how things operate on the C++ or C of the library.
- Make sure that the code is readable.
- Documentation is optional, but would be nice.
- Make sure it works on the latest version of nim.
- Currently two window managing libraries work with this package; nimrod-glfw and sdl2_nim (with varying results).
- Compiling bgfx so far works on Linux and OSX... maybe untested on other platforms.
- Building bgfx on Windows is untested.
- Building bgfx in Javascript is untested.
- Works on amd64, untested on other architechures.