AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Problem mit Spiel: Breakout Kollisionen
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Spiel: Breakout Kollisionen

Ein Thema von SemmelRoth · begonnen am 29. Mär 2008 · letzter Beitrag vom 29. Mär 2008
 
Medium

Registriert seit: 23. Jan 2008
3.688 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: Problem mit Spiel: Breakout Kollisionen

  Alt 29. Mär 2008, 13:36
Ohne zu gucken: Du stellts einfach "irgendwie" die Kollision fest, und kannst dann folgendes einfach machen:
- Ist die am weitesten rechte Y-Koordinate im Brick links der am weitesten linken Y-Koordinate der Kugel, ist die Kugel von rechts angestoßen
- Ist die am weitesten linke Y-Koordinate im Brick rechts der am weitesten rechten Y-Koordinate der Kugel, ist die Kugel von links angestoßen
- ...

Setzt nur voraus, dass deine Kollisionserkennung zuverlässig ist, und evtl. musst du mit dem jeweiligen kürzesten Abstand der "Kugelseiten" zu den Brick-Strecken arbeiten, wenn du zulässt, dass die Kugel "in den Brick" fliegen kann.

Die generell sauberste Lösung wäre es, mit Vektoren zu arbeiten, und die Kollisionserkennung durch Schnittpunktberechnung des Richtungsvektors der Kugel mit den Brick-Seiten zu machen. Dabei kommt automatisch mit heraus, wo genau die Kugel nun auftrifft, und du kannst verhindern, dass sie sich durchdringen.
"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
 


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 22:09 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz