Benutzerdefinierter Material-Editor
Das Material-Editor-Tool
Der Material-Editor ist ein GUI-Tool, das die Erstellung von „ CustomMaterials “ für „ QtQuick3D “ vereinfacht, indem es Folgendes bietet: eine Echtzeit-Vorschau des Materials, Syntaxhervorhebung, Fehlermeldung sowie die Möglichkeit, das Material in eine QML-Komponente für „ CustomMaterial “ zu exportieren.
Verwendung
Der Material-Editor kann mit folgendem Befehl gestartet werden:
$(QTDIR)/bin/materialeditor[.exe]Das Fenster des Material-Editors besteht aus zwei Hauptkomponenten: dem Editor auf der linken Seite und der Vorschau auf der rechten Seite.

Shader-Bearbeitung
In der Editoransicht befinden sich zwei Editoren: einer für den Vertex-Shader und einer für den Fragment-Shader. Beim Bearbeiten der Shader-Ausschnitte werden die Ergebnisse dieser Änderungen sofort in der Vorschau sichtbar. Falls das Material nicht zusammengestellt werden konnte, wird im Ausgabebereich eine Meldung mit einer Beschreibung des Problems angezeigt.
Die Sprache, die zum Schreiben der Shader-Schnipsel in „ CustomMaterial “ verwendet wird, ist GLSL im Vulkan-Stil mit einigen zusätzlichen Schlüsselwörtern, die spezifisch für „ QtQuick3D “ sind; diese sind leicht daran zu erkennen, dass sie in Großbuchstaben geschrieben sind. Die für „ QtQuick3D “ spezifischen Schlüsselwörter werden vom Editor ebenfalls hervorgehoben.
Eine detailliertere Übersicht über die in den Shader-Schnipseln verwendete Sprache und deren Zusammenspiel mit dem Rest der Rendering-Pipeline finden Sie in der Dokumentation zu „Programmable Materials “.

Materialeigenschaften
Der Abschnitt „Material Properties“ enthält die allgemeinen QML-Eigenschaften für das Material. Diese Eigenschaften und ihre Auswirkungen auf das Material werden in der Dokumentation zu „ CustomMaterial “ ausführlicher beschrieben.

Vorschau
Neben der Darstellung, wie das aktuelle Material gerendert wird, enthält das Vorschaufenster eine Auswahl an Steuerelementen, mit denen sich das Aussehen des Materials unter verschiedenen Bedingungen anpassen lässt. Mit diesen Steuerelementen kann der Benutzer: ein anderes Modell auswählen, die Verwendung von „Image Based Lighting“ umschalten, das Szenenlicht ein- oder ausschalten und die Drehung der Umgebung anpassen. Außerdem ist es möglich, mit der Maus um das Modell herumzufliegen.

Uniforms
In der Uniform-Tabelle sind die von den Shadern verwendeten Uniforms aufgelistet. Uniforms können jederzeit hinzugefügt, entfernt oder geändert werden, jedoch müssen alle von den Shader-Schnipseln verwendeten Uniforms zur Uniform-Tabelle hinzugefügt werden. Sobald ein Uniform hinzugefügt wurde, steht es beiden Shadern zur Verfügung. Beim Exportieren des Materials in eine QML-Komponente werden die Uniforms zu Eigenschaften der Materialkomponente.

Ausgabefenster
Das Ausgabefenster zeigt Diagnosemeldungen an, beispielsweise Fehler, die in den Shader-Schnipseln gefunden wurden.

Shader importieren
Shader-Schnipsel können in die Anwendung importiert werden; diese haben die Dateiendungen „ .vert “ und „ .frag “ und sollten Klartext enthalten. Importierte Shader-Schnipsel müssen natürlich manuell angepasst werden, wenn der Shader-Code nicht in einer Sprache oder Form vorliegt, die bereits mit dem „ CustomMaterial “ kompatibel ist (das Tool unternimmt keinen Übersetzungsversuch).
Projekte speichern und laden.
Der Material-Editor kann Projektdateien in seinem eigenen Projektformat speichern oder laden. Die Dateiendung der Material-Editor-Projektdateien lautet „ .qmp “.
Hinweis: Das Projektdateiformat des Material-Editors ist nicht für die Verwendung zur Laufzeit vorgesehen, sondern ausschließlich für die Nutzung mit dem Material-Editor bestimmt.
Exportieren.
Damit das Material in einer Anwendung verwendet werden kann, muss es als QML-Komponente exportiert werden. Dies geschieht über den Exportdialog, der über das Anwendungsmenü aufgerufen wird. Im Exportdialog werden Sie nach einem Ausgabeordner, dem Namen der Materialkomponente und den Namen der Shader-Schnipsel gefragt. Nach erfolgreichem Export enthält der Ausgabeordner eine QML-Komponente, die das Material beschreibt, sowie alle vom Material benötigten Shader-Schnipsel und Texturen.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.