Warum so kompliziert und zeitaufwendig. Das Imagetool bietet die Möglichkeit der Batchroutine.
Man erstellt eine Batch die das Imagetool mit einem nachfolgenden Befehl was es machen soll aufruft.
In dem Ordner wo die Batchroutine abläuft packt man die zu verändernden Texturen rein.
Schon konvertiert das Imagetool ruckizucki hunderte von Texturen, ohne das da jemand bei sitzen muss. In diesem Fall einfach die 126 zu verändernden GAP Texturen in den Ordner der Batch und schon läuft das alles automatisch ab.
Je nach dem wie komplex die Konvertierung ist, kann das zwar auch schon mal etwas langsamer gehen, aber man kann das ja am PC ablaufen lassen während man sich mit seiner Frau vergnügt.
So sähe z.B der Textinhalt einer Batchdatei aus die Texturen von z.B 32Bit Format ins DXT1 Format wandelt. Könnte aber auch von 8Bit in DXT1 sein. Es wird quasi nur das Ausgangsformat definiert.
Beispieltext der Batchdatei:
imagetool -DXT1 *.bmp
del *.bmp
ren *.mip *.bmp
Pause
Möchte man z.B die beim Imagetool zulässigen Batchbefehle sehen, schreibt man folgendes in eine Batch.
imagetool -?
Pause
Durch das -? werden dann die möglichen ausführbaren Parameter gelistet.
Eine Batch ist eine ganz normale Textdatei die man mit dem Windows Explorer erstellt.
Also legt man z.B eine Datei Imagetool_DXT1.txt an.
Hier schriebt man dann z.B
imagetool -DXT1 *.bmp
del *.bmp
ren *.mip *.bmp
Pause
rein.
Kurz zu Erklärung was passiert mit jeder Zeile:
imagetool -DXT1 *.bmp
wandelt die bisherigen Texturen die mit .bmp enden ins DXT1 Format (inkl. aller MIPs)
Da jetzt ja theoretisch unsere original .bmp Texturen überschrieben werden, hat man hier sicherheitshalber die neu konvertierten Texturen nicht mit der Endung .bmp sondern .mip versehen. So wird zunächst nichts überschrieben.
Wir finden im Ordner wo alles abläuft zunächst noch die original .bmp Texturen und die neuen .mip Texturen. Diese Dateien mit .mip am Ende sind vollwertige Texturen sie haben halt nur die Endung .mip
Da wir die alten original .bmp Texturen nicht mehr benötigen, löscht die nächste Zeile:
del *.bmp
die original Texturen.
Die neuen mit .mip würde der FS natürlich nicht verwenden. Also müssen sie von .mip nach .bmp umbenannt werden.
Das geschieht durch :
ren *.mip *.bmp
Im Prinzip ist die Batch durchgeführt, dass Imagetool hat alle Texturen automatisch in der Regel binnen weniger Sekunden konvertiert.
Das * dient als Platzhalter für beliebige Namen.
Der Befehl
Pause
dient nur dazu, dass unser Fenster in dem die Batch ausgeführt wird geöffnet bleibt. Wir müssen erst irgendeine Taste drücken damit sie wirklich beendet wird.
Dieser Pause Befehl ist sinnvoll, da so eine Batch auch schon mal in Sekundenbruchteilen ablaufen kann. Sollte es eine Fehlermeldung in der Batch geben, könnten wir das ev. nicht sehen. Durch den Pausebefehl haben wir eine zusätzlich Möglichkeit der Kontrolle geschaffen.
Das öffnen jeder einzelnen Textur kann man sich also ersparen.
Trotzdem sollte man sich natürlich schon genau anschauen welche Texturen man konvertiert.
Aber das ist jetzt ein anderes Thema.
Z.B habe es einige gar nicht gern wenn man DXT3 Texturen mit MIP Leveln versieht. Das kann zu Unschärfe bei den Texturen je nach Sichtabstand führen. Es empfiehlt sich sowieso immer die original Texturen zu sichern.
Damit unsere Datei Imagetool_DXT1.txt überhaupt als ausführbare Batch Datei arbeitet, muss sie nach Imagetool_DXT1.bat umbenannt werden.
Ist das geschehen, wird sie bei Doppelklick nicht mehr als Textdatei geöffnet sondern als eine Befehlsdatei. (unser automatisierter Prozess läuft ab).
Möchten wir jetzt noch mal etwas an den Befehlszeilen der Batch ändern, müssen wir sie immer mit der rechten Maustaste anklicken und im sich öffnenden Fenster immer "Bearbeiten" wählen. Dann können wir sie editieren. Würden wir "Öffnen" wählen, dann würde die Batch ausgeführt.
In einer Batch kann man quasi alles machen, was mit DOS Befehlen möglich ist.
Man kann sich auch eine menügeführte Batch erstellen. Man hat quasi ein richtig kleines Auswahlprogramm was man machen möchte. So eine menügeführte Batch findet man auf meiner Homepage bei einer Testscenery im Zuge meiner Landclass Steuertabellen. Hatte ich im Zuge der DOK gemacht, da ich so demonstrieren kann, dass man sehr vieles realisieren kann ohne eine Programmiersprache kaufen zu müssen.
|