No idea where you might improve your code as you don't provide any. Personally, if not using a tile system, I would use a simple black+white image representing your level for collisions.
A pixmap is an area of system memory which defines the pixels within the texture you loaded. This pixmap *CAN* be drawn but is much slower than applying the texture to a surface (which is what Drawimage does).
Collision layers are exactly that. You write image data to a collision layer. Then, when you do your collision test, the system doesn't need to check the image against all others but just against the layer data. The system then returns an array with all the objects with which there has been a collision.
A pixmap is an area of system memory which defines the pixels within the texture you loaded. This pixmap *CAN* be drawn but is much slower than applying the texture to a surface (which is what Drawimage does).
Collision layers are exactly that. You write image data to a collision layer. Then, when you do your collision test, the system doesn't need to check the image against all others but just against the layer data. The system then returns an array with all the objects with which there has been a collision.