Dateiformate
Gamestudio und lite-C unterstützen zahlreiche Datenformate zum Im- und
Exportieren von Grafiken und Daten. !! Sämtliche Dateinamen, die Sie benutzen sollten kurz gehalten sein (Textur- und Skinnamen In WAD- und MDL-Dateien sind auf 15 Zeichen beschränkt) und dürfen außer "_" oder "+" keine Sonderzeichen enthalten. Verwenden Sie niemals Leerzeichen in Ihren Datei-
oder Pfadnamen! Viele
Im- und Exportfilter werden Texturen, die Leerzeichen oder exotischen Sonderzeichen
in ihrem Dateinamen haben, nicht finden.
Im Folgenden finden Sie wesentliche
Informationen zu den unterstützten Formaten.
Bilddateien
Bilddateien werden zum Importieren von Texturen,
Modell- oder Terrain-Skins, Terrain-Heighmaps, Sprites, Bitmaps und Fonts,
sowie fürs Exportieren von Screenshots
benutzt. Empfohlen werden die Bildformate TGA, DDS, PCX, und WAD. Zwar werden BMP, PNG und JPG unterstützt, jedoch nicht empfohlen - sie werden über die DirectX-Bibliothek gelesen und sind daher von der DirectX-Version abghängig, und haben weitere Mängel. Egal welches Format Sie wählen, alle Formate haben ihre spezifischen Vor- und Nachteile.
- PCX 256-Farb-Bilder (8-bit
palettized) für Texturen geringer Qualität werden aus Kompatibilitätsgründen
unterstützt. Alle 256-Farb-Bilder müssen pro Level dieselbe, in
WEDs Map Properties angegebene Farbpalette verwenden. Die erste Farbe der
Palette
(color #0) muss immer schwarz sein, die letzte Farbe (color #255) immer weiß.
Aufgrund der vielen Einschränkungen ist es nicht empfehlenswert, 256-Farbbilder
zu verwenden - erst recht nicht für Anfänger,
die sich mit der Handhabung von Farbpaletten nicht auskennen.
- PCX-True-Color-Bilder (24-bit
RGB) werden für Texturen niedriger Qualität benutzt. Sie werden intern
abhängig
von d3d_texdepth entweder im 16-Bit-High-Color-,
oder im komprimierten 4-Bit-Format gespeichert.
- TGA-True-Color- (24-bit RGB) und True-Color-Alpha
(32-bit
ARGB)-Bilder werden für Texturen von hoher Qualität benutzt. Je nach Einstellung
von d3d_alphadepth werden sie intern in
16-Bit-Hight-Color oder 32-Bit-True-Color gespeichert. 32-Bit-ARGB-Bilder
haben einen Alphakanal, der jedem einzelnen Pixel einen Transparenzwert gibt (s. auch Transparency) .
Um in Photoshop einen Alphakanal zu erstellen, öffnen Sie das Channels-Fenster
und klicken auf den kleinen Knopf "neuer Kanal" darunter. Nun ist ein Alphakanal
erstellt und Sie können darauf malen. Beim Speichern des Bildes verwenden
Sie dann das 32-Bit-TGA-Format.
- DDS-Bilder werden, wenn mit dem Videospeicher sparsam
umgegangen werden muss, für Texturen mittlerer
Qualität genommen. Mitsamt Mipmaps werden sie in den
Unterformaten DXT1..DXT5 gespeichert.
DDS benutzt ein komprimiertes 4-Bit-Texturformat, welches
auf Kosten der Bildqualität Videospeicher spart. DXT2..DXT5-Texturen
beinhalten einen Alphakanal und werden von der Engine als durchscheinend
behandelt (s. auch Transparency) DXT1 hat einen 1-Bit-Alphakanal, der sich für Overlays verwenden läßt und wird als nicht-transparent behandelt. Aufgrund ihres komprimierten Inhalts lassen sich DDS-Bitmaps
nicht durch Bildmanipulationsfunktionen (wie pixel_to_bmap)
verändern. Sie lassen sich nicht für Texturen verwenden, die Pixelrelevante Informationen enthalten wie etwa Normalenmaps, Displacementmaps oder ähnliche. Mit dem DirectX-Texturwerkzeug, einem Photoshop-Plugin oder
mit ATIs Kopressionierer lassen sie sich erzeugen.
- BMP-True-Color-Bilder (24-bit RGB) verhalten sich wie PCX-Bilder, werden aber, da sie nicht komprimiert und daher größer sind als PCX-Dateien, nicht empfohlen. Es gibt zudem noch ein selten benutztes BMP-32-Bit-Format, das beispielsweise beim Erstellen von Screenshots generiert, aber weder von der Engine noch von den meisten Malprogrammen unterstützt wird.
- PNG-Bilder verhalten sich wie 32-Bit-TGA-Bilder mit Alphakanal (auch wenn der Kanal im Paintprogramm nicht explizit erstellt wurde. Sie werden aber, da sie nicht von der Engine, sondern von der DirectX-Bibliothek geladen werden, nicht empfohlen. Es gibt keine Garantie dafür, dass sie automatisch wiederhergestellt werden, wenn das Videogerät verloren geht. Das bedeutet, sie können ihren Inhalt verlieren wenn z. B. eine Vollbildanwendung minimiert wird.
- JPG-Bilder sollten nicht für Texturen in Echtzeitspielen verwendet werden. Sie vereinen sämtliche Nachteile der anderen Formate und haben noch den zusätzlichen Nachteil langsamen Ladens, hohen Videospeicherverbrauches und schlechter Texturqualität. Ihr einziger Vorteil liegt in der kleinen Dateigröße.
- WAD-Dateien sind Bildersammlungen, die verschiedene BMP-,
PCX-, TGA- oder DDS-Bilder
mit Namen und enthaltenen Mipmaps. Sie wurden in WED importiert und werden
für
Leveltexturen verwendet. Da DDS-Bilder von WED nicht angezeigt
werden, erscheinen Sie in der WAD-Vorschau als blaue Rechtecke.
Einige Betrachtungen über Transparenz:
-
Sämtliche Bildformate, die einen Alpha-Kanal enthalten
- 32 bit TGA oder DXT2..DXT5 - werden von der Engine als tranparent behandelt;
auch dann, wenn der Alpha-Kanal absolut undurchsichtig ist und selbst dann,
wenn Sie gar nicht wissen, was ein Alpha-Kanal ist. Transparenz hat Konsequenzen
für's Sortieren und und das Rendering, verwenden Sie daher für
ein Objekt, von dem Sie nicht wollen, daß es transparent ist, keine
Alpha-Kanal-Texturen.
- Bilder ohne Alpha-Kanal lassen sich für Overlays mit
transparenten Teilen verwenden. Overlays werden wie undurchsichtige Texturen
sortiert. Bei Overlay-Bildern die schwarzen Teile (RGB
== 000) absolut unsichtbar, der Rest absolut undurchsichtig. Für undurchsichtiges
Schwarz, nehmen Sie einen RGB-Farbwert von 8 oder höher. Ist d3d_autotransparency aktiviert,
wird die Transparenzfarbe vom ersten Pixel oben links des Bildes genommen.
Auf diese Weise kann für die Durchsichtigkeit eine willkürliche Farbe
benutzt und so die vom Antialiasing schwarzer Pixel herrührenden dunklen
Säume um intransparente Teile herum vermieden werden.
Einschränkungen bei Bildgrössen:
- 3D-Karten limitieren Texturgrössen meist auf 4096, 2048 oder 1024 in jede
Richtung. Um allso alle 3D-Karten zu unterstützen, sollten Sie also niemals Bitmaps, die grösser sind als 1024x1024 verwenden,
es sei denn, es handelt sich um Bilder, die verschiedene Frames (für Animationen
oder Sky-Cubes) enthalten oder Bilder mit Mipmaps. Wenn eine 3D-Karte die Bildgrösse
nicht unterstützt,
wird automatisch die nächst kleinere Mipmap verwendet.
- 3D-Karten können keine willkürlichen Texturgrössen rendern.
Sie
verlangen oft Texturen deren Grösse einer Zweierpotenz entspricht.
(32, 64, 128, 256, 512, 1024...) wie z.B. 64x128 oder 128x512. Die minimale Texturgröße beträgt 8 Pixel. Alle ungültigen Größen werden von der Engine automatisch auf den Wert der nächstenhöheren
Zweierpotenzt
`aufgeblasen´, allerdings auf Kosten von Videospeicher, Performance und
Bildqualität. Ungültige Texturgrößen auf Modellen sind nur dann möglich, wenn alle Skins eines Modells dieselbe Größe haben. In manchen Fällen, z.B. bei gekachelten Texturen, sind ungültige
Größen überhaupt nicht möglich. Nehmen
Sie daher für Level-Texturen, Terrains und Modell-Skins immer Grössen
einer
Zweierpotenz. Lediglich für Sprites und Panels könnte es sinnvoll sein, Texturen
anderer Größen zu verwenden.
Videodateien
Videodateien werden zusammen mit den media_play-Funktionen
verwendet und können auf dem Bildschirm oder einer Textur abgespielt werden.
Es gibt spezielle Videoformate wie MPG, DIVX oder QTW und
Metaformate wie AVI. MPG-Dateien oder AVI-Dateien
mit MPEG-Kodierung lassen sich normalerweise auf jedem Computer
abspielen. Bestimmte Formate wie DIVX oder Quicktime erfordern eine Installation
ihrer Filter, müssen also in den Verteiler aufgenommen werden. Prüfen Sie die
erforderlichen Lizenzbedingungen, ehe Sie solche Filter in Ihr Spiel integrieren.
Sounddateien
Sounddateien werden sowohl von media_play- und snd_play-Funktionen,
als auch für Gräuschquellen im Level benutzt. Es werden WAV-, MID-, OGG-
und
MP3-Dateien
unterstützt.
- OGG wird für snd_play und Geräuschquellen empfohlen.
Es benutzt Gamestudios internen OGG-Player. OGG kann auch zusammen mit media_play benutzt werden,
dann muss allerdings ein OGG-Filter (in GameStudio
enthalten) mit dem Game mitgeliefert und auf den Zielgeräten installiert werden.
- WAV und MID funktionieren überall und werden auch von niederen Editionen
unterstützt. WAV ist allerdings ziemlich gross und MID von geringer Qualität.
- MP3 erfordert eine Lizenzgebühr und wird daher nicht für Low-Budget-Spiele
empfohlen.
Skript- und Effektdateien
Skript- und Effektdateien sind reine Textdateien mit der Extension WDL für
Skripte
und FX für Shader- und Effekt-Definitionen.
FX-Dateien beinhalten eine standartisierte Sprache (HLSL).
Daher können externe FX-Dateien ganz einfach durch Adaption
von Variablen-Namen benutzt werden. Shaders und Effekte können auch in
Skript-Materialdefinitionen oder in Modellen enthalten sein.
Modell-Dateien:
MED und WED können Modelle in viele 3D-Formate importieren: FBX, 3DS, X, ASE, OBJ, MDL, MD2, ASC und
Milkshape. Zusätzlich kann Terrain von Höhenmap-Bildern importiert werden. Weitere Formate werden von MEDs eigenen Import/Export-Filter
sowie Milkshapes Import/Export-Filter, die direkt in MED aufgenommen werden
können, unterstützt
.
- 3DS-, ASE- und OBJ-Dateien beinhalten
nichtanimierte Modelle mit vielen verschiedenen Meshes und Materialien und
werden von fast
allen 3D-Paketen unterstützt. Einige 3D-Editoren verwenden keine Transparenz
und setzen den Alphawert auf Null. Prüfen Sie daher nach dem Importieren
die Alpha-Einstellung des Materials. Unter Verwendung einer Liste von 3DS-Dateien
lassen sich Vertexanimationen importieren. Auch können 3DS-Modelle
zur Verwendung in externen Editoren exportiert werden. Werden Texturen extern gespeichert, sorgen Sie dafür, dass deren Format auch vom Editor unterstützt wird - etwa als BMP, TGA oder DDS (s. o.)
- X ist das Modellformat von Microsoft. Es enthält vielfältige Meshes und Materialien sowie Bones- oder Vertex-Animation. Unglücklicherweise hat sich das X-Format mit der Zeit in viele verschiedene, inkompatible Varianten entwickelt, die sich für gewöhnlich nur mit demselben Editoren, der sie exportiert hat, lesen lassen. Gamestudio kann alle X-Dateien, die mit dem Microsoft-X-Format kompatibel sind, importieren. Mit dem mit dem Microsoft-Mesh-Viewer, der mit DirectX-SDK mitgeliefert wird, lassen sich die Kompatibilitätsvorraussetzungen herausfinden. Sieht Ihr Modell im Mesh-Viewer gut aus und wird korrekt animiert, wird es auch korrekt in Gamestudio importiert.
- FBX ist ein plattformunabhängiges Standardformat zum Austauch von Modelldateien. Alle größeren Editoren wie MAX® or MAYA® stellen dafür Exporter zu Verfügung. Dummerweise ist das FBX-Format nicht mit sich selbst kompatibel. Es gibt einen Unterschied zwischen FBX-Modellen, die mit der FBX-Version von 2005 oder einer Älteren gespeichert wurden und solchen, die mit neueren Versionen (2006 oder später) gespeichert wurden. Wenn Sie nicht sicher sind, welche FBX-Version exportiert wurde, versuchen Sie Beides. Bei nicht-animierten Modellen lassen Sie im Import-Dialog Convert to Points Animation markiert. Beim Importieren von Bones gelten dieselben Begrenzungen, wie für X-Modelle.
Es wurden die folgenden Probleme mit FBX-Exporttern aus anderen Editoren berichtet: MAX® exportiert nur Bones, die zumindest einem Vertex zugewiesen sind. Cinema 4D® exportiert nur dann ordentlich nach FBX, wenn die Texuren im .TGA-Format gespeichert sind. Vom FBX-Export von Milkshape® wurde berichtet, dass falsche Bones-Animationen exportiert wurden. Einige Editoren verwendenden ein Deformationsobjekt (wie etwa das Bulge-Objekt in Cinema 4D®); Achten Sie darauf, das Modell ohne angehängte Deformationsobjekte zu exportieren.
- Milkshape ist ein populärer Modelleditor, der viele
Formate durch externe Filter unterstützt. MED kan Milkshapefilter verwenden
und Modelle im Milkshape ASCII-Format lassen sich direkt
importieren.
- MDL- und MD2-Dateien sind vertexanimierte
Modelle mit einer einzigen Textur, die von Id-software für die Spieleserie
Quake benutzt wurden.
- ASC ist ein nicht-texturiertes Mesh-Format zum Importieren
roher 3D-Daten.
Gamestudiodateien
Die Editoren von GameStudio erzeugen verschiedene interne Dateien für Bilder,
Level, Modelle und Terrains (s. auch Entities und Internal File Formats):
- WMP-Dateien werden von WED erzeugt und beinhalten
Levelbeleuchtung, -Texturen und -Geometrie sowie Verweise zu weiteren Dateien
für Modelle, Terrain, Sprites und Soundquellen. Sobald sie einmal kompiliert
sind, werden sie zu WMB-Dateien, die von der Engine gelesen
werden können.
- WAD-Dateien werden von WED erzeugt und beinhalten Textursammlungen.
Externe
WAD-Dateien von Quake und Halflife können importiert werden.
- MDL-Dateien werden von MED erzeugt und für animierte
Modelle benutzt. Sie unterstützen Bones- und Vertexanimationen, vielfältige
Meshes und Texturen, Materialien und Shaders. Sie sind nicht mit den Quake-MDL-Dateien
identisch, trotzdem akzeptiert die Engine auch Modelle im Quake-MDL-Format.
- HMP-Dateien werden von MED erzeugt und für Terrain benutzt.
Sie enthalten die Höhenwerte und die Terraintexturen.
► Aktuelle Version Online