Kollision funktioniert nicht ganz

Übersicht BlitzBasic Blitz3D

Neue Antwort erstellen

 

dont_know_to_use

Betreff: Kollision funktioniert nicht ganz

BeitragSa, Sep 29, 2012 20:00
Antworten mit Zitat
Benutzer-Profile anzeigen
Folgendes Problem: Meine Kamera soll nicht durch ein Modell durchfliegen, habe also folgenden Code geschrieben:
BlitzBasic: [AUSKLAPPEN]
cam=CreateCamera()
light=CreateLight()
cube=CreateCube()
EntityType cam,1
EntityType cube,2
EntityRadius cam,2
Collisions 1,2,2,3

Die Kollision funktioniert beim Modell auch ganz gut, allerdings flutscht die Kamera an einigen Stellen einfach durch das Objekt durch, an anderen nicht...
Kann das auch am Modell liegen, oder gibt es eine programmiertechnische Lösung dafür?

Xeres

Moderator

BeitragSa, Sep 29, 2012 20:27
Antworten mit Zitat
Benutzer-Profile anzeigen
Ohne das Modell gesehen zu haben schwer zu sagen; benutze einfach nicht Kugel-Polygon Kollision sondern Kugel-Würfel - dann sollte es keine Lücken geben können.
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
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

dont_know_to_use

BeitragSa, Sep 29, 2012 20:33
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Modell ist ein Asteroid, ist also doof, den als Würfel dastehen zu lassen. Confused

Xeres

Moderator

BeitragSa, Sep 29, 2012 20:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Dann wäre eine Kugel also besser... aber das eigentliche Problem scheint woanders zu liegen.
Code zur Bewegung / anderen Kollisionen bzw. Kollisionsreaktionen würde ich da mal überprüfen.
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
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

dont_know_to_use

BeitragSa, Sep 29, 2012 20:41
Antworten mit Zitat
Benutzer-Profile anzeigen
Die Kollision zwischen Kamera und Asteroid ist momentan die einzige Kollision im Spiel. Ist es schlimm, wenn sich der Asteroid langsam dreht? Also so:
Code: [AUSKLAPPEN]
TurnEntity asteroid,0.02,0,0.01

Lobby

BeitragSa, Sep 29, 2012 20:45
Antworten mit Zitat
Benutzer-Profile anzeigen
Ja, die Kollision in Blitz3D funktioniert nur bei unbewegten, nicht drehenden und nicht in ihrerer Größe verändernden Objekten zuverlässig.
TheoTown - Eine Stadtaufbausimulation für Android, iOS, Windows, Mac OS und Linux
  • Zuletzt bearbeitet von Lobby am Sa, Sep 29, 2012 20:50, insgesamt einmal bearbeitet
 

dont_know_to_use

BeitragSa, Sep 29, 2012 20:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm, du hast Recht. Dumm gelaufen. Crying or Very sad

Lobby

BeitragSa, Sep 29, 2012 20:57
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Thema wurde beispielsweise hier schon ganz gut behandelt.
Eine Physikengine wäre sicherlich die aufwändigste Lösung, vorallem wenn du für dein restliches Spiel keine benötigst, aber ansonsten müsstest du wohl auf eine Polygongenaue Kollision verzichten.
Was man auch machen könnte, wenn es nur einen Asteroiden gibt, wäre anstatt des Asteroiden die restliche Welt zu drehen.

Du könntest es einmal mit der im oben verlinkten Topic genannten Lösung, die Kollision in beide Richtungen zu definieren, versuchen.
TheoTown - Eine Stadtaufbausimulation für Android, iOS, Windows, Mac OS und Linux

Midimaster

BeitragSo, Sep 30, 2012 11:34
Antworten mit Zitat
Benutzer-Profile anzeigen
ich würde noch überprüfen wollen, ob vielleicht die Schrittweite der Camera beim Vorangehen so groß ist, dass die Kollision gar nicht stattfinden kann....

Wie "groß" ist eigentlich eine Camera? Hat sie auch die Basisausmaße 1x1x1?
Gewinner des BCC #53 mit "Gitarrist vs Fussballer" http://www.midimaster.de/downl...ssball.exe

Neue Antwort erstellen


Übersicht BlitzBasic Blitz3D

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group