Doom3 (id tech 4) port/binding in D ?

Benjamin Thaut code at benjamin-thaut.de
Mon Nov 28 09:21:36 PST 2011


Am 23.11.2011 17:16, schrieb deadalnix:
> Hi,
>
> I want to suggest a project to the community. Doom3 source code has just
> been released, and I think we may want to do a port in D. Here are the
> reasons :
> 1/ I think D is suitable and pertinent for video games.
> 2/ This would make a solid code base to promote D.
> 3/ Id software is very popular, and porting one of their engine is free
> advertisement for D.
> 4/ The build system for doom engine is scons, and it support D too.
> 5/ The code base is an high quality one. (for exemple, the _t suffix is
> used to differenciate what we call struct and classes in D - and that
> has no difference in C++ except in the usage you make of it).
> 6/ It's an interesting project.
> 7/ Many people in the D community are interested in video game projects.
> 8/ Doom's story take place on mars, phobos and deimos (well and on
> earth, but who care ?).
>
> In addition, this is a good occasion to produce some code for deimos and
> can enlight us on D future evolutions backed with solid fact. On my
> knowledge, such a big project (big in size, but also in technicity)
> don't exist in D yet.
>
> Anyway, don't expect this to be easy. We are talking here about 500 000
> lines of C++ (not including headers). And the code is performance critical.
>
> We may have 2 approachs : a complete port or a binding (so translation
> of doom's headers in D + some glue code between D and C++ - which isn't
> as easy as it seems).
>
> This is definitively not a one man job, but I'm sure we have some
> skilled dev here and we all want to promote D. If some of you do think
> that it's a good idea and want to spend some time on it (this is
> definitively a critical point).
>
> I'm definitively in. And you ?

I don't think porting any game to D is a good idea right now. I've did 
some major game developement on D. Half my code uses manual memory 
management and still the D garbage collector is a major performance 
issue. Unless you want to do all of the memory management yourself, 
which pretty much results in not using phobos and most of the cool 
features in D I wouldn't recommend porting a bigger game to D.

-- 
Kind Regards
Benjamin Thaut


More information about the Digitalmars-d mailing list