je vais essayer de te faire une idee grosso modo...
bon bah, tu as une technologie de rendu 3d propre à l'application que tu veux en faire (batiments genre quake3d, simulateurs/grands espaces, jeu de bagnole)... chaque type de jeu va avoir un algo efficaçe pour son cas....
en + de la techno de rendu, tu as des primitives de collision et de contrôle des objets 3d dans l'espace, et des événement (A appuie sur le bouton B qui ouvre la porte C)...
après tu auras par-dessus tout ça une gestion du réseau/système sonore/périphériques.....
voila z'espère que tu as une idée...