Welten
Eine Welt ist das, worin eine Szene steht: Boden, Gras, Laub, Wasser und der Himmel darüber. Pixor baut alles aus einer Handvoll Einstellungen; so rendert eine kleine Umgebung oder eine ganze Karte genauso wie eine Figur — durch dieselbe Palette, dieselben Linien und dasselbe Licht — und läuft exakt in Schleife.
Was es gibt
| Teil | Was es erzeugt |
|---|---|
| Terrain | terrassierter Boden aus einem Höhenfeld mit Seed. Jede Zelle ist flach und jede Stufe eine ganze Zahl von Terrassen, sodass Klippen in Sprite-Größe sauber wirken. Oberseiten und Wände bekommen je eine Farbe und eine Rampe |
| Zweige | Grasbüschel, Blumen oder Kiesel, über den Boden verstreut, nie an einer Wand und fern von allem, was dort schon steht – überall oder mit Reichweite als Fleck um ihren Standort |
| Laub | Blattbüschel über jeder Krone: ein Teil, dessen Name crown, leaves, leaf, foliage oder canopy oder das von dir angegebene Wort enthält – jedes oder mit Reichweite die in ihrer Nähe |
| Wasser | eine Wasserfläche mit Wellen, die wandern und sich wiederholen, Schaum am Ufer und einer eingeditherten Spiegelung der Szene |
| Wolken | Wolkenschatten, die über alles ziehen, fest in der Welt |
| Himmel | ein Himmel hinter allem: Streifen von einer oberen zu einer unteren Farbe in ganzen Stufen oder ein gemaltes Bild |
| Wind | eine Welle über die Szene, die das Gras, die Blätter und jedes Teil bewegt, das du nennst – Flaggen, Banner, Wäscheleinen |
| Lichtstrahlen | das Licht, das in der Luft steht, wo die Sonne durchbricht, durch die Schatten verfolgt |
| Tageszeiten | ein Sheet pro Tageszeit – Morgengrauen, Mittag, Abenddämmerung, Nacht –, jedes mit eigener Sonne und eigener Palette |
| Chunks | eine große Karte, als mehrere Dateien geschrieben, deren Nähte exakt passen |
Alles, was sich bewegt — Wind, Wolken, Wellen —, bewegt sich in ganzen Schritten über eine Schleife, sodass der letzte Frame ohne Überblendung in den ersten zurückführt.
In der App
Im Schritt Szene fügt das Menü + der Gliederung jedes davon hinzu, unter Die Welt. Sie stehen in der Gruppe Welt der Gliederung, und ein Klick auf eines zeigt seine Einstellungen im Inspektor: Das ist die ganze Arbeit, und der Graph muss nie geöffnet werden.
Jedes davon ist eine Node des Szenen-Graphen – die Zeile und die Node sind ein und dasselbe, wie bei einer Form, einer Lampe oder einem Volumen (D49) – in der Reihenfolge, in der es hinzugefügt wurde: der Import, dann ein Terrain, dann Gras darauf und so weiter. Im Graphen kann eine Welt mehr – eine Zeile nach einer Wasser-Node macht drei Teiche, ein Verschieben versetzt ein Terrain –, weil die Kopie einer Welt-Node wie jede andere Kopie platziert wird. Gras und Blätter wachsen überall, wo sie können, bis sie eine Reichweite bekommen: Dann lässt eine Zweige-Node einen Fleck so weit um ihr Bei wachsen, und eine Laub-Node bedeckt nur die Kronen, die so nah daran stehen – jede Kopie um ihren eigenen Ort, mit ihr skaliert, sodass eine Zeile aus drei Blumen-Nodes drei Flecken ergibt. Wolken, Himmel, Wind, Lichtstrahlen, Tageszeiten und Chunks gehören zur ganzen Szene: Gibt es zwei von einem, wird das nähere an der Ausgabe-Node genommen.
Eine Welt wird nach den Kopien gebaut; so steht ein Kranz aus acht Rittern auf einem Terrain, in einem Wind.
Tageszeiten stehen auch im Inspektor des Asset-Schritts, neben den Sheets, die sie erzeugen, und der Export schreibt ein Sheet pro Stunde.
Auf der Kommandozeile
Dieselben Teile sind Flags von pxr project new und pxr project set; jedes fügt die Node hinzu oder ändert sie, und --no-... nimmt sie heraus:
pxr project new map.pixor --model chest.glb
pxr project set map.pixor --terrain 12:32:2:0.25 --terrain-seed 4
pxr project set map.pixor --scatter tuft:400:0.2 --scatter flower:40@2,1,0.8 # a patch
pxr project set map.pixor --water 4:1,0.3,-2 --reflect 0.6 --waves 0.5
pxr project set map.pixor --clouds 0.4 --wind 0.08:2 --times-of-day dawn,dusk
pxr project set map.pixor --sky '#2c3e6b,#9dbcd9,4' # or --sky dusk.png:2
pxr project set map.pixor --chunks 4x4 # 16 files an hour: 32, map_dawn_r0c0.png ... map_dusk_r3c3.png
pxr project scene map.pixor --list # the world as nodes
Jede Einstellung ist per Name erreichbar, auch aus einem Blueprint oder einer Job-Datei:
pxr project blueprint map.pixor -o map.pixorblueprint
pxr run map.pixorblueprint --in model=chest.glb --set terrain.seed=9 --set clouds.cover=0.7
Ein Blueprint löst das Modell aus dem Projekt heraus; --in model= nennt also das, um das die Karte gebaut wird.
--chunks COLSxROWS bei pxr render schneidet einen Build anders, als das Projekt sagt, ohne das Projekt zu ändern.
Große Karten
Eine in Chunks zerlegte Karte wird Chunk für Chunk gezeichnet, jeder mit einem Rand aus den Pixeln seiner Nachbarn, der danach abgeschnitten wird. Der Rand ist breiter, als irgendein Durchgang schaut; so ist jedes behaltene Pixel genau das, das die ganze Karte gehabt hätte, und die Nähte passen exakt. Die App schreibt dieselben Dateien wie pxr render, Byte für Byte.
Was diese Seite beschreibt, gibt es in der Vollversion; die kostenlose Browser-Demo beschränkt sich auf den Standard-Look und das PNG-Sheet.
Im Browser testen Pixor holen