Kollision

Übersicht BlitzBasic Beginners-Corner

Neue Antwort erstellen

Badudel

Betreff: Kollision

BeitragSa, Jun 17, 2006 11:51
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich hab ein Problem mit der Kollision: Man muss ja immer angeben, wo die Bilder sind (x- und y-Achse), aber wenn ich jetzt eine Straße (2d) hab, und das Auto nicht von der Straße abkommen soll, muss ich ja jeden einzigen Pixel der Sraße angeben?! Kann man das irgendwie umgehen???
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik!

Goodjee

BeitragSa, Jun 17, 2006 12:02
Antworten mit Zitat
Benutzer-Profile anzeigen
du redest grade schwachsinn Very Happy

du musst nur den pixel angeben wo das bild anfängt...also normal die obere, linke ecke...

wenn jetzt keine kollision mehr mit dem bild ist dann bist du von der straße abgekommen
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/

Hagbard

BeitragSa, Jun 17, 2006 13:04
Antworten mit Zitat
Benutzer-Profile anzeigen
Also, ich würde es anders machen:

Zitat:

If Not spieler_X < weg_X Then
If KeyDown(taste) Then spieler_X = spieler_X - 1
EndIf



somit hättest du schonmal bei GERADEN Strecken die linke Seite abgefragt, das machst du dann noch auf der rechten Seite.
Zudem musst du bei runden Strecken anders arbeiten...

Goodjee

BeitragSa, Jun 17, 2006 14:04
Antworten mit Zitat
Benutzer-Profile anzeigen
geht dann in kurven nicht soo gut *g*
"Ideen sind keine Coladosen, man kann sie nicht recyclen"-Dr. House
http://deeebian.redio.de/ http://goodjee.redio.de/

Badudel

BeitragSa, Jun 17, 2006 15:55
Antworten mit Zitat
Benutzer-Profile anzeigen
ich mein, dass die Straße auf dem Bild ist, und Häuser daneben sind. Das Auto soll aber nich die Häuser berühren (also nich die Straße verlassen)und Kurven solln drinne sein.
Wir werden dem Schwein schon schlachten, auch wenn ihm quiekt.
Zum Teufel mit das Grammatik!

Christoph

Betreff: Tip: Kollisionsvorlage erstellen

BeitragSa, Jun 17, 2006 17:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Eine Alternative:
Auserhalb von Blitzbasic:
Lege zwei gleich große Bilder an.
Erstes Bild:
1. Male in das Bild die Lanschaft mit Straßen Häusern usw.usw.etc.usw.
Zweites Bild:
1. Male einen weißen Hintergrund, der das gesamte Bild ausfüllt.
2. Male alle Stellen mit Schwarz aus, die ein Hindernis werden sollen.
Arrow Ich will eine Landschaft mit einer Straße in der Mitte und Häusern drumherum.
Arrow Du malst die Häuser und die Staße ganz normal in das erste Bild und
Arrow anschließend füllst du im Bild 2 die Stellen mit Schwarz aus, die ein Hindernis sind
Arrow (die Häuser Wink ), den Rest mit Weiß.
Nun zu BB:
1. Lade beide Bilder.
2. Füge eine Transparenz in das zweite Bild ein:
Code: [AUSKLAPPEN]
Maskimage {Hier kommt der Name des Bildes hin},255,255,255

2. Nun malst du wie gewohnt das erste Bild als Landschaft.
3. Nun zum springenden Punkt:
Das zweite Bild wird nicht gemalt. Es ist eine Kollisionsvorlage.
Schwarz=Hindernis<-->Weiß=Befahrbahrer Weg
Schreib in BB:
Code: [AUSKLAPPEN]
if imagescollide(Auto,Autox,Autoy,Autoani,bild2,0,0,0)
....
endif

Nun hast du den Ich-kann-nur-da-fahren-wo-der-Programmierer-es-will Modus.
Was in den if-Block kommt musst du dir gut überlegen.... Idea ....denn du
willst ja ein möglichst realistisches Fahrverhalten.

Diese Methode ist ziemlich perfekt, das einzige was man bemängeln kann ist der doppelte Speicherplatz, was bei großes Landschaften ein Problem werden kann. Confused

Dafür erlaubt dir diese Methode eine komplexe Landschaft zu erstellen und selbst schwierige Kurven sind, vom Zeichnen abgesehen, genauso simpel wie gerade Strecken.

5k41

BeitragSa, Jun 17, 2006 21:29
Antworten mit Zitat
Benutzer-Profile anzeigen
Wenn du mit Tiles arbeitest, einfach alle 9 Tiles um den Spieler rum prüfen auf:
1. Hinderniss/Strasse
2. Wenn Hinderniss dann imagescollide mit dem auto und das auto zurück setzten!

MfG
5k41
Projekte:
For a better World - Gesellschaftsspiel ( 100%)

User posted image

Christoph

BeitragSo, Jun 18, 2006 20:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Wenn du mit Tiles arbeitest......

Und Kurven???
Erinnerung:(Zitat von Badudel:)
Zitat:
......und Kurven solln drinne sein.

Zitat:
2. Wenn Hinderniss dann imagescollide mit dem auto und das auto zurück setzten!

Und am besten noch die Geschwindigkeit verringern, da man sonst nach einer
Kollision wieder voll Speed hat, als hätte man nie ein Crash gehabt.

DerHase

BeitragMo, Jun 19, 2006 13:09
Antworten mit Zitat
Benutzer-Profile anzeigen
@Christoph: Warum zur Hölle glaubst Du, dass Kurven mit Tiles nicht möglich sind? Ein riesiges Bild als Level zu laden funktioniert doch nur bei kleinen Leveln und das auch nicht immer sehr flüssig.
Ein Level in meinem Aktuellen Projekt kann locker eine Größe von 20000x20000 Pixel erreichen, dies ginge mit Deiner Methode z.B. nicht.

Edit:
Naja wobei ich muss zugeben, wenn es z.B. kein scrolling gibt o.ä. ist Deine Methode auch prima :]

Christoph

BeitragMo, Jun 19, 2006 13:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Zitat:
Naja wobei ich muss zugeben, wenn es z.B. kein scrolling gibt o.ä. ist Deine Methode auch prima :]

Scrollen kann man mit dieser Methode auch. Wink

Es liegt ganz eindeutig an der Größe des Spielfeldes:
->Wenig Details, riesige Landschaften : Tiles
->Viel Details, mittelgroße Landschaften : 2-Bilder-Taktik

Neue Antwort erstellen


Übersicht BlitzBasic Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group