-> Erste Revision der Übersetzung : Freitag
08.09.06 - 22:44 ..
Weitere Ratschläge zu diesem Beitrag könnt ihr in diesem
-> Rendering-Thread lesen, diskutieren und selbst
eintragen ..
I N T R O
Ich habe etliche Freunde, die über Probleme mit LW
klagen, wenn sie
zu viele Polygone verwenden oder
dass man mit manchen Sachen scheinbar nicht ordentlich arbeiten kann.
Häufig lese ich in Foren von Leuten, die nicht wissen,
wie LW richtig funktioniert und die ihre Szenen falsch vorbereiten und
dann den langsamen Workflow bejammern. Aus diesen und anderen
Gründen entschied ich mich, eine kleine Sammlung von Tipps &
Tricks zusammenzufassen, die
ich während des letzten 13 Jahre Arbeit mit LW sammeln konnte.
Diese Auflistung dient der Optimierung Arbeitsweise mit LightWave und
soll zeigen, wie man schnellere und bessere Resultate aus
diesem wundervollen Stückchen Software herauskitzeln kann.
LW 3D Optimierung - 35 Tipps um
LightWave auf Lichtgeschwindigkeit zu beschleunigen :
~~~~~~~~~~~~~~~~~~~~~~~~~~
P R O G R A M M O B E R F L Ä C H E - LW ist
eine OpenGL-basierte Anwendung, bei der man über Optimierung der
Nutzer-Oberfläche auch die Geschwindigkeit der zu berechnenden
Szenen verbessern kann.
Display Panel / OpenGL [ Taste 'd' ]
1. Show Motion Path : Auschalten dieser Option
verbessert die Playback-Geschwindigkeit ..
2. AutoSwitch Bounding Box : Exakten Wert
für diese Bounding Box einstellen, dieser Wert bedeutet die Grenze
der
vollen Sichtbarbarkeit des Objekts; wenn ein Gegenstand mehr Polygone
beinhaltet, als
dieser Wert aufweist, stellt LW, während des Abspielens der
Animationsvorschau oder beim manuellen Objekte-Verschieben, einen
springenden Kasten dar ..
3. Wählt das wichtige Einzelteil vor : Wenn
ihr viele Gegenstände
habt und speziell eines davon
während des Animations-Playbacks sehen wollt, könnt ihr es
auswählen, LW updaten und zuerst das vorgewählte Einzelteil
refreshen, dann die anderen
Teile ..
4. Vielfältigkeit ist unser Freund :
Optimieren der Visualisierung dank der wunderbaren Vielseitigkeit von
LW. Wenn ihr eine
'schwere' Szene habt, könnt ihr die Anzeige-Option für jedes
Objekt
extra einstellen, weniger wichtige Objekte als Bounding Box oder
Wireframe, wichtigere Objekte in QuickShade-Darstellung und die
Haupt-Objekte im Textur-Preview-Modus, so lassen sich grosse Szenen
besser handhaben ..
5. OpenGL on/off : Wenn man die Auswirkungen
spezieller Lichter am Bildschirm mal nicht unbedingt
braucht, ein Auschalten des Einflusses in OpenGL lässt den Refresh
schneller laufen ..
6. Farbe ist besser : Organisiert eure
Einzelteile mit Farb-Anzeigen, das ist logischer und bei komplexen
Szenen
schneller und leichter zu managen. Ihr könnt Farbkodierung
für Einzelobjekte und
auch zum Aufbau eines Rigs benutzen, oder beispielsweise verschiedene
Farben für rechte oder linke Komponenten ..
7. HUB - nicht immer nötig : Falls
mal die Verbindung vom Layouter zum Modeler nicht benötigt wird,
könnt ihr den HUB
auch abschalten, das beschleunigt viele Layout-Aufgaben. Dazu
dupliziert das LW-Icon und fügt in dessen Eigenschaften am Ende
die Zeichenfolge '-0' ein, so könnt ihr je nach Aufgabenstellung
verschiedene Instanzen starten ..
8. GLSL Shading for Surface : Diese Einstellung
dient lediglich der Textur-Vorschau und
Beleuchtungsdarstellung, nicht für die Animation.Wenn ihr
Animationen fahren wollt, schaltet diese Option aus, solange bis ihr
euch
den Schatteneinstellungen widmet ..
9. Und auf die Grösse kommts doch an : Sehr
wichtig ist es, beim Modelieren die realen Abmessungen eurer
Gegenstände zu beachten und umzusetzen, weil LW wirkliche
Parameter zum Analysieren und Berechnen eurer Szene verwendet. So
vermeidet ihr Probleme beim Rendern, bei
der Ausleuchtung, IK-Lösungen und dynamischen Simulationen etc ..
~~~~~~~~~~~~~~~~~~~~~~~~~~
O B J E K T E - Wenn ihr Objekte auf
intellingente
Weise baut, ist schon die Hälfte der Arbeit getan ..
10. Erstellt euer Objekt korrekt : Wenn ihr eure
Gegenstände zu bauen beginnt, bedenkt, was ihr zum Modellieren
braucht, quasi nur das Film-Set, in
dem ihr die Vorderseite der Gebäude sehen könnt und
irgendeine Hausecke, aber nicht
mehr, als ihr unbedingt benötigt ..
11. 1024'er Polys : LW erlaubt
Polygone mit bis zu 1024
Punkten. Aber es ist nicht nötig, all diese Punkte
auch zu benutzen. Wenn mal die Notwendigkeit besteht, ein großes
Polygon zu erzeugen, wandelt es in kleine Polygone mit je 4 Punkten um,
meist trägt das schon zu einer Berechnungsbeschleunigung bei und
man vermeidet Probleme mit nicht-planaren Polygonen ..
12. Organisiert eure Teile : Wenn ihr
Gegenstände im
Modeler bastelt und mehr als einen Layer benutzt, parented die Layer
gleich direkt im Modeler und setzt das pvpoint für alle Layer, und
wenn ihr das
Layer-Objekt dann in den Layouter ladet, ist schon alles vorbereitet ..
[
LayerSettings @ Modeler ]
13. Alle Objekt-Layer benennen : So vermeidet ihr
künstliche Konstrukte wie 'obj:layer056'
im Layouter zu handhaben, und alles geht logischer und leichter von der
Hand ..
14. Verwendet SubDiv Unterteilung, wenn ihr was
verformen müsst : Ein 'NURBS' Objekt wird im Layouter ein
bisschen langsamer berechnet als dasselbe Objekt in Polys gefreezed.
Ursache ist, dass die Render-Engine das Teil zuerst unterteilen muss um
dann die Bewegung der einzelnen Punkte berechnen zu können,
derweil die zweite Methode diesen Schritt überspringt. Wenn ihr
das
Objekt nicht unbedingt verformen müsst, könnt ihr es getrost
vorher in
Polys 'einfrieren'. Dadurch spart man ein wenig kostbare Rechenzeit ..
15. Versteckt das Unsichtbare : Wenn Einzelteile
wie Kurven,
Keile oder ähnliches in Layern benötigt werden, kann man auf
'Hidden Layer' zurückgreifen. Das hilft, irgendein Teil,
wenn nötig, in einer schnelleren Weise umzubauen ..
16. Mehr Polys - Weniger Objekte : Wenn für
eine Szene eine Menge statischer Teile benötigt werden,
überdenkt, ob man all diese nicht in einem einzigen Objekt
vereinigen kann. LW managed viele Polygone in einem
einzelnen Objekt besser als in vielen Objekten. [ Ein Zustand, der
allerdings in
Version 9 optimiert worden ist ].
~~~~~~~~~~~~~~~~~~~~~~~~~~
L I C H T - Gute Lichteinstellungen bringen realistische Ergebnisse
und beschleunigen die Berechnung ..
17. FallOff einstellen : Sehr wichtig ist die
Einstellung das Lichtabfalls mit der Entfernung. Wenn ihr
das nicht richtig einstellt, feuert das Programm Lichtstrahlen bis zum
Ende des LW Universums, was einer Verschwendung von
Berechnungs-Resourcen gleichkommt. Ausserdem bringt eine gute
Einstellung in diesem Bereich 'ne Menge Realismus in eure Darstellung.
In der realen Welt gibts wegen physikalischer Bedingungen [ Luft- &
Wasserdichte etc. ] jedenfalls keine endlosen Lichter. All solche
natürlichen Eigenschaften schwächen die Lichtintensität
im Raum ..
18. Keine Schatten zuviel - 1 : Schaltet die
Schatten für jedes Licht aus, welches diese nicht unbedingt
projizieren muß, so beschleunigt ihr die
Berechnung und vermeidet merkwürdige mehrfache Schatten um Objekte
herum ..
19. Keine Schatten zuviel - 2 : Die Berechnung
lässt sich weiter beschleunigen, wenn
die Interaktion der Schatten für jedes Objekt, welches diese nicht
unbedingt
benötigt, extra ausgeschaltet wird. Nicht in jeder Situation
benötigt auch jedes Objekt die Optionen Schatten werfen oder
empfangen ..
20. Shadow Map unser Freund :Benutzt,
wenn möglich, Shadow Maps. Sie sind schneller und erzeugen weiche
Schatten
anstelle der vielen harten Schatten wie beispielsweise beim Area-Licht
..
21. Schatten anpassen : wenn ihr Shadow Maps
justiert, vergesst nicht den Wert des 'Shadow Map Angle' anzupassen,
die Standardeinstellung ist dieselbe wie die des Scheinwerferkegels,
aber, wenn ihr diese Licht&Schattenart
verwenden müsst, um einen Schatten von einem kleinen Teil zu
produzieren, ist es besser, in die Licht-Ansicht rüberzuschalten
und den
Lichtkegel, respektive den Shadow Map Angle auf das Objekt der Wahl zu
fokussieren, mehr brauchts nicht, diese Aktion optimiert euer
Shadow Map und alle
Pixel werden genutzt, einen besseren Schatten zu erzeugen ..
22. Specularity AN/AUS : Wenn nicht
dringend benötigt, den Einfluss von Licht auf Specular
ausschalten, um die
Schattenberechnung zu beschleunigen ..
~~~~~~~~~~~~~~~~~~~~~~~~~~
R E N D E R N - Der letzte Schritt unseres
Optimierungs-Kurses, aber ein nicht weniger wichtiger Schritt, ist es,
passende Einstellungen der Render-Optionen vorzunehmen, welche
die Optimierung von Berechnungszeiten und Ausgabe-Qualität
gleichzeitig ermöglichen ..
23. Super F9 :
Wenn ihr eine Vorschau von Tiefenunschärfe oder
Bewegungsunschärfe sehen wollt, benutzt die Tasten-Kombination
Shift+F9 und ihr könnt mit diesen Ansichten die Einstellungen gut
und schnell justieren ..
24. Speicher Segment Einstellungen : Wählt
diesen Wert beim Eintragen im Panel korrekt, nicht mehr als die
Grösse, die ihr benötigt, um den möglichen Speicher
freizugeben ..
25. No Border : Stellt für 'Limited Region' [
Render Globals ] keinen Rand ein, das rendert eine Region ohne
Ränder, verbraucht weniger Speicher, macht sich besonders bei
hohen Auflösungen bemerkbar..
26. Für Riesen Poster : Für
HighResRender kann man 20% der Berechnungszeiten -> ohne AA sparen -
manche Artefakte können im Photoshop oder ähnlichen
Programmen reduziert werden, man kommt fixer zu guten Resultaten
für Druckwerke als
mit dem Standard-AntiAlias ..
27. Wie viele Strahlen braucht mein Raum : Den
Wert für 'Ray Recursion Limits' überprüfen, er steht
standardmässig auf 16,
aber häufig benötigt ihr keinen solch hohen Wert. Beim
Verringern könnt ihr 'ne Menge Rendertime sparen, besonders wenn
viele Objekte die Szene bevölkern, die andere Objekte reflektieren
[ Achtung : bei transparenten Objekten kann hier ein niedriger Wert das
Ende für Lichtstrahlen im Raum bedeuten und euer Objekt wird
schwarz gerendert .. ]
28. Speicher sparen fürs
Rendern : Texturspeicherverbrauch reduzieren indem
Farbinformationen verringert
werden, denn nur für Farbtextur und Normalmaps braucht man die
Farbinfos. Eine
8 Bit Textur ist ausreichend und ergibt visuell das gleiche,
benötigt aber nur
ein Drittel oder weniger Speicher. Ausnahmen sind 1) displacement map
2) höhen map von geografischer Software wo die 16/32 bit beim
rendern sichtbar
sind .. <- Thomas Renn Interpretation -> Was er sagen
will ist, reduzieren Texturen auf 8 bit wo
diese Reduzierung beim rendern keinen Unterschied macht. Praktisch ist
dies
schwachsinn weil es von so vielen Dingen abhängt ob man einen
Unterschied
sieht, dass man es besser nicht probiert wegen den paar Megabytes –
aber jedenfalls
war das sein Credo ..
29. Bild-Sequenzen für Anim-Texturen : Wenn
ihr animierte Texturen benötigt, oder einen animierten Hintergrund
ist's besser dafür eine Animation als Frame-Sequenz zu verwenden;
konvertiert Anims in Bildfolgen ! Denn sonst muss bei diesen
Vorgängen jedes einzelne Frame eines Animationsformates
herauskomprimiert werden und LW muss diese komplexen Anims im Speicher
halten und jede einzelne Delta Frame Info herausfiltern. Wenn ihr also
eine Bildfolge ladet, braucht LW nur das jeweils benötigte Pic
reinzuladen und das verringert natürlich die benötigten
Rechner-Recourcen zum Arbeiten ungemein ..
30. Nicht notwendige Programme schliessen : Wenn
ihr alles fürs Rendern eingerichtet habt, macht LW dicht und
startet aus Screamernet heraus .. auf diese Weise wird die
LW-Programmoberfläche nicht unbedingt benötigt und man
hält alle unnötigen Tools aus
dem Spreicher raus. Und mit Screamernet könnt ihr im Batch-Modus
eine ganze Serie von Anims durchrendern lassen. Falls ihr Schiss vor
der Screamernet-Kommandozeile habt, könnt ihr auch den 'Screamernet Controller' [ win & mac ] vom
Dstorm Entwickler nutzen ..
31. Flexibles Denken : Manchmal reicht der
Speicher zwar zur Berechnung des
aktuellen Bildes, aber nicht zum Laden und zum Durchlauf
der Render-Daten vom LW-Puffer zum Abspeicher-PlugIn-Puffer und der
ganze Prozess hängt sich auf. Wenn ihr das Flexible Format
wählt, speichert ihr direkt aus LightWave3D heraus, weil
'Flexible' im Kern von LW integriert ist und späteres Modifizieren
des Renderergebnisses erlaubt [ Ändern der Bilddarstellung,
Bild-Kalibrierung .. ] weil es ein 128Bit-Format ist, 32Bit pro Kanal +
Alpha ..
32. Animation oder Einzelbilder ? : Für
eine Animation ist es besser, Einzelbilder abzuspeichern, weil ihr
weniger Speicher verplempert und die Berechnungszeiten so
verringern könnt. die Gesamt-Animation muss nicht für jedes
komprimierte Bild nachgerechnet und umgebaut werden und für eine
eventuelle
spätere Format- oder Komprimierungs-Konvertierung habt ihr
später stets die 'sauberen' Original-Sequenzen parat ..
33. Polygonzahl optimieren : Wenn ihr vorhabt, eine
komplizierte Szene zu bauen, baut besser für jedes Objekt einen
'Proxy' .. eine vereinfachte Version für die bessere Darstellung
der Gesamtszenerie. Man kann diese Proxys an die 'originalen'
Objekt-Eltern parenten und letztere dann in den
Objekt-Rendereinstellungen 'Seeing by Ray / Camera / OGL' temporär
ausschalten um sie zu verstecken ..
34. Hoch Riggen - Niedrig Animieren : Beim
Setup-Erstellen benutzt also eine reduzierte Polyversion.
Kein Studio benutzt permanent HighPolyObjekte, für viele Aifgaben
sind
diese Teile einfach nicht nötig, ja sie lenken sogar die
Animatoren und Trickzeichner häufig von der realen Bewegung ab und
benötigen viele Ressourcen. Wenn ihr euch Pixar oder Dreamworks
Filme anschaut, könnt ihr in der ersten Animations-Stufe
Boxen-Charaktere sehn und das machen sie nicht etwa wegen mangelnder
Hardware, sondern weils einfach nicht notwendig und mit Low-Poly
alles viel praktischer ist ..
35. Aus der Box heraus : Viele Aufgaben, die
ihr in LW tun könntet, macht besser in externer Software.
Postproduktions-Aufgaben wie Tiefenunschärfe, Volumen-Effekte,
Schatten-Kalibrierung
und -Optimierung etc. pp lassen sich mit
Videobearbeitungs-Programmen im Nachgang besser bewerkstelligen. [
Digital Fusion, After Effects, Combustion, Shake .. ]. Ihr könnt
alle Buffer von der LW RenderEngine in diese externen Tools
exportieren, um viele Effekte zu
beschleunigen, deren Berechnung in solcher Software oft nur wenige
Sekunden erfordern. Beispielsweise Volumenlichter; dabei stellt ihr
alle Objekte wie Matte-Objekte ein [ komplett Schwarz
] dann wird nur das Volumenlicht berechnet [ geht viel schneller ] und
in der Postbearbeitung könnt ihr diesen Layer als
Überblendung einmischen und die
Transparenz des Lichtes mit einem einfachen Schieber steuern, der
Prozess spart euch ziemliche Rechenzeiten. So könnt ihr auch
die Tiefenunschärfe separat in einen Depth Buffer
exportieren und während der Postproduktion mit schnelleren und
kontrollierbareren Parametern der Animation hinzufügen ..
ACHTUNG :
Weitere Ratschläge zu diesem Beitrag könnt
ihr in diesem -> Rendering-Thread lesen, diskutieren und selbst
eintragen ..