Seite 1 von 1

[Q3] 360° Panorama Screenshot Tutorial

Verfasst: 13.04.2006, 20:55
von sst13
Wir erinnern uns: cha0s hatte mal von seiner "Map Kritische Masse" ein Ponorama Shot gebastelt:
Bild

Ich hab damit auch etwas rumexperimentiert, die ganze Sache etwas verfeinert und über Scripts halbwegs automatisiert. Die Ergebnisse sind gar nich mal schlecht und desswegen gibts jetzt ein kleiens Tutorial für euch!


1. Vorbereitungen:

Hier die Tools saugen: http://sst13.net/downloads/360panorama.zip (190kB)
Irfan View (wird benötigt) gibts hier: http://www.irfanview.de/download.php (1MB)

- Gucken ob man noch 260 MB Platz für die Bilddaten auf der Platte hat.
- "360.cfg" nach baseq3 kopieren und an deine Settings anpassen!
- Irgendwo ein Arbeitsverzeichnis erstellen. (der Name ist egal)
- "header.raw" und "build.bat" dort rein kopieren.
- Dort noch ein Unterverzeichnis namens "temp" erstellen.


2. Screenshots machen:

- Antialiasing usw. anschalten.
- Die Auflösung in Q3 auf 800x600 stellen. (r_mode 4 ; vid_restart)
- Die Map mit "devmap" laden.
- Ein geeignete Position suchen. Kein Spectator, noclip ist aber ok. Die Blickrichtung wird später das Zentrum des 360° Pics.
- Das Screenshot-Script über Cosole starten. (exec 360)

Info: Jetzt sollte sich die Sicht drehen und die 89 Screenshots gemacht werden...


3. Bildbereich ausschneiden:

- Die 89 Screenshots zusammensuchen und in den Temp Ordner im Arbeitsverzeichnis kopieren.
- Irfan View starten und mit B das Batch-Konvertierungs Fenster öffnen.
  • alle 89 Screenshots aus dem Temp Ordner in die Dateiliste hinzufügen.
  • die korrekte Reihenfolge in der Dateiliste kontrollieren und eventuell "Sortieren" anklicken(nach Name)
  • "Dieses Verzeichnis als Zielverzeichnis" anklicken.
  • "Batch-Konvertierung + Umbenennen" auswählen.
  • Bei Zielformat: RAW auswählen.
  • In den Optionen: "Color order: BGR" und "Interleaved" auswählen.
  • Bei "Spezialoptionen verwenden" einen Haken setzen.
  • In den Spezialoptionen bei Ausschneiden einen Haken setzen und folgendes einstellen: X=382 Breite=35 Y=0 Höhe=600 einstellen.
  • In den Spezialoptionen bei "Rechts drehen" einen Haken setzen.
  • In den Spezialoptionen bei "Überschreibe existierende Dateien" einen Haken setzen
  • Bei "Optionen für Batch-Umbenennen" als Name(Muster): ## eintragen
- Start klicken

Hier noch mal ein Screenshot wie die Settings aussehen:
Bild


4. Bildschipsel zusammentackern und der letzte Schliff:

- Einfach die "build.bat" starten um "panorama.tga" zu erstellen.
- Das erzeugte Bild ist jetzt noch spiegelverkehrt und um 90° verdreht. (in Irfan View L und H drücken)
- Jetzt noch mit einem Bildbearbeitungsprogramm den gewünschten Teil des Bildes ausschneiden. (2600 x 600 Pixel machen sich da ganz gut)


Note:
Die Screenshots werden ohne Entities gemacht (r_drawEntities 0) damit das Playermodel nicht im Bild zu sehen ist. Allerdings werden dadurch auch alle Powerups und Brush-Entities wie Türen ausgeblendet.
Man kann diesen Befehl in der 360.cfg auch auskommentieren um Entities zu sehen, muss dann aber ein unsichtbares Player und Waffenmodel verwenden. (DL invis machinegun / bones/bones)


Zum Schluß noch ein paar fertige Panorama Shots:

Bild Bild

Bild Bild

Bild Bild

Bild Bild

:D

Verfasst: 14.04.2006, 00:46
von starcow
Interessante Sache :)
Aber wieso 89(!) Bilder? Mit cg_fov 90 müssten doch nach 4. Shoots die ganzen 360 grad drauf sein, welche man dann aneinander hängen kann. Oder habe ich da was falsch verstanden?

Mir scheint du hast an einen konkreten Verwendungszweck dieser Grafik gedacht. Banner oder Map-Preview Shot?

Verfasst: 14.04.2006, 01:53
von sst13
Ja mit 4x90° würde man den gesammte Bereich schon abdecken, aber durch die perspektivische Verzerrung an den Rändern des Bildes wirken die "Nähte" dann als wäre ein Knick im Bild.

