GPUQuerySet

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 GPUQuerySet Schnittstelle der WebGPU API wird verwendet, um die Ergebnisse von Abfragen für Passes aufzuzeichnen, wie z.B. Okklusions- oder Zeitstempelabfragen.

  • Okklusionsabfragen sind bei Render-Passes verfügbar, um abzufragen, ob Fragmente alle fragmentbezogenen Tests für eine Reihe von Zeichnungsbefehlen bestehen (einschließlich Schere, Sample-Maske, Alpha-to-Coverage, Stencil- und Tiefentests). Um eine Okklusionsabfrage durchzuführen, muss ein geeignetes GPUQuerySet als Wert der occlusionQuerySet-Deskriptoreigenschaft bereitgestellt werden, wenn GPUCommandEncoder.beginRenderPass() aufgerufen wird, um einen Render-Pass auszuführen.

  • Zeitstempelabfragen ermöglichen es Anwendungen, Zeitstempel in ein GPUQuerySet zu schreiben. Um eine Zeitstempelabfrage durchzuführen, müssen geeignete GPUQuerySets 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.

Hinweis: Die timestamp-query Funktion muss aktiviert sein, um Zeitstempelabfragen zu verwenden.

Eine Instanz eines GPUQuerySet-Objekts wird mit der Methode GPUDevice.createQuerySet() erstellt.

Instanzeigenschaften

count Experimentell Schreibgeschützt

Eine Zahl, die die Anzahl der Abfragen angibt, die vom GPUQuerySet verwaltet werden.

label Experimentell

Ein String, der ein Label bereitstellt, das verwendet werden kann, um das Objekt zu identifizieren, zum Beispiel in GPUError-Meldungen oder Konsolenwarnungen.

type Experimentell Schreibgeschützt

Ein enumerierter Wert, der den Typ der vom GPUQuerySet verwalteten Abfragen angibt.

Instanzmethoden

destroy() Experimentell

Zerstört das GPUQuerySet.

Beispiele

Das folgende Beispiel erstellt ein GPUQuerySet, das 32 Okklusionsabfrageergebnisse hält, und gibt dann den type und die count zurück:

js
const querySet = device.createQuerySet({
  type: "occlusion",
  count: 32,
});

console.log(querySet.count); // 32
console.log(querySet.type); // "occlusion"

Spezifikationen

Specification
WebGPU
# gpuqueryset

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch