AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Mapsystem

Ein Thema von Neutral General · begonnen am 14. Mai 2007 · letzter Beitrag vom 16. Mai 2007
Antwort Antwort
Seite 2 von 2     12   
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#11

Re: Mapsystem

  Alt 16. Mai 2007, 12:04
So wie ich Deine Zeichnung interpretiere, dann soll das Spiel Tile-basiert sein (also eine gekachelte Karte). Dann ist Kollision mui einfach. In der Karte wird gespeichert, welche Felder begehbar sind und bei der Bewegung prüfst Du einfach das Zielfeld auf Begehbarkeit. Wenns nicht gekachelt sein soll, dann empfehle ich einen BSP-Tree (binary separated space oder so) wies genau heisst, weiss ich jetzt nicht.
In diesem Baum werden sämtliche Wände eingetragen und man kann für jede Koordinate dann abfragen, ob sie innerhalb oder ausserhalb von Festkörpern ist. Die Abfrage geht auch mui schnell, aber der Baum muss erst 'kompiliert' werden, dadurch eignet er sich nur für statische Räume. Andere bewegte Objekte musst Du dann getrennt auswerten.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.927 Beiträge
 
Delphi 12 Athens
 
#12

Re: Mapsystem

  Alt 16. Mai 2007, 12:41
Ich würde dafür sorgen das jedes Objekt sich selbst serialisieren kann .
Andreas
Monads? Wtf are Monads?
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#13

Re: Mapsystem

  Alt 16. Mai 2007, 22:35
das speichern ist eigentlich immer nur Zeit aufwendig.
Für mein Paint2 Programm habe ich einfach 2 speicher Formate entwickelt, dann kann der User einfach über die

Datei Endung entscheiden welches Format er haben möchte.

zum Kollision Problem:
damit habe ich auch immer wieder gerne meine Probleme.

zuerst mal die frage 3D oder 2D ?
dann müsste man noch wissen wie die Objekte aufgebaut sind, also z.b. so wie ich das verstehe besteht der Player aus unterschiedliche Komponenten Körper, Füße, Kopf oder ist es nur eine einfache 2D Grafik ?
wenn ja dann ist das recht einfach bzw. sind es lauter Vierecke ?

Wenn ja, könntest du z.b. in einer schleife alle Objekte durch gehen und prüfen ob sie innerhalb der angeben Positionen liegen z.b. so:

Delphi-Quellcode:
for i:=0 to objCount do begin
  if PTinrect(rect(x,y,x+w,y+h),point(x,y);
end;
das dann als Funktion.

Das ist die Grobe Erkennung. Möchtest du aber eine Feine haben ist das ganze schon aufwendiger.
Dann musst mit Transparent arbeiten. Ich hatte mal dazu ein Beispiel was mit DelphiX lief..... das kam vom DF glaube ich.....

und ich finde XML ist keine Geschmacksache ist es einfach nur viel zu viel zu Pasen.
mehr nicht.
für ein Spiel ist es einfach ungeeignet meiner Meinung nach, was macht der Paser denn wenn ich ein Level habe mit über 10.000 Objekten drin ?
und alle sollen geladen werden ?
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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