Es folgt eine Aufzählung aller neuen Funktionen und Erweiterungen der
neuen Programmversion 9.0. Ausführliche Funktionsbeschreibungen finden
sie wie immer in der überarbeiteten Dokumentation. Die Beseitigung kleinerer
Fehler und Ausbesserungen würde das Volumen dieser Aufzählung sprengen
und wird daher nicht extra erwähnt. Beispielbilder und Animationen zur
Illustration der neuen Möglichkeiten finden Sie in der
Galerie. Demoprojekte liegen der Installation
bei oder können von registrierten Anwendern aus der
Online-Bibliothek abgerufen werden.
Neu ab Version 9.0 sind:
Globales Beleuchtungsmodell - Photon Mapping
-
Raytracing ist der Standard wenn es um hohe Bildqualität geht und optimal
für realistische Spiegelungen und Transparenzen. Ein wesentlicher Nachteil
von Raytracern ist jedoch, dass die Umgebungshelligkeit im Beleuchtungsmodell
nur über einen gleichförmigen Schätzwert "Ambiente" in die
Berechnung eingeht. Gerade diese durch diffuses Streulicht bestimmte
Umgebungshelligkeit ist aber von enormer Wichtigkeit für den
Realitätsgrad eines Bildes, insbesondere in der Architektur und allen
Szenen die durch vornehmlich diffuse, nicht spiegelnde Oberflächen
geprägt sind. Das in CyberMotion neu implementierte Photon Mapping
kombiniert nun Raytracing mit einem globalen Illuminationsmodell, daß
sowohl Spiegelungen und Transparenzen als auch die Interaktion diffuser
Oberflächen zueinander in hervorragender Qualität abbilden kann.
Das neue Verfahren bedient sich dabei im wesentlichen der gleichen Techniken
wie sie auch im Raytracing angewandt werden. Beim Photon Mapping werden in
einem Vorlauf kleinste, von Lichtquellen ausgesandte Lichtteilchen (physikalisch:
Photonen oder auch Strahlungsquanten) auf ihrem Weg durch den Raum verfolgt.
Diese von den Lichtquellen emittierten Photonen können ebenfalls wieder
auf vielfältige Weise diffus (zufällig) oder spiegelnd reflektiert
oder sogar von transparenten Objekten in Brennpunkten fokussiert werden.
Damit lassen sich mit Hilfe des Photon Mapping auch sogenannte Caustic-Effekte
nachbilden - eben die durch Spiegelung oder Brechung in transparenten Objekten
entstandenen Lichtreflexionen. Ein weiterer Effekt ist das Farbbluten, wenn
z.B. eine grüne Wand durch diffuse Reflexionen einen leichten grünen
Schimmer auf die weiße Zimmerdecke wirft. Allerdings ist das Photon
Mapping in seinen Anforderungen an die Rechenleistung und den Speicherausbau
auch nicht ganz ohne. So müssen z.B. alle Interaktionspunkte der Photonen
mit Objektflächen in einer Art 3D-Lichtkarte - der Photon Map -
zwischengespeichert werden. Diese kann bei einer hohen Anzahl emittierter
Photonen schnell stark anwachsen, ein entsprechend guter Speicherausbau von
mind.128MB RAM sind da eher die Untergrenze.
-
Photon Mapping kann wahlweise nur als indirektes Umgebungslicht in
Ergänzung zu den herkömmlichen direkten Beleuchtungsmodellen verwendet
werden oder aber als alleiniges globales Illuminationsmodell:
-
Photon Mapping nur für indirektes Licht: wenig Photonen reichen aus
um die ambiente Umgebungshelligkeit zu bestimmen, die direkte Beleuchtung
sorgt für korrekte Ausleuchtung und scharfe korrekte Schatten. Wenn
weiche Schatten gewünscht sind, können diese über die Vergabe
eines Lichtradius (flächige Lichtquelle) und mit Hilfe mehrerer
Schattenfühler gerendert werden.
-
Photon Mapping als globales Beleuchtungsmodell: die gesamte Illumination
wird durch das Photon Mapping bestimmt, die diffusen Interaktionen im Raum
kommen voll zur Geltung, Schatten fallen automatisch sehr weich und das ganze
Bild wirkt automatisch sehr viel realer. Nachteil: damit auch kleinere Details
in der Szene von genügend Photonen getroffen werden, müssen
entsprechend viele Photonen ausgesandt werden und die PhotonMap entsprechend
groß sein.
-
Getrennte Photon Maps für diffuse Beleuchtung und Caustic-Effekte. So
können z.B. nur wenige Photonen zur Bestimmung des ambienten Umgebungsterms
emittiert werden, aber eine hohe Anzahl von Photonen für die Caustics-Photon
Map, um z.B. gezielt die Reflexionen eines Glases auf einem Tisch in hoher
Qualität abzubilden.
-
Für jedes Licht läßt sich getrennt einstellen, ob es zum
Photon Mapping beiträgt oder lieber das direkte Beleuchtungsmodell verwendet
werden soll. So kann man weniger wichtige Lichtquellen, die vielleicht weit
im Hintergrund liegen oder wenig zur globalen Ausleuchtung beitragen
(Instrumentenbeleuchtung, etc.) von den umfangreichen Photon Map Berechnungen
ausschließen, ohne daß das Bild an Qualität verliert.
-
Statische Photon Map für Animationen. Die Photon Map wird nur einmal
berechnet und gilt für alle Bilder der Animation. Dies ist vor allem
sinnvoll für Fly-Throughs durch ein Architekturmodell, in dem die Objekte
der Szene selbst unbewegt bleiben. Werden auch Objekte oder Lichteinstellungen
animiert, so muß vor jedem Bild eine neue Photon Map generiert werden.
Ausnahme: Es lassen sich auch gezielt einzelne Objekte vom Photon Mapping
ausnehmen, die stattdessen direkt beleuchtet werden. So kann man z.B. trotzdem
einen Durchflug durch ein Architekturmodell mit einer statischen Photon Map
animieren, während eine Figur oder ein Gefährt sich durch die Szene
bewegt.
-
Einzelne Objekte können gezielt vom Photon Mapping ausgenommen werden.
Es gibt 2 Anwendungsmöglichkeiten:
-
Für kleine, detaillierte Objekte, die nicht von genügend Photonen
getroffen werden. Schalten Sie das Photon Mapping für diese Objekte
aus, so werden diese stattdessen wieder direkt beleuchtet. Das erspart einem
eventuell das Erhöhen der Photonenanzahl für die gesamte Szene.
-
Für bewegte Objekte innerhalb einer Animation mit einer statischen Photon
Map (s.o.).
Licht und Feuer
-
Objekt-Lichtquellen - Flächige Lichtquellen, wie sie so oft in der modernen
Architektur in Lichtpaneelen eingesetzt werden, sind mit den
standardmäßig in 3D-Grafikprogrammen eingesetzten Punktlichtquellen
schwer zu nachzubilden. In CyberMotion kann jetzt jedes beliebige Objekt
als Flächenlichtquelle eingesetzt werden. Jeder Punkt eines Objektes
dient dabei als kleine untergeordnete Punktlichtquelle, die Ihren Teilbetrag
zur Gesamtintensität liefert. Der Aufwand für die Bildberechnung
- insbesondere bei Schatten - ergibt sich daher aus der Punktanzahl, die
gleich der Anzahl der Licht- und Schattenfühler für dieses Lichtobjekt
ist. NURBS-Flächen sind aufgrund ihrer regelmäßigen Struktur
mit annähernd gleichgroßen Flächen und Punktabständen
ideal als Flächenlichtquellen geeignet. Außerdem haben Sie den
Vorteil, daß man die Punktauflösung noch jederzeit nachträglich
verändern kann, z.B. niedrig für Previews und mit höherer
Auflösung für das finale Rendering. Außerdem haben die
NURBS-Flächen keine Dicke, können also ideal in Wandflächen
eingebaut werden. Es wird nur eine maximale Anzahl von 200 Licht- und
Schattenfühlern pro Objekt berechnet; sind mehr Punkte vorhanden, so
werden max. 200 Punkte zufällig im Objekt herausgepickt. Eingeschaltet
wird die Lichtquelleneigenschaft über die Objekteigenschaften im
Materialdialog. Ist diese Option eingeschaltet, dann wird das Objekt nach
Wechsel in den Licht-Dialog als ganz normale Lichtquelle aufgelistet und
kann dort entsprechend editiert werden. Hier können Lichtfarbe und
Intensität eingestellt werden und die Photonen-Emissionsparameter. Die
Lichtfarbe ist unabhängig von der Objektfarbe. Stellen Sie sich das
Objekt als Körper oder Hülle eines Leuchtkörpers vor. Das
Objekt leuchtet nicht nur selbst, sondern wird auch von anderen Lichtern
beleuchtet. Das Objektmaterial wird daher als ganz normale Objektoberfläche
interpretiert, kann z.B. eine beliebige diffuse Farbe haben oder auch transparent
sein. Dann kommt zusätzlich der Eigenlichtanteil mit der Lichtfarbe
hinzu. In einer Animation können Sie dann z.B. die Lichtfarbe von dunkel
auf hell animieren und das Objekt fängt langsam an zu leuchten.
Natürlich können Flächenlichtquellen auch als Lichtobjekte
für das Photon-Mapping eingesetzt werden. Die Parameter sind identisch,
es kommt lediglich ein Schalter hinzu um zu entscheiden, ob Flächen
nur in eine Richtung (also bei geschlossenen Objekten nur nach außen
oder bei flachen Lichtpaneelen nur in den Raum hinein und nicht zur Wand)
oder ob beidseitig der Objektflächen Photonen emittiert werden sollen.
Gesteuert wird dies über die Ausrichtung der Objektnormalen auf den
Objektflächen.
-
Lichtintensitätsabfall - der Lichtabfall für Punktlichtquellen
erfolgt statt über einen konstanten linearen Wert jetzt annähernd
quadratisch. Die Lichtintensität fällt also etwas schneller ab,
was den Verhältnissen in der realen Welt näher kommt. (Denken Sie
z.B. an einen mit kleinen Pünktchen übersäten Luftballon.
Je größer Sie ihn aufblasen, um so weiter streben die Pünktchen
auseinander und übertragen auf die reale Welt - um so weniger Lichtteilchen
(oder auch Photonen oder Strahlungsintensität) sind pro Flächeneinheit
vorhanden. Die Umstellung dient vor allem der besseren Anpassung der
Lichtverhältnisse beim Umschalten vom normalem Raytracing zum Photon
Mapping und umgekehrt. Unterschiede in der Intensitätswahrnehmung
können über die Korrekturparameter für die
Photonenintensität vorgenommen werden.
-
Schattenfühler - die Anzahl der Schattenfühler für weiche
Schatten beim Raytracing kann jetzt für jede Lichtquelle getrennt
eingestellt werden (bis zu 97). Die Ablenkung wird nicht mehr über einen
generellen Wert für alle Lampen eingestellt, sondern wird jetzt aus
dem der Lichtquelle zugewiesenen Lichtradius bestimmt. Nach erreichen einer
gewissen Mindestanzahl von Schattenfühlern werden weitere
Schattenfühler nur noch adaptiv berechnet, also nur wenn unbedingt
nötig.
-
Volumetrisches Feuer - mit dem volumetrischen Feuer hält ein weiteres
Lichtobjekt Einzug in den Licht Dialog. Über einen Button rufen Sie
einen kleinen Dialog auf, in dem Sie die Grundmaße eines Zylinders
eingeben können, der als Begrenzungsvolumen für ein Feuerobjekt
dient. Diesem Zylinder ist ein Lampenobjekt hierarchisch untergeordnet, dessen
Parameter denen einer normalen Lampe entsprechen. Innerhalb des Zylinders
jedoch wird ein echtes volumetrisches Feuer entfacht. Volumetrisch heißt,
das Feuerobjekt wird Schritt für Schritt mit einstellbarer Qualität
abgetastet und für jeden Schritt wird eine eigene "Feuerdichte" ermittelt.
Es handelt sich also keineswegs nur um eine Textur die auf den Zylinder gelegt
wird, sondern innerhalb des Zylinders brennt quasi ein echtes Feuer, dass
aus jedem Blickwinkel anders aussieht und das man sogar mit der Kamera direkt
durchfahren kann. Verschiedene Parameter steuern die Lebendigkeit, Turbulenzen
und das Flackern der Flammen, spezielle Formfilter definieren die
äußere Form der Flamme innerhalb des Zylinders. Dann gibt es
unabhängig von der Lichtfarbe noch spezielle Farbpaletten, die den
Farbverlauf der Flamme steuern - von hellweiß bis orangerot oder auch
ins blaue verlaufend. Je nach dem, welche Einstellungen vorgenommen werden,
kann von der anheimelnd und ruhig flackernden Kerzenflamme über lebendige
Fackeln oder Lagerfeuer bis hin zum tosenden Feuersturm so ziemlich alles
simuliert werden. Auch Düsenstrahl oder lodernde Meteoriten sind
möglich. Da die Flamme volumetrisch berechnet wird, können auch
beliebige Objekte direkt in die Flammen gelegt werden (z.B. Holzscheite oder
ein beliebiger abbrennender Gegenstand).
Hintergrundmodelle
-
Atmosphäre - "Himmel/Himmel&Wolken/Nebel-Linear/Nebel-Wirbel" wurden
jetzt alle unter einem Eintrag "Atmosphäre" mit verschiedenen Karteireitern
für die einzelnen Effekte zusammengefaßt.Jeder Effekt kann optional
zur Atmosphäre dazugeschaltet werden.
-
Himmelsfarben - Neuer Farbverlaufsmodus für die Darstellung des Himmels:
-
Verlauf vom Zenit zum Horizont wie gehabt.
-
Konzentrisch zur Sonne - Die Sonne steht im Mittelpunkt und der Farbverlauf
läuft konzentrisch von der Sonne über die ganze Himmelskugel. Damit
können helle Farben am Anfang der Farbpalette und Dunkle am Ende der
Farbpalette einen kompletten Abendhimmel abdecken. Es ist nicht mehr nötig
für einen vollen Kameraschwenk die Farbpalette zu animieren um auf der
einen Seite einen strahlenden Sonnenuntergang und auf der anderen Seite den
dunklen Abendhimmel zu animieren.
-
Atmosphäre-Farbfilter - 2 Filterparameter regeln jetzt über 2
Filterfarben eine additive Komponente (blau) und eine zusätzliche
Filterfarbe (Rot) für Farbverschiebungen mit zunehmender Entfernung
in der Atmosphäre. Wie in unserer Planetenatmosphäre zu beobachten
werden dunkle Flächen mit zunehmender Entfernung ins bläuliche
verschoben und helle Flächen bekommen mit zunehmender Entfernung einen
Stich ins rötliche. Der atmosphärische Nebel muß eingeschaltet
sein, damit die Funktion zum tragen kommt.
Nebel - die alte Nebelfunktion wurde durch 2 neue Nebelfunktionen
ersetzt:
-
Atmosphärischer Nebel - der atmosphärische Nebel wird jetzt über
eine Bodenhöhe und eine maximale Höhe definiert. In der neuen Version
wird Nebel mit zunehmender Höhe immer dünner, daher sind die neuen
Höhenparameter unabdingbar. In und unterhalb der Bodenhöhe gilt
die eingestellte maximale Dichte. In der alten Version wurde die Glättung
der Wolkenschicht anhand des Nebeldichteparameters simuliert. Ab der neuen
Version erfolgt die Glättung automatisch über den atmosphärischen
Nebel. Grundsätzlich alles wird direkt durch den Nebel "gesehen"
(Volumetrie). Das heißt, das alle Nebelparameter - insbesondere Höhen
und Dichte - auch die Sichtweite der Wolken am Himmel beeinflussen. Ein besonders
unangenehmer Effekt wie im Nebel verschwindende Berge vor einem strahlend
blauen Himmel sind damit ausgeschlossen. Umgekehrt kann man natürlich
Bergspitzen aus dichtem Nebel herausragen sehen.
-
Die Nebeldichte wird jetzt den realen Gegebenheiten entsprechend exponentiell
zunehmend berechnet anstatt linear (gleichförmig).
-
Bodennebel - Eine optionale zweite Nebelfunktion kann zusätzlich zum
atmosphärischen Nebel eine Bodennebelschicht über die Szene legen.
Es gibt wieder Parameter für Boden- und maximale Höhe, im Gegensatz
zum atmosphärischen Nebel, der mit zunehmender Höhe immer dünner
wird, kann man für den Bodennebel wählen, ob er dicht und ohne
Ausdünnung auf dem Boden liegt, oder ob er bis zur maximalen Höhe
dünner werden soll.
-
Volumetrischer Bodennebel - Die Bodennebelschicht kann auf Wunsch auch
volumetrisch berechnet werden. Das heißt, daß die Szene vom
Sichtstrahl regelrecht durchwandert werden muss (Ray Marching) und viele
kleine "Proben" im Nebel gesammelt werden, um eine reelle Dichteberechnung
über die zurückgelegte Strecke berechnen zu können. Wenn man
dann schon mal unterwegs ist, dann können an den Probepunkten auch gleich
noch die Lichtverhältnisse untersucht werden um den Nebel dann entsprechend
der Lichtverhältnisse korrekt zu schattieren. Das ist natürlich
zeitaufwendig, aber sehr wirkungsvoll. Volumetrischer Nebel basiert auf
ähnlichen Algorithmen, wie sie auch für die Wolkenberechnung verwendet
werden. Entsprechend stehen wieder eine Menge an Parametern zur Verfügung,
die das Erscheinungsbild des Nebels vom gleichförmigen Medium bis hin
zu flockigen Nebelbänken steuern können. Zuguterletzt kann
volumetrischer Nebel auch animiert werden. Man kann eine Windrichtung vorgeben
oder den Nebel einfach aufsteigen und in der Höhe auflösen lassen.
-
Nebel illuminiert - Anstatt nur eine konstante Nebelfarbe vorzugeben kann
man auch eine automatische lichtabhängige Nebelfarbe berechnen lassen.
Ist volumetrischer Nebel eingeschaltet, wird der Nebel sogar schattiert
berechnet, eine Lampe wirft z.B. einen sichtbaren Lichthalo (kein Lensflare,
sondern echt schattierter volumetrischer Nebel) oder ein Spot zieht einen
farbigen Kegel durch den Nebel (ganz ohne die volumetrische Spotfunktion
einzuschalten!).
Materialdialog
-
Prozedurale Texturen - Die zufällige Textur-Normalenablenkung wurde
qualitätsmäßig überarbeitet und liefert jetzt bei
höherer Rechenzeit bessere Ergebnisse. Die Skalierung erfolgt jetzt
einfacher über einen globalen Skalierungsparameter, die 3 separaten
Achsenwerte dienen nur noch der Dämpfung der Ablenkung auf den 3 Raumachsen.
Auf Wunsch kann eine B-Spline-Glättung hinzugeschaltet werden, die aber
noch mal erheblich Rechenzeit kostet.
-
Texturfarbe = Materialfarbe - Eine neue Option "Texturfarbe = Materialfarbe
(nur Normalenabl. anzeigen)" schaltet die Farbmischung von prozeduralen Texturen
aus. So kann man schnell die Normalenablenkung für ein Texturmuster
(z.B. Kacheln) oder zufallsbedingte Normalenablenkung für einfarbige
Objekte einstellen, ohne vorher die Texturfarbe an die Materialfarbe anpassen
zu müssen.
-
Landschaftstexturlayer - Eine zusätzliche Option "Fleckig auftragen"
generiert mehr Detailreichtum und macht Landschaftstexturen noch
abwechslungsreicher. Ein Dichte-Parameter und die Überblenden-Funktion
steuern den Abstand und die Randübergänge der aufgetragenen
Texturinseln.
-
Wellen - Die Wellen-Normalenablenkung ist überarbeitet worden. Die
Wellenparameter liegen jetzt auf einem extra Karteireiter im Materialdialog.
und...
-
Objekte redimensionieren - Zusätzliche "Box-Dimension"-Eingabefelder
im "Objekt Skalieren"-Arbeitsmodus zum direkten Eingeben der Objektmaße
und zwar wahlweise entlang Raum- oder Körperachsen! Auch analytische
Objekte können einfach über die Box-Dimensionen redimensioniert
werden (nur im Körperachsen-Modus). Ändert man z.B. für einen
Zylinder die Maße für die x-Achse und damit den Zylinderradius,
so wird auch automatisch die z-Dimension mitskaliert.
-
Objekte fallen lassen - Markierte Objekte können auf Knopfdruck fallen
gelassen werden und landen automatisch auf einem Untergrund, falls vorhanden.
Es kann wahlweise die Selektion als ein zusammenhängendes Objekt oder
aber die einzelnen Objekte und Hierarchien jede für sich fallen gelassen
werden. Hat man z.B. einige Dutzend Kegel erzeugt, die in einer Landschaft
eine Gruppe von Tannen darstellen sollen, so kann man diese zusammen selektieren
und im Modus "Objekte/Hierarchien getrennt" ganz einfach über der Landschaft
positionieren und dann herunterplumpsen lassen.
-
Bilder in Viewportfenster einblenden - Wer Konstruktionsvorlagen in die
Arbeitsfenster einblenden möchte kann dies jetzt über 2 neue
Menüeinträge im Ansichten-Menü tun. Der Menüeintrag "Bitmap
in Hintergrund legen" schaltet die Bitmapfunktion ein und der
"Bildauswahl..."-Eintrag ruft den Bildauswahldialog auf.
-
Dialog-Parameter, die bei Änderung automatisch ein Keyframe erzeugen
- also animierbar sind - werden durch einen bläulichen Hintergrund im
Eingabefeld hervorgehoben.
-
Objektauswahl-Dialog - Eine Mehrfachselektion von Objekten kann jetzt auch
über einen mit der Maus aufgezogenen Rahmen vorgenommen werden. Sind
die Objekte selektiert, öffnet sich ein PopUp-Fenster und man entscheidet
ob die Objekte ein/ausgeschaltet oder (de)markiert werde sollen
-
Das Scrollen per Mousewheel in allen Objektauswahlfenstern und visuellen
Bibliotheken wurde aktiviert!
-
Normalen werden der besseren Übersichtlichkeit wegen nur noch auf
selektierten Objekten, Facetten eingezeichnet.
-
Die Grundeinstellungen für Nebeldichten, Farbfilter, Farbverläufe
und Landschaftsdimensionen wurden besser aufeinander abgestimmt.
-
Landschaftseditor - ist die Funktion "Auto Kamera & Atmosphäre"
eingeschaltet, dann wird bei der Erzeugung eines neuen Landschaftsobjektes
automatisch eine bestmögliche Kamera-Ausgangsposition bestimmt und die
Atmosphäre eingeschaltet, falls der Hintergrund noch ausgeschaltet sein
sollte.
-
Zoom in Arbeitsfenstern - 4 zusätzliche Zoomstufen von 4% bis runter
auf 1% ermöglicht einen Überblick über die komplette 3D-Welt.
|