Kurz gesagt
- Die SceneExplorerManager-Schnittstelle ist in 3ds Max 2008 und höher verfügbar.
- Für 3ds Max 2010 und höher sind Methoden zum Erstellen von Scene Explorern und Festlegen sichtbarer Spalten dokumentiert.
- Filter für benutzerdefinierte Eigenschaften lassen sich als Spalten zum Scene Explorer hinzufügen; auch schreibgeschützte Filter sind möglich.
- Definitionen benutzerdefinierter Filter können im Ordner Scripts\Startup gespeichert werden, damit sie in späteren Sitzungen verfügbar sind.
Die MAXScript-Dokumentation von Autodesk beschreibt die SceneExplorerManager-Schnittstelle und Methoden zum Erstellen eigener Spalten, um den Scene Explorer per Skript zu steuern. Dieser Leitfaden behandelt anhand der offiziellen Dokumentation, wie Sie in 3ds-Max-Szenen Explorer erstellen, sichtbare Spalten auswählen, Objekteigenschaften als Spalten anzeigen und Konfigurationen wiederverwenden. Die SceneExplorerManager-Schnittstelle ist in 3ds Max 2008 und höher verfügbar; einige Methoden setzen jedoch neuere Versionen voraus.
Die folgenden Codebeispiele beruhen auf den in der Autodesk-Dokumentation gezeigten MAXScript-Methoden. Prüfen Sie vor dem Ausführen eines Skripts in einer Produktionsszene, ob die verwendete 3ds-Max-Version die jeweilige Methode unterstützt und ob die Spaltennamen den Eigenschaften in der Szene entsprechen.
1. Versionsunterstützung und Anforderungen ermitteln
Legen Sie zunächst fest, welche Aufgabe Sie automatisieren möchten: ein vorhandenes Spaltenlayout einrichten, Objekteigenschaften sichtbar machen oder eine Explorer-Konfiguration speichern und erneut laden? Die Methoden haben unterschiedliche Versionsanforderungen. CreateExplorer und SetExplorerVisibleColumns sind beispielsweise für 3ds Max 2010 und höher dokumentiert. GetExplorer ist in 3ds Max 2015 und höher verfügbar.
Dass die SceneExplorerManager-Schnittstelle vorhanden ist, bedeutet nicht, dass jede ihrer Methoden auch in älteren Versionen funktioniert. Für Methoden, bei denen die Dokumentation keine Versionsangabe macht, sollte hier keine zusätzliche Versionsgrenze angenommen werden. Deshalb ist es wichtig, Team-Skripte in den Zielversionen zu testen, bevor sie auf unterschiedlichen 3ds-Max-Installationen eingesetzt werden.
2. Explorer erstellen und sichtbare Spalten festlegen
Verwenden Sie
CreateADefaultExplorer, um einen Explorer mit Standardeinstellungen zu erstellen. Bei Erfolg gibt die MethodeTrue, bei einem FehlerFalsezurück.Geben Sie anschließend mit
SetExplorerVisibleColumnsdie anzuzeigenden Spalten als Array von Namen an. Im Autodesk-Beispiel werden im Explorer „Object Colors“ die Spalten Name, Typ und Farbe eingeblendet.Verwenden Sie
CreateExplorer, um einen neuen Explorer mit bestimmten Spalten zu erstellen. Die Methode übernimmt den Namen des Explorers und ein Array mit Spaltennamen; es sollte nicht davon ausgegangen werden, dass sie einen Explorer mit Standardeinstellungen erstellt.
SceneExplorerManager.CreateADefaultExplorer "Object Colors"
SceneExplorerManager.SetExplorerVisibleColumns "Object Colors" #("Name","Type","Color")
SceneExplorerManager.CreateExplorer "Geometry Counts" #("Name","Type","Faces")Die folgenden Werte stammen aus Beispielen in der Autodesk-Dokumentation. Sie sind kein für jede Szene vorgeschriebenes Layout, sondern veranschaulichen die Verwendung der Methoden.
| Einstellung | Beispielwert | Wirkung |
|---|---|---|
| Explorer-Name | Object Colors | Benennt den Explorer, der mit Standardeinstellungen erstellt wird. |
| Sichtbare Spalten | #("Name","Type","Color") | Blendet die Spalten Name, Typ und Farbe ein. |
| Spalten des neuen Explorers | #("Name","Type","Faces") | Legt für den neuen Explorer die Spalten Name, Typ und Polygonanzahl fest. |
Wenn ein Name im Spalten-Array keinem vorhandenen Spaltenfilter entspricht, kann die Spalte übersprungen werden, ohne dass ein Fehler ausgegeben wird. Prüfen Sie daher, ob die erwarteten Spalten tatsächlich angezeigt werden. Die Dokumentation zeigt auch, dass ein Name wie „Bananas“ verwendet werden kann, sofern er als Filter definiert ist. Gibt es keinen entsprechenden benutzerdefinierten Filter, wird die Spalte nicht hinzugefügt.
3. Eigene Eigenschaften als Scene-Explorer-Spalten anzeigen
Um eine Eigenschaft von Szenenobjekten sichtbar zu machen, lässt sich mit addProperty ein Spaltenfilter definieren. Die Methode erhält den Eigenschaftsnamen, eine Funktion zum Lesen des Werts und eine Funktion zum Setzen des Werts. Im Autodesk-Beispiel wird die Eigenschaft Radius eines Objekts sowohl ausgelesen als auch aktualisiert, sofern das Objekt sie besitzt.
Wenn die Eigenschaft nicht bei jedem Objekt vorhanden ist, ist die Prüfung mit isProperty wichtig. Das folgende Beispiel greift nur dann auf den Radiuswert zu, wenn die entsprechende Eigenschaft im Objekt vorhanden ist:
fn getRad theNode = (
if isProperty theNode "Radius" then theNode.Radius
)
fn setRad theNode theValue = (
if isProperty theNode "Radius" then theNode.Radius = theValue
)
SceneExplorerManager.addProperty "Radius" getRad setRadWenn die Information nur angezeigt und der Wert nicht über den Explorer geändert werden soll, können Sie addReadOnlyProperty verwenden. Das Beispiel in der Dokumentation gibt mit classof die Klasse des Objekts zurück und erstellt so einen schreibgeschützten Filter namens „Class“:
fn getClass theNode = (classof theNode)
SceneExplorerManager.addReadOnlyProperty "Class" getClassNach dem Erstellen des neuen Filters erscheint die entsprechende Spalte am Ende der Liste im Column Chooser. Um die Spalte zum Scene Explorer hinzuzufügen, ziehen Sie sie aus der Liste in den Explorer. Die Definition einer eigenen Spalte macht sie nicht automatisch im Spaltenlayout sichtbar. Führen Sie daher das Erstellen des Filters und das Einblenden im Explorer getrennt aus.
4. Explorer-Konfiguration speichern und verwalten
Mit SaveExplorerConfiguration können Sie die Konfiguration eines Explorers in einer angegebenen Datei speichern und mit LoadExplorerConfiguration eine zuvor gespeicherte Konfiguration laden. Im folgenden Beispiel sollte der Dateipfad an die Arbeitsumgebung des jeweiligen Computers angepasst werden:
SceneExplorerManager.SaveExplorerConfiguration "Geometry Counts" "C:\\SceneExplorerConfig"
SceneExplorerManager.LoadExplorerConfiguration "C:\\SceneExplorerConfig"Mit den Methoden OpenExplorer und CloseExplorer lässt sich ein Explorer öffnen oder schließen. ExplorerExists prüft, ob ein Explorer mit dem angegebenen Namen vorhanden ist; ExplorerIsOpen prüft, ob er geöffnet ist. GetExplorer gibt die Schnittstelle des Explorers mit dem angegebenen Namen zurück. Existiert kein solcher Explorer, lautet das Ergebnis undefined.
Damit benutzerdefinierte Eigenschaftsfilter auch in späteren 3ds-Max-Sitzungen verfügbar sind, können Sie ihre Definitionen in einer Skriptdatei speichern und diese in den Ordner Scripts\Startup legen. GetExplorerCount gibt die Gesamtzahl der Explorer zurück; GetExplorerName liefert für Indizes von 1 bis zu dieser Zahl jeweils einen Namen. ClearAllExplorers schließt alle Explorer und leert die Menüliste Tools>Saved Scene Explorers>. Verwenden Sie die Methode deshalb nicht, wenn Sie nur einen einzelnen Explorer bearbeiten möchten.
Einsatz in Architektur- und Archviz-Workflows
In Architektur- und Visualisierungsszenen kann eine gemeinsame Übersicht von Objektinformationen in einem Fenster Teams dabei helfen, eine Explorer-Ansicht einzurichten, die zu ihrem Arbeitsablauf passt. Die in der Dokumentation gezeigten Spalten für Name, Typ, Farbe oder Polygonanzahl bieten einen Ausgangspunkt. Wenn eine benutzerdefinierte Eigenschaft der Szenenobjekte wichtig ist, lässt sich diese Information ebenfalls als separate Spalte definieren. Der Nutzen dieses Ansatzes hängt davon ab, ob die verwendeten Daten und Filter zu den Anforderungen der Szene passen.
Prüfen Sie vor der Weitergabe von Skripten im Büro die verwendete 3ds-Max-Version und die Objekteigenschaften, von denen die eigenen Filter abhängen. Bei Szenen mit mehreren Objekttypen hilft eine Eigenschaftsprüfung, den Zugriff auf nicht vorhandene Werte zu vermeiden. Die Autodesk-Dokumentation macht keine Angaben zu Hardware, Lizenzen oder Produktkosten; zusätzliche Anforderungen in diesen Bereichen sollten daher nicht angenommen werden.
Häufige Fehler
Einen nicht vorhandenen Filternamen zur Liste sichtbarer Spalten hinzufügen: Die entsprechende Spalte kann ohne Fehlermeldung übersprungen werden.
Annehmen, dass eine benutzerdefinierte Spalte nach ihrer Definition automatisch angezeigt wird: Sie muss im Column Chooser ausgewählt und in den Scene Explorer gezogen werden.
Davon ausgehen, dass jedes Objekt dieselbe Eigenschaft besitzt: Vor dem Zugriff auf die Eigenschaft kann mit
isPropertygeprüft werden, ob sie vorhanden ist.Erwarten, dass
GetExplorerimmer einen Explorer zurückgibt: Wird kein passender Name gefunden, lautet das Ergebnisundefined.ClearAllExplorerszum Schließen eines einzelnen Explorers verwenden: Die Methode schließt alle Explorer und leert die Liste gespeicherter Einträge im Menü.
Quellen
1 QuelleQuelltexte werden nicht neu veröffentlicht; kurze Zitate sind gekennzeichnet, der Rest ist eigene Zusammenfassung und Einordnung.
Für Architektur- und Visualisierungsbüros in der Türkei können benutzerdefinierte Scene-Explorer-Spalten eine praktische Möglichkeit sein, die in einer Szene verfolgten Informationen an die Anforderungen des Teams anzupassen. Besonders bei Projekten mit mehreren Objekttypen lässt sich das Fehlerrisiko verringern, wenn schreibgeschützte und bearbeitbare Filter nach Zweck getrennt werden.
Vor der Umsetzung sollten Sie die verwendete 3ds-Max-Version überprüfen und Skripte kontrolliert an realen Projekten testen. Die Dokumentation nennt keine Anforderungen zu Hardware, Lizenzen oder Kosten. In der Praxis sind daher vor allem die Versionskompatibilität, Eigenschaftsprüfungen und der Umfang von Befehlen relevant, die alle Explorer betreffen.
Häufige Fragen
Wie fügt man dem Scene Explorer in 3ds Max eine eigene Spalte hinzu?
Mit `SceneExplorerManager.addProperty` lassen sich Lese- und Schreibfunktionen definieren, mit `addReadOnlyProperty` eine reine Lesefunktion. Der neue Filter erscheint am Ende der Liste im Column Chooser. Ziehen Sie die Spalte von dort in den Scene Explorer.
Wie lassen sich Scene-Explorer-Spalten mit MAXScript festlegen?
Übergeben Sie `SetExplorerVisibleColumns` den Namen des Explorers und ein Array mit den Namen der sichtbaren Spalten. In der Autodesk-Dokumentation ist die Methode für 3ds Max 2010 und höher aufgeführt.
Können benutzerdefinierte Scene-Explorer-Filter in späteren Sitzungen wiederverwendet werden?
Laut Autodesk-Dokumentation können Definitionen benutzerdefinierter Eigenschaftsfilter in einer Skriptdatei gespeichert und im Ordner `Scripts\Startup` abgelegt werden.



