Changeset 252423 in webkit
- Timestamp:
- Nov 13, 2019, 12:16:12 PM (7 years ago)
- Location:
- trunk
- Files:
-
- 10 edited
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/Modules/webgpu/WebGPUBuffer.cpp (modified) (1 diff)
-
Source/WebCore/platform/graphics/gpu/cocoa/GPUCommandBufferMetal.mm (modified) (1 diff)
-
Websites/webkit.org/ChangeLog (modified) (1 diff)
-
Websites/webkit.org/demos/webgpu/babylon/babylonWebGpu.max.js (modified) (9 diffs)
-
Websites/webkit.org/demos/webgpu/babylon/oneSphereWebGPU.html (modified) (1 diff)
-
Websites/webkit.org/demos/webgpu/hello-cube.html (modified) (1 diff)
-
Websites/webkit.org/demos/webgpu/scripts/compute-boids-compile.js (modified) (1 diff)
-
Websites/webkit.org/demos/webgpu/scripts/compute-boids-utils.js (modified) (1 diff)
-
Websites/webkit.org/demos/webgpu/textured-cube.html (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebCore/ChangeLog
r252419 r252423 1 2019-11-13 Dean Jackson <dino@apple.com> 2 3 Fix some WebGPU demos 4 https://bugs.webkit.org/show_bug.cgi?id=204167 5 <rdar://problem/57160316> 6 7 Reviewed by Myles C. Maxfield. 8 9 Add a note referencing a bug I detected while fixing this demo. 10 And a drive-by typo. 11 12 * Modules/webgpu/WebGPUBuffer.cpp: 13 (WebCore::WebGPUBuffer::rejectOrRegisterPromiseCallback): 14 * platform/graphics/gpu/cocoa/GPUCommandBufferMetal.mm: 15 (WebCore::GPUCommandBuffer::copyBufferToTexture): 16 1 17 2019-11-13 Antti Koivisto <antti@apple.com> 2 18 -
trunk/Source/WebCore/Modules/webgpu/WebGPUBuffer.cpp
r250735 r252423 92 92 promise.resolve(*arrayBuffer); 93 93 else { 94 // FIXME: It's possible to hit this code path in response to an unmap call, where 95 // the ArrayBuffer will definitely be null, and thus an out of memory error makes no sense. 96 // https://bugs.webkit.org/show_bug.cgi?id=204166 94 97 protectedErrorScopes->generateError("", GPUErrorFilter::OutOfMemory); 95 98 promise.reject(); -
trunk/Source/WebCore/platform/graphics/gpu/cocoa/GPUCommandBufferMetal.mm
r249601 r252423 136 136 { 137 137 if (isEncodingPass() || !srcBuffer.buffer->isCopySource() || !dstTexture.texture->isCopyDestination()) { 138 LOG(WebGPU, "GPUCom andBuffer::copyBufferToTexture(): Invalid operation!");138 LOG(WebGPU, "GPUCommandBuffer::copyBufferToTexture(): Invalid operation!"); 139 139 return; 140 140 } -
trunk/Websites/webkit.org/ChangeLog
r252395 r252423 1 2019-11-13 Dean Jackson <dino@apple.com> 2 3 Fix some WebGPU demos 4 https://bugs.webkit.org/show_bug.cgi?id=204167 5 6 Reviewed by Myles C. Maxfield. 7 8 Use COPY_ rather than TRANSFER_. 9 10 * demos/webgpu/babylon/babylonWebGpu.max.js: 11 * demos/webgpu/babylon/oneSphereWebGPU.html: 12 * demos/webgpu/hello-cube.html: 13 * demos/webgpu/scripts/compute-boids-compile.js: 14 * demos/webgpu/scripts/compute-boids-utils.js: 15 (async.createTextureFromImage): 16 * demos/webgpu/textured-cube.html: 17 1 18 2019-11-08 Ryosuke Niwa <rniwa@webkit.org> 2 19 -
trunk/Websites/webkit.org/demos/webgpu/babylon/babylonWebGpu.max.js
r250101 r252423 32946 32946 WebGPUConstants.GPUBufferUsage_MAP_READ = 1; 32947 32947 WebGPUConstants.GPUBufferUsage_MAP_WRITE = 2; 32948 WebGPUConstants.GPUBufferUsage_ TRANSFER_SRC = 4;32949 WebGPUConstants.GPUBufferUsage_ TRANSFER_DST = 8;32948 WebGPUConstants.GPUBufferUsage_COPY_SRC = 4; 32949 WebGPUConstants.GPUBufferUsage_COPY_DST = 8; 32950 32950 WebGPUConstants.GPUBufferUsage_INDEX = 16; 32951 32951 WebGPUConstants.GPUBufferUsage_VERTEX = 32; … … 42296 42296 var bufferDescriptor = { 42297 42297 size: byteLength, 42298 usage: _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_MAP_WRITE | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_SRC42298 usage: _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_MAP_WRITE | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_SRC 42299 42299 }; 42300 42300 var [tempBuffer, arr] = this._device.createBufferMapped(bufferDescriptor); … … 42324 42324 view = data; 42325 42325 } 42326 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_VERTEX | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_DST);42326 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_VERTEX | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42327 42327 return dataBuffer; 42328 42328 }; … … 42380 42380 } 42381 42381 } 42382 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_INDEX | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_DST);42382 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_INDEX | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42383 42383 dataBuffer.is32Bits = is32Bits; 42384 42384 return dataBuffer; … … 42444 42444 view = elements; 42445 42445 } 42446 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_UNIFORM | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_DST);42446 var dataBuffer = this._createBuffer(view, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_UNIFORM | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42447 42447 return dataBuffer; 42448 42448 }; … … 42665 42665 var dataBuffer; 42666 42666 if (rowPitch == width * 4) { 42667 dataBuffer = this._createBuffer(pixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_TRANSFER_DST);42667 dataBuffer = this._createBuffer(pixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42668 42668 var bufferView = { 42669 42669 buffer: dataBuffer.underlyingResource, … … 42687 42687 } 42688 42688 } 42689 dataBuffer = this._createBuffer(alignedPixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_TRANSFER_DST);42689 dataBuffer = this._createBuffer(alignedPixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42690 42690 var bufferView = { 42691 42691 buffer: dataBuffer.underlyingResource, … … 42761 42761 var dataBuffer; 42762 42762 if (rowPitch == width * 4) { 42763 dataBuffer = this._createBuffer(pixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_TRANSFER_DST);42763 dataBuffer = this._createBuffer(pixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42764 42764 var bufferView = { 42765 42765 buffer: dataBuffer.underlyingResource, … … 42783 42783 } 42784 42784 } 42785 dataBuffer = this._createBuffer(alignedPixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_ TRANSFER_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_TRANSFER_DST);42785 dataBuffer = this._createBuffer(alignedPixels, _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_SRC | _WebGPU_webgpuConstants__WEBPACK_IMPORTED_MODULE_9__["WebGPUConstants"].GPUBufferUsage_COPY_DST); 42786 42786 var bufferView = { 42787 42787 buffer: dataBuffer.underlyingResource, -
trunk/Websites/webkit.org/demos/webgpu/babylon/oneSphereWebGPU.html
r250101 r252423 207 207 divFps.innerHTML = engine.getFps().toFixed() + " fps"; 208 208 }); 209 setTimeout(() => { 210 engine.stopRenderLoop(); 211 }, 2000); 209 212 })(); 210 213 </script> -
trunk/Websites/webkit.org/demos/webgpu/hello-cube.html
r250101 r252423 148 148 const verticesBufferDescriptor = { 149 149 size: verticesArray.byteLength, 150 usage: GPUBufferUsage.VERTEX | GPUBufferUsage. TRANSFER_DST150 usage: GPUBufferUsage.VERTEX | GPUBufferUsage.COPY_DST 151 151 }; 152 152 let verticesArrayBuffer; -
trunk/Websites/webkit.org/demos/webgpu/scripts/compute-boids-compile.js
r250101 r252423 206 206 async function init() { 207 207 if (!isChrome) { 208 GPUBufferUsage.COPY_DST = GPUBufferUsage. TRANSFER_DST;209 GPUBufferUsage.COPY_SRC = GPUBufferUsage. TRANSFER_SRC;208 GPUBufferUsage.COPY_DST = GPUBufferUsage.COPY_DST; 209 GPUBufferUsage.COPY_SRC = GPUBufferUsage.COPY_SRC; 210 210 } 211 211 -
trunk/Websites/webkit.org/demos/webgpu/scripts/compute-boids-utils.js
r249665 r252423 106 106 dimension: "2d", 107 107 format: "rgba8unorm", 108 usage: GPUTextureUsage. TRANSFER_DST | usage,108 usage: GPUTextureUsage.COPY_DST | usage, 109 109 }); 110 110 111 111 const textureDataBuffer = device.createBuffer({ 112 112 size: data.byteLength, 113 usage: GPUBufferUsage. TRANSFER_DST | GPUBufferUsage.TRANSFER_SRC,113 usage: GPUBufferUsage.COPY_DST | GPUBufferUsage.COPY_SRC, 114 114 }); 115 115 -
trunk/Websites/webkit.org/demos/webgpu/textured-cube.html
r250101 r252423 81 81 `; 82 82 83 //console.log(`Shader is: ${shader}`); 84 83 85 let device, swapChain, verticesBuffer, bindGroupLayout, pipeline, renderPassDescriptor, queue, textureViewBinding, samplerBinding; 84 86 let projectionMatrix = mat4.create(); … … 135 137 device = await adapter.requestDevice(); 136 138 139 device.onuncapturederror = function (e) { 140 console.log(`ERROR:`, e); 141 }; 142 137 143 const canvas = document.querySelector('canvas'); 138 144 … … 205 211 dimension: "2d", 206 212 format: "rgba8unorm", 207 usage: GPUTextureUsage. TRANSFER_DST | GPUTextureUsage.SAMPLED213 usage: GPUTextureUsage.COPY_DST | GPUTextureUsage.SAMPLED 208 214 }; 209 215 const texture = device.createTexture(textureDescriptor);
Note:
See TracChangeset
for help on using the changeset viewer.