ExtendedSceneEnvironment QML Type

Eine SceneEnvironment, die häufig verwendete Rendering-Effekte bereitstellt. Mehr...

Import Statement: import QtQuick3D.Helpers
Since: Qt 6.5
Inherits:

SceneEnvironment

Eigenschaften

Ausführliche Beschreibung

ExtendedSceneEnvironment ist eine Erweiterung des QtQuick3D's SceneEnvironment Typs, der mit einer Sammlung von häufig verwendeten Effekten ausgestattet ist. Die Effekte sind über eine Reihe von Eigenschaften zugänglich, denen der Name des von ihnen gesteuerten Effekts vorangestellt ist.

Wenn Sie einen oder mehrere dieser Effekte aktivieren, ist das Ergebnis vergleichbar mit dem manuellen Hinzufügen von Nachbearbeitungseffekten zur Liste SceneEnvironment's effects. ExtendedSceneEnvironment bietet jedoch Effekte, die in eigenständiger Form nicht verfügbar sind, und - was noch wichtiger ist - es kombiniert die aktivierten Effekte effizient, wodurch die Anzahl der zusätzlich erforderlichen Rendering-Durchgänge reduziert wird, was zu einer deutlich besseren Leistung führen kann als die Anwendung einzelner Nachbearbeitungseffekte auf die Szene. ExtendedSceneEnvironment arbeitet auch gut mit Tonemapping zusammen, selbst bei den komplizierteren Effekten mit mehreren Durchgängen, und auch wenn mehrere Effekte aktiviert und miteinander kombiniert werden. Dies war bei Standalone-Effekten nicht immer der Fall.

Hinweis: Wenn zusätzliche Nachbearbeitungseffekte zur Liste effects von SceneEnvironment hinzugefügt werden, werden diese Effekte vor den Effekten des Typs ExtendedSceneEnvironment angewendet.

Bestimmte Funktionen von SceneEnvironment, wie z. B. das Tonemapping, werden geerbt und mit zusätzlichen Eigenschaften in ExtendedSceneEnvironment erweitert. Zum Beispiel bietet SceneEnvironment die Eigenschaft tonemapMode, während ExtendedSceneEnvironment auch die Kontrolle über die Belichtungs-, Weißpunkt-, Schärfungs- und Dithering-Einstellungen des Tonemappers hinzufügt. Die Eigenschaft tonemapMode wird jedoch nicht dupliziert, da ExtendedSceneEnvironment alles von SceneEnvironment erbt, so dass die Grundeinstellung des Tonemapping-Modus unabhängig davon verwendet werden kann, welche Art von Umgebung mit einer View3D verknüpft ist, aber die zusätzlichen Eigenschaften sind nur bei Verwendung von ExtendedSceneEnvironment verfügbar. Andere Effekte, wie z. B. Screen Space Ambient Occlusion (SSAO) oder Nebel, sind vollständig Teil von SceneEnvironment und können mit beiden Typen von Umgebungen verwendet werden.

Erste Schritte mit ExtendedSceneEnvironment

Um die zusätzlichen Funktionen von ExtendedSceneEnvironment zu nutzen, verknüpfen Sie View3D mit einer Instanz von ExtendedSceneEnvironment. Vergessen Sie nicht, das Modul QtQuick3D.Helpers zu importieren.

import QtQuick3D
import QtQuick3D.Helpers

View3D {
    environment: ExtendedSceneEnvironment {
        tonemapMode: SceneEnvironment.Filmic
        vignetteEnabled: true
        // ...
    }
}

Hinweis: Das Experimentieren mit den Effektparametern und das Abstimmen der Werte, um die gewünschten visuellen Ergebnisse zu erzielen, kann oft produktiver sein, wenn es visuell geschieht, mit Steuerelementen wie Schiebereglern, die sofortiges Feedback in der gerenderten Szene geben, wenn ein Wert geändert wird. Die Verwendung eines Designer-Tools wie Qt Design Studio oder einer Testumgebung ähnlich dem Qt Quick 3D - Scene Effects Example ist daher oft empfehlenswert, wenn man eine qualitativ hochwertige und optisch ansprechende Szene erstellen möchte.

Hinweis: Das Umschalten von SceneEnvironment auf ExtendedSceneEnvironment impliziert automatisch mindestens einen zusätzlichen Rendering-Durchgang, genauso wie wenn ein Effekt mit einem einzigen Durchgang zu SceneEnvironment's effect list hinzugefügt wird. Dies gilt unabhängig davon, wie viele der einzelnen Nachbearbeitungsschritte aktiviert sind. (bei komplexeren Effekten kann mehr als ein zusätzlicher Rendering-Durchgang erforderlich sein)

Verfügbare Effekte

Im Folgenden finden Sie einen Überblick über die Effekte und zugehörigen Funktionen von ExtendedSceneEnvironment, einschließlich der von SceneEnvironment geerbten Funktionen.

Siehe auch SceneEnvironment und Qt Quick 3D - Beispiel für Szeneneffekte.

Eigenschaft Dokumentation

adjustmentBrightness : real [default: 1]

Passt die Helligkeit der Szene an.

Helligkeit von 1Helligkeit von 4


adjustmentContrast : real [default: 1]

Passt den Kontrast der Szene an.

Kontrast von 1Kontrast von 4


adjustmentSaturation : real [default: 1]

Passt die Sättigung der Szene an.

Sättigung von 1Sättigung von 4


colorAdjustmentsEnabled : bool [default: false]

Aktiviert Farbanpassungen.

Siehe auch colorAdjustmentsEnabled.


depthOfFieldBlurAmount Sets the : real [default: 4.0]

Stärke der Unschärfe, die auf Objekte außerhalb des Fokusbereichs angewendet wird. Sinnvolle Werte liegen im Bereich von 0 bis 10. Bei einem Wert von 0 wird keine zusätzliche Unschärfe angewendet.

Unschärfegrad von 0Unschärfegrad von 15


depthOfFieldEnabled : bool [default: false]

Aktiviert den Effekt der Tiefenschärfe-Unschärfe.


depthOfFieldFocusDistance : real [default: 600]

Legt die Entfernung von der Kamera fest, in der Objekte fokussiert werden.

Hier wurde auf die Sponza-Szene eine Skala von 100 angewandt, um einen angemessen großen Bereich für die Unschärfe im hinteren und vorderen Teil des Bildes zu erhalten. Das Bild unten wurde mit einem Fokusabstand von 753 und einem Fokusbereich von 482 aufgenommen.


depthOfFieldFocusRange : real [default: 100]

Die Entfernung um die depthOfFieldFocusDistance, in der die Objekte vollständig scharf gestellt sind. Die Schärfe wird dann auf der nahen und fernen Seite in der gleichen Entfernung vollständig unscharf.


ditheringEnabled : bool [default: false]

Ermöglicht Dithering, um Banding-Artefakte zu reduzieren.


exposure : real [default: 1.0]

Die vom Tonemapper verwendete Belichtungsstufe.

Filmisches Tonmapping mit Belichtung 8Filmisches Tonmapping mit einer Belichtung von 0,5


fxaaEnabled : bool [default: false]

Aktiviert schnelles approximatives Anti-Aliasing (FXAA).

FXAA deaktiviertFXAA aktiviert


glowBlendMode : int [default: ExtendedSceneEnvironment.GlowBlendMode.SoftLight]

Überblendungsmodus für den Glüheffekt.

Verfügbare Modi sind:

Additive ist oft empfehlenswert für Außenszenen, in denen der Himmel oder die Sonne sichtbar ist, während die Standardeinstellung SoftLight besser für Innenräume geeignet ist.

Replace führt keine Überblendung durch, sondern bewirkt, dass nur der Beitrag angezeigt wird, den der Glüh-/Blüteneffekt mit dem eigentlichen Inhalt vermischen würde. In der Praxis kann dies für Experimente und die Fehlersuche bei der Einstellung der Parameter eines Glüh-/Blüteneffekts nützlich sein.

ÜberblendungsmodusBeispiel
Glühen deaktiviert

Additiv

Bildschirm

SoftLight

Ersetzen


glowBloom : real [default: 0]

Legt die Stärke des auf den Glüheffekt angewendeten Blooms fest. Es werden Werte zwischen 0 und 1 erwartet.

Die Werte glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale und glowBloom steuern zusammen die Menge an luminance feedback, die durch den Glow/Bloom-Effekt erzeugt wird.

