Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

11

13.03.2010, 20:31

da ist eine pixelgenaue überprüfung nötig.
kann man in der sdl auf einzelne pixel eines sprites zugreifen?
du musst erstmal in erfahrung bringen wie die sprites aufeinander liegen.

du nimmst die differenz der beiden oberen linken ecken der sprites(auf dem bildschirm) und du suchst bei dem ersten bild den ersten pixel der nicht den colorkey hat. addierst die position zur differenz und nimmst diese koordinaten um bei dem anderen sprite zu kontrollieren ob diese position auch nicht dem colorkey entspricht. sobald beide pixel nicht dem colorkey entsprechen hast du eine kollision.
das ist der grundgedanke. ich hoffe es war verständlich...

edit: hab wohl etwas für die erklärung gebraucht... selbst schreiben macht mehr spass! xD
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

12

14.03.2010, 13:21

Ich hab mir SDl_collide runtergeladen. Allerdings wenn ich die Headerdatei include kommen mehrere Fehler.

Muss ich das irdenwie speziell einfügen?


Hier ein kleiner auszug:

Zitat


F:\Daten\Programmierung\C++\Spiele\SDL_collide.h|94|error: conflicting types for 'SDL_CollideBoundingBox'|
F:\Daten\Programmierung\C++\Spiele\SDL_collide.h|84|error: previous declaration of 'SDL_CollideBoundingBox' was here|


In der art sind alle Fehler, erst conflicting types, dann previous declaration.

gruß
Cmd. Rex