فهرست منبع

wgpu: copy over gpu contents to cpu side when mapping

Laytan Laats 6 ماه پیش
والد
کامیت
b6f34332fe
1فایلهای تغییر یافته به همراه6 افزوده شده و 0 حذف شده
  1. 6 0
      vendor/wgpu/wgpu.js

+ 6 - 0
vendor/wgpu/wgpu.js

@@ -1297,6 +1297,9 @@ class WebGPUInterface {
 
 				const ptr = this.mem.exports.wgpu_alloc(range.byteLength);
 
+				const mapping = new Uint8Array(this.mem.memory.buffer, ptr, size);
+				mapping.set(new Uint8Array(range));
+
 				buffer.mapping = { range: range, ptr: ptr, size: range.byteLength };
 				return ptr;
 			},
@@ -1327,6 +1330,9 @@ class WebGPUInterface {
 
 				const ptr = this.mem.exports.wgpu_alloc(range.byteLength);
 
+				const mapping = new Uint8Array(this.mem.memory.buffer, ptr, size);
+				mapping.set(new Uint8Array(range));
+
 				buffer.mapping = { range: range, ptr: ptr, size: range.byteLength };
 				return ptr;
 			},