Kollisionskontrolle bei VPython

Hier werden alle anderen GUI-Toolkits sowie Spezial-Toolkits wie Spiele-Engines behandelt.
jtk
User
Beiträge: 37
Registriert: Montag 19. November 2007, 17:16

Kollisionskontrolle bei VPython

Beitragvon jtk » Sonntag 25. Januar 2009, 11:51

Ich möchte mit vPython ein kleines Spiel schreiben und will nicht, das der Held durch den Boden fällt.

viele dank im voraus :)
Benutzeravatar
numerix
User
Beiträge: 2696
Registriert: Montag 11. Juni 2007, 15:09

Re: Kollisionskontrolle bei VPython

Beitragvon numerix » Sonntag 25. Januar 2009, 12:47

jtk hat geschrieben:Ich möchte mit vPython ein kleines Spiel schreiben und will nicht, das der Held durch den Boden fällt.

viele dank im voraus :)


:?: :?: :?:
Soll dir jemand das Programm schreiben oder was hättest du gern?
jtk
User
Beiträge: 37
Registriert: Montag 19. November 2007, 17:16

Beitragvon jtk » Montag 26. Januar 2009, 13:03

nicht ganz. ich hätten nur gerne einen Denkanstoß, wie man das lösen könnte
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Montag 26. Januar 2009, 13:23

Dann überlege Dir zunächst unabhängig von grafischer Darstellung eine Datenstruktur, die Meta-Informationen beherbergt, wie etwa Bodenbeschaffenheit usw.

Dann musst Du irgend wie ein Mapping basteln, dass solchen Dingen wie einer Spielfigur zu den einzelnen Informationen ein Aktionsmuster zuordnet.
Bsp:

Code: Alles auswählen

elements = {
    "rock": ["solid", "unbreakable", "heavy"],
    "water": ["fluid", "swimable"],
    ....
}

Nun kann man einer Figur sagen, dass sie auf allen Elementen mit dem Attribut "solid" laufen kann und eben nicht einsinkt, herunterfällt usw.

Natürlich muss sich die Figur im "Level" die Infos beschaffen können, worauf sie gerade steht oder wo sie gegen läuft ;-)
Findet man raus, dass da ein Element "rock" ist, so kann die Figur nun schlussfolgern, dass sie darauf laufen kann.
sea-live
User
Beiträge: 440
Registriert: Montag 18. Februar 2008, 12:24
Wohnort: RP

Beitragvon sea-live » Montag 26. Januar 2009, 14:48

für sowas stellt pygame schon die nötigen routinern zur verfügung!
warumm muss es ausgerecxhnet in v sein
Benutzeravatar
Hyperion
Moderator
Beiträge: 7472
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Beitragvon Hyperion » Montag 26. Januar 2009, 15:26

sea-live hat geschrieben:für sowas stellt pygame schon die nötigen routinern zur verfügung!

Spielst Du auf Sprites an?
BlackJack

Beitragvon BlackJack » Montag 26. Januar 2009, 16:31

@sea-live: Es muss wahrscheinlich VPython sein weil 2D und 3D doch ein gewisser Unterschied ist.

Und auch in 2D bietet PyGame nur bis zu einem gewissen Grad Unterstützung. Es gibt zwar Möglichkeiten zur Kollisionsabfrage, aber den Test, ob eine Spielfigur "durch den Boden fällt", muss man darauf aufbauend schon noch selber implementieren.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder