Kollisions abfrage
Übersicht

MoriaBetreff: Kollisions abfrage |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi
Ich habe vor 5 Tagen mit dem Programmieren angefangen und habe mal mit einen Space Shooter begonnen. Leider hänge ich gerade an der Kollisions abfrage(spieler berührt alienschiff/rakete berührt alienschiff) und komme nicht mehr weiter ![]() MFG Moria |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn du vor 5 Tagen begonnen hast, solltest du noch bei Textprogrammen sein.
Bei mir war es zumindest so. Grafik kam erst um einiges später und ich bin der Meinung, dass du dir zuerst die Grundlagen anschauen solltest. Ansonsten. Eine Kollisionsabfrage zwischen 2 Bildern: ImagesOverlap ![]() mfg Thunder |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
Moria |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
hi und danke für deine schnelle antwort ![]() ich wollte es einfach mal ausprobieren ob ich es schon schaff ein kleines space shooter zu basteln(soll ja nix welt bewegendes sein) aber ich hätte da noch eine frage mit ImagesOverlap muss ich bei Code: [AUSKLAPPEN] Until ImagesOverlap (gfxBox, boxX, boxY, 0, gfxCircle, circleX, circleY, 0)
anstatt gfxBox usw denn namen des bildes(player1 und seine koordinaten reinschreiben also x,y?) |
||
![]() |
jokerman29 |
![]() Antworten mit Zitat ![]() |
---|---|---|
ist gfxbox nicht schon der name, in dem das bild gespeichert ist? also wenn nein dann sollte es so aussehen:
Code: [AUSKLAPPEN] Until ImagesOverlap (player1, x, y, gfxCircle, circleX, circleY) ;x y sind ja die koordinaten und lass die nullen weg, das kommt sonst nicht mit den parametern hin so sollte es funktionieren mfg jokerman29 |
||
WhY sO sErIoUs? LeT´s PuT a SmIlE oN tHaT fAcE!
Rechtschreibfehler sind special-effekts meiner Tastatur ![]() |
![]() |
Raiden93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hey ich lasse den Post nochmal kurz aufleben ![]() Jetzt habe ich mal ne Frage ich baue auch an einem Space Shooter und wenn ich nutze kein ImageOverlap sondern eine X-X, Y-Y System das auch ganz gut funktioniert nur ist da das Problem das ich die Gegner auch Quadratisch machen muss.Und jetzt zu meiner Frage.Ich habe früher mal ein Spiel mit imageOverlap Programmiert wo aber das Problem war das wenn die Schüsse zu schnell waren sie einfach durch das Object geflogen sind.Ist in diesem fall ImageOverlap für mich nicht geeignet? und wenn nicht wie soll ich dan z.b Runde Gegner bauen? |
||
![]() |
das wurgel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Was ist ein "X-X, Y-Y System"?
Und: Bei ImagesOverlap werden auch nur Rechtecke überprüft. Meinst du vielleicht ImagesCollide? |
||
1 ist ungefähr 3 |
![]() |
Raiden93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
genau ![]() z.b der ausschnitt meines Spiels Code: [AUSKLAPPEN] If Schuss\X > Gegner\X And Schuss\X < Gegner\X +35
If Schuss\Y > Gegner\Y And Schuss\Y < Gegner\Y +50 was würdet ihr mir empfehlen für eine saubere Schuss Kollision? |
||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn deine Schüsse zu schnell sind, treffen sie einfach nicht mehr auf den Kollisionsbereich - egal wie der aussieht. Wenn man einfach immer 150 Pixel hinzu addiert, sieht die Bewegung super schnell aus, aber zwischen diesem Abstand kann halt keine Kollision auftreten.
Denn Schuss nicht weiter bewegen als er lang ist, dann auf Kollision prüfen und so lange wiederholen, bis er am ziel ist. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Raiden93 |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok und wenn mein Gegner jetzt nicht Quadratisch ist sondern eine andere Form hat? dann bleibt mir doch eigentlich nichts anderes als ImageCollide oder? | ||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Das kommt ganz darauf an, welche Genauigkeit du verwenden willst. Erst überprüfen, ob die Objekte sich nahe genug sind, dann die Rechenintensiveren Funktionen verwenden. Mir genügt aber meist eine Kreis-Kreis Kollision. | ||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
das wurgel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Wenn ich schnelle Sachen auf Kollision prüfe, zwischenspeichere ich immer ob sie rechts oder links, über oder unter dem anderen Objekt waren, und wenn sich dies ändert, hab ich meine Kollision. Das erspart das Schrittweise prüfen. Ob du jetzt ImagesCollide nimmst oder Rechtecke prüfst, sieht bei so schnellen Schüssen eh kein Mensch und es spart ziemlich viel Performance. Dein X-X, Y-Y System bewirkt übringens das gleiche wie ImagesOverlap. | ||
1 ist ungefähr 3 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group