И советую почитать на досуге:
http://ru.wikipedia.org/wiki/Quake_engine
Пример того как нужно программировать.
"Движок был написан американским программистом Джоном Кармаком (англ. John Carmack) в 1996 году на языке Си специально для игры Quake. К разработке также был причастен Майкл Абраш (англ. Michael Abrash), который помогал Кармаку с алгоритмами и оптимизацией кода на ассемблере."
А именно, чтобы потом волосы дыбом вставали у всех от тех решений и приемов, скорости работы и оптимальности.