Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Fr Jul 18, 2025 07:58

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Jump'n Run - Hinderniskontrolle
BeitragVerfasst: Fr Jun 29, 2007 18:21 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jun 29, 2007 17:56
Beiträge: 9
Wohnort: Cottbus
Hallo Leute,

Ich hätt da mal ne Frage, und zwar:

"Wie stellt man es an, dass ein Männchen bei Jump N Run nicht über ein Hindernis hinausläuft?
Kontrolliert man das, mithilfe von x und y Werten, oder könnte man das nicht mithilfe von Farben
überprüfen.

Das man dem Männchen zum Beispiel sagt, wenn du auf Schwarz bist, dann setze dich zurück, bzw.
überschreite nicht die Farbe Schwarz."

Bitte um Rat :-)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jun 29, 2007 18:42 
Offline
DGL Member
Benutzeravatar

Registriert: Fr Jun 29, 2007 17:56
Beiträge: 9
Wohnort: Cottbus
Okay, ich glaub ich bin fündig geworden.

Code:
  1.  
  2. image1.Picture.LoadFromFile('bild.bmp');
  3.   x := ColorToString(Image1.Canvas.Pixels[1,1]);
  4.   showmessage(x);
  5.  


Ich glaub ich werd damit mal son bisschen rumprobieren.
Trotzdem, danke für die Antworten. *gg*


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Fr Jun 29, 2007 18:56 
Offline
DGL Member
Benutzeravatar

Registriert: Do Dez 05, 2002 10:35
Beiträge: 4234
Wohnort: Dortmund
Also wenn du keinen Wert auf Geschwindigkeit legst, dann ist Canvas.Pixels genau das Richtige. ;)

Oder anders gesagt. Canvas.Pixels ist so langsam das würde ich nur benutzen wenn es sich um 2-20 Pixel handelt. Alles darüber hinaus braucht so elendig lange. Wenn du das gesammte Bild durchsuchen musst, dann ist es wohl besser, wenn dich mal etwas zu Scanline informierst. Das ist eine Eigenschaft von TBitmap die dir den Pointer des Speichers bzw der angegebenen Zeile zurück liefert. Mit dem kannst du dann das Bild durchsuchen.

Aber in erster Linie ist es auf jeden Fall immer besser wenn man gar nicht erst so umstendlich überprüfen muss. Wenn du also von anfang an etwas ausschließen kannst dann solltest du das tun.

Ich weiß auch nicht GENAU was du vor hast und wie du dein Programm aufgebaut hast deswegen kann ich auch nicht genau sagen was die beste Lösung ist. Denn nicht immer ist die erste Lösung auch die Beste. ;)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Sa Jun 30, 2007 16:00 
Offline
DGL Member
Benutzeravatar

Registriert: Sa Okt 07, 2006 16:27
Beiträge: 52
Wohnort: Marbach(bei Chemnitz)
Man könnte ja die Überprüfung auf das direkte Umfeld der Figur beschränken, wodurch es nicht zuviele Pixel sein sollten.
Ich persönlich würde aber die Position der Figur mit den Positionen der Hindernisse vergleichen. Wenn das Hinderniss zum Beispiel Quaderförmig ist, dann bräuchte man nur überprüfen, ob einer der Eckpunkte über- bzw. unterschritten wird. Bei anderen, bizarren Körpern kann man entweder eine "Hitbox" definieren, mit der diese Überprüfung durchgeführt wird, oder aber jeden Punkt der Hindernisse (man kann ja ggf auch einige [z.B.: weit entfernte] ausschließen) vergleichen.
Ich halte diese Methode für schneller und sinnvoller, als die Überprüfung am Bild.

_________________
Es gibt eine Theorie, die besagt, wenn jemals irgendwer genau rausfindet, wozu das Universum da ist und warum es da ist, dann verschwindet es auf der Stelle und wird durch etwas noch Bizarreres ersetzt.
Es gibt eine andere Theorie, die besagt, dass das schon passiert ist.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 4 Beiträge ] 
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 15 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 14 Queries | GZIP : On ]