GPUAdapter: features-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 vor der Verwendung auf produktiven Webseiten.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die features
Eigenschaft des schreibgeschützten GPUAdapter
-Interfaces gibt ein GPUSupportedFeatures
-Objekt zurück, das zusätzliche Funktionalität beschreibt, die vom Adapter unterstützt wird.
Es sollte beachtet werden, dass nicht alle Funktionen in WebGPU in allen unterstützenden Browsern verfügbar sein werden, selbst wenn diese Funktionen von der zugrunde liegenden Hardware unterstützt werden. Dies könnte auf Einschränkungen des zugrunde liegenden Systems, des Browsers oder des Adapters zurückzuführen sein. Zum Beispiel:
- Das zugrunde liegende System kann möglicherweise die Bereitstellung einer Funktion auf eine Weise garantieren, die mit einem bestimmten Browser kompatibel ist.
- Der Browseranbieter hat möglicherweise keinen sicheren Weg gefunden, um die Unterstützung für diese Funktion zu implementieren, oder hat es einfach noch nicht geschafft.
Wenn Sie hoffen, eine bestimmte zusätzliche Funktion in einer WebGPU-Anwendung nutzen zu können, sind gründliche Tests ratsam.
Wert
Ein GPUSupportedFeatures
-Objektinstanz. Dies ist ein setähnliches Objekt.
Beispiele
Im folgenden Code überprüfen wir, ob ein GPUAdapter
die Funktion texture-compression-astc
verfügbar hat. Falls ja, fügen wir es in das Array der requiredFeatures
ein und fordern ein Gerät mit dieser Funktionsanforderung an, indem wir GPUAdapter.requestDevice()
verwenden.
async function init() {
if (!navigator.gpu) {
throw Error("WebGPU not supported.");
}
const adapter = await navigator.gpu.requestAdapter();
if (!adapter) {
throw Error("Couldn't request WebGPU adapter.");
}
const requiredFeatures = [];
if (adapter.features.has("texture-compression-astc")) {
requiredFeatures.push("texture-compression-astc");
}
const device = await adapter.requestDevice({
requiredFeatures,
});
// ...
}
Spezifikationen
Specification |
---|
WebGPU # dom-gpuadapter-features |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Die WebGPU API