![]() |
Große Karte ins Spiel bringen?
Hallo!
Die Landschaft für mein Spiel ist ein Bild (8504x5906 Pixel, 191Mb als Bmp). Wie kann ich die am besten ins Spiel bringen? Als ganzes Bild anzeigen ist zu langsam und braucht viel(!) zu viel RAM. In kleine Stücke teilen is zwar schneller, braucht aber min genausoviel RAM. Könnte ich das nicht irgendwie so hinkriegen das immer nur die Teile geladen werden die sichtbar sind und wenn ja, wie? Hat jemand Ideen, Tips, Codeschnippel etc? Ich freu mich schon mal :) |
Re: Große Karte ins Spiel bringen?
Warum konvertiest dus nicht ins JPEG-Format ?
|
Re: Große Karte ins Spiel bringen?
Das muss im Speicher dann doch auch entpackt als DIB rumliegen...
Ich nehme an es geht um ein 3D-Game? Ich werfe mal den Begriff "Octrees" in den Raum. Wird bei 3D-Spielen oft für die Erkennung, ob und welche 3D-Objekte sichtbar sind eingesetzt. Da lässt sich doch auch sicherlich was in Richtung Textur machen. Aber Octrees sind ein nicht allzu kleines Kapitel, weswegen ich mir das noch nie im Detail angeguckt habe. Ich weiss nur, dass es geht ;). gruss, dizzy |
Re: Große Karte ins Spiel bringen?
Hi,
eine Bitmap zu erstellen die so gross ist, wird deinem Spiel das genick brechen, spätestens wenn du Sprites rotierst oder aufwendige rechenoperationen durchführst! Am geschicktesten funktioneiert es wenn du deinen Hintergrund aus ein und der selben Bitmap, z.B. (50x50) erstells und diese als tilted lädst, nun kannst du einfach die Objekte die in einem Spiel vorkommen (Berge, Flüsse,? (Alles was in deinem Spiel vorkommt draufsetzen und fertig). Voteile, - weniger zeichenarbeit - schneller - collision ist einfach realisierbar! ATwardz |
Re: Große Karte ins Spiel bringen?
ich stimme ATwardz 100% zu, lies dazu auch mal hier:
![]() |
Re: Große Karte ins Spiel bringen?
|
Re: Große Karte ins Spiel bringen?
Naja, mir ist glaub schon was eingefallen.
Ich werde die Karte in kleine(256px) Stücke teilen, dann die Objekte für die Karte erstellen und immer prüfen ob man sie sieht. wenn ja wird das bild geladen und wenn sie außerhalb vom bildschirm sind wird die grafik wieder entladen. Gruß, |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz