Kollisionsrechtecke
Übersicht

![]() |
M0rgensternBetreff: Kollisionsrechtecke |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo.
Ich hab mal in nem Buch gelesen, dass man Sprites nicht mit einem Kollisionsrechteck umlegen soll, sondern dass man es in einzelne auteilen soll. Geht aus auch in Blitzbasic? Ich weiß, es ist unnötig, wegen IMagesCollide, aber ich wüsste es einfach gerne. Achso, wenn man ein Bild hat und man will nur die obere Hälfte auf Kollision prüfen, sagen wir mit ImagesCollide, Wie muss man das dann machen? Gruß, M0rgenstern |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Unter Blitz3D versteht man unter Sprites eher etwas aus dem 3D-Kramm LoadSprite![]() Du meinst aber sicherlich ein Image welches über LoadImage ![]() Um eine möglichst schnelle Kollision zu haben, sollte man zuerst alle Kollisionsobjekte über eine gewisse Kollisionswahrscheinlichkeit aussortieren. Das heisst nichts anderes, als dass man zuerst mit RectsOverlap ![]() ![]() ![]() ![]() Zu deiner zweiten Frage... Was willst du denn genau machen? Es ist nicht so gut, [u]ein[/i] Bild über den ganzen Bildschirm zu spannen um darauf sein Level zu zeichnen. Besser ist, man macht sich eine Tilemap. Das sind genau 5 Zeilen Code zum einspielen der Daten, 1 Zeile Code zum initialisieren eines Arrays und 5 Zeilen Code während der Laufzeit. Ansonsten müsstest du eine Vorabfrage machen, um nur Teilbereiche kollidieren zu lassen. Aber wie gesagt, eine Tilemap sollte da weiter helfen, falls ich dein Problem richtig verstanden habe. |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
![]() |
M0rgenstern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Also, mit Sprite war in dem Buch ein 2d Bild gemeint. (also, z.b. ein Skelett oder so, dass halt in eienr bmp datei gespeichert ist, in verschiedenen Positionen, so dass man es im Spiel animieren kann).
Aber ja ich meine ein Bild das über Loadimage oder LoadAnImage geladen wird. Also, es ist so: Eigentlich wollte ich nen kleinen Moorhuhn Klon programmieren, hab aber gemerkt dass mir einfach noch ein klein wenig die Erfahrung fehlt. Deshalb schreib ich jetzt erst kleine Funktionen (z.b. Den Highscore oder so) die ich dann sowieso immer wieder nutzen kann. Dann ist mir die Idee gekommen, dass ich ja so ein Fang-Spiel machen könnte. Von oben fallen Eier, man steht unten, mit einem Korb auf dem Kopf und muss hin-und-her laufen, um die Eier aufzufangen. Und dann geht es einfach von der Theorie her darum, dass wenn die Figur MIT dem Korb ein Bild ist, ob ich dann nur für den Korb (Oder halt nur für das obere Viertel des Bildes) eine Kollisionsabfrage machen kann. Denn wenn die Eier zu tief gefallen sind, dann hat man ja eh keine Chance mehr. Liebe Grüße, M0rgenstern |
||
![]() |
hecticSieger des IS Talentwettbewerb 2006 |
![]() Antworten mit Zitat ![]() |
---|---|---|
In diesem Fall nimm doch die Position vom Korb bzw. der Spielfigur und überprüfe mithilfe RectsOverlap![]() Ein Offset ist nichts anderes als eine relative Verschiebung. Zum Beispiel: X Bildposition + schwarzer transparenter Rand im Bild selbst etc... |
||
Download der Draw3D2 V.1.1 für schnelle Echtzeiteffekte über Blitz3D |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group