gfm 5.0.7

D gamedev toolkit. 3D maths, OpenGL/SDL/FreeImage/Assimp/ENet wrapper, stb_image port.

To use this package, run the following command in your project's root directory:

Manual usage
Put the following dependency into your project's dependences section:

GFM Build Status

<img alt="logo" src="" width="200">

GFM is a lightweight library to ease the creation of video games / multimedia applications with the D programming language.

(Oudated) documentation and overview can be found here:

See the changelog here to upgrade:


Public Domain (Unlicense).

How to use GFM?

Add the sub-package you are interested in in your dub.json:

      "dependencies": {
        "gfm:math": "~>5.0"

See the examples/ directory, or as an example of a game.


Who is using GFM?

Why use GFM?

  • GFM has low churn and has been maintained since 2012.
  • GFM primarily provides math primitives that are useful for games like vectors/matrices/quaternions in the gfm:math and gfm:integers package.
  • Other subpackages are wrappers: transparent layers that expose the C libraries objects, turn every error code into an D exception and makes it easier to use the library correctly. They do almost nothing and perhaps you don't need them.
  • GFM has a changelog and respects SemVer.


You absolutely don't need to use the whole of GFM. Pick just what you need to minimize the amount of dependencies.

There is an ongoing work to delete things in GFM that exist elsewhere but better. See to discover lots of useful libraries for your programs.

  • Guillaume Piolat / ponce: main author
  • Gerbrand Kamphuis / vuaru: many fixes
  • Kyle Hunter / Kelet: ENet wrapper
  • Francesco Cattoglio: OpenGL wrapper improvements
  • John D. Cook: SimpleRNG author
  • Sam Hocevar: many bits of code
  • Daniel Cousens / RommelVR: GL fix
  • Daniele Bondi / maeriden: Euler angles fix
  • H. S. Teoh / quickfur: wideint improvements
  • Tanel Tagaväli / clinei: SDL audio wrapper
Sub packages:
gfm:core, gfm:math, gfm:image, gfm:integers, gfm:assimp, gfm:opengl, gfm:sdl2, gfm:freeimage, gfm:logger
gfm:image, gfm:core, gfm:opengl, gfm:integers, gfm:sdl2, gfm:logger, gfm:math, gfm:assimp, gfm:freeimage
8.0.6 2021-Feb-09
8.0.5 2021-Jan-04
8.0.4 2020-Sep-10
8.0.3 2020-Jan-16
8.0.2 2019-Nov-09
Show all 160 versions
Download Stats:
  • 0 downloads today

  • 6 downloads this week

  • 69 downloads this month

  • 77567 downloads total

Short URL: