Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
GPUDevice: createCommandEncoder()-Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur insicheren Kontexten (HTTPS) in einigen oder allenunterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist inWeb Workers verfügbar.
DiecreateCommandEncoder()-Methode derGPUDevice-Schnittstelle erstellt einenGPUCommandEncoder, der verwendet wird, um Befehle zu kodieren, die an die GPU übermittelt werden sollen.
In diesem Artikel
Syntax
createCommandEncoder()createCommandEncoder(descriptor)Parameter
descriptorOptionalEin Objekt, das die folgenden Eigenschaften enthält:
labelOptionalEin String, der ein Label bereitstellt, das zur Identifizierung des Objekts verwendet werden kann, beispielsweise in
GPUError-Nachrichten oder Konsolenwarnungen.
Rückgabewert
Eine Instanz desGPUCommandEncoder-Objekts.
Beispiele
In unseremGrundlagendemonstrationsprojekt zur Wiedergabe werden mehrere Befehle über einenGPUCommandEncoder aufgezeichnet, der übercreateCommandEncoder() erstellt wurde:
// …// Create GPUCommandEncoderconst commandEncoder = device.createCommandEncoder();// Create GPURenderPassDescriptor to tell WebGPU which texture to draw into, then initiate render passconst renderPassDescriptor = { colorAttachments: [ { clearValue: clearColor, loadOp: "clear", storeOp: "store", view: context.getCurrentTexture().createView(), }, ],};const passEncoder = commandEncoder.beginRenderPass(renderPassDescriptor);// Draw a trianglepassEncoder.setPipeline(renderPipeline);passEncoder.setVertexBuffer(0, vertexBuffer);passEncoder.draw(3);// End the render passpassEncoder.end();// …Die durch denGPUCommandEncoder kodierten Befehle werden mithilfe derGPUCommandEncoder.finish()-Methode in einemGPUCommandBuffer aufgenommen. Der Befehls-Puffer wird dann mittels einessubmit()-Aufrufs in die Warteschlange übergeben und ist bereit, von der GPU verarbeitet zu werden.
device.queue.submit([commandEncoder.finish()]);Hinweis:Studieren Sie dieWebGPU-Beispiele, um weitere Beispiele zur Befehlsenkodierung zu finden.
Spezifikationen
| Specification |
|---|
| WebGPU> # dom-gpudevice-createcommandencoder> |
Browser-Kompatibilität
Siehe auch
- DieWebGPU API