[webkit-changes] [WebKit/WebKit] aa48f5: [WebGPU] Implement multisampling support

mwyrzykowski noreply at github.com
Tue Dec 13 23:17:22 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: aa48f5eefbcbb29cf34aad072e42a6a030093d6f
      https://github.com/WebKit/WebKit/commit/aa48f5eefbcbb29cf34aad072e42a6a030093d6f
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2022-12-13 (Tue, 13 Dec 2022)

  Changed paths:
    M Source/WebGPU/WebGPU/CommandEncoder.mm
    M Source/WebGPU/WebGPU/RenderPipeline.mm
    A Websites/webkit.org/demos/webgpu/hello-triangle-msaa.html
    A Websites/webkit.org/demos/webgpu/scripts/hello-triangle-msaa.js

  Log Message:
  -----------
  [WebGPU] Implement multisampling support
https://bugs.webkit.org/show_bug.cgi?id=249203
<radar://54533542>

Reviewed by Dean Jackson.

Implement MSAA and add a test, including alphaToCoverage support,
but I didn't implement sampleMask yet because it is poorly defined
in the WebGPU specification.

* Source/WebGPU/WebGPU/CommandEncoder.mm:
(WebGPU::CommandEncoder::validateRenderPassDescriptor const):
(WebGPU::CommandEncoder::beginRenderPass):
Use MTLStoreActionStoreAndMultisampleResolve so we don't need a seperate
command encoder and resolve pass.

* Source/WebGPU/WebGPU/RenderPipeline.mm:
(WebGPU::Device::validateRenderPipeline):
(WebGPU::Device::createRenderPipeline):
Configure the pipeline state.

* Websites/webkit.org/demos/webgpu/hello-triangle-msaa.html: Added.
* Websites/webkit.org/demos/webgpu/scripts/hello-triangle-msaa.js: Added.
(async helloTriangle):
Add demo / test.

Canonical link: https://commits.webkit.org/257834@main




More information about the webkit-changes mailing list