[webkit-changes] [WebKit/WebKit] 1a696d: depth-clip-control feature is unimplemented

mwyrzykowski noreply at github.com
Wed Feb 22 20:57:02 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 1a696df1b0a026a95c9808f0307758a8a8c268d1
      https://github.com/WebKit/WebKit/commit/1a696df1b0a026a95c9808f0307758a8a8c268d1
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2023-02-22 (Wed, 22 Feb 2023)

  Changed paths:
    M Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp
    M Source/WebGPU/WebGPU/HardwareCapabilities.mm
    M Source/WebGPU/WebGPU/RenderPassEncoder.mm
    M Source/WebGPU/WebGPU/RenderPipeline.h
    M Source/WebGPU/WebGPU/RenderPipeline.mm
    M Websites/webkit.org/demos/webgpu/scripts/two-cubes.js

  Log Message:
  -----------
  depth-clip-control feature is unimplemented
https://bugs.webkit.org/show_bug.cgi?id=251664
<radar://104992830>

Reviewed by Myles C. Maxfield.

Implement depth clip control which controls if fragments
with depth values outside of [0, 1] are clipped or not.

* Source/WebCore/PAL/pal/graphics/WebGPU/Impl/WebGPUDeviceImpl.cpp:
(PAL::WebGPU::convertToBacking):

* Source/WebGPU/WebGPU/HardwareCapabilities.mm:
(WebGPU::baseFeatures):
All devices support depth clamping.

* Source/WebGPU/WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::setPipeline):
(WebGPU::RenderPassEncoder::setStencilReference):
* Source/WebGPU/WebGPU/RenderPipeline.h:
(WebGPU::RenderPipeline::create):
(WebGPU::RenderPipeline::depthClipMode const):
* Source/WebGPU/WebGPU/RenderPipeline.mm:
(WebGPU::Device::createRenderPipeline):
(WebGPU::RenderPipeline::RenderPipeline):
Pass the feature through to the command encoder.

* Websites/webkit.org/demos/webgpu/scripts/two-cubes.js:
Update two-cubes to illustrate this feature.

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




More information about the webkit-changes mailing list