Problem mit Sprites

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Das dauert doch dann viel zu lange, die maps zu bauen!

wie bauen.
die Grundlage? also das was du selber zusammensetzen musst und beim game mitliefern?

dazu kann man sich fix nen editor schreiben, gibt auch ein paar fertige,
muss man halt gucken, was einem genau passt.
gibt auch einfache behelfslösungen wie bmp2map,
wenn man sich den aufwand der editorsuche sparen will.

aber um ein paar unterschiedliche kacheln zu erstellen,
und die zu ner hintergrundgrafik zusammenzusetzen,
braucht man nicht so lange, wie für eine einzige riesengrafik.

außerdem ist eine riesengrafik nicht praktikabel,
der speicherverbrauch ist unverhältnismäßig höher als der einer tilemap..

zum thema tilemap ist schon viel geschrieben worden.
benutz einfach mal die boardsuche mit den suchbegriffen
tilemap, tileengine und mapengine (auch mal auseinanderschreiben)
auch in der Lounge gibts mehrere Threads dazu.
(link in meiner Sig. und oben rechts bei den Boardlinks)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kurono
Beiträge: 44
Registriert: 28.10.2006 15:03
Wohnort: Mineral Town
Kontaktdaten:

Beitrag von Kurono »

:allright:
MHMMMM... soso, dann werd ich wohl nochmal schauen, das klingt ja ganz gut!
Und wie war das nun mit den Objekten?
Wie sieht so ein kleiner Code-Schnipsel aus?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

mit den objekten hast du verschiedene möglichkeiten.

wenn deine objekte niemals hinter kartenbestandteilen sein können (optisch)
dann zeichnest du zuerst deine karte, und später die objekte in y-order.

wenn das anders ist (wie z.b. bei einer diablo-like engine),
dann musst du karte und objekte in beziehung setzen.

dazu ist es am einfachsten, wenn sich auf jeder tile immer nur ein objekt befinden kann.
dann führst du in deinem strukturierten Map-Array ein datenfeld mit,
in dem sich die nummer des objektes befindet.

wenn nun die Map-Engine an eine tile mit objekt kommt, zeichnet sie zuerst die Tile, dann das objekt.

wenn ein objekt auch breiter als ein Tile sein kann, geht es bei einer senkrechten matrix auch,
dass man erst die map-zeile, und dann die objekt-zeile zeichnet,
aber eben insgesamt zeilenweise.
dann ist ein objekt immer über einer nachbattile in der gleichen reihe,
aber ein Baum-tile in der nächsten reihe würde über das objekt gezeichnet werden.

[logik und satzbau edit]
Zuletzt geändert von Kaeru Gaman am 30.10.2006 19:53, insgesamt 1-mal geändert.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Deine Homepage ist doch das perfekte Beispiel. Schau Dir den Hintergrund an, der wiederholt sich ja auch. Nun überlege Dir mal, wie es wäre, wenn Du das Bild vorher in dieser riesigen Größe fest hochgeladen hättest, und das dann als gesamten Hintergrund anzeigen würdest :mrgreen: da ist das auftilen auf jeden Fall die bessere Wahl :allright:
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Benutzeravatar
Kurono
Beiträge: 44
Registriert: 28.10.2006 15:03
Wohnort: Mineral Town
Kontaktdaten:

Beitrag von Kurono »

Joa, das mit den tiles ist ja klar, das das schneller geht, die kollisionsabfrage sollte dadurch ja auch eigentlich leichter werden, als wenn ich eine mask über eine große map lege!

also ich werd mich da mal reinfuchsen und werd mal versuchen, etwas mit objekten hinzukriegen. <)

wenn ich dann was zu stande gebracht habe, oder fragen hab, meld ich mich einfach!

achso, bevor ichs vergess: wenn hier jemand einen kennt, der harvest moon grafiken benötigt, sagt bescheid!
Ich hab so ziemlich alle tilesets und sprites vom snes-game! :mrgreen:
Benutzeravatar
Zaphod
Beiträge: 2875
Registriert: 29.08.2004 00:40

Beitrag von Zaphod »

Hmmm.... legal ist das aber nicht, oder?
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

nein, dat is nich legal.

@Kuro
lass son quatsch lieber.

____________________________________
zum thema:
> die kollisionsabfrage sollte dadurch ja auch eigentlich leichter werden

in einem Harvest Moon brauchst du KEINE einzige Kollisionsabfrage.
läuft alles über Koordinatenverrechnung.

da du stets weißt, wo deine objekte sind, und ebenso weißt, was an welcher stelle der Map ist,
wäre ein arbeiten über kollisionen einfach nur unnötiger aufwand.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Kurono
Beiträge: 44
Registriert: 28.10.2006 15:03
Wohnort: Mineral Town
Kontaktdaten:

Stimmt

Beitrag von Kurono »

Ja, richtig!
Nochmal zu dem Bmp2Map: die kartengröße ist vieeel zu klein, die man damit erstelen kann! :|
Noch dazu bräuchte ich echt mal eine kleine Einführung in das Thema Tilemaps und vor allem Objekten! :freak:
Wenn nämlich ersteinmal die Grundzüge stehen, gehts ja voran!
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Beitrag von dllfreak2001 »

also du machst dir ein tileset, dat sind die grafiken die du in der
karte nutzen willst. Technikbedingt musst du sowieso jeder Grafik eine
ID geben. So nun machst du nen 2D Array, zB. Map.l(256,256).
Jetzt kannst du jedem Feld eine Sprite-ID geben und du hast ne Map.

Dann musst du noch ne routine schreiben die dir nur die sichtbaren Felder anzeigt, weil sonst wird es zu langsam. Am besten so eine die nicht das ganze Array durchlaufen muss um den sichtbaren bereich zu ermitteln.
I´a dllfreak2001
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Stimmt

Beitrag von Kaeru Gaman »

Kurono hat geschrieben:Nochmal zu dem Bmp2Map: die kartengröße ist vieeel zu klein, die man damit erstelen kann! :|
wie bitte? o_O

du kannst mit bmp2map grafiken von z.b. 2000x2000 pixeln verarbeiten,
und ne map von 2000x2000 tiles ist doch für harvest moon mal fett groß genug!
im grunde kannst du damit so große maps erzeugen, wie du bitmaps
erstellen kannst, und das ist nur durch deinen arbeitsspeicher begrenzt.

wenn du nicht weißt, wie man in PAINT die bitmap-größe ändert, ist das ein anderes problem.....

bei bmp2map repräsentiert ein pixel ein tile, eine farbe einen tiletyp.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten