On Monday, 5 August 2013 at 18:18:30 UTC, Jonathan A Dunlap wrote:
I am one of the few who have taken a keen interest in D for
game development. The concise language and modern conveniences
may be able to reduce many hours worth of development time off
a game project, while making the code more maintainable. Aside
from the core language, Dlang graphics bindings have a way to
go before even earning acceptance in the indie gaming scene,
but it's making great strides to get there.
The main challenge I've hit is the lack of any sort of path for
adopting a media engine. Bindings (like SFML
https://github.com/krzat/SFML-D) all suffer from:
A) No information about its current status: this is scary if
its repo hasn't been updated in months.
B) Usually are complex to get working in a new project
(manually building or searching for undocumented dependency
DLLs)
C) Lack practical references and tutorials for "real would
usage"
e.g. "how to create an OpenGL window" or "how to render a
triangle"
versus something like "how to load from disk an image texture
onto a quad and move it around using keyboard events"
SFML bindings are also in https://github.com/aldacron/Derelict3
but I couldn't find a scrap of information on how to use it,
how to compile correctly, or example usage. It's unclear if the
library is even usable in its current state.
Please don't take this as blind criticism, but rather a plea to
action for the community to provide better library
documentation support for: current lib status, getting started
adding it, and a general use tutorial/example. If we start
doing this, it'll make a big impact for other game developers
who are new to Dlang to adopt the language. Thanks for
listening!
I am working on a media/gaming library for D, its not even pre
alpha, and I am learning parts of the language as I go so the
code is very ugly, and the naming conventions are scatter brained.
However I don't use any wrappers of other media libraries such as
sfml, I only have the minimal bindings required to link with X11
and opengl(I do plan on windows bindings as well, but i haven't
done that yet).
At the moment I am tackling concurrency, That bit is giving me
endless headaches, I am trying to setup a seperate thread to
handle opengl calls and a seperate thread for handling object
updates.
https://github.com/luminousone/dmedia
I haven't picked a license yet, but it will be something that is
rather open but leaves me the option to staticly link it in
closed projects.
I still think you might find a few interesting bits in that link,
but it does have a while to go before it is remotely useable.
I am open to working with others, or making changes to what I
have done if anyone is interested.