Their codebase has smart things implemented smartly, dumb things implemented smartly, smart things implemented dumbly, and dumb things implemented dumbly. To wit:
And Q3 is still probably one of the best codebases I've worked with, in terms of learning clever tricks and being hackable.
"Beauty" is such a shitty metric for how good code is--I think you want to maximize the things implemented smartly, and minimize the dumb things.
Some of the best engineering in the Q3 codebase was unseen stuff used for the virtual machine the whole thing ran on--itself having roots back to the VM in Quake 1.
https://github.com/id-Software/Quake-III-Arena/tree/master/c...
Their codebase has smart things implemented smartly, dumb things implemented smartly, smart things implemented dumbly, and dumb things implemented dumbly. To wit:
https://github.com/id-Software/Quake-III-Arena/blob/master/c...
Array are for chumps, apparently.
Perhaps my favorite:
https://github.com/id-Software/Quake-III-Arena/blob/master/c...
~
And Q3 is still probably one of the best codebases I've worked with, in terms of learning clever tricks and being hackable.
"Beauty" is such a shitty metric for how good code is--I think you want to maximize the things implemented smartly, and minimize the dumb things.
Some of the best engineering in the Q3 codebase was unseen stuff used for the virtual machine the whole thing ran on--itself having roots back to the VM in Quake 1.