1. Doom 3: C++ enhanced RTTI and memory debugging

    Although Doom 3 was released 13 years ago, there is still of lot of interesting stuff to find in it. The main reason for that is: it was developed in the time of changes. The ID software team had just moved from C to C++ (using Visual C++ 6). Graphic cards were moving from fixed pipeline to programming pipeline, CPUs were getting SIMD extensions. All of this caused a lot of diversity in the code: crazy mix of C++/C/asm code, several renderer backends, code acceleration for MMX/SSE/AltiVec (yeah, Macs used PowerPC at that time). Not to mention tons of scripts and defs, including C++-like scripting language, and in-game GUI system.

    I have to deal with Doom 3 engine in the context of The Dark Mod (TDM for short).

    This article is about memory debugging configuration in Doom 3 SDK (more precisely, "Debug with inlines and memory log").

    read more