D for Game Development

Rick via Digitalmars-d digitalmars-d at puremagic.com
Tue Aug 4 12:14:50 PDT 2015


On Thursday, 30 July 2015 at 13:43:35 UTC, karabuta wrote:
> D is really cool and makes a good candidate for developing a 
> game. Are there any guys out there using D for indie games?
>
> For some time I have been seeing some cool game engine being 
> developed in the DUB repo. What more is happening? I don't see 
> derelictSDl and derelictSFML activities much. Whatup?

After leaving C++ behind for a few years to work in some 
higher-level languages for job-related coding, I was excited when 
I stumbled upon D and how it seemed to make for a perfect balance 
of higher-level language features while still being compilable 
down to machine code and able to directly interface with the vast 
sea of awesome open-source game-oriented development libraries 
that offer up a C/C++ API.

I spent several weeks tearing through the language reference and 
standard APIs to gain a solid grasp on what was possible with D.  
The existence of DUB and the Derelict bindings further made D 
seem like the perfect solution.

Unfortunately I'm regrettably having to reconsider my decision to 
start a game project (or any project requiring significant time 
investment) in D.  Not because of the language or compiler, but 
rather because of the lack maturity in the supporting tools; 
specifically, a debugger.  I should say upfront that this seems 
to be more gravely affecting OSX than other platforms, but 
scouring forums and wikis has made it apparent that no platform 
is completely devoid of obstacles when it comes to functionally 
debugging D programs.  To a certain extent, one can alternatively 
diagnose and fix bugs with verbose logging, assertions, and 
exceptions; but memory related bugs become exponentially more 
difficult to work through without being able to properly 
breakpoint, step through execution, and observe all variables in 
the current scope.

Hopefully the ecosystem of supporting D tools will continue to 
grow and mature enough to be practical for large scale projects; 
but until then be prepared to face hurdle after hurdle trying to 
use D as a complete solution for game development.


More information about the Digitalmars-d mailing list