GPUBuffer: mapState-Eigenschaft
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 mapState-Eigenschaft der GPUBuffer-Schnittstelle ist eine schreibgeschützte Eigenschaft, die den Zuordnungszustand des GPUBuffer darstellt.
Wert
Ein enumerierter Wert. Mögliche Werte sind:
unmapped-
Der Puffer ist nicht zugeordnet.
GPUBuffer.getMappedRange()kann nicht verwendet werden, um auf den Inhalt desGPUBufferin JavaScript zuzugreifen. Dies könnte daran liegen:GPUBuffer.mapAsync()wurde noch nicht aufgerufen.- Der
GPUBufferwurde zuvor zugeordnet und dann mitGPUBuffer.unmap()wieder freigegeben.
pending-
Der Puffer ist noch nicht zugeordnet.
GPUBuffer.mapAsync()wurde aufgerufen, aber seinPromiseist derzeit ausstehend.GPUBuffer.getMappedRange()kann momentan nicht verwendet werden, um auf den Inhalt desGPUBufferin JavaScript zuzugreifen. mapped-
Der Puffer ist zugeordnet. Das
GPUBuffer.mapAsync()Promisewurde erfüllt, undGPUBuffer.getMappedRange()kann jetzt verwendet werden, um auf den Inhalt desGPUBufferin JavaScript zuzugreifen.
Beispiele
const stagingBuffer = device.createBuffer({
size: BUFFER_SIZE,
usage: GPUBufferUsage.MAP_READ | GPUBufferUsage.COPY_DST,
});
console.log(stagingBuffer.mapState); // "unmapped"
// …
await stagingBuffer.mapAsync(
GPUMapMode.READ,
0, // Offset
BUFFER_SIZE, // Length
);
console.log(stagingBuffer.mapState); // "mapped"
Spezifikationen
| Spezifikation |
|---|
| WebGPU> # dom-gpubuffer-mapstate> |
Browser-Kompatibilität
Siehe auch
- Die WebGPU API