Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
C++Builder Senior JLI'ler
Anmeldedatum: 04.10.2003 Beiträge: 235
Medaillen: Keine
|
Verfasst am: 21.02.2004, 20:30 Titel: |
|
|
@Lord of Programming
könntest du vielleicht mal n paar Ideen zur Komprimierung posten?
ich will auchn format machen wo aber mehrere Dateien in einer zusammen gefasst werden. Und das wär besser wenn die komprimiert wären nur hab ich keine Idee |
|
Nach oben |
|
|
KI JLI Master
Alter: 39 Anmeldedatum: 04.07.2003 Beiträge: 965 Wohnort: Aachen Medaillen: Keine
|
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 21.02.2004, 21:20 Titel: |
|
|
Zwei Grundlegende Ideen sind folgende:
1. Index
Man verwendet für jede RGB-Kombination einen eigenen Index. Dieser wird am Anfang der Komprimierung generiert und kommt in den Header der Datei.
Dann muss man nicht jedes Mal alle 3 Werte schreiben, sondern nur einmal den Indexwert
2. Wiederholungen
Jedes Byte in der Datei bekommt einen Wert vorangestellt, der angibt, wie oft sich der folgende Wert wiederholt.
Das kann man natürlich auch alles koppeln _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
=]Mid[=]Night[= Super JLI'ler
Anmeldedatum: 20.11.2002 Beiträge: 380 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 22.02.2004, 11:42 Titel: |
|
|
Einfarbige Bilder (wofür man die auch immer braucht ) kann man ja auch so speichern:
- Höhe
- Breite
- Farbe
Das wären dann 12 Bytes, egal wie groß das Bild ist |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 22.02.2004, 12:34 Titel: |
|
|
Das könnte man, aber damit alle Komprimierungsmethoden gleich bzw. ähnlich ablaufen, habe ich das etwas anders gemacht.
In den Header kommt wie immer die Höhe und die Breite. So muss man nicht noch extra entscheiden, ob das Bild einfarbig ist(diese Information muss auch in die Datei -> + 1 Byte). Dann kommt die Wiederholungszahl bzw. in diesem Fall die Pixelzahl und die Farbe.
PS: Ich verschwende für die Bildbreite keinen Integer. Ein short tuts auch und verbraucht nur 2 Bytes. (Wer braucht schon Bilder mit Breite oder Höhe von über 65536 Pixeln oder bis zu 4294967296 Pixeln? *gg*) _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
=]Mid[=]Night[= Super JLI'ler
Anmeldedatum: 20.11.2002 Beiträge: 380 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 22.02.2004, 15:04 Titel: |
|
|
Wer weiß, vielleicht in 30 Jahren ... man muss ja auch an die zukuft denken |
|
Nach oben |
|
|
Christian Rousselle Site Admin
Alter: 48 Anmeldedatum: 19.07.2002 Beiträge: 1630
Medaillen: Keine
|
Verfasst am: 22.02.2004, 16:08 Titel: |
|
|
Hallo,
ich arbeite häufig mit Dateien, die diese Größe haben > 65535 Pixel. Kommt schonmal vor, wenn die DB Teile ihrer Loks in Originalgröße auf Papier ausplotten will. Nimm auf jeden Fall einen Integer (UINT, DWORD).
Bei einer Auflösung von 400 DPI ist sonst schon bei einer Höhe, Breite von 4,20 m Schluss. Jetzt miss mal dein Lieblingwerbeplakat aus, da wird es schon eng
Christian |
|
Nach oben |
|
|
=]Mid[=]Night[= Super JLI'ler
Anmeldedatum: 20.11.2002 Beiträge: 380 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 22.02.2004, 16:11 Titel: |
|
|
Na ja, das Format is ja auch für Spiele gedacht, und keiner will ein Spiel mit so großen Grafiken... was das auch für nen platz brauchen wuerde... |
|
Nach oben |
|
|
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 22.02.2004, 17:19 Titel: |
|
|
manche leute packen auch alle texturen und sprites in eine datei. bei nem gröseren spiel könnte das schon gros werden.... |
|
Nach oben |
|
|
xardias JLI Master
Alter: 38 Anmeldedatum: 28.12.2003 Beiträge: 804 Wohnort: Palo Alto, CA Medaillen: Keine
|
Verfasst am: 22.02.2004, 17:30 Titel: |
|
|
naja, wirklich effektiv wär das dann aber nicht. ich meine gelesen zu haben, dass zu große texturen oder zu kleine texturen performancetechnisch nicht so schnell verarbeitet werden können wie texturen der größe 512x512.
ich finde 65536 reicht allemal. sogar photoshop begrenzt die größe auf 30000 x 30000.
wenn man bedenkt, dass (sofern ich mich nicht verrechnet habe) eine 65536x65536 (32bit) große datei unkomprimiert satte 16 gigabyte groß wäre bezweifel ich, dass jemand solch große dateien nimmt.
65536 x 65536 x 4 = 17.179.869.184 B
= 16.777.216 kB
= 16.384 MB
= 16 GB |
|
Nach oben |
|
|
nigs Super JLI'ler
Anmeldedatum: 19.12.2002 Beiträge: 359
Medaillen: Keine
|
Verfasst am: 22.02.2004, 17:48 Titel: |
|
|
das es effektiv ist ist ne ander frage. manche leute machen das eben so.... |
|
Nach oben |
|
|
Fallen JLI MVP
Alter: 40 Anmeldedatum: 08.03.2003 Beiträge: 2860 Wohnort: Münster Medaillen: 1 (mehr...)
|
Verfasst am: 22.02.2004, 17:54 Titel: |
|
|
Meistens kann man da ne Menge einsparen indem man auf Vektorgrafiken setzt. Dann wären auch solche riesen Grössen kein Problem. _________________ "I have a Core2Quad at 3.2GHz, 4GB of RAM at 1066 and an Nvidia 8800 GTS 512 on Vista64 and this game runs like ass whereas everything else I own runs like melted butter over a smokin' hot 18 year old catholic schoolgirl's arse." |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 22.02.2004, 21:08 Titel: |
|
|
Vielleicht baue ich ja noch eine Funktion ein, mit der man bestimmen kann, ob man den Header mit short oder mit integer haben will
Aber 16 GB würden auch seeehr lange dauern, um sie zu laden.
Mal davon abgesehen gibts Grafikkarten, die keine Surfaces unterstützen, die größer als die Bildschirmauflösung sind. Deshalb wäre es nicht zu empfehlen, alles in eine Grafik/ein Surface zu packen. _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 12.06.2004, 12:34 Titel: |
|
|
Es gibt mal wieder Neuigkeiten:
Der - ich gebe es zu - nichtige Schutz von zwei Byte-werten wird durch einen anständigen Passwortschutz ersetzt.
Die Stärke der Verschlüsselung ist stufenweise zwischen 32 und 1024 Bit wählbar _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
KI JLI Master
Alter: 39 Anmeldedatum: 04.07.2003 Beiträge: 965 Wohnort: Aachen Medaillen: Keine
|
Verfasst am: 12.06.2004, 12:52 Titel: |
|
|
The Lord of Programming hat Folgendes geschrieben: | Es gibt mal wieder Neuigkeiten:
Der - ich gebe es zu - nichtige Schutz von zwei Byte-werten wird durch einen anständigen Passwortschutz ersetzt.
Die Stärke der Verschlüsselung ist stufenweise zwischen 32 und 1024 Bit wählbar |
Cool |
|
Nach oben |
|
|
|