AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Break-Game, Kugel auf Rechtecklanden lassen ...
Thema durchsuchen
Ansicht
Themen-Optionen

Break-Game, Kugel auf Rechtecklanden lassen ...

Ein Thema von KleinAmann · begonnen am 26. Jun 2008 · letzter Beitrag vom 6. Jul 2008
Antwort Antwort
Seite 2 von 4     12 34      
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#11

Re: Break

  Alt 26. Jun 2008, 17:52
Hai KleinAmann,

bitte gebe deinem Thread einen Titel von dem man auch gleich auf den Inhalt der Frage schliessen kann.

Dafür musst Du nur auf den "Edit"-Button neben dem obersten Posting von Dir klicken.

Nur wenn ein Thread einen Titel hat der auf die Frage schliessen lässt haben andere die Möglichkeit, durch benutzen der Suchfunktion, eine Lösung für ähnliche Fragen zu finden.

Danke
Stephan B.
  Mit Zitat antworten Zitat
KleinAmann

Registriert seit: 29. Apr 2008
Ort: Bad Waldsee
32 Beiträge
 
#12

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 26. Jun 2008, 20:18
hey,

also wenn man das ungleich macht (<= | >=)
dann funtz es aber es ist wichtig dass es genau ist weil
sonst hat das Spiel dummerweiße keinen sinn

Bitte um weitere Hilfe


P.s ich schreibe so spät da unser Router den Geist aufgeben hat.
sry
Dominik A.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#13

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 27. Jun 2008, 00:48
Genau wird dein Ball jedoch in den seltensten Fällen treffen, da er sich wahrscheinlich meist um mehr als nur einen Pixel pro Step bewegt. Die genauste Möglichkeit das in den Griff zu bekommen ist es, wenn du den Flugvektor den Balles nimmst, und die Gerade die er erzeugt mit der Kollisionsgeraden schneidest. Liegt der Schnittpunkt innerhalb des unskalierten Flugvektors, tritt zwischen dem letzten und nächsten Step die Kollision ein. Dann kannst du den Flugverktor an der Normalen der Kollisionsgeraden im Schnittpunkt spiegeln (Reflexion), und ihn um den restlichen Betrag den der vorige Flugvektor über die Kollisionsgerade hinaus geht in die neue Richtung verschieben. Damit hast du dann die Kollision "zwischen" zwei Steps korrekt berechnet, obwohl der Ball den Schläger niemals sichtbar berührt.

Der einfachere und ungenauere (meist aber ausreichende) Weg ist es, den Ball sobald der über die Kollisionsgerade hinaus ist, genau über diese zu platzieren, und fortan den reflektierten alten Flugvektor zum aktuellen zu machen. Damit erspart man sich die Schnittpunktbestimmung, und die Verhältnisbildung des Schnittpunktes zum Flugvektor, sowie ein paar Additionen. Nachteil der Variante ist, dass man den tatsächlichen Schnittpunkt ja nur noch approximiert, und nicht die exakte Flugbahn einhält. Dadurch kann das gerade bei hohen Geschwindigkeiten zu ruckartigem unerwarteten Verhalten führen.

Gruß,
Medium

Edit: Hab mal noch n Bildchen zu obigem gemacht. In Worten ist das glaube ich schwer nachvollziehbar.
Miniaturansicht angehängter Grafiken
kollision_449.gif  
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
KleinAmann

Registriert seit: 29. Apr 2008
Ort: Bad Waldsee
32 Beiträge
 
#14

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 27. Jun 2008, 14:23
hey,

erstaml WOW für die geile Idee und für die Grafik.

Leider denk ich nicht dass ich das hingrieg, werd aber mal versucehn.

Vielen Dank nochmal an alle ich werd mich aufjedenfall melden

Mfg Domi
Dominik A.
Mfg Domi
  Mit Zitat antworten Zitat
KleinAmann

Registriert seit: 29. Apr 2008
Ort: Bad Waldsee
32 Beiträge
 
#15

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 27. Jun 2008, 18:20
hey,

Hab jetzt sehr viel ausprobiert aber bekomms einfach nicht hin =(

Könnt ihr mir ein Tipp geben?

Mfg
Domi
Dominik A.
Mfg Domi
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#16

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 28. Jun 2008, 07:12
Morgen,

häng doch bitte mal das Projekt an.
  Mit Zitat antworten Zitat
KleinAmann

Registriert seit: 29. Apr 2008
Ort: Bad Waldsee
32 Beiträge
 
#17

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 28. Jun 2008, 10:37
Morgen =),

Hier ist mein Code, und das ganze Projekt ist net grad das beste weil
in die richtung hab ich noch nichts gemacht.

Mfg Domi

P.s wenn ich in Delphi mein Priójekt abspeichern will, kommt oft
das ich eine Acess violation hab und dann noch was mit karasx2.dll.
kennt jemand das Problem, und kann helfen wäre
echt super nett =)
Angehängte Dateien
Dateityp: rar break_804.rar (6,4 KB, 10x aufgerufen)
Dominik A.
Mfg Domi
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#18

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 28. Jun 2008, 13:40
es gibt auch noch ptinRect evlt. reicht das schon für deine Kollision Erkennung.
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
KleinAmann

Registriert seit: 29. Apr 2008
Ort: Bad Waldsee
32 Beiträge
 
#19

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 29. Jun 2008, 10:58
wie funktioniert die Funktion?
Dominik A.
Mfg Domi
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#20

Re: Break-Game, Kugel auf Rechtecklanden lassen ...

  Alt 29. Jun 2008, 11:44
Ganz einfach: Du übergibst zuerst ein TRect und dann ein TPoint.
Es dürften hier genügend beispiele geben. Für ein BreakOut Clone dürfte das ausreichen.

am besten währe es du schreibst dir eine Funktion die alle Objekte durch geht und die angeben Position vergleich.
Die Funktion prüft letztendlich nur ob ein Punkt in Viereck liegt. Wenn ja wird True zurück geben wenn nein wird False zurück geben.

Es gibt noch weitere nützliche Funktionen. z.b. eine die vergleich ob zwei Viereck sich schneiden.

PS:
Ich kann dir gerne mal meine 2D Engine geben bzw. die gibt es hier zum runter laden.
Allerdings geht sie nur in Verbindung mit Lazarus. Die Engine basiert komplett auf Canvas.

Oder du kannst auch noch Andorra nutzten, wie ich gesehen habe ist es damit auch recht einfach.
Aber vermutlich währe es für ein einfachen BreakOut Clone übertrieben(dort gibt es übrings schon einen als beispiel)
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 4     12 34      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz