Originally Posted By: TheShooter
Ich habe bisher immer .bmp benutzt. Ist das ratsam, oder nicht?

mfG TheShooter wink


Hm, warum nimmst Du nicht GIMP und speicherst einfach mal die genannten Formate. Bei einer 512er Textur würdest Du zu folgendem Ergebnis kommen. Ich habe allerdings eine Textur ohne Alphakanal genutzt. Nicht jedes Format speichert Alpakanäle für Transparenz, Spec oder andere Effekte. Falls Du das benötigst, musst Du PNG, TGA oder einige Varianten von DDS nutzen:

BMP: 1.025 kB
TGA: 904 kB
PNG: 515 kB
JPG: 69 kB (85 Prozent Qualität)
DDS: 129 kB (DXT1)
DDS: 257 kB (DXT3 und DXT5)

Die letzten 3 Formate sind die Kleinsten aber sind nicht verlustfrei.

Interessant ist aber auch Folgendes: Auch wenn BMP und TGA sehr groß sind, komprimieren sie zu 432 kB mit 7z während die recht kleine PNG zu 516 kB komprimiert wird. Sie wird also noch größer, als sie bereits ist.

Das ist auch ein Grund, warum wir bei Dexsoft sehr gerne TGA als Texturen nutzen, sie sind in voller Qualität und können sehr gut mit Packprogrammen komprimiert werden, um weniger Platz auf dem Server zu brauchen. Außerdem unterstützen Sie den Alpha-Channel.
Zudem können alle Engines dieses Format lesen. Die meisten wandeln es aber in DDS oder andere eigene Formate um, welche die S3TC Komprimierung unterstützen.

Wenn eine Engine umkomprimiertes BMP nutzt, ist das nicht unbedingt clever. Es müssen mehr Daten über den Bus transferiert werden und es belegt mehr Speicher auf der Festplatte.

Wegen DDS: Es gibt da diverse Unterformate, die unterschiedliche Größen und Qualitäten haben. Einige enthalten einen Alpha-Channel und die Komprimierung erfolgt anders. Außerdem werden einige linear rekonstruiert. Es gibt sogar Formate, die helfen, die Normalmap mit weniger Verlusten zu rekonstruieren, denn dort gibt es oft arge Probleme bei DDS.
Aber dazu empfehle ich einfach mal die entsprechenden Suchergebnisse dazu zu konsultieren.


Models, Textures and Games from Dexsoft