Wie finde ich die perfekte Tilegröße raus?

Status
Nicht offen für weitere Antworten.

radiac

Bekanntes Mitglied
Hallo :).

Hab da wieder mal ein Problem. Und zwar habe ich eine Scrolling Map gebaut die 3000 x3000 Pixel groß ist. Diese habe ich ich 400 Teile á 150 x 150 Pixelstücke geteilt.
Wenn ich diese jetzt zusammengesetzt habe, habe ich das Problem, das sich immer wenn
man sich auf dieser Karte bwegt ein "Framestreifen" über die Karte zieht.

Die Frames sind im Schnitt bei 75. Egal wie groß die Auflösung des Fensters ist, es geht nicht weg.

Jetzt denke ich mir gerade, das ich evt die Tiles zu größ gemacht habe oder???

Was ist da besser? Lieber viele kleine Tiles? Oder doch lieber Große bei einer 3000 x 3000 Map.

Würde mich auf Antworten von Erfahrenen Leuten freuen :applaus:
 

Steev

Bekanntes Mitglied
Ich kenne das,

und zwar ist das Problem, dass sich die X und Y-Position der gesamten Map währen der Renderung verändert. Daher hast du dann so komische Abstände zwischen den Tiles.
Speicher die vor dem Rendern die X und Y-Position in lokalen Variablen und render die Map dann. Dann müssten die Abstände weg sein.

Gruß
Steev
 

Marco13

Top Contributor
Hm .... wenn du die Bewegung (ohne spezielle synchronisation) in einem eigenen Thread machst, ist klar, dass Artefakte auftreten - ist dem so?
 

radiac

Bekanntes Mitglied
x und y wird gespeichert. Mittlerweile habe ich es bei anderen Pcs getestet, die das Problem nicht haben. (scheinbar... habs selbst nicht gesehen).

Mir sagte jemand der mit BlitzMax programmiert, das man mit v-sync das problem beheben kann. Gibt es da eine Möglichkeit in Java??? Weil mein Monitor eine Hz Rate von 60 hat... und die Fps des Spiels bei 67 liegen.

Vielleicht ist jetzt auch klar, was ich meine :). Es rollt so eine Art verzerrter Teppich über dem Bildschirm. Wenn ich von links nach rechts die "Map" verschiebe, ist das sogar noch stärker. Flüssig läuft alles :).
 

radiac

Bekanntes Mitglied
Nochmal ich :).

Habe nachgelesen, das es evt. auch am Fullscreen liegen kann, da die Anwendung im Fullscreen ausgeführt wird. Leider habe ich keine Methode gefunden.


Zitat:

BufferStratergy is the only way to get vsync in Java2D. If you create a fullscreen, page flipped buffer strategy then (IIRC) you get vsync automagically. Otherwise you'll need to check out BufferCapabilities.isPageFlipping() and BufferCapabilities.isFullscreenRequired().

Noch nie gehört xD
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
0 Finde den Fehler nicht Spiele- und Multimedia-Programmierung 2

Ähnliche Java Themen

Neue Themen


Oben