Archiv verlassen und diese Seite im Standarddesign anzeigen : DDS vs PNG
Hallo,
ich wandle zZt meine Photoszenerietexturen vom PNG- ins DDSformat um. Das dauert nur. Natürlich alles für die Version 9.
Gibts eigentlich schon Erfahrungen, wenn man das auch bei bereits mit FS2XPlane konvertierten Texturen macht? Der neueste Konverter kann die DDS erzeugen. Ich vermute mal, dass er dann auch bei den Objekten dort die Extension DDS hineinschreibt.
Die Frage ist also, geht das auch, wenn man nur die Texturen wandelt? Denn alle bereits konvertierten Szenerien für V8 noch mal durchschleussen und dann anschliessend mit WED und Overlay Editor erneut zu bearbeiten erscheint mir nicht sinnvoll.
Eventuell schreibe ich auch ein Windows-VB-Programm, welches das dann in den Textdateien automatisch austauscht.
Cheers,
Dietmar
Hallo,
Entäuschung und Frustration. Irgendwas klappt nicht. Habe die Photoszene-PNGs nach DDS konvertiert. Bei Normalstart kommt am Ende des Ladevorgangs, welcher tatsächlich wesentllich schneller abläuft, eine Fehlermeldung.
Starte ich mit --no_fbos gibts am Ende des Ladevorgangs einen CTD.
Also werden wohl doch in den .ter files die Angaben .png nach .dds geändert werden müssen. Da das aber pro Einheit so um die 1200 Dateien sind, bei mir also zusammen rund 24000, werde ich wohl erst mal wieder Hirnschmalz opfern müssen, um den ganzen Vorgang irgendwie durch ein noch zu schreibendes Programm zu automatisieren.
Na dann!
Cheers,
Dietmar
sirarokh
08.02.2008, 10:59
Falls das nur Textdateien sind, ließe sich das doch sicherlich mit einem RegExp-fähigen Editor lösen, oder? Das ist deutlich weniger Stress als alles von Hand zu manipulierenoder ein eigenes Programm dafür zu schreiben.
Emacs und Vi sind die bekanntesten, aber es gibt genügend andere Editoren, die auch mit regular expressions umgehen können -- es gibt für Textersetzungen keine effizientere Methode als regExp.
Hallo Bastian,
Programm ist schon fertig. Wollte die alten Dateien nicht nur überschreiben, sondern auch noch behalten.
Deshalb wird in einen neuen Ordner konvertiert. So hab ich das auch mit den Texturen gemacht.
Jetzt werd ichs mal gleich ausprobieren, was es bringt.
Werde mir mal regExp ansehen, danke für den Tip.
Cheers,
Dietmar
Yep,
es klappt!
Das bedeutet nun, dass in den Terrainfiles, wenn es sich um DDS-Texturen handelt, auch .dds drinstehen muss!
So wird es auch mit den .pol-Dateien sein, benutzt man DDS muss dort auch .dds drinstehen. Ebenso sieht es wohl bei den .fac-Dateien aus.
Im Prinzip bedeutet das wohl, dass alles worauf in den library.txt Bezug genommen wird, die richtige Texturextension aufweisen muss.
Bei den .lin- und .obj-dateien scheint es erst mal egal zu sein, bedarf aber einer weiteren Überprüfung.
Nun werde ich mal testen was es mit der Ladebeschleunigung auf sich haben soll.
Cheers,
Dietmar
Hm,
es klappt war wohl doch zu früh.
Nicht, dass mein Programm oder das konvertieren von PNG nach DDS Fehler hat, dass es nicht funzt muss was mit der Speicherverwaltung von X-Plane zu tun haben.
Ich hab alle Photoszenerien, die es zZt von D drauf. Wenn ich davon zB die X-Real 516 alleine mit den umgewandelten Texturen nehme klappt es. Wenn ich allerdings mehre nehme bekomme ich sowas:
__________________________________________________ _______
(xmap.cpp line 197)
Mem file error. Err=0, file=C:\X-Plane 9.00 Beta-19/Resources/default scenery/820xreal516/terrain/../textures/516_21_30.dds
WARNING: we are missing the texture: Resources/default scenery/820xreal516/terrain/../textures/516_21_30.dds.
OK check MemoryLog.txt! I just sent him a dump from This is the dump_mem_stats call from the following code: if(type==t_exit || type == t_alert || recursive_error)
Xmapped file ran out of memory
Unhandled exception: EXCEPTION_ACCESS_VIOLATION (C0000005)
Flags=0, Address = 0x008899c1
0) 0x008899c1 (X-Plane 900 Beta-19.exe + 4757953)
1) 0x0077ee28 (X-Plane 900 Beta-19.exe + 3665448)
2) 0x0041bc5a (X-Plane 900 Beta-19.exe + 113754)
3) 0x0041956c (X-Plane 900 Beta-19.exe + 103788)
4) 0x0041c619 (X-Plane 900 Beta-19.exe + 116249)
5) 0x0041cbde (X-Plane 900 Beta-19.exe + 117726)
6) 0x00a3fda7 (X-Plane 900 Beta-19.exe + 6552999)
7) 0x7c816fd7 (kernel32.dll + 94167)
OK check MemoryLog.txt! I just sent him a dump from This is the dump_mem_stats call from the following code: if(type==t_exit || type == t_alert || recursive_error)
ERROR: incomplete framebuffer.
36054.000000
(OGL_framebuffer.cpp line 70)
__________________________________________________ _______
Also der Framebuffer läuft über, RAM-Überlauf, Out of Memory usw.
Nehm ich die PNGs haut es hin, aber auch nur dann, wenn ich beim Start des Windows-PC in der boot.ini das drin habe:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Micro soft Windows XP Professional 3GB" /fastdetect /3GB
Ich habe 2 GB RAM und 3GB virtuelles RAM und trotzdem stürzt X-Plane ab.
Die Frage die sich mir stellt, warum hauts bei PNG hin und nicht mit DDS?
Cheers,
Dietmar
sirarokh
09.02.2008, 17:25
Hilft dir dieser Blog-Eintrag vielleicht weiter:
http://xplanescenery.blogspot.com/2008/01/when-can-you-not-use-dds.html
Ansonsten würde ich an deiner Stelle einfach den Verantwortlichen selbst fragen (der Blogautor)
Danke Bastian,
das hatte ich auch schon gelesen, nur da sind keine Maskentexturen drin und Alphakanäle sind auch nicht vorhanden.
Und- es erklärt sich nicht, warum es mit einer Kachel klappt und mit mehreren nicht?
Ich hatte gehofft, die Ladezeiten verkürzen zu können.
Cheers,
Dietmar
So,
nach langer Zeit hab ich mit DDS vs PNG weitergebastelt und konnte jetzt aus PNG DDS konvertieren. Dabei ist es mir gelungen die Dateigröße erst mal zu halbieren. Bringt schon mal was hinsichtlich der Ladezeiten.
Das benutzte Programm nennt sich DDS Converter 2.
Ich habe Windows XP und eine NVidia GK. X-Plane akzeptierte nur DDS-files im Format DXT1 mit Mipmaps. Bei allen anderen Formaten gabs Fehlermeldungen und graue Flächen. Ebenso brachte nur eine Einstellung auf NVidia was und nicht auf S3. Weiss nicht, besitzen ATI-Karten S3-Prozis?
PNG 588kB keine Mipmaps
DDS 341 kB mit Mipmaps
Komisch und auffallend ist, dass die PNGs wohl keine Mipmaps aufweissen. Benutze ich Martin Wrights DXTBMP-Programm zaubert das ein DDS von 172 kB ohne Mipmaps. Dumm ist nur, dass man mit diesem Programm nur eine einzelne Textur konvertieren kann und nicht gleich ein ganzes Verzeichnis.
Ich glaube aber eine Lösung gefunden zu haben. Da gibts das Programm "DDS Converter version 1.0 by Vasiliy". Mit dem konnte ich auch 172 kB DDS-Dateien erzeugen. Nur, das kann mit PNG nichts anfangen, deshalb hab ich mit Irfanview erstmal von PNG nach JPG konvertiert und anschliessend von JPG nach DDS. Tricky, was?
Diesen Ansatz muss ich mal weiterverfolgen.
Ziel ist es, bei Phototexturen eine wesentlich kürzere Ladezeit zum Start des X-Planes zu erhalten.
Cheers,
Dietmar
Da bin ich aber gespannt ;)
Soviel Zeit müsste man haben :-X
Yipeeh - DDS goes on, hup texture hup - DDS bovenaan,
ich habs geschafft. Von einer mittleren Dateigrösse von 700 KB bei PNG habe ich DDS-Texturen von konstanten 170 KB mit 9 Mipmaps DXT1, komprimiert erzeugt. Zwar etwas umständlich, aber es geht.
Ein kleiner Wehmutstropfen ist allerdings dabei, für 1200 Texturen braucht man gut eine Stunde. Bisher habe ich Nordrhein-Westfalen fertig, waren über 7000 Bildchen.
Die Ladezeit bei 6700 (Photo)Texturen in Düsseldorf ist auf sagenhafte 5 Minuten zusammengeschnurzelt.
Trotzdem, eins gibt mir zu denken: DDS ohne Mipmaps erzeugen Fehlermeldungen. In den PNGs sind keine Mipmaps drin. Trotz einer vierfachen Grösse dieser PNGs erklärt sich nicht die extrem lange Wartezeit mit diesem Texturformat. Also frage ich mal: könnte es sein, dass beim Laden von PNG-Terraintexturfiles der X-Plane erst mal selber die Mipmaps erzeugt?
Wer also Photoszenerien (*.ter) hat und wissen möchte wie es geht (das Konvertieren natürlich) , kann das mal hier mitteilen.
Cheers,
Dietmar
Powered by vBulletin® Version 4.2.2 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.