déjà tu testes par bounding box, ensuite tu testes pixel par pixel.
après tu peux tester avec des masques où chaque pixel non transparent d'un sprite représente un bit, dans un DWORD (long), du fais rentrer 32pixels, et tu peux tester des collisions avec des décalage et des ET logiques.