Auswerten eines Diagramms

Wenn Sie das Diagramm auswerten (Build Auswerten oder STRG+E), ist die von Ihnen codierte Berechnung (die neuen Geometrie, der Modifikator, das Dienstprogramm-Plug-In oder die MAXScript-Funktion) in der Benutzeroberfläche von 3ds Max verfügbar.

Auswerten eines Max Creation Graph

Bei der Auswertung laufen folgende Vorgänge ab:

  1. Das Diagramm wird gespeichert (in einer .maxtool-Datei).

    Dies ist der XML-Code des visuellen Diagramms.

  2. Das Diagramm wird validiert.
  3. Die Verbindungen werden der Reihe nach erweitert.
  4. Die Typen werden abgeleitet und für alle generischen Typen validiert.
  5. Der Byte-Code wird generiert.

    Hierbei handelt es sich um den binären Code.NET-Ausdrucksstruktur.

  6. Eine Darstellung der Ausdruckstruktur (eine TXT-Datei) wird erstellt.
  7. Ein MAXScript-Wrapper (MS-Datei) wird erstellt.
  8. Die MAXScript-Datei wird ausgewertet.

Dynamische Kompilierung und Textdarstellung kompilierter Diagramme

Diagramme werden nach Bedarf in Folgendes kompiliert:NET-Byte-Code über dieNET-Ausdruckstruktur-API. DieNET-Laufzeit kompiliert denNET-Byte-Code wiederum in programmeigene Baugruppenkennzeichen. Die Textdarstellung eines Diagramms wird in demselben Ordner wie das Diagramm gespeichert und erhält den denselben Basisdateinamen und die Erweiterung.txt.

Die Textdarstellung eines kompilierten Diagramms ähnelt dem von der Programmiersprache C# erstellten Pseudocode. Ein wichtiger Unterschied ist, dass es sich bei den Code-Anweisungen und -Blöcken um Ausdrücke handelt. Der Wert eines Codeblocks entspricht dem letzten Ausdruck des Blocks. Der Pseudocode verfügt nicht über Return-Anweisungen.

MAXScript-Wrapper

Die aus einem Max Creation Graph generierte MAXScript-Datei wird hauptsächlich dazu verwendet, ein Plug-In in 3ds Max zu registrieren, das die Lücke zwischen 3ds Max und der dynamisch erstellten Funktion schließt.

Das automatisch von einem MCG-Werkzeug generierte Plug-In wird in ähnlicher Weise wie andere Plug-ins verwendet: Es verfügt über Parameter, die zur Skripterstellung genutzt werden können, es erstellt ein Rollout, es kann in der Szene gespeichert werden, Änderungen an den Parametern können rückgängig gemacht werden, es verfügt über eine Klassen-ID usw.

Wichtig: Wenn die MAXScript-Datei ohne die MCG-Diagrammdatei verteilt wird (die.maxtool-Datei) ist dies nicht möglich: MAXScript verwendet die MCG-Engine anfänglich, um die Diagrammdatei dynamisch zu kompilieren.