gfm ~master

3D maths, 128-bit integers

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:


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

IMPORTANT 2: GFM has been deprecated in favor of dplug:math. Use version 8 if you want the former content gfm:integer and gfm:math content. No PR will be accepted.


Here is something I wanted to do for a while. I'm abandoning `gfm` in favor of `dplug:math` (vectors, matrices, and box), which will be tailored for Dplug needs. I know `gfm` has been a reliable and stable library over the years but there should be much better libraries around nowadays. `gfm` has never been super good in usability and purpose; and I just have no need for such a generic library anymore. I hope you understand and go build a better library. Overstretching with too many libraries to maintain is not very good for me. p0nce

IMPORTANT: GFMv8 has been stripped down to gfm:math and gfm:integers only. Use version 7 if you want the former content.

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": "~>8.0"


Why use GFM?

  • GFM provides math primitives that are useful for games like vectors/matrices/quaternions in the gfm:math package,
  • Also provide arbitrary sized integers, fixed point numbers, and half-float numbers in gfm:integers,

This library is really small now

There used to be a lot more stuff in GFM previously. See to discover lots of useful libraries for your programs.

  • Daniele Bondi / maeriden: Euler angles fix
  • Francesco Cattoglio: OpenGL wrapper improvements
  • John D. Cook: original SimpleRNG author
  • Steven Dwy / Yoplitein: sdl_mixer wrapper, documentation improvements
  • Daniel Cousens / RommelVR: GL fix
  • Gerbrand Kamphuis / vuaru: many fixes
  • Kyle Hunter / Kelet: ENet wrapper
  • Sam Hocevar: original author of some bits of code
  • Guillaume Piolat / ponce: main author of GFM
  • Ryan Roden-Corrent / rcorre: math package improvements
  • Tanel Tagaväli / clinei: SDL audio wrapper
  • H. S. Teoh / quickfur: wideint improvements
Sub packages:
gfm:math, gfm:integers
gfm:math, gfm:integers
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

  • 14 downloads this week

  • 71 downloads this month

  • 77336 downloads total

Short URL: