DirectX-Shadermaterial

Mit dem DirectX-Shadermaterial können Sie Objekte in Ansichtsfenstern mit DirectX (Direct3D)-Shadern anzeigen.

Mit dem DirectX-Shader entspricht die Darstellung von Materialien in einem Ansichtsfenster eher ihrer Darstellung in einer anderen Anwendung oder mit anderer Hardware, wie etwa einer Spiel-Engine. Sie können dieses Material verwenden, wenn Sie einen Nitrous-Treiber (Vorgabe Nitrous Direct3D 11) oder ältere Direct3D-Treiber verwenden.

Tipp: Sie können den Quicksilver-Hardware-Renderer zum Rendern von DirectX-Shader Materialien verwenden.
Anmerkung: Dieses Material wird in der Material-/Map-Übersicht nur dann angezeigt, wenn ein kompatibler Treiber aktiviert ist. Wenn dieses Material nicht sichtbar ist, können Sie es (abgeblendet) anzeigen, wenn Sie die Optionsfolge "Material-/Map-Übersichtsoptionen" "Nicht Kompatibles anzeigen" auswählen.

Das DirectX-Shadermaterial verwendet FX-Dateien. Mit einer FX-Datei wird ein DirectX-Shader (DX9 oder DX11) definiert. Es handelt sich hierbei um eine Textdatei, die im HLSL-Format (Higher-Level Shading Language) erstellt wird.

Vorgabemäßig werden DirectX-Shader einschließlich der FX-Dateien im Ordner \maps\fx\ des 3ds Max-Programmverzeichnisses gespeichert.

Achtung: Der Parameter eines DirectX-Shaders ist nur dann in der Benutzeroberfläche des DirectX-Shader-Materials sichtbar, wenn die FX-Datei einen Code enthält, der den Parameter bezeichnet, seine Art definiert und (optional) seinen Bereich eingrenzt. (Einige weitere Einstellungen der Benutzeroberfläche werden ebenfalls bereitgestellt.) Im Ordner \maps\fx\ des 3ds Max-Programmverzeichnisses finden Sie Beispieldateien, in denen dieser Code enthalten ist.

Mit dem DirectX-Shader-Material haben Sie Zugriff auf ShaderFX, der Ihnen ermöglicht, Hardware-Shader-Strukturen zu erstellen und sie als HLSL-, CGFX- oder GLSL-Dateien zu speichern. Sie können HLSL-Dateien mit einer FX-Datei-Namenserweiterung speichern, wodurch sie für das DirectX-Shader-Material verfügbar sind.

Der Quicksilver-Hardware-Renderer kann DirectX-Materialien rendern, die FX-Dateien oder ShaderFX-Strukturen verwenden.

Anmerkung: Das DirectX-Shader-Material lädt keine CGFX-Shader-Dateien.
Anmerkung: In Autodesk 3ds Max 2014 wurde ein Problem mit Normalen-Relief-Maps korrigiert, das in Versionen vor 2014 auftrat, in denen 3ds Max eine unterschiedliche Tangenten-Basisgenerationsmethode verwendete als andere Render. Diese Methode konnte nicht geändert werden. Ab Version 2014 bietet 3ds Max drei Modi, die jeweils mit einer bestimmten Methode kompatibel sind: 3ds Max, Maya und DirectX. Weitere Informationen finden Sie unter Gruppe "Normalen-Relief-Modus".

Unterstützung von Lichtquellen

In der Regel ist in FX-Shadern eine bestimmte Anzahl von Lichtquellen über die Codierung festgelegt: normalerweise nur eine einzige Lichtquelle. Wenn es sich bei der geöffneten FX-Datei um eine so codierte Datei handelt, wird auf den Shader-spezifischen Rollouts ein Steuerelement angezeigt, über das Sie die gewünschte Lichtquelle auswählen können. Beispiel:

XMSL Shader sind auf der anderen Seite nicht für die Verwendung spezifischer Lichtquellen codiert, d. h., sie verwenden alle aktiven Lichtquellen in der Szene.

Unterstützung für Bitmaps

Wenn Sie ein Map einer Komponente eines DirectX-Shaders zuweisen, die Maps verarbeiten kann, haben Sie die Auswahl aus folgenden Map-Typen:

Benutzeroberfläche

Rollout "DirectX-Shader"

[Dropdown-Liste für Methode]

Verwenden Sie dieses Menü, um die DirectX-Methode auszuwählen:

  • HLSL-Datei (Vorgabe) Wählen Sie diese Option, um eine HLSL-(FX)-Datei zu verwenden.
  • ShaderFX Wählen Sie diese Option, um die aktuelle ShaderFX-Struktur als aktives DirectX-Material zu verwenden.

    Während die Option ShaderFX aktiv ist, überschreibt die ShaderFX-Knotenstruktur den aktuellen FX- oder XMSL-Shader.

    Anmerkung: Bei aktivierter Option "ShaderFX verwenden" werden im Rollout "Parameter" im Material-Editor Steuerelemente für die ShaderFX-Baumstruktur angezeigt. Während sie deaktiviert ist, werden im Rollout die Steuerelemente für den aktiven anderen DirectX-Shader angezeigt.
  • Interactive Wählen Sie diese Option aus, um den physikalisch basierten Interactive-Shader zu verwenden.

    Der Interactive-Shader verwendet ebenso wie ShaderFX den ShaderFX-Editor.

[Schaltfläche "Shader"]

Klicken Sie, während die HLSL-Datei aktiv ist, auf diese Schaltfläche, um ein Dateidialogfeld anzuzeigen, mit dem Sie einen Shader öffnen können. Vorgabegemäß ist das FX-Format (Direct3D-Effekte) aktiv, und der Shader ist standardfx11.fx.

Neu laden

Klicken Sie, während die HLSL-Datei aktiv ist, auf diese Schaltfläche, um die aktive Shader-Datei neu zu laden. Zur Aktualisierung einer Shader-Datei können Sie sie bearbeiten und anschließend auf "Neu laden" klicken. Sie müssen 3ds Max nicht neu starten, um die Auswirkungen der Änderungen auf den Shader zu sehen.

ShaderFX öffnen
Klicken Sie bei aktivem ShaderFX oder Interactive auf diese Schaltfläche, um das Fenster des ShaderFX-Editors zu öffnen.

Shaderspezifische Rollouts

Die Rollouts, die unter dem Rollout "DirectX-Shader" und über dem Rollout "Technik" angezeigt werden, sind die Schnittstelle zum gewählten Shader. Diese Rollouts sind speziell auf die einzelnen Shader zugeschnitten.

Parameter für den Shader default10.fx

Rollout "Technik"

Eine XMSL-Datei kann mehr als einen Shader enthalten. Wenn Sie eine solche Datei öffnen, können Sie im Rollout "Technik" in einer Dropdown-Liste auszuwählen, welchen Shader das Material verwenden soll.

Rollout "Software-Renderstil"

Gibt ein Material an, das die Software-Schattierung und das Software-Rendern von Objekten steuert, auf die das Material "DirectX-Shader" angewendet wurde. In Nitrous- und älteren Direct3D-Ansichtsfenstern wird der DX-Shader verwendet. In OpenGL-Ansichtsfenstern nicht. Bei allen Renderings außer dem Quicksilver-Hardware-Renderer wird der Software-Shader verwendet.

Normalerweise wählen Sie ein Material aus, das die Objekte in Ihrer Szene, auf die das DirectX-Shadermaterial angewendet wurde, eindeutig identifiziert.

Anmerkung: Das DirectX-Shadermaterial verfügt nicht über bestimmte Einstellungen für den Software-Shader. Es kann jede Art von 3ds Max-Material verwendet werden. Szenen aus früheren Versionen mit speziellen DX-Einstellungen wurde ein Standardmaterial mit entsprechenden Rendereigenschaften zugewiesen.

Wenn DirectX auf Ihrem System nicht installiert ist, Sie jedoch das DirectX-Shadermaterial trotzdem zuweisen (mithilfe der Option "Nicht kompatibel" der Material-/Map-Übersicht), werden keine Rollouts außer diesem im Material-Editor angezeigt.

Rollout Interactive

Anmerkung: In 3ds Max 2018.4 Update wurde der physikalisch basierte Shader Stingray in Interactive umbenannt.

Das Rollout Interactive wird mit Interactive-Shaders verwendet.

Engine-Ressource
Der Pfad für die Zuordnung des Materials zur Max Interactive-Engine. Diese Zuordnung ist erforderlich, da FBX-Dateien nicht alle Materialien einschließen, sondern nur diejenigen, die auf einen Knoten in der Szene angewendet werden. Wenn ein Objekt von 3ds Max Interactive an 3ds Max gesendet wird, erfolgt automatisch eine Zuordnung des Objektmaterials zur Engine-Ressource. Nachdem die Engine-Ressource zugeordnet ist, werden die Eigenschaften automatisch in 3ds Max aktualisiert, sobald das Material in 3ds Max Interactive geändert und anschließend an 3ds Max gesendet wird.
Eindeutig zuweisen
Öffnet den Shader-Diagramm-Editor.
Voreingestelltes Material
Um ein wiederholtes Erstellen identischer Shader-Diagramme zu vermeiden, können Sie ein Shader-Diagramm erstellen und als Voreinstellung speichern, um es beim nächsten Erstellen eines Interactive-Shaders wiederzuverwenden.
Übergeordnetes Material
Ein Material mit einem voreingestellten Shader-Diagramm. Sie können untergeordnete Materialien basierend auf einem übergeordneten Material erstellen. Ein untergeordnetes Material übernimmt das Shader-Diagramm und Materialeigenschaften vom übergeordneten Material.