wie wäre es damit, eine fertige 2D Physik-Engine zu nehmen?
Sich so etwas anzuschauen, schadet sicherlich nicht. Wenn der Quellcode kompakt und Open-Source ist könnten wir ein Engine ja verwenden..
Hast Du eventuell einen Link? Eine Link-Sammlung mit nützlichen Beispielen wäre nicht schlecht.

Hier findet sich ein Beispiel für die Kollisionsdetektion über die Objekte:
http://www.cokeandcode.com/info/tut2d.html

Die Frage, ob man die Kollisionsdetektion über ein Kreisprofile oder über Farbpixel macht, ist nicht ganz einfach zu entscheiden.
Man könnte ja auch jedes Objekt rot umranden, damit es von einem andern Objekt detektiert werden kann.
Vorteil: Die Objekte können beliebig Formen und Größe annehmen.

Methode 2: Jedes Objekt hat ein Kreisprofil.
Vorteil: Kollision kann berechnet werden und Kraftwechselwirkungen ( ein Roboter schiebt den anderen weg ) können einfach realisiert werden.

Nachtrag: Habe gerade eine 2D-Java Engine gefunden
http://www.cokeandcode.com/phys2d/
Witzig, man kann das Demo direkt im Browser starten. Allerdings: mir scheinen die Physik Engines sehr auf "Schwerkraft" ausgelegt. In unserer flachen Welt eigentlich nicht vorhanden. Die Frage wäre auch: wie viel Rechenzeit braucht so was?