Eine Stellarium-Landschaft vom äquirektangular-sphärischen Standardformat in das Mehrbildformat (Old Style) umwandeln
In früheren Versionen, bevor das äquirektangular-sphärische Format Standard wurde, konnte Stellarium Landschaften ausschließlich im Mehrbildformat laden, das aus einem Bild für den Grund (Erdboden) und mehreren „seitlichen“ Bildern für die Horizontpartien besteht. Wegen der relativen Einfachheit in Produktion und Handhabung hat sich für Stellarium-Landschaften das sphärische Format durchgesetzt. Jedoch können viele Rechner mit ihren Grafik-Subsystemen die großen Dateien hochaufgelöster sphärischer Landschaften nicht in OpenGL verarbeiten und zeigen nur einen schwarzen Bildschirm an.
In einer solchen Situation führt an der Umwandlung der sphärischen Landschaft in das Mehrbildformat kein Weg vorbei. Mit dem Mehrbildformat sind auch 16k-Auflösungen für die Horizontlinie kein Problem.
Zum Einsatz kommen wieder GIMP und Hugin, also die gleichen Programme, die ohnehin für die Erstellung von Panoramen benötigt werden.
Vorbereitung
Erstellen Sie Ihre Landschaft zunächst im äquirektangular-sphärischen(!) Format bis zum letzten Schliff, so als wollten Sie Ihre Landschaft in diesem Format veröffentlichen, d.h. einschließlich Beseitigung aller Artefakte, Skalierung der Auflösung auf Zweierpotenzen, Höhenkorrektur, evtl. Helligkeitskorrektur, sauberes Wegschneiden des Himmels und auch Bestimmung des Azimut-Korrekturwinkels angle_rotatez. Speichern Sie die fertige sphärische Landschaft wie üblich im PNG-Format ab.
Seitenflächen erstellen
Öffnen Sie nun diese PNG-Datei in GIMP. Legen Sie fest, in wieviele Seitenflächen-Bilder Sie die horizontale 360°-Runde unterteilen wollen (zu empfehlen sind 4 Bilder). Kopieren Sie nun diese Seitenflächen aus dem geladenen Bild heraus. Benutzen Sie dazu das Rectangular-Select-Tool und achten Sie genau darauf, daß die im Tool-Dialog gezeigten Abmessungen des Rechtecks ganzzahlige Zweierpotenzen (z.B. 2048, 4096) und die Koordinaten seiner linken oberen Ecke geeignete Vielfache ganzzahliger Zweierpotenzen (z.B. 0, 2048, 3072) sind, während es sich vertikal symmetrisch zur Horizontlinie erstrecken muß. Speichern Sie jede erzeugte Seitenfläche im PNG-Format unter Benutzung eines individuellen Dateinamens.
Grundfläche erstellen
Im Gegensatz zu den Seitenflächen muß das Bild der Grundfläche in rektilinearer (= gnomonischer) Projektion vorliegen - dies ist in keiner bisher im Web auffindbaren Anleitung vermerkt. Die rektilineare Projektion der Grundfläche kann man sich vorstellen als Projektion auf eine horizontale Tangentialebene an einer imaginären Kugel um die Augen des Beobachters mit der Augenhöhe (z.B. 1,6 m) als Radius. Durch diese Projektion weisen Bildpartien ab etwa 30° Winkelabstand von der vertikalen Achse eine zunehmende Verzerrung auf, die bei Annäherung an 90° (also im unmittelbaren Bereich des mathematischen Horizonts) extreme Ausmaße annimmt. An der Verzerrung des Grundflächen-Bildes darf man sich nicht stören; sie ist genau passend dafür, daß Stellarium den Nadir-Bereich korrekt darstellen kann. Mit der rektilinearen Projektion kann jedoch prinzipiell nur ein Sichtfeld von kleiner als 180°x180° abgebildet werden; im Grenzübergang kollabiert bei vorgegebener Pixelauflösung sogar die gesamte unter dem Beobachter liegende Halbebene bzw. Hemisphäre auf einen einzigen Punkt. Bei in der Praxis verwendbaren rektilinearen Bildern muß das Sichtfeld allerdings deutlich darunter bleiben, da sonst die Endqualität der Landschaft in der Stellarium-Verwendung sichtbar leidet.
Um ein Grundflächen-Bild zu erhalten, das eine adäquate, den Seitenbildern vergleichbare Qualität aufweist und in einfacher Weise korrekt ausgerichtet werden kann, sollte NICHT die vielfach in den Anleitungen beschriebene Stellarium-Screenshot-Methode angewendet werden, weil die Auflösung eines Screenshots auf den Viewport des verwendeten Bildschirms beschränkt ist, der Nadir nicht mit letzter Sicherheit exakt in Bildmitte plaziert werden kann und die Einpassung in das schon vorhandene Seitenflächen-Bildset von „Try & Error“ geprägt ist. Vielmehr sollte ein Werkzeug benutzt werden, das für die Arbeit mit Panoramen und ihren verschiedenen Projektionen geradezu prädestiniert ist: Hugin!
Starten Sie ein neues Projekt in Hugin und laden Sie die PNG-Datei der fertigen sphärischen Landschaft als einziges Bild hinein. Setzen Sie den Type der Linse, typischerweise „Lens 0“, auf „equirectangular“, sowie das HFOV (Horizontal Field Of View) der Linse auf 360° (Reiter „Photos“, Rechtsklick auf den Eintrag des geladenen Bildes, „Edit image variables...“, im Dialog-Menü Reiter „Lens“ auswählen, „degrees of view“ ggf. auf 360° setzen. Alle anderen Einträge müssen 0 sein, nur “Red/Blue Multiplier“ müssen gleich 1 sein). Im „Fast Panorama preview“ füllt das geladene PNG-Bild nun den gesamten 360°x180°-Viewport.
Nun im „Fast Panorama preview“ den Reiter „Move/Drag“ anklicken, den Pitch-Wert auf 90° setzen und „Apply“ drücken. Der Nadir rückt nun exakt in die Mitte des Viewports.
Das benötigte Grundflächen-Bild kann nun über den Reiter „Stitch“ ausgegeben werden. Hierzu muß als Projektion “Rectilinear“ ausgewählt werden. Die Größe des quadratischen Sichtfeldes bemißt sich danach, daß die Nadir-Kalotte minimal (um 0,1°) von den Seitenflächen überlappt werden soll (um feine Löcher durch fehlende Überlappung zu vermeiden). Als Formel für den nötigen Sichtfeldwinkel ergibt sich
FOV = 180,2° - 360°/Seitenflächenzahl
Die Auflösung des zu produzierenden Grundflächen-Bildes muß schließlich auf eine ganzzahlige Zweierpotenz gesetzt werden (z.B. 4096x4096).
Sind alle Parameter gesetzt, so klickt man auf den „Stitch!“-Button, um das Grundflächen-Bild zu produzieren. Dieses Bild in GIMP laden und im PNG-Format exportieren. Von Stellarium tatsächlich verwendet wird übrigens nur der Inhalt des größten Kreises, der ganz im Grundflächen-Bild enthalten ist.
Benutzt man tatsächlich 4 Seitenflächen, so besitzen Grund- und Seitenflächen praktisch die gleiche Qualität und ermöglichen eine nahtlose Qualitäts-Erfahrung im Vollbildmodus. In diesem Fall ähnelt das Mehrbildformat der kubischen 6-Flächen-Projektion mit dem Unterschied, daß die Deckfläche fehlt (Himmel!) und die Seitenbilder in äquirektangularer (oder zylindrischer) statt rektilinearer Projektion vorliegen müssen.
Dateipaket für das Mehrbild-Panorama erstellen und in Stellarium integrieren
Unabhängig vom Format gehört zu jeder Stellarium-Landschaft ein eigener Unterordner im Verzeichnis <config_root>/landscapes (z.B. <config_root>=/usr/share/stellarium oder ähnlich) oder $HOME/.stellarium/landscapes. Erstellen Sie für Ihr Mehrbild-Panorama einen solchen Unterordner, der nach Ihrer Panorama-Landschaft benannt sein sollte, und legen Sie dort folgende Dateien an, die Sie auch aus anderen Landschafts-Ordnern als Muster übernehmen können, um sie dann für Ihr Panorama-Projekt entsprechend zu editieren:
- <landschaft-name>/description.de.utf8 - innerhalb von Stellarium abrufbare Beschreibung der Landschaft,
- <landschaft-name>/description.en.utf8 auf Deutsch und auf Englisch
- <landschaft-name>/description.XX.YY ggf. in weiteren Sprachen (XX = Ländercode, YY = Encodingformat)
- <landschaft-name>/landscape.ini - Config-Datei, u.a. mit den genauen Standort-Koordinaten
- <landschaft-name>/readme.txt - Beschreibung und Installationsanleitung als lesbare Textdatei auf Englisch
- <landschaft-name>/<landschaft-name>GT.png - Bilddatei für die Grundfläche (GT = Nummer, z.B. 0, od. eigene Extension)
- <landschaft-name>/<landschaft-name>S1.png - Bilddateien für die Seitenflächen
- ··· Seitenflächen durchnumerieren:
- <landschaft-name>/<landschaft-name>Sn.png S1 bis Sn, 1 bis n, 0 bis n-1 o.ä.
Achten Sie darauf, die Seitenflächen bereits in der richtigen Reihenfolge von links nach rechts geordnet zu benennen und abzuspeichern. Alle Bilddateien müssen im PNG-Format vorliegen. Die Textdateien sind genau wie im äquirektangular-sphärischen Fall zu erstellen, mit einer Ausnahme:
landscape.ini
muß im Abschnitt [landscape] Informationen darüber enthalten, daß die Landschaft im
Mehrbildformat vorliegt und wie sie aus den zugehörigen Bilddateien zusammenzusetzen ist. Dies geschieht
durch folgende Zuweisungsblöcke:
type = old_style(statt „spherical“)
nbsidetex = ZahlenwertZahl der verschiedenen Seitenflächen-Texturen (d.h. Bilddateien)
tex0 = <landschaft-name>S1.pngZuweisung der Dateinamen zu internen Textur-IDs
tex1 = ···
···
nbside = ZahlenwertSeitenflächenzahl
side0 = tex0:x0:y0:x1:y1Zuweisung der Textur-IDs (und damit der Bilddateien) zu den Seitenflächen
side1 = tex1:x0:y0:x1:y1mit Auswahl eines rechteckigen Ausschnittes zwischen der linken unteren
···Ecke x0:y0 und der rechten oberen Ecke x1:y1 in relativen Koordinaten
x0:y0:x1:y1 = 0:0:1:1 für die Übernahme der ganzen Seitenflächen-Bilddatei
groundtex = <landschaft-name>GT.pngTextur/Bilddatei für die Grundfläche
calibrated = true„false“ nur bei Landschaften, die unter Versionen < 0.10.6 entwickelt wurden
tan_mode = falsefür Seitenflächen in äquirektangularer statt zylindrischer Projektion
nb_decor_repeat = 1Wiederholungsrate für die Seitenflächenbilder, bei Fotopanoramen immer = 1
decor_alt_angle = WinkelHöhenausdehnungswinkel der Seitenflächen,
= 360°/Seitenflächenzahl bei quadratischen Seitenflächen
decor_angle_shift = WinkelHöhenwinkel des unteren Seitenflächenrands,
= -180°/Seitenflächenzahl bei quadratischen Seitenflächen
decor_angle_rotatez = WinkelDer errechnete Azimut-Korrekturwinkel angle_rotatez (s.o.)
ground_angle_shift = WinkelHöhenwinkel des Oberrands der Nadir-Kalotte,
= 0,1° - 180°/Seitenflächenzahl bei quadratischen Seitenflächen
= FOV/2 - 90° (s.o. zum FOV des Grundflächen-Bildes)
ground_angle_rotatez = Winkel= 180° - angle_rotatez (360° addieren, falls Ergebnis negativ)
Ein Verzeichnis aller gültigen Schlüsselwörter mit ihrer Bedeutung und ihrer Wertzuweisungssyntax ist im offiziellen Stellarium-Benutzerhandbuch zu finden. Auch Kommentare sind möglich; sie werden durch ein Semikolon eingeleitet. Ohne korrekt ausgefüllte landscape.ini-Datei kann Stellarium Ihre neue Landschaft nicht erkennen und einbinden!