XRProjectionLayer: fixedFoveation-Eigenschaft
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig, bevor Sie diese produktiv verwenden.
Die fixedFoveation
-Eigenschaft des XRProjectionLayer
-Interface ist eine Zahl, die die Menge an Foveation angibt, die vom XR-Compositor für die Ebene verwendet wird. Fixed Foveated Rendering (FFR) rendert die Ränder der Augen-Texturen in einer niedrigeren Auflösung als die Mitte und reduziert die GPU-Belastung.
Es ist besonders nützlich für Texturen mit niedrigem Kontrast, wie Hintergrundbilder, aber weniger für solche mit hohem Kontrast, wie Text oder detaillierte Bilder. Autoren können das Niveau pro Bild anpassen, um den besten Kompromiss zwischen Leistung und visueller Qualität zu erreichen.
Wert
Eine Zahl zwischen 0 und 1.
- Die minimale Foveation wird durch 0 angezeigt (volle Auflösung).
- Die maximale Foveation wird durch 1 angezeigt (die Ränder werden in niedrigerer Auflösung gerendert).
Es liegt am Benutzeragent, wie die Zahlen in diesem Bereich interpretiert werden. Bei Änderung des Foveation-Niveaus wird der Effekt im nächsten XRFrame
sichtbar.
Beachten Sie, dass einige Benutzeragenten bestimmte Niveaus der Foveation implementieren könnten, sodass Sie das Foveation-Niveau in großen Schritten anpassen müssen, um einen Effekt zu sehen. Beispielniveaus:
0
: keine Foveation1/3
: niedrige Foveation2/3
: mittlere Foveation1.0
: maximale Foveation
Einige Geräte unterstützen keine foveated rendering. In diesem Fall ist fixedFoveation
null
und das Einstellen hat keine Wirkung.
Beispiele
Dynamisches Einstellen des Niveaus des Fixed Foveation Renderings
Die fixedFoveation
-Eigenschaft ermöglicht es Ihnen, das Niveau der Foveation zur Laufzeit und für jedes Bild festzulegen. Um die maximale Foveation für ein gegebenes XRProjectionLayer
einzustellen, verwenden Sie einen Wert von 1
.
let glProjectionLayer = glBinding.createProjectionLayer(/* … */);
glProjectionLayer.fixedFoveation = 1; // maximum foveation
Spezifikationen
Specification |
---|
WebXR Layers API Level 1 # dom-xrprojectionlayer-fixedfoveation |
Browser-Kompatibilität
BCD tables only load in the browser