GPUCommandEncoder: finish()-Methode
Eingeschränkt verfügbar
Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.
Want more browser support for this feature? Tell us why.
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 finish()-Methode der GPUCommandEncoder-Schnittstelle schließt die Aufzeichnung der auf diesem GPUCommandEncoder codierten Befehlssequenz ab und gibt einen entsprechenden GPUCommandBuffer zurück.
Syntax
finish()
finish(descriptor)
Parameter
descriptorOptional-
Ein Objekt, das die folgenden Eigenschaften enthalten kann:
labelOptional-
Ein String, der eine Bezeichnung für den zurückgegebenen
GPUCommandBufferangibt, die zur Identifizierung verwendet werden kann, zum Beispiel inGPUError-Meldungen oder Konsolenwarnungen.
Rückgabewert
Eine Instanz des GPUCommandBuffer-Objekts.
Validierung
Die folgenden Kriterien müssen erfüllt sein, wenn finish() aufgerufen wird. Andernfalls wird ein GPUValidationError erzeugt und der GPUCommandEncoder wird ungültig:
- Es dürfen keine aktiven Debug-Gruppen vorhanden sein (d.h. gestartet über
pushDebugGroup()). - Der
GPUCommandEncodermuss sich in einem offenen Zustand befinden — das bedeutet:- Es dürfen keine untergeordneten
GPUComputePassEncoder- oderGPURenderPassEncoder-Instanzen aktiv sein, die nicht beendet wurden (durch Aufruf vonend()). - Der
GPUCommandEncoderdarf noch nichtfinish()aufgerufen haben (in diesem Fall kann er nicht mehr zum Kodieren weiterer Befehle verwendet werden).
- Es dürfen keine untergeordneten
Beispiele
// …
const commandBuffer = commandEncoder.finish();
device.queue.submit([commandBuffer]);
// …
Spezifikationen
| Spezifikation |
|---|
| WebGPU> # dom-gpucommandencoder-finish> |
Browser-Kompatibilität
Siehe auch
- Die WebGPU API