Texture Atlas Generator
Der Textur-Atlas Generator ist ein Kommandozeilen-Tool.
Verwendung
atlas_generator -c [--config] file [-a [--attribute] attributeName="attributeValue"] [-q [--quiet]]
Beschreibung
--config
or-c
, erforderlich, mehrfach: Name einer XML-Konfigurationsdatei.--attribute
or-a
, optional, mehrfach: Attributszuweisung zur Verwendung in einem XMLattribute="{}"
.--quiet
oder -q, optional, Switch: Ausgabe von Informationen verhindern.--debug
oder -d, optional, Switch: Debug-Informationen ausgeben.
XML-Konfigurationsdatei
Die Konfigurationsdatei ist eine Standard-XML-Datei und sollte wie folgt beginnen:
<?xml version="1.0"?>
Der Root-Tag lautet:
<AtlasGenerator>
Unterstützte Attribute und XML-Tags:myAttribute="myValue"
Benutzerdefinierte Attribute, die mittelsattribute="{myAttribute}"
.
evaluiert werden können. Benutzerdefinierte Attribute können mitt dem--attribute
Commandline-Parameter überschrieben werden.<Input>
für die Eingabe relevante XML-Tags. Siehe Eingabebereiche.<Output>
für die Ausgabe relevante XML-Tags. Siehe Ausgabebereich.
Eingabebereiche
Ein oder mehrere Eingabebereiche sind erlaubt.
Das XML-Tag für den Eingabebereich lautet:
<Input>
Beinhaltet alle für die Eingabegrafik relevanten Informationen.
Unterstützte Attribute:path="path/to/my/images"
Dies ist das Path-Präfix für alle Eingabedateien. Defaultparameter: ""
Der Eingabebereich unterstützt die folgenden XML-Tags:
<Crop/>
Standard Zuschneidung für alle Eingabegrafiken.
Unterstützte Attribute:cropThreshold="A[f|i|h]"
Automatische Zuschneidung der Grafik anhand eines Alphakanal-Schwellenwertes.cropCenterX="0" cropCenterY="0" [cropCenter="0"]
Setzt Pixelpostion des Zuschneidezentrums, Default ist kein Zentrum.cropSizeX="100" cropSizeY="100" [cropSize="100"]
Zuschneidung auf eine bestimmte Pixelgröße.
Angaben für cropCenter werden unterstützt; Angaben für die automatische Zuschneidung werden ignoriert.cropLeft="2" cropTop="2" cropRight="-2" cropBottom="-2"
Zuschneidung mittels relativen Randpixelkoordinaten
Wenn positiv, ist die Position relativ zum linken/oberen Rand.
Wenn negativ, ist die Position relativ zum rechten/oberen Rand.
Angaben für cropCenter werden ignoriert; Angaben für die automatische Zuschneidung werden ignoriert.
<Scale/>
Default Skalierung für alle Eingabegrafiken.
Unterstützte AttributescaleFactor="1.0" [scaleFactorX="1.0"] [scaleFactorY="1.0"]
Eine Skalierung wird nur durchgeführt, wenn sie definiert wurde und der Skalierungsfaktor ungleich 1,0 ist.filterType="BILINEAR" [filterWidth="1.0"]
Bilinaere Skalierung verwenden.filterType="LINEAR"
Lineare Skalierung verwenden.filterType="GAUSSIAN" [filterWidth="3.0" filterSigma="1.0"]
Gauss Skalierung verwenden.
Defaultparameter: "BILINEAR" mit filterwidth="1.0"
<Slots/>
Default Sloteigenschaften für alle Eingabegrafiken.
Unterstützte Attribute:materialSlot="0"
Material Slot-Index.parametersSlot="0"
Parameter Slot-Index.textureSlots="0,1,2"
Textur Slots-Indexe.textureSlot.0="0" .. textureSlot.7="0"
Textur Slot-Index für eine Unit.
<Matte/>
Default Matte-Farbe für alle Eingabegrafiken.
Unterstützte Attribute:color="R[f|i|h], G[f|i|h], B[f|i|h] | RRGGBBh" [threshold="A[f|i|h]"]
Anwendung der Matte-Farbe auf alle Pixel, die einen Alphawert besitzen, der geringer oder gleich dem Schwellenwert ist (der Alphawert wird beibehalten).
<Fill/>
Default Füll-Farbe für alle Input Images
Unterstützte Attribute:color="R[f|i|h], G[f|i|h], B[f|i|h], A[f|i|h] | AARRGGBBh"
Anwendung der Füll-Farbe für den Grafik-Border/Margin.
<Image/>
Dateinamen und –eigenschaft der Eingabegrafiken.
Unterstützte Attribute:names="image1.png, image2.png, image3*.png"
Dateinamen der Eingabegrafiken, die Dateinamen können mit Platzhalter-Muster angegeben werden* ? [0-z]
Wenn Platzhalter-Muster verwendet werden, dann werden Dateinamen welche mit'.'
beginnen ignoriert, ausser das angegebene Muster beginnt mit'.'
.
Wenn ein Dateiname die Platzhalter-Muster verwendet, dann werden die AttributesortOrder="..."
undexclude="..."
angewendet.list="../example/example.txt"
Liest die Namen von einer Textdatei. Jeder Name muss in einer neuen Zeile stehen.skipImages="1"
Inkrementiert den Zähler nach jedem Bild und überspringt das nächste Bild wenn der Zähler den Wert erreicht hat. Der Zähler startet mit 0
und wird nach einem Sprung auf 0 zurückgesetzt. "1" überspringt jedes zweite, "2" überspringt jedes dritte.exclude="image4.png, image5.png, image*.jpg"
Dateinamen zum Exkludieren von Eingabegrafik-Dateinamen welche Platzhalter-Muster verwenden.
Die Exkludier-Dateinamen können ebenfalls Platzhalter-Muster verwenden* ? [0-z]
.sortOrder="ASCENDING" [sortOrder="DESCENDING"] [sortOrder="NONE"]
Setzt die Sortierreihenfolge für Eingabegrafik-Dateinamen welche Platzhalter-Muster verwenden. Defaultparameter istASCENDING
.name="myImage.png"
Veraltet, äquivalent zunames="image.png"
.scanAll="yes"
Veraltet, äquivalent zunames="*"
.sizeX="0" sizeY="0" [size="0"]
Skaliert auf eine absolute Größe in Pixel, falls definiert; wenn die Größe 0 ist, wird die Orginalgröße der Grafik verwendet.rotate="" [rotate="CW"] [rotate="CCW"]
Rotiert die Grafik im Uhrzeigersinn (CW) oder gegen den Uhrzeigersinn (CCW).planeApplyAngleZ="yes"
Überschreibt denapplyAngleZ
Wert von <PlaneGraphXML>.sequenceApplyAngleZ="yes"
Überschreibt denapplyAngleZ
Wert von <SequenceGraphXML>.id=""
Setzt den Eingabegrafik-Bezeichner. Wird für die <PlaneGeometry> id und <Rectangle> name Attribute verwendet.
Der Standardname ist der Eingabegrafik-Dateiname ohne Erweiterung. Wenn mehr als ein Eingabegrafik-Dateinamen angegeben is, dann wird dieses Attribut als Präfix des Dateinamens verwendet.cropThreshold="A[f|i|h]"
Überschreibt den Standard<Crop>
Alphaschwellenwert.cropCenterX="0" cropCenterY="0" [cropCenter="0"]
Überschreibt das standardmäßige Zuschneidezentrum.cropSizeX="100" cropSizeY="100" [cropSize="100"]
Überschreibt die Standardzuschneidegröße.cropLeft="2" cropTop="2" cropRight="-2" cropBottom="-2"
Überschreibt den standardmäßigen Zuschneiderand, falls spezifiziert.planeApplyCropCenter="no"
Überschreibt den WertapplyCropCenter
vonPlaneGraphXML
, falls angegeben.planeApplyRasterCenter="no"
Überschreibt den WertapplyRasterCenter
vonPlaneGraphXML
, falls angegeben.sequenceApplyCropCenter="no"
Überschreibt den WertapplyCropCenter
vonSequenceGraphXML
, falls angegeben.sequenceApplyRasterCenter="no"
Überschreibt den WertapplyRasterCenter
von @cSequenceGraphXML, falls angegeben.scaleFactor="1.0" [scaleFactorX="1.0"] [scaleFactorY="1.0"]
Überschreibt den standardmäßigen Skalierungsfaktor.filterType="" [filterWidth="" filterSigma=""]
Überschreibt den standardmäßigen Skalierungsfilter.materialSlot="0"
Überschreibt den standardmäßigen Material Slot-Index.parametersSlot="0"
Überschreibt den standardmäßigen Parameter Slot-Index.textureSlots="0,1,2"
Überschreibt den standardmäßigen Textur Slots-Indexe Wert.textureSlot.0="0"
..textureSlot.7="0"
Überschreibt den standardmäßigen Textur Slot-Index für eine Unit.matteColor="R[f|i|h], G[f|i|h], B[f|i|h] | RRGGBBh" [threshold="A[f|i|h]"]
Überschreibt den standardmäßigen Matte-WertfillColor="R[f|i|h], G[f|i|h], B[f|i|h], A[f|i|h] | AARRGGBBh"
Überschreibt den standardmäßigen FillColor Wert.margin="0" [marginX="0"] [marginY="0"]
Überschreibt den standardmäßigen Abstand Wertmargin
von<Output>
<Image>
.renderBorder="0" [renderBorderX="0"] [renderBorderY="0"]
Überschreibt den standardmäßigen Render-Rahmen WertrenderBorder
von<Output>
<Image>
.repeatBorder="1" [repeatBorderX="1"] [repeatBorderY="1"]
Überschreibt den standardmäßigen Pixelwiederholungs-Rahmen WertrepeatBorder
von<Output>
<Image>
.atlasTexDivisor="1.0" [atlasTexDivisorX="1.0"] [atlasTexDivisorY="1.0"]
Überschreibt den standardmäßigentexDivisor
Wert vonAtlasXML
.atlasTexSizeX="0.0" atlasTexSizeY="0.0"
Überschreibt den standardmäßigentexSize
Wert vonAtlasXML
.atlasNormalizeTexCoords="yes"
Überschreibt den standardmäßigennormalizeTexCoords
Wert vonAtlasXML
.planeTexDivisor="1.0" [planeTexDivisorX="1.0"] [planeTexDivisorY="1.0"]
Überschreibt den standardmäßigentexDivisor
Wert vonPlaneGraphXML
.planeTexSizeX="0.0"
planeTexSizeY="0.0"
Überschreibt den standardmäßigentexSize
Wert vonPlaneGraphXML
.planeNormalizeTexCoords="yes"
Überschreibt den standardmäßigennormalizeTexCoords
Wert vonPlaneGraphXML
.planeAttributes="angle="90deg""
Fügt das angegebene Attribut zum erzeugten<PlaneGeometry>
Element vonPlaneGraphXML
hinzu.atlasAttributes="angle="90deg""
Fügt das angegebene Attribut zum erzeugtenRectangle
Element vonAtlasXML
hinzu.sequenceAttributes="angle="90deg""
Fügt das angegebene Attribut zum erzeugtenPlaneSequenceGeometry
Element vonSequenceGraphXML
hinzu.
Ausgabebereich
Es ist nur ein Ausgabebereich erlaubt.
Das XML-Tag für den Ausgabebereich lautet:
<Output>
Beinhaltet alle für die Ausgabegrafik relevanten Informationen.
Unterstützte Attribute:path="path/to/package"
Dies ist das Pfad-Präfix für alle Ausgabedateien, der Standard-Pfad ist leer.
Der Ausgabebereich unterstützt die folgenden XML-Tags:
<Atlas/>
Atlas Eigenschaften.
Unterstützte Attribute:positionRaster="1" [positionRasterX="1"] [positionRasterY="1"]
Raster für die Eingabegrafikposition im Atlas, Standard ist 1. Ränder und sizeRaster werden mit dem Postionsraster multipliziert.sizeRaster="1" [sizeRasterX="1"] [sizeRasterY="1"]
Raster für die Eingabegrafikgröße im Atlas, Standard ist 1. Eingabegrafiken werden im Rasterbereich zentriert.packing="BIN_PACKING"
Algorithmus für das Grafikpacking, Standard ist BIN_PACKING
(basierend auf codeincomplete.com/posts/2011/5/7/bin_packing).packingOrder="MAX_SIDE"
Packingreihenfolge nur für BIN_PACKING, Standard ist MAX_SIDE.
packingOrder="MAX_SIDE" Sortierung der Grafiken via Berechnung der maximalen Breite und Höhe pro Grafik.
packingOrder="WIDTH" Sortierung der Grafiken nach ihrer Breite.
packingOrder="HEIGHT" Sortierung der Grafiken nach ihrer Höhe.
packingOrder="AREA" Sortierung der Grafiken nach ihrer Fläche (Breite * Höhe).
packingOrder="ID_ASCENDING" Sortierung der Grafiken in aufsteigender Reihenfolge nach ihrer ID.
packingOrder="ID_DESCENDING" Sortierung der Grafiken in absteigender Reihenfolge nach ihrer ID.
packingOrder="NONE" Keine Sortierung der Grafikenpacking="LEFT_TO_RIGHT"
Packingreihenfolge ist von links nach rechts und von oben nach unten. Die Grafiken werden in der angegebenen Eingabegrafikreihenfolge ausgewählt, die automatische Berechnung der Größe der Ausgabegrafik sowie das erstellen mehrerer Ausgabegrafiken wird nicht unterstützt.
<Matte/>
Standardmäßige Matte-Farbe für alle Ausgabegrafiken.
Unterstützte Attribute:color="R[f|i|h], G[f|i|h], B[f|i|h] | RRGGBBh"
Füllt die leere Ausgabegrafik bevor die Eingabegrafiken verarbeitet werden, die Standardfarbe ist 0i, 0i, 0i, 0i
<Fill/>
Standardmäßige Füll-Farbe für alle Ausgabegrafiken.
Unterstützte Attribute:color="R[f|i|h], G[f|i|h], B[f|i|h], A[f|i|h] | AARRGGBBh"
Füllt die leere Ausgabegrafik mit der Füllfarbe bevor die Eingabegrafiken verarbeitet werden. Defaultparameter:"0i, 0i, 0i, 0i"
<Image/>
Dateiname und Eigenschaften der Ausgabegrafik
Unterstützte Attribute:name=""
Dateiname der Ausgabegrafik, Standard ist "image.png".sizeX="0" sizeY="0" [size="0"]
Größe der Ausgabegrafik in Pixel.
Wenn packing="BIN_PACKING" ist, dann wird die Größe berechnet und diese Angabe repräsentiert die Maximalgröße.
Wenn packing="LEFT_TO_RIGHT" ist, dann muss diese Größe angegeben werden.minSizeX="0" minSizeY="0" [minSize="0"]
Mindestgröße der Ausgabegrafik in Pixel.
Wenn packing="BIN_PACKING" ist, dann wird die Größe ausgehend von der Minimalgröße berechnet.
Wenn packing="LEFT_TO_RIGHT" ist, dann wird diese Angabe ignoriert.multiFiles="yes"
Erzeugt mehrere Ausgabegrafiken wenn nötig mit der in sizeX/Y="" definierten Maximalgröße, Standard ist "no".sizeRaster="1" [sizeRasterX="1"] [sizeRasterY="1"]
Raster, um die Größe der Ausgabegrafik zu berechnen, Standard ist 1.powerOfTwo="yes"
Berechnet die Grafikgröße als Power-Of-Two Wert, Standard ist "yes", Rastergröße wird ignoriert.horizontalFirst="yes"
Bevorzugt ein Wachsen in horizontaler Richtung, Standard ist "yes".margin="0" [marginX="0"] [marginY="0"]
Abstand für alle Eingabegrafiken, Standard ist 0.renderBorder
undrepeatBorder
müssen innerhalb vonmargin
liegen.renderBorder="0" [renderBorderX="0"] [renderBorderY="0"]
Render-Rahmen für all Eingabegrafiken, Standard ist der Wert fürmargin
.repeatBorder="1" [repeatBorderX="1"] [repeatBorderY="1"]
Pixelwiederholungs-Rahmen für alle Eingabegrafiken, Standard ist "0".fileType="DEFAULT"
Erzeugt eine Ausgabegrafik von einem bestimmten Typ aus IEnums::FileType.
Erlaubte Werte: "JPG", "PNG", "WEBP" and "MURL".
Die ersten drei Formate erzeugen Dateien entsprechend dem Dateiformat mit allen Einschränkungen betreffend Pixel-Format, Kompression usw. und ohne der Möglichkeit MIP Maps zu speichern.
Das Format "MURL" kann Bilder mit beliebigen Pixel-Format speichern und kann auch verberechnete MIP-Levels beinhalten.
Falls nicht angegeben, wird das Ausgabeformat automatisch anhand vom Grafik-Eingabeformat, Pixel-Format, MIP-Verwendung und anderen Parametern ausgewählt.streamFormat="DEFAULT"
Das encodete Daten Stream Format aus IEnums::VideoStreamFormat.
Wenn ein explizieter Wert fürfileType
gesetzt wurde, der einem Standard File Format entspricht, muss der Wert fürstreamFormat
dem entsprechen: z.B. fileType="JPG" verlangt auch streamFormat="JPG".
Wenn derfileType
"MURL" gesetzt wurde, wird der gewählte Daten Stream verwendet und in das Murl Container Datei-Format gespeichert. Die folgenden Werte sind erlaubt: "RAW", "JPG", "PNG", "WEBP" and "DDS".
Falls nicht angegeben, wird das "PNG" Stream Format für unkomprimierte Formate und das "RAW" Format für komprimierte Formate verwendet.pixelFormat="UNDEFINED"
Das encodete Pixel Format aus IEnums::PixelFormat.
Nur solche Pixel Formate sind erlaubt, die für den entsprechenden Daten-Stream auch verwendet werden können:
- streamFormat="RAW": Alle Formate, keine Restriktionen.
- streamFormat="JPG": "L8", "SL8", "Y8", "R8_G8_B8" und "SR8_SG8_SB8".
- streamFormat="PNG": "L8", "SL8", "Y8", "L8_A8", "SL8_A8", "R8_G8_B8", "SR8_SG8_SB8", "R8_G8_B8_A8", "SR8_SG8_SB8_A8", "LF32", "LF32_AF32", "RF32_GF32_BF32" und "RF32_GF32_BF32_AF32". Die "F32" Formate werden tatsächlich als 16 Bit Integer gespeichert (Genauigkeitsverlust).
- streamFormat="WEBP": "R8_G8_B8", "R8_G8_B8_A8", "SR8_SG8_SB8" und "SR8_SG8_SB8_A8".
- streamFormat="DDS": "R8_G8_B8", "R8_G8_B8_A8", "RF16", "RF16_GF16", "RF16_GF16_BF16_AF16", "RF32", "RF32_GF32" und "RF32_GF32_BF32_AF32".
Falls nicht angegeben wird als Standardwert das Format "R8_G8_B8_A8" verwendet, ausgenommen bei JPG Streams, wo das Format "R8_G8_B8" verwendet wird.mipMapGenerationMode="DEFAULT"
aus IEnums::MipMapGenerationMode.
Erlaubte Werte: "NONE", "FAST" und "GAMMA_CORRECT".
Falls nicht angegeben wird der Wert "NONE" verwendet.compressionType="DEFAULT"
Der Typ der Kompression aus IEnums::CompressionType.
Erlaubte Werte: "DEFAULT", "LOSSLESS", "LOSSY" und "BEST".
Wenn entweder "LOSSLESS" oder "LOSSY" explizit angegeben wird, muss dieser Kompressions Typ auch vom verwendeten Stream Format unterstützt werden (nur WEBP unterstützt beide Typen).
Andere Stream Formate als "WEBP" sollten entweder "DEFAULT" oder "BEST" verwenden. "DEFAULT" verwendet die Kompression des gewählten Stream Formats und "BEST" setzt die "compressionQuality" auf 100 (siehe weiter unten).
Falls nicht angegeben wird "DEFAULT" verwendet.compressionQuality="90.0"
Kompressions Qualität, falls anwendbar.
Wertebereich von 0 (kleine Dateigröße, schlechteste Qualität) bis 100 (große Dateigröße, beste Qualität).
Falls nicht angegeben wird ein Wert von 90 verwendet.
Innerhalb des <Image> Elements ist es möglich beliebige weitere Varianten von Ausgabegrafiken zu erzeugen, die abhängig von verschiedenen Bedingungen wie z.B. Betriebssystem, Video API oder Plattform Feature verwendet werden:
<Variant/>
Ausgabe Grafik Variante.
Unterstützte Attribute:includeForUserConfigurations="" excludeForUserConfigurations=""
Inklusions- bzw. Exklusionsliste von App-spezifischen Konfigurations-Strings (getrennt durch Beistriche).includeForLanguages="" excludeForLanguages=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::Language enumeration (getrennt durch Beistriche).includeForTargetClasses="" excludeForTargetClasses=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::TargetClass enumeration (getrennt durch Beistriche).includeForTargetDevices="" excludeForTargetDevices=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::TargetDevice enumeration (getrennt durch Beistriche).includeForTargetHosts="" excludeForTargetHosts=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::TargetHost enumeration (getrennt durch Beistriche).includeForOperatingSystems="" excludeForOperatingSystems=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::OperatingSystem enumeration (getrennt durch Beistriche).includeForGpus="" excludeForGpus=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::Gpu enumeration (getrennt durch Beistriche).includeForVideoApis="" excludeForVideoApis=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::VideoApi enumeration (getrennt durch Beistriche).includeForAudioApis="" excludeForAudioApis=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::AudioApi enumeration (getrennt durch Beistriche).includeForFeatures="" excludeForFeatures=""
Inklusions- bzw. Exklusionsliste mit Werten von IEnums::Feature enumeration (getrennt durch Beistriche).scaleFactor="1.0"
Zusätzlicher Grafik Skalierungs Faktor für diese Variante.
Zusätzlich werden die folgenden Attribute unterstützt um das Ausgabe-Encoding der Variante festzulegen. Siehe zugehörige Attributbeschreibung oben (Ausgabebereich <Image> Element).
fileType="DEFAULT"
Erzeugt eine Ausgabegrafik von einem bestimmten Typ aus IEnums::FileType.streamFormat="DEFAULT"
Das encodete Daten Stream Format aus IEnums::VideoStreamFormat.pixelFormat="UNDEFINED"
Das encodete Pixel Format aus IEnums::PixelFormat.mipMapGenerationMode="DEFAULT"
aus IEnums::MipMapGenerationMode.compressionType="DEFAULT"
Der Typ der Kompression aus IEnums::CompressionType.compressionQuality="90.0"
Kompressions Qualität, falls anwendbar.
Beim Erzeugen des Output Packages werden zunächst alle Varianten im package.xml file erzeugt (in der angegebenen Reihenfolge), danach werden die Standard-Grafiken des Eltern Elements erzeugt.
<PlaneGraphXML/>
XML Dateiname und Eigenschaften der Ausgabeflächengeometrie.
Erstellt eine <Graph> XML-Datei, die für jede Eingabegrafik jeweils einen Eintrag enthält:
<PlaneGeometry id="" frameSizeX="" frameSizeY="" texCoordX1="" texCoordX2="" texCoordY1="" texCoordY2=""/>
Diese Einträge sind in der gegebenen Reihenfolge der Eingabegrafik-Tags geschrieben
Unterstützte Attribute:
name=""
XML-Dateiname der Ausgabe, Standard ist "graph_planes.xml".usePathPrefix="no"
Erzeugt einen Präfix aus dem Dateipfad. Trennelemente ('/', '\', ':') werden ersetzt durch '_'.useExtensionPostfix="no"
Erzeugt einen Postfix aus der Dateinamenerweiterung.multiFiles="yes"
Erzeugt eine separate XML-Datei pro Ausgabegrafik, Standard ist "no".texDivisor="1.0" [texDivisorX="1.0"] [texDivisorY="1.0"]
Divisor für frameSize, Standard ist 1,0.texSizeX="0.0"
texSizeY="0.0"
Überschreibt die frameSize Werte, wenn die diese Angabe nicht 0,0 ist.normalizeTexCoords="yes"
Normalisiere die texCoords im Wertebereich [0 .. 1], Standard ist "yes", bei "no" wird die textureSize auf die Atlasgrafik-Größe gesetzt und die texCoords werden im Wertebereich [0 .. Atlasgrafik-Größe] berechnet.sizeInScale="no"
Schreibt die frameSize in den scaleFactor, wenn dieser auf"yes"
gesetzt ist, Standard ist"no"
. Erstellt<PlaneGeometry id="" scaleFactorX="" scaleFactorY="" texCoordX1="" texCoordX2="" texCoordY1="" texCoordY2=""/>
.materialSlot="0"
Standardmäßiger Material Slot-Index.parametersSlot="0"
Standardmäßiger Parameters Slot-Index.textureSlots="0,1,2"
Standardmäßige Textur Slot-Indexe.textureSlot.0="0"
..textureSlot.7="0"
Standardmäßiger Textur Slot-Index für eine bestimmte UnittextureSlotInterval="1"
Inkrement für Textur Slots pro Ausgabegrafik, Standard ist "1".applyCropCenter="no"
KorrigiertposX
undposY
vom Grafikzentrum für zugeschnittene Eingabegrafiken (ohnecropCenter
). Kann mitapplyRasterCenter
kombiniert werden.applyRasterCenter="no"
KorrigiertposX
undposY
vom Grafikzentrum fürsizeRaster
(aufgerundet,sizeRaster
> 1). Kann mitapplyCropCenter
kombiniert werden.applyAngleZ="yes"
Rotiert Bilder mittlesangleZ="+/-90deg"
zurück, wenn die Eingabegrafik mitrotate="CW"
oderrotate="CCW"
bearbeitet wurde.attributes="angle="90deg""
Zusätzliche Attribute für das<PlaneGeometry>
Element.
<AtlasXML/>
XML-Dateiname und Eigenschaften des Ausgabeatlanten.
Erstellt eine <Atlas> XML-Datei, die für jede Eingabegrafik jeweils einen Eintrag enthält:
<Rectangle coordSizeX="" coordSizeY="" texCoordX1="" texCoordY1="" texCoordX2="" texCoordY2="" [textureSizeX="" textureSizeY=""] [name=""] [materialSlot="" parametersSlot="" textureSlots=""]/>
Diese Einträge sind in der gegebenen Reihenfolge der Eingabegrafik-Tags geschrieben.
Unterstützte Attribute:
name=""
Name der XML-Datei der Ausgabe, Standard ist "atlas_rectangles.xml" oder "atlas_image_rectangles.xml" wenn das images Attribut gesetzt ist.usePathPrefix="no"
Erzeugt einen Präfix aus dem Dateipfad. Trennelemente ('/', '\', ':') werden ersetzt durch '_'.useExtensionPostfix="no"
Erzeugt einen Postfix aus der Dateinamenerweiterung.multiFiles="yes"
Erzeugt eine separate XML-Datei pro Ausgabegrafik, Standard ist "no".images="image1.png, image2*.png"
Inkludiere die angegebenen Eingabegrafiken, die Namen der Eingabegrafiken können mit Platzhalter-Muster angegeben werden* ? [0-z]
. Wenn dieses Attribute gesetzt ist, dann wird das multiFiles="" Attribut ignoriert.texDivisor="1.0" [texDivisorX="1.0"] [texDivisorY="1.0"]
Divisor für coordSize, Standard ist 1,0.texSizeX="0.0"
texSizeY="0.0"
Überschreibt die coordSize Werte, wenn diese Angabe nicht 0,0 ist.normalizeTexCoords="yes"
Normalisiere die texCoords im Wertebereich [0 .. 1], Standard ist "yes", bei "no" wird in der zugehörigenPlaneSequenceGeometry
die textureSize auf die Atlasgrafik-Größe gesetzt und dieAtlas
texCoords werden im Wertebereich [0 .. Atlasgrafik-Größe] berechnet.createTextureSize="no"
Erzeuge <Rectangle> textureSizeX and textureSizeY Attribute wenn normalizeTexCoords="no".createNames="no"
Erzeuge <Rectangle> name Attribute welches den Eingabegrafik-Bezeichner beinhaltet.createSlots="no"
Erzeuge <Rectangle> slot Attribute. Standard is "yes" wenn irgendein slot angegeben wird, andernfalls "no".materialSlot="0"
Standardmäßiger Material Slot-Index.parametersSlot="0"
Standardmäßiger Parameters Slot-Index.textureSlots="0,1,2"
Standardmäßige Textur Slot-Indexe.textureSlot.0="0"
..textureSlot.7="0"
Standardmäßiger Textur Slot-Index für eine bestimmte UnittextureSlotInterval="1"
Inkrement für Textur Slots pro Ausgabegrafik, Standard ist "1".attributes="angle="90deg""
Zusätzliche Attribute für das<Rectangle>
Element.
<SequenceGraphXML/>
XML-Dateiname und Eigenschaften der Ausgabe-Sequenzgeometrie.
Erstellt eine <Graph> XML-Datei, die für jede Eingabegrafik jeweils einen Eintrag enthält:
<PlaneSequenceGeometry id="" atlasResourceId="[packageId]:[resourceId]" index=""/>
Unterstützte Attribute:
name=""
Name der XML-Datei der Ausgabe, Standard ist "graph_plane_sequences.xml".multiFiles="yes"
Erzeugt eine separate XML-Datei pro Ausgabegrafik, Standard ist "no".packageId=""
Packagebezeichnung, um die<Rectangle>
Instanzen zu referenzieren.resourceId=""
Resourcenbezeichnung, um die<Rectangle>
Instanzen zu referenzieren. Der Standardname ist das Atlas XML-Namensattribut ohne Erweiterung.materialSlot="0"
Standardmäßiger Material Slot-Index.parametersSlot="0"
Standardmäßiger Parameters Slot-Index.textureSlots="0,1,2"
Standardmäßige Textur Slot-Indexe.textureSlot.0="0" .. textureSlot.7="0"
Standardmäßiger Textur Slot-Index für eine bestimmte UnittextureSlotInterval="1"
Inkrement für Textur Slots pro Ausgabegrafik, Standard ist "1".applyCropCenter="no"
KorrigiertposX
undposY
vom Grafikzentrum für zugeschnittene Eingabegrafiken (ohnecropCenter
). Kann mitapplyRasterCenter
kombiniert werden.applyRasterCenter="no"
KorrigiertposX
undposY
vom Grafikzentrum Eingabegrafiken mitsizeRaster
aufgerundet (sizeRaster
> 1). Kann mitapplyCropCenter
kombiniert werden.applyAngleZ="yes"
Rotiert Bilder mittlesangleZ="+/-90deg"
zurück, wenn die Eingabegrafik mitrotate="CW"
oderrotate="CCW"
bearbeitet wurde.attributes="angle="90deg""
Zusätzliche Attribute für das<PlaneSequenceGeometry>
Element.
<TextureGraphXML/>
XML-Dateiname und Eigenschaften des Ausgabe Textur-Graphen.
Erstellt eine <Graph> XML-Datei, die <FlatTexture> und <TextureState> für jede Ausgabegrafik und optionale <Instance> Einträge erstellt.
name=""
Name der XML-Datei der Ausgabe, Standard ist "graph_textures.xml".namespace=""
Erstellt einen umschließenden Namensraum.textureId=""
Texture Bezeichner. Standard is der der Ausgabegrafik-Dateiname ohne Erweiterung.textureSlot="0"
Textur Slot-Index.textureSlotInterval="1"
Inkrement für Textur Slots pro Ausgabegrafik, Standard ist "1".textureUnit="0"
Textur Unit-Index.useMipMaps="no"
Texture Mip-Maps Attribut.planeGraphInstance="yes"
Erstellt Instanzen der PlaneGraphXML Graphen.sequenceGraphInstance="yes"
Erstellt Instanzen der SequenceGraphXML Graphen.flatTextureAttributes=""
Zusätzliche Attribute für das<FlatTexture>
Element.textureStateAttributes=""
Zusätzliche Attribute für das<TextureState>
Element.<PackageXML/>
Output Package XML file name and properties if specified.
Erstellt eine <Package> XML-Datei, die <Resource> Einträge und optional eine <Instance> des Textur-Graphen erstellt.name=""
Name der XML-Datei der Ausgabe, Standard ist "package.xml".packageId="images"
Name des Paket Bezeichners. Fügt dem Ausgabe-Pfad [packageId].murlres hinzu, wenn der Ausgabe-Pfad nicht mit .murlres endet. Setzt <SequenceGraphXML> packageId="[packageId]" wenn keine packageId in <SequenceGraphXML> angegeben ist.textureGraphInstance="yes"
Erstellt eine statische Instanz des <TextureGraphXML>.parentNodeId=""
Der Vater-Knoten Bezeichner der statischen Instanz.
Die Eingabegrafiken werden einzeln wie folge bearbeitet:
- Zuschneiden (
Crop
) - Mattieren (
Matte
) - Skalieren (
Scale
) - Pixelwiederholungs-Rahmen zeichnen (
repeatBorder
) - Rotieren (
rotate
) - Erzeuge die finale Größe mit Rand (
margin
undsizeRaster
) - Anwenden der Füllfarbe auf den Rand (
Fill
) - Anwenden der Mattierung auf den Rand (
Matte
)
XML Beispiel
Packe alle Grafiken vom Pfad my_images1 und my_images2 in eine Atlasgrafik und erstelle die dazugehörende XML-Datei.
Jede Grafik erhält einen Abstand von 1 Pixel und eine geradzahlige Größe im Atlas.
<?xml version="1.0" encoding="utf-8"?> <AtlasGenerator xmlns="http://murlengine.com"> <Input path="my_images1"> <Image names="*"/> </Input> <Input path="my_images2"> <Image names="*.png"/> </Input> <Output path="my_package.murlres"> <Atlas sizeRaster="2"/> <Image name="my_atlas.png" margin="1" mipMapGenerationMode="FAST"> <Variant mipMapGenerationMode="FAST" pixelFormat="ETC2_RGBA8_8BPP" compressionQuality="50" includeForFeatures="TEXTURE_COMPRESSION_ETC2"/> <Variant mipMapGenerationMode="FAST" pixelFormat="PVRTC_RGBA_4BPPV1" compressionQuality="70" includeForFeatures="TEXTURE_COMPRESSION_PVRTC"/> </Image> <PlaneGraphXML name="my_planes.xml"/> </Output> </AtlasGenerator>