In der Praxis werden die Werte für glowStrength, glowIntensity und glowBloom oft zusammen eingestellt, um die gewünschten Ergebnisse zu erzielen.

Ein Beispiel: Bei vier aktivierten Leuchtstufen, einer Stärke von 1,5 und einer Intensität von 1:

glowBloom auf 0 gesetztglowBloom auf 0,5 eingestellt


glowEnabled : bool [default: false]

Aktiviert den Glüheffekt. Er kann auch Bloom-Effekte erzeugen, wenn der Wert von glowBloom größer als 0 ist.


glowHDRMaximumValue : real [default: 12.0]

Legt die maximale Helligkeit des Glühens in einem hohen Dynamikbereich fest. Der Wertebereich reicht von 0 bis 256.

Die Werte glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale und glowBloom steuern zusammen die durch den Glow/Bloom-Effekt erzeugte Menge von luminance feedback.


glowHDRMinimumValue: real [default: 1.0]

Legt die Mindesthelligkeit des Glühens im hochdynamischen Bereich fest. Die erwarteten Werte liegen im Bereich von 0 bis 4.

Die Werte glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale und glowBloom steuern zusammen die Menge an luminance feedback, die durch den Glow/Bloom-Effekt erzeugt wird.


glowHDRScale : real [default: 2.0]

Die Anschnittskala des HDR-Glühens. Die erwarteten Werte liegen im Bereich von 0 bis 8.

Die Werte glowHDRMinimumValue, glowHDRMaximumValue, glowHDRScale und glowBloom steuern zusammen den Anteil von luminance feedback, der durch den Glüh-/Blüteneffekt erzeugt wird.


glowIntensity : real [default: 1]

Intensität des Glühens. Die erwarteten Werte liegen im Bereich von 0 bis 8.

Die Intensität ist praktisch ein Skalierungsfaktor (Multiplikator) für die kumulierte Glühfarbe (einschließlich aller Stufen).

In der Praxis werden die Werte für glowStrength, glowIntensity und glowBloom oft zusammen abgestimmt, um die gewünschten Ergebnisse zu erzielen.

Zum Beispiel mit einem glowStrength von 1,0 und glowBloom von 0,25:

glowIntensity von 0,25glowIntensity von 1.25


glowLevel : int [default: 1]

Legt fest, welche der Unschärfeübergänge auf den Glüheffekt angewendet werden. Es sind insgesamt 7 Stufen verfügbar.

Wenn keine Stufen eingestellt sind, hat der Glüheffekt keine visuelle Wirkung.

Um z. B. Glow Level One und Six zu aktivieren, werden die beiden Enums einfach mit OR verknüpft:

glowLevel = (ExtendedSceneEnvironment.GlowLevel.One | ExtendedSceneEnvironment.GlowLevel.Six)
glowLevel WertBeispiel
Eins

Eins | Zwei

Eins | Zwei | Drei

Eins | Zwei | Drei | Vier


glowQualityHigh : bool [default: false]

Erhöht die für den Glüheffekt verwendeten Samples beim Downsampling, um die Qualität des Glüheffekts zu verbessern.

Hinweis: Die Aktivierung dieser Option ist ein Kompromiss zwischen Rendering-Qualität und Leistung. Überlegen Sie, ob stattdessen dithering verwendet werden kann.


glowStrength : real [default: 1]

Stärke des Glühens. Akzeptable Werte liegen zwischen 0 und 2.

Die Stärke ist effektiv ein Skalierungsfaktor (Multiplikator), der pro Stufe angewendet wird. Das heißt, je mehr Stufen in glowLevel aktiviert sind, desto ausgeprägter ist die Wirkung einer größeren glowStrength.

In der Praxis werden die Werte für glowStrength, glowIntensity und glowBloom oft zusammen eingestellt, um die gewünschten Ergebnisse zu erzielen.

Zum Beispiel mit einem glowIntensity von 1.0, glowBloom von 0.25 und den ersten vier Stufen aktiviert:

glowStrength von 0,5glowStrength von 1,5


glowUseBicubicUpscale : bool [default: false]

Reduziert die Aliasing-Artefakte und das Boxing im Glüheffekt.

Hinweis: Die Verwendung der bikubischen Hochskalierung geht auf Kosten der Leistung. Überlegen Sie, ob stattdessen dithering verwendet werden kann.


lensFlareApplyDirtTexture : bool [default: false]

Legen Sie fest, ob eine Schmutztextur auf das Streulicht angewendet werden soll.

Schmutztextur deaktiviertStandard-Schmutztextur aktiviert

Siehe auch lensFlareLensDirtTexture.


lensFlareApplyStarburstTexture : bool [default: false]

Legen Sie fest, ob eine Starburst-Textur auf das Lens Flare angewendet werden soll.

Starburst-Textur deaktiviertStandard-Starburst-Textur aktiviert

Siehe auch lensFlareLensStarburstTexture.


lensFlareBloomBias : real [default: 0.95]

Legt den Pegel fest, bei dem der Lens Flare Bloom beginnt.

Der Bias-Wert wird vom Farbwert mit hohem Dynamikbereich subtrahiert, wobei das Ergebnis auf 0 geklemmt wird. Das bedeutet, dass er je nach Szene manchmal auf einen recht niedrigen Wert, z. B. unter 1, eingestellt werden muss, um den Lens Flare deutlich zu machen. Daher der Standardwert von 0,95. Bei einem größeren Farbspektrum hingegen kann ein größerer Wert sinnvoller sein.

Verzerrung von 0,81Verzerrung von 0,31


lensFlareBloomScale : real [default: 10]

Legt die Skala des Lens Flare Bloom-Effekts fest. Der erwartete Skalenwert reicht von 0 bis 20.

In der Praxis wirkt dies wie ein Multiplikator für den nullgeklammerten Farbwert, von dem der lensFlareBloomBias abgezogen wird.

Skala 2, Verzerrung 0,81Skala 20, Vorspannung 0,81


lensFlareBlurAmount : real [default: 3]

Legt den Grad der Unschärfe fest, der auf das Streulicht angewendet wird. Der Bereich reicht von 0 bis 50.

Unschärfegrad auf 0 eingestelltUnschärfegrad auf 30 eingestellt


lensFlareCameraDirection : vector3d [default: Qt.vector3d(0, 0, -1)]

Legt die Richtung der Kamera in der Szene fest.


lensFlareDistortion : real [default: 5]

Legt den Grad der chromatischen Aberration im Streulicht fest. Die erwarteten Werte reichen von 0 bis 20.

Verzerrung auf 0 eingestelltVerzerrung auf 15 eingestellt


lensFlareEnabled : bool [default: false]

Aktiviert den Lens-Flare-Effekt.

Nach der Aktivierung ist die erste einzustellende Eigenschaft normalerweise lensFlareBloomBias.


lensFlareGhostCount : int [default: 4]

Legt die Menge der Lens Flare Geisterbilder fest. Die erwarteten Werte liegen zwischen 0 und 20.

Geisteranzahl von 2Anzahl der Geister von 16


lensFlareGhostDispersal : real [default: 0.5]

Legt den Abstand zwischen den Lens-Flare-Geisterbildern fest. Die erwarteten Werte liegen zwischen 0 und 5. Der Wert sollte größer als 0 sein.

Geisterstreuung von 0,25Streuung der Geister von 0,90


lensFlareHaloWidth : real [default: 0.25]

Legt die Größe des Lens Flare Halo fest. Der Bereich reicht von 0 bis 1.


lensFlareLensColorTexture : Texture

Ein Farbverlaufsbild, das für die Farbe der Streulichtlinse verwendet wird.

Standardmäßig wird eine eingebaute 256x256-Textur verwendet:


lensFlareLensDirtTexture : Texture

Ein Bild, das verwendet wird, um Unvollkommenheiten auf dem Objektiv zu simulieren.

Wirkt sich nur aus, wenn lensFlareApplyDirtTexture aktiviert ist.

Standardmäßig wird eine eingebaute schmutzige Textur verwendet:


lensFlareLensStarburstTexture : Texture

Ein Rauschbild, um den Starburst-Effekt des Lens Flare zu verstärken. Wirkt sich nur aus, wenn lensFlareApplyStarburstTexture aktiviert ist.

Standardmäßig wird eine eingebaute Rauschtextur verwendet:


lensFlareStretchToAspect : real [default: 0.5 [0, 1]]

Legt den Korrekturfaktor für die Rundheit des Lens Flare Halo fest.


lutEnabled : bool [default: false]

Aktiviert die Farbkorrektur mit Look-up-Tabellen (LUTs). Die Look-up-Tabelle wird als Textur angegeben.


lutFilterAlpha : real [default: 1]

Legt den Anteil der Farbkorrektur fest, der der Szene beigemischt werden soll. Der Wert sollte zwischen 0 und 1 liegen.


lutSize : real [default: 16]

Legt die Größe der LUT-Textur fest. Die Textur sollte die Abmessungen haben:

width = lutSize * lutSize und height = lutSize


lutTexture : Texture

Quelle der Look-up-Textur. Wenn keine Textur festgelegt ist, wird eine eingebaute Identitätstabelle verwendet.

Unten ist eine Beispieltextur mit einer Größe von 256x16 abgebildet, die der Standardvorgabe lutSize von 16 entspricht.

Das Ergebnis dieses Effekts:


sharpnessAmount : real [default: 0.0]

Legen Sie den Schärfungsgrad fest. Gültige Werte liegen zwischen 0.0 (aus) und 1.0 (voll).

Filmisches Tonmapping mit Schärfe auf 0 gesetztFilmisches Tonmapping mit Schärfe auf 1 gesetzt


tonemapMode : enumeration

Diese Eigenschaft legt fest, wie die Farben vor dem Rendern tonemappiert werden. Das gesamte Rendering in Qt Quick 3D wird im linearen Farbraum durchgeführt und kann in vielen Fällen dazu führen, dass Farbwerte erzeugt werden, die nicht darstellbar sind. Der tonemapMode bestimmt die Technik, die verwendet wird, um Farben in einen anzeigbaren Bereich umzuwandeln.

Der Standardwert ist SceneEnvironment.TonemapModeLinear

KonstanteBeschreibung
SceneEnvironment.TonemapModeNoneDas gesamte Tonemapping wird umgangen. Dieser Modus ist nützlich, wenn Nachbearbeitungseffekte durchgeführt werden.
SceneEnvironment.TonemapModeLinearLineares Tonemapping wird angewendet. Die Farben werden gamma-korrigiert und im sRGB-Farbraum zurückgegeben.
SceneEnvironment.TonemapModeAcesAcademy Color Encoding System Tonemapping wird angewandt.
SceneEnvironment.TonemapModeHejlDawsonHejl-Dawson-Tonemapping wird angewendet.
SceneEnvironment.TonemapModeFilmicFilmisches Tonemapping wird angewandt.

Hinweis: Bei der Verwendung von Nachbearbeitungseffekten erwarten viele Effekte nicht tongemappte lineare Farbdaten. In diesem Fall ist es wichtig, das integrierte Tonemapping zu umgehen, indem Sie den Wert SceneEnvironment.TonemapModeNone verwenden. Dies gilt nicht für die eingebauten Effekte von ExtendedSceneEnvironment, da diese automatisch für das richtige Tonemapping sorgen.

Tonemap-ModusBeispiel
Keine

Linear

Asse

HejlDawson

Filmisch


vignetteColor : color [default: "gray"]

Legt die Farbe des Vignetteneffekts fest.

Ändern Sie zum Beispiel die Farbe auf Rot, hier mit Radius 4 und Stärke 15:


vignetteEnabled : bool [default: false]

Aktiviert den Vignetteneffekt.


vignetteRadius : real [default: 0.35]

Legt den Radius des Vignetteneffekts fest. Der Bereich reicht von 0 bis 5.

Radius von 0,35Radius von 5,0


vignetteStrength : real [default: 15]

Legt die Stärke des Vignetteneffekts fest. Der Bereich reicht von 0 bis 15.

Stärke von 15Stärke von 10


whitePoint : real [default: 1]

Referenzwert für Weiß, wenn Tonemapping aktiviert ist. Der Wert muss größer als 0 sein.

Hinweis: Dieser Wert wird bei Verwendung von SceneEnvironment.TonemapModeLinear ignoriert.

Filmisches Tonmapping mit Weißpunkt auf 0,1 gesetztFilmisches Tonmapping mit Weißpunkt auf 1 gesetzt


© 2025 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.