4.2.2 Konfiguration der Darstellungsparameter
Autorin: Katharina Fritzler
Einleitung
Einer der Anforderungen an den 3D-Viewer ist die naturgetreue Abbildung des 3D-Modells (beschrieben in Abschnitt 3.4). Hierfür sind Änderungen an den Darstellungsparametern des Modells erforderlich. Im Folgenden werden die im 3D-Viewer vorhandenen Möglichkeiten zur Änderung der Darstellungsparameter vorgestellt.
Material
Der ModelViewer bietet eine Funktion zum Wechsel von Texturen des Modells an. Diese Funktion wurde in diesem Projekt für die bessere Darstellung der Oberflächenstruktur des Modells genutzt, indem bei dem Modell die Textur ausgeschaltet wird. Dabei wird die Originaltextur gegen eine "leere" Textur (ohne_Textur.jpg), die als JPG-Datei im Ordner images abgelegt ist, temporär ersetzt.
Der Nutzer kann im Fenster mit dem Namen "Textur" in der Drop-Down-Liste den entsprechenden Eintrag "mit Textur" oder "ohne Textur" wählen. Dieses ist in der IndexBig.html sowie der IndexSM.html (<div class = "controllsTextur">
) konfiguriert. Die Funktionalität wurde mit der JavaScript-Funktion pbrMetallicRoughness[].setTexture()
innerhalb der rock3DViewer.js umgesetzt.
Beleuchtungssituation
Der ModelViewer bietet mehrere vordefinierte Lichtumgebungen. Einer der zur realistischen Darstellung geeignetsten ist die neutrale Beleuchtungsumgebung, bei der das Modell von allen Seiten gleichmäßig beleuchtet wird. Aktiviert werden kann dies über die Checkbox mit der Beschriftung "Neutral Lighting", die an der rechten Seite des Viewer-Fensters positioniert ist.
Die Konfiguration der Checkbox erfolgte in der IndexBig.html sowie der IndexSM.html (<div> <input id="neutral"…
). Mit Hilfe der JavaScript-Funktion modellViewer.environmentImage = 'legacy';
wurde die Funktionalität in der rock3DViewer.js implementiert.
Metallhaftigkeit und Rauheit
Durch die Veränderung der beiden Eigenschaften wird der Glanzeffekt des Modells reduziert bzw. erhöht. Mit den jeweiligen Regler "Metalness" und "Roughness" kann ein Faktor zwischen 0 und 1 gewählt werden. Bei beiden Eigenschaften des Modells sind die Vorgabewerte gleich 0. Durch die aktuelle Implementierung werden diese beim Laden des Modells in den ModelViewer automatisch auf 1 gesetzt.
Konfiguriert wurden die Regler in der IndexBig.html sowie der IndexSM.html (<div> <input id="roughness"' bzw. 'id="metalness"...
). Die hierfür verwendeten JavaScript-Funktionen pbrMetallicRoughness.setMetallicFactor()
und pbrMetallicRoughness.setRoughnessFactor()
sind in der rock3DViewer.js implementiert.
Weitere Darstellungsparameter
Das ModelViewer hat zahlreiche weitere Funktionen zur Änderung der Eigenschaften eines 3D-Modells, wie z. B. Farbsetzung, Einstellungen zum Schattenwurf oder für Transparenz (siehe https://modelviewer.dev/docs), diese finden jedoch in diesem Projekt keine Verwendung.