Changeset 278528 in webkit


Ignore:
Timestamp:
Jun 5, 2021, 4:22:30 PM (4 years ago)
Author:
dino@apple.com
Message:

[WebXR] Supply an IOSurface in SimulatedXRDevice
https://bugs.webkit.org/show_bug.cgi?id=226564
<rdar://problem/78793086>

Reviewed by Sam Weinig.

Rather than handle the case where we get a null IOSurface,
have the SimulatedXRDevice create one on each frame.

  • Modules/webxr/WebXROpaqueFramebuffer.cpp:

(WebCore::WebXROpaqueFramebuffer::startFrame):

  • testing/WebFakeXRDevice.cpp:

(WebCore::SimulatedXRDevice::frameTimerFired):

Location:
trunk/Source/WebCore
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r278527 r278528  
     12021-06-05  Dean Jackson  <dino@apple.com>
     2
     3        [WebXR] Supply an IOSurface in SimulatedXRDevice
     4        https://bugs.webkit.org/show_bug.cgi?id=226564
     5        <rdar://problem/78793086>
     6
     7        Reviewed by Sam Weinig.
     8
     9        Rather than handle the case where we get a null IOSurface,
     10        have the SimulatedXRDevice create one on each frame.
     11
     12        * Modules/webxr/WebXROpaqueFramebuffer.cpp:
     13        (WebCore::WebXROpaqueFramebuffer::startFrame):
     14        * testing/WebFakeXRDevice.cpp:
     15        (WebCore::SimulatedXRDevice::frameTimerFired):
     16
    1172021-06-05  Simon Fraser  <simon.fraser@apple.com>
    218
  • trunk/Source/WebCore/Modules/webxr/WebXROpaqueFramebuffer.cpp

    r278526 r278528  
    121121
    122122#if USE(IOSURFACE_FOR_XR_LAYER_DATA)
    123     if (!data.surface)
    124         return;
     123    ASSERT(data.surface);
    125124
    126125    auto gCGL = static_cast<GraphicsContextGLOpenGL*>(m_context.graphicsContextGL());
  • trunk/Source/WebCore/testing/WebFakeXRDevice.cpp

    r278259 r278528  
    3636#include <wtf/MathExtras.h>
    3737
     38#if USE(IOSURFACE_FOR_XR_LAYER_DATA)
     39#include "IOSurface.h"
     40#endif
     41
    3842namespace WebCore {
    3943
     
    147151    for (auto& layer : m_layers) {
    148152#if USE(IOSURFACE_FOR_XR_LAYER_DATA)
    149         data.layers.add(layer.key, FrameData::LayerData { });
     153        data.layers.add(layer.key, FrameData::LayerData { .surface = IOSurface::create(recommendedResolution(PlatformXR::SessionMode::ImmersiveVr), DestinationColorSpace::SRGB()) });
    150154#else
    151155        data.layers.add(layer.key, FrameData::LayerData { .opaqueTexture = layer.value });
Note: See TracChangeset for help on using the changeset viewer.