So this is what I am thinking, when you are creating a level containing multiple enemies if you load the sprites for each enemy you are going to eat up a lot of memory and kill framerate. So the best way to implement this using directX would be to create a container for your enemies implementing just individual coordinates, vector information, and probably transformation matrix information and then just use pointers to statically loaded sprites. You would then draw those sprites based on the information gained from your container. This way you would only have a sprite loaded for each type of enemy vice each enemy. Am I on the right track here?