Get to know MDN better
Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
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 createQuerySet()-Methode der GPUDevice-Schnittstelle erstellt ein GPUQuerySet, das verwendet werden kann, um die Ergebnisse von Abfragen auf Passes, wie Okklusions- oder Zeitstempelabfragen, aufzuzeichnen.
Ein Objekt, das die folgenden Eigenschaften enthält:
countEine Zahl, die die Anzahl der Abfragen angibt, die vom resultierenden GPUQuerySet verwaltet werden sollen.
label OptionalEin String, der ein Label bereitstellt, das verwendet werden kann, um das Objekt zu identifizieren, zum Beispiel in GPUError-Meldungen oder Konsolenwarnungen.
typeEin enumerierter Wert, der den Typ der Abfragen angibt, die vom resultierenden GPUQuerySet verwaltet werden sollen. Mögliche Werte sind:
"occlusion"Okklusionsabfragen stehen bei Render-Passes zur Verfügung, um die Anzahl der Fragmentproben abzufragen, die alle per-Fragment-Tests für einen Satz von Zeichnungsbefehlen bestehen (einschließlich Schere, Sample-Maske, Alpha-to-Coverage, Schablonen- und Tiefentests). Um eine Okklusionsabfrage auszuführen, muss ein geeignetes GPUQuerySet als Wert der occlusionQuerySet-Deskriptoreigenschaft angegeben werden, wenn GPUCommandEncoder.beginRenderPass() aufgerufen wird, um einen Render-Pass auszuführen.
"timestamp"Zeitstempelabfragen ermöglichen es Anwendungen, Zeitstempel an ein GPUQuerySet zu schreiben. Um eine Zeitstempelabfrage auszuführen, müssen geeignete GPUQuerySet innerhalb des Wertes der timestampWrites-Deskriptoreigenschaft bereitgestellt werden, wenn GPUCommandEncoder.beginRenderPass() aufgerufen wird, um einen Render-Pass auszuführen, oder GPUCommandEncoder.beginComputePass(), um einen Compute-Pass auszuführen. Alternativ können Sie jederzeit eine einzelne Zeitstempelabfrage durchführen, indem Sie GPUCommandEncoder.writeTimeStamp() mit einem geeigneten GPUQuerySet als Parameter aufrufen.
Hinweis: Das timestamp-query Feature muss aktiviert sein, um Zeitstempelabfragen verwenden zu können.
Eine Instanz eines GPUQuerySet-Objekts.
Die folgenden Kriterien müssen erfüllt sein, wenn createQuerySet() aufgerufen wird, andernfalls wird ein GPUValidationError generiert und ein ungültiges GPUQuerySet-Objekt zurückgegeben:
Das folgende Snippet erstellt ein GPUQuerySet, das 32 Okklusionsabfrageergebnisse hält:
| WebGPU # dom-gpudevice-createqueryset |
JavaScript aktivieren, um diese Browser-Kompatibilitätstabelle anzuzeigen.
Der Bauplan für ein besseres Internet.
Besuche die gemeinnützige Muttergesellschaft der Mozilla Corporation, die Mozilla Foundation.
Teile dieses Inhalts sind ©1998–2026 von einzelnen mozilla.org-Mitwirkenden. Inhalte sind verfügbar unter einer Creative-Commons-Lizenz.