My FPS drops to about 55 fps once approximately 20 monsters in my game are in the main view. The monsters normally just have a walking animation. There are also some tree spritenodes with physics bodies attached so the player can't run into them. What are some of the main reasons for FPS drop? When I get to about 40 monster animating monster sprites in the view the fps drops to around 40-45.
***EDIT***
Alright so I figured one thing out. What I was doing to reduce memory was when a monster came out of the view, I would remove the node and store it's point + monster type in a dictionary. Then when that "point" would later return to just outside the border of the view, I would replace the point in the dictionary with the corresponding monster node.
For some reason, removing and adding the nodes uses more memory and was making my game a little choppy from reduced FPS (48-55 FPS was laggy). I tried a new method where I just load all the monster nodes at startup without replacing them and that seemed to use less memory somehow. My FPS would still drop to about 55 when I had 20 or so monsters on the screen, but the gameplay was smooth with little or no "choppiness".