immediate or retained mode for a M3G game?

Hi, i’m writing my first 3d game using m3g, a simple lander with heightmaps.
For the moment i’m using immediate mode, so i get the mesh of my spaceship from a .m3g and then i manage and render the various objects manually, creating enemies, camera and lights at runtime…
is this a correct way to implement a game?
why and when should i use retained mode instead of immediate mode to write a game?

thanks in advance