Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Superwayne

Treue Seele

  • »Superwayne« ist der Autor dieses Themas

Beiträge: 242

Beruf: Student & App Entwickler (Xamarin)

  • Private Nachricht senden

11

16.02.2016, 18:07

Die Größe beträgt momentan gerade einmal max 120 Byte pro Chunk (RLE komprimiert). 5KB war einfach mal eine geratene Zahl wenn weitere Informationen dazukommen, kann aber auch mehr sein.

Ich habe mich jetzt dafür entschieden, die komplette Datei auf einmal zu speichern/laden. Dann erspare ich mir erst einmal die Arbeit, alle Sektoren zu verschieben, wenn ein Sektor mal größer wird.
Damit könnte ich jetzt auch alles mit dem GZipStream komprimieren, allerdings braucht der statt 300 ms ohne Komprimierung ganze 2 Minuten um einmal zu laden und zu speichern. Und die Datei war am Ende genauso groß.

Naja solange das Lesen/Schreiben unkomprimiert so schnell ist, werde ich dabei bleiben, alles einzulesen und die Datei einfach jedes mal zu überschreiben. Und wie du bereits sagtest, kann ich mir später immer noch anschauen, warum GZip so langsam ist.

Vielen Dank für deine Hilfe! Damit ist das Projekt bald in einem Zustand, in dem ich es bei den Projektvorstellungen einstellen kann :)

CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

12

17.02.2016, 00:45

Ja, das wundert mich ein bisschen... Als ich damals GZip verwendet habe, gings ziemlich schnell! Aber wie du schon sagst - machs erstmal mit Lauflängencodierung, der Rest kommt wenns was bringt. :)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

Superwayne

Treue Seele

  • »Superwayne« ist der Autor dieses Themas

Beiträge: 242

Beruf: Student & App Entwickler (Xamarin)

  • Private Nachricht senden

13

17.02.2016, 13:29

Ich vermute, dass das an der Implementierung für Unity liegt. System.IO.Compression ist in Mono nicht verfügbar, daher nutze ich eine Version aus dem Asset Store. Vielleicht versuche ich später mal was anderes einzubinden. Die SharpZipLib sieht vernünftig aus.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Superwayne« (17.02.2016, 16:55) aus folgendem Grund: Typo


CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

14

17.02.2016, 15:30

Ach sag das doch... ich bin die ganze Zeit davon ausgegangen, dass du die Original GZip-Klassen von .NET meinst! ;) Probier aus und dann schreib mal, wie zügig das mit dieser Lib ging, wenn du soweit bist - würde mich mal interessieren.
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

Superwayne

Treue Seele

  • »Superwayne« ist der Autor dieses Themas

Beiträge: 242

Beruf: Student & App Entwickler (Xamarin)

  • Private Nachricht senden

15

17.02.2016, 20:57

Hmm, ich habe es jetzt aus Interesse mal ausprobiert, auf die schnelle funktioniert es jedoch nicht.
Ich habe einfach die DLL importiert und den GZipStream wie vorher auch verwendet, aber der Thread arbeitet einfach Minutenlang ohne Ergebnis. Habe es nach 10 Minuten (bei wenig Daten) abgebrochen.

Werbeanzeige