Hier mal ein Beispielbild aus 4 Einzelbildern @ 90°:
Bild
1. Knick im Maul fällt kaum auf. 2. an der Wand schon eher (Bildmitte) 3. Knick beim Plasmarespawndingens... omg omg :D

Desswegen wird für das Panorama jeweils nur der mittlere Teil der Screenshots verwendet.
Bei meinen ersten Versuchen hatte ich aller 10° einen Shot gemacht und die mittleren 70x600 Pixel jedes Shots zusammengetackert. Allerdings waren noch leichte Knicke zu sehen. Besonders wenn man nahe einer Treppe stand konnte man diese auf den Stufen erkennen. -> Beispielbild (auf die Stufen achten)

Mit dem aktuellen Script wird aller 5° ein Shot gemacht und dann 35x600 ausgeschnitten...


Verwenden kann man das natürlich für viele Sachen aber was konkretes hatte ich da nicht im Sinn.

Verfasst: 14.04.2006, 09:54
von Harmonieman
In den Optionen: "Color order: BGR" und "Interleaved" auswählen.
ich kann auf options klicken wie ich will, da kommt kein menü :(

Verfasst: 14.04.2006, 11:30
von sumatra
Super Sache, werds bei Gelegenheit mal ausprobieren.

:daumen:

Verfasst: 14.04.2006, 13:51
von Harmonieman
zudem bekomme ich immer:

Konvertiere: D:\360\temp\01.tga
Fehler beim Speichern: D:\360\temp\01.raw

und das bei allen dateien.. :[

Verfasst: 14.04.2006, 15:23
von sst13
Original geschrieben von Harmonieman
ich kann auf options klicken wie ich will, da kommt kein menü :(
Scheint so als ob die Aktuelle Version von Irfan View da einen Bug hat. Ich hab mal die Version die ich gererade benutze nochgeladen. Damit sollte das auf jeden Fall gehn.

Edit: Ok doch kein Bug, es fehlte lediglich eine Plugin DLL. -> http://sst13.net/downloads/Formats.dll
Muss bei Irfanview ins Plugin Verzeichniss...

Verfasst: 15.04.2006, 17:21
von Johanson
nice one :daumen:
Ich hatte sowas mal mit einem normalen Panorama Proggi gemacht, allerding nur auf "fov 180" ( http://www.lquattro.de/test ), was auch nicht so toll geworden ist.

Werde das mal antesten :>

Verfasst: 16.04.2006, 12:18
von Harmonieman
Bild

danke sst13 :daumen:

Verfasst: 16.04.2006, 13:49
von zzz
sehr stark gut. sieht um einiges besser aus als mein panorama shot mit ~30 bildern.
ich hab die idee übrigens selbst nur geklaut :rolleyes:

€: passend zum thema: panorama quake
könnt man jetzt eigentlich auch mal für q3 basteln ._.

Verfasst: 16.04.2006, 15:39
von HuRr/C4nE
coole sache!
würde irgendwie besser aussehen als ladebildschirm - Und designtechnisch macht so ein breites Format auch ordentlich was her.

Wäre cool, wenn man das irgendwie auch einfach auf Quake 4 übertragen könnte.

Verfasst: 17.04.2006, 15:08
von sst13
Original geschrieben von HuRr/C4nE
Wäre cool, wenn man das irgendwie auch einfach auf Quake 4 übertragen könnte.
Man müsste eigentlich nur die Befehle in der 306.cfg auf Q4 anpassen. In der Hoffnung dass es gleichwertige Befehle bei Q4 gibt.

Aber ich weiss ja noch nicht mal wie man bei Q4 ne Multiplayermap im Developer Modus läd... :ugly:

@Harmonieman:
Ja, schön geworden. Erinnert mich daran mal wieder ne Runde WOP zu zocken. :D

Verfasst: 21.04.2006, 22:08
von oregano4_inaktiv
Sehr toll die Sache.
Noch einige Fregen:
*Was müsste ich den tun um die Aüflösung zu verdoppeln?
Damit das nicht aussieht als ob unser sst13 keine Ahnung habe:
[red]€dit:[/red]
*Warum werden 89 Bilder geschossen und nicht 72? (360°/5°=72Bilder)
*Lässt sich etwas Besteln womit man das fov erhöhen kann und die Bilder nicht zerstückelt aussehen?

Verfasst: 22.04.2006, 00:00
von sst13
Original geschrieben von oregano4 Was müsste ich den tun um die Aüflösung zu verdoppeln? [/B]
  • Quake3 auf 1600x1200 stellen "r_mode 9" wenn ich nicht irre.
  • In Irfanview beim Ausschneiden einstellen: X=765 Breite=70 Y=0 Höhe=1200
  • Im "header.raw" mit nem Hexeditor die Bytes 13-16 von "58 02 2B 0C" auf "B0 04 56 18" ändern. (stellt die Auflösung des fertigen Bildes ein)
Wenn Quake beim speichern der Screenshots nicht hinterher kommt, musste eventuell noch in der "360.cfg" die Wartezeiten (wait 40) zwischen den Screenshots erhöhen.

Hab's aber noch nicht getestet, desswegen alle Angaben ohne Railgun. :ugly:

Verfasst: 22.04.2006, 01:18
von oregano4_inaktiv
Bei es gibt Witze über die man lachen muss, über gute und über so fürchterlich schlechte das man denjenigen dafür bestrafen sollte. Railgun ts. :P

Hat alles supi funktionuckelt.

Verfasst: 22.04.2006, 01:53
von sst13
Original geschrieben von oregano4
*Warum werden 89 Bilder geschossen und nicht 72? (360°/5°=72Bilder)
*Lässt sich etwas Besteln womit man das fov erhöhen kann und die Bilder nicht zerstückelt aussehen?
Ich hab da ein paar Bilder mehr machen lassen, damit man nachher noch zuscheiden kann. Also damit man exakt festlegen kann wo bei dem fertigen Panorama die Schittkanten sind.

Wenn du den FOV erhöhen willst musst du den Ausschnittbereich entsprechend anpassen. Dazu einfach 2 Bilder um 5° versetzt machen und von einem markanten Punkt auf beiden Bildern messen um wieviel Pixel sich die Sache verschoben hat.
Dann stimmt allerdings der vorgefertigte Header nicht mehr mit den zugeschnittenen Bilddaten überein.

Verfasst: 14.06.2009, 14:02
von oregano4_inaktiv
*push* :)
Will mal ein wenig aktualisieren:
Alte Einstellungen erden beibehalten:
Die "Spezialeinstellungen" haben sich in den neueren Versionen von Irfanview verändert

Man mus an der oberen rot markierten Stelle aufpassen was man eingibt, dort wurden Felder vertauscht.
(genau so wird es eingetragen für die 800x600er Auflösung)
BILD
und unten wird ein Häkchen gesetzt, ansonsten bekommt man ein farbvertauschtes Bild.
Alle anderen Einstellungen bleiben gleich.

Grunz der Oregano4

Verfasst: 19.06.2009, 19:08
von Sok4R
woha, der Thread is ja von 2006.

Aber ne super Sache, grad mal ausprobiert. Eignet sich gut für Header oder so für Webseiten. Oder einfach nur als cooles Wallpaper =)

nur eine Frage: ich hab die Header.raw geöffnet, aber wie bzw welche Werte muss ich da für eine andere Auflösung eintragen? Ich hab die Hex-Werte mal mitm Windows Taschenrechner umrechnen lassen ( :ugly: ich weis, bin aber grad zu faul das von Hand zu machen), aber da kommt irgendwie nix sinnvolles raus. Welche Bytes stehen da für Höhe bzw Breite oder funzt das da ganz anders?

Verfasst: 19.06.2009, 22:21
von sst13
Das Forum lebt! :D


Der Original Header ist für ein Bild in 600x3115.

00 00 02 00 00 00 00 00 00 00 00 00 [red]58 02[/red] [green]2B 0C[/green] 18 00

[red]Breite[/red] Dec = 600 Hex = 0258
[green]Höhe[/green] Dec = 3115 Hex = 0C2B

Wird im Header verdreht angegegeben, keine Ahnung warum...

Wenn Du z.B. die doppelte Auflösung haben willst und die Screenshots in 1600x1200 machst, muss der Header wie folgt aussehn:

00 00 02 00 00 00 00 00 00 00 00 00 [red]B0 04[/red] [green]56 18[/green] 18 00

Noch bisschen was zum lesen: http://de.wikipedia.org/wiki/Targa_Image_File

Verfasst: 20.06.2009, 10:06
von Sok4R
ok, dass war das Problem. Ich hab schon an meinen HexToDec-Fähigkeiten gezweifelt, aber dass die Werte einfach vertauscht sind - da währ ich nie drauf gekommen =)

btw: du hast im ersten Post geschrieben dass man Antialsiasing anschalten soll - wie kann ich das bei Q3 überhaupt? Ich hab mal gelesen (glaub in der Encoding Anleitung zu q3fuel2) dass das originale Q3 auf Antialiasing und Anisotrope Filterung recht allergisch reagiert und teilweise derbe Bildfehler produziert (in q3mme ists ja kein Problem). Das einzige was mir einfallen würde ist dass ich es über den Treiber erzwinge, meinst du das? Ansonsten kann ichs ja mal in q3mme probieren, vielleicht funzt da ja auch =)