Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Collection of D 2.0 utilities class
D Shell
Branch: master
Pull request Compare This branch is 7 commits ahead, 698 commits behind d-gamedev-team:master.

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
assimp
common
examples
freeimage
image
math
net
opengl
sdl2
README.markdown
UNLICENSE
debian_build.sh
gfm.sln
gfm.visualdproj
mac_build.sh

README.markdown

gfm

gfm is a collection of useful classes for multimedia programming with the D language.

Why?

gfm is:

  • a common ground to write multimedia D applications, that I would consider sane.
  • boilerplate code you will probably need to write anyway for eg. a game.
  • decoupled. Pick only the part you need!

Contents

Everything in this repositery is "public domain", except for parts marked with a star (*). See UNLICENSE for more details.

common/

  • log.d HTML logging object
  • queue.d queue/fifo/stack/ring-buffer, with range interface
  • lockedqueue.d synchronized queue for thread communication
  • memory.d aligned malloc/free/realloc
  • alignedbuffer.d aligned array-like container
  • structpool.d small object area
  • text.d string utilities

net/

  • uri.d URI parsing (RFC 3986)
  • httpclient.d HTTP client (RFC 2616)

math/

  • vector.d small vectors for 2D and 3D
  • matrix.d small matrices for 2D and 3D
  • quaternion.d quaternions
  • half.d half floats
  • softcent.d: 128 bits integers (cent/ucent implentation), including division algorithm from Ian Kaplan*
  • box.d half-open intervals (for eg. AABB)
  • fixedpoint.d fixed-point numbers
  • fraction.d rational numbers
  • statistics.d statistical functions
  • solver.d polynomial solvers up to quadratic
  • simplerng.d random distributions: a port of SimpleRNG from John D. Cook*
  • easing.d a port of easing functions from Robert Penner*
  • shapes.d segment, triangle, sphere, ray...
  • plane.d 3D plane
  • frustum.d 3D frustum
  • funcs.d useful math functions

image/

  • image.d generic abstract image and software rendering routines
  • bitmap.d planar concrete image
  • cie.d physical color computations

sdl2/

  • SDL 2.0 wrapper based on Derelict3
  • including SDL_image and SDL_ttf wrappers
  • framerate statistics

freeimage/

  • FreeImage wrapper based on Derelict3
  • FIBITMAP wrapper

opengl/

  • OpenGL wrapper based on Derelict3
  • makes easier to use the OpenGL API correctly
  • including a matrix stack to replace fixed pipeline
  • including compilation of a single source for multiple shaders

assimp/

  • Assimp wrapper based on Derelict3
  • scene wrapper

More to come

Something went wrong with that request. Please try again.