[webkit-changes] [WebKit/WebKit] 96cbf7: [WebXR+WebGPU] Bringup red triangle

mwyrzykowski noreply at github.com
Wed Sep 11 04:11:41 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 96cbf755f1848da5261f32815e3c99b39557344e
      https://github.com/WebKit/WebKit/commit/96cbf755f1848da5261f32815e3c99b39557344e
  Author: Mike Wyrzykowski <mwyrzykowski at apple.com>
  Date:   2024-09-11 (Wed, 11 Sep 2024)

  Changed paths:
    M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
    M Source/WTF/wtf/PlatformEnable.h
    M Source/WebCore/Modules/WebGPU/GPUTextureViewDescriptor.idl
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.cpp
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.h
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRBindingImpl.cpp
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRBindingImpl.h
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRProjectionLayerImpl.cpp
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRProjectionLayerImpl.h
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRSubImageImpl.cpp
    M Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRSubImageImpl.h
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRBinding.h
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRProjectionLayer.h
    M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRSubImage.h
    M Source/WebCore/Modules/webxr/WebXRLayer.h
    M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp
    M Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h
    M Source/WebCore/Modules/webxr/WebXROpaqueFramebufferCocoa.cpp
    M Source/WebCore/Modules/webxr/WebXRRenderState.cpp
    M Source/WebCore/Modules/webxr/WebXRRenderState.h
    M Source/WebCore/Modules/webxr/WebXRSession.cpp
    M Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp
    M Source/WebCore/Modules/webxr/WebXRWebGLLayer.h
    M Source/WebCore/Modules/webxr/XRGPUBinding.cpp
    M Source/WebCore/Modules/webxr/XRGPUBinding.h
    M Source/WebCore/Modules/webxr/XRGPUProjectionLayerInit.h
    M Source/WebCore/Modules/webxr/XRGPUSubImage.cpp
    M Source/WebCore/Modules/webxr/XRGPUSubImage.h
    M Source/WebCore/Modules/webxr/XRGPUSubImage.idl
    M Source/WebCore/Modules/webxr/XRProjectionLayer.cpp
    M Source/WebCore/Modules/webxr/XRProjectionLayer.h
    M Source/WebCore/Modules/webxr/XRSubImage.h
    M Source/WebCore/Modules/webxr/XRWebGLSubImage.h
    M Source/WebGPU/WebGPU/CommandBuffer.h
    M Source/WebGPU/WebGPU/CommandBuffer.mm
    M Source/WebGPU/WebGPU/CommandEncoder.h
    M Source/WebGPU/WebGPU/CommandEncoder.mm
    M Source/WebGPU/WebGPU/Device.h
    M Source/WebGPU/WebGPU/Device.mm
    M Source/WebGPU/WebGPU/MetalSPI.h
    M Source/WebGPU/WebGPU/Queue.h
    M Source/WebGPU/WebGPU/Texture.h
    M Source/WebGPU/WebGPU/Texture.mm
    M Source/WebGPU/WebGPU/TextureView.mm
    M Source/WebGPU/WebGPU/WebGPUExt.h
    M Source/WebGPU/WebGPU/XRBinding.h
    M Source/WebGPU/WebGPU/XRBinding.mm
    M Source/WebGPU/WebGPU/XRProjectionLayer.h
    M Source/WebGPU/WebGPU/XRProjectionLayer.mm
    M Source/WebGPU/WebGPU/XRSubImage.h
    M Source/WebGPU/WebGPU/XRSubImage.mm
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteDevice.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRBinding.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRBinding.h
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRBinding.messages.in
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRProjectionLayer.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRProjectionLayer.h
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRProjectionLayer.messages.in
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRSubImage.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRSubImage.h
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRSubImage.messages.in
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRView.cpp
    M Source/WebKit/GPUProcess/graphics/WebGPU/RemoteXRView.h
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRBindingProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRBindingProxy.h
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRProjectionLayerProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRProjectionLayerProxy.h
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRSubImageProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRSubImageProxy.h
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRViewProxy.cpp
    M Source/WebKit/WebProcess/GPU/graphics/WebGPU/RemoteXRViewProxy.h
    M Websites/webkit.org/demos/webgpu/scripts/hello-triangle-xr.js

  Log Message:
  -----------
  [WebXR+WebGPU] Bringup red triangle
https://bugs.webkit.org/show_bug.cgi?id=278171
rdar://133958972

Reviewed by Dan Glastonbury.

Move WebXR WebGPU IPC calls behind the feature flag and some changes to
render to the MTLTexture from CompositorServices.

* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WTF/wtf/PlatformEnable.h:
* Source/WebCore/Modules/WebGPU/GPUTextureViewDescriptor.idl:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.cpp:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUConvertToBackingContext.h:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRBindingImpl.cpp:
(WebCore::WebGPU::XRBindingImpl::getViewSubImage):
(WebCore::WebGPU::XRBindingImpl::getPreferredColorFormat):
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRBindingImpl.h:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRProjectionLayerImpl.cpp:
(WebCore::WebGPU::XRProjectionLayerImpl::startFrame):
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRProjectionLayerImpl.h:
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRSubImageImpl.cpp:
(WebCore::WebGPU::XRSubImageImpl::colorTexture):
(WebCore::WebGPU::XRSubImageImpl::depthStencilTexture):
(WebCore::WebGPU::XRSubImageImpl::motionVectorTexture):
* Source/WebCore/Modules/WebGPU/Implementation/WebGPUXRSubImageImpl.h:
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRBinding.h:
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRProjectionLayer.h:
* Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUXRSubImage.h:
* Source/WebCore/Modules/webxr/WebXRLayer.h:
* Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp:
(WebCore::WebXROpaqueFramebuffer::startFrame):
* Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.h:
* Source/WebCore/Modules/webxr/WebXROpaqueFramebufferCocoa.cpp:
(WebCore::WebXROpaqueFramebuffer::startFrame):
* Source/WebCore/Modules/webxr/WebXRRenderState.cpp:
(WebCore::WebXRRenderState::setLayers):
* Source/WebCore/Modules/webxr/WebXRRenderState.h:
* Source/WebCore/Modules/webxr/WebXRSession.cpp:
(WebCore::WebXRSession::updateRenderState):
(WebCore::WebXRSession::frameShouldBeRendered const):
(WebCore::WebXRSession::onFrame):
* Source/WebCore/Modules/webxr/WebXRWebGLLayer.cpp:
(WebCore::WebXRWebGLLayer::startFrame):
* Source/WebCore/Modules/webxr/WebXRWebGLLayer.h:
* Source/WebCore/Modules/webxr/XRGPUBinding.cpp:
(WebCore::XRGPUBinding::XRGPUBinding):
(WebCore::XRGPUBinding::device):
(WebCore::XRGPUBinding::getViewSubImage):
(WebCore::XRGPUBinding::getPreferredColorFormat):
* Source/WebCore/Modules/webxr/XRGPUBinding.h:
* Source/WebCore/Modules/webxr/XRGPUProjectionLayerInit.h:
* Source/WebCore/Modules/webxr/XRGPUSubImage.cpp:
(WebCore::XRGPUSubImage::XRGPUSubImage):
(WebCore::m_viewport):
(WebCore::textureDescriptor):
(WebCore::XRGPUSubImage::colorTexture):
(WebCore::XRGPUSubImage::depthStencilTexture):
(WebCore::XRGPUSubImage::motionVectorTexture):
(WebCore::XRGPUSubImage::getViewDescriptor const):
(WebCore::XRGPUSubImage::viewport const):
* Source/WebCore/Modules/webxr/XRGPUSubImage.h:
(WebCore::XRGPUSubImage::create):
(WebCore::XRGPUSubImage::colorTexture const): Deleted.
(WebCore::XRGPUSubImage::depthStencilTexture const): Deleted.
(WebCore::XRGPUSubImage::motionVectorTexture const): Deleted.
* Source/WebCore/Modules/webxr/XRGPUSubImage.idl:
* Source/WebCore/Modules/webxr/XRProjectionLayer.cpp:
(WebCore::XRProjectionLayer::startFrame):
* Source/WebCore/Modules/webxr/XRProjectionLayer.h:
* Source/WebCore/Modules/webxr/XRSubImage.h:
(WebCore::XRSubImage::viewport const): Deleted.
* Source/WebCore/Modules/webxr/XRWebGLSubImage.h:
* Source/WebGPU/WebGPU/Device.h:
* Source/WebGPU/WebGPU/Device.mm:
(WebGPU::Device::Device):
(WebGPU::Device::getXRViewSubImage):
(WebGPU::Device::generateAValidationError):
* Source/WebGPU/WebGPU/MetalSPI.h:
* Source/WebGPU/WebGPU/Queue.h:
(WebGPU::Queue::setCommittedSignalEvent):

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



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list