Commit 7718c05b by John Bauman

Enable EGL_ANGLE_keyed_mutex on D3D11

Pbuffers created using eglCreatePbufferFromClientBuffer from share handles created using keyed mutexes can now have their keyed mutex queried. All other pbuffers will continue to be created without keyed mutexes. BUG=337606 Change-Id: Id9039064dd8c89fe1706cc8ecb31111c994761fc Reviewed-on: https://chromium-review.googlesource.com/324253Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 00140f4a
...@@ -1078,10 +1078,7 @@ void Renderer11::generateDisplayExtensions(egl::DisplayExtensions *outExtensions ...@@ -1078,10 +1078,7 @@ void Renderer11::generateDisplayExtensions(egl::DisplayExtensions *outExtensions
outExtensions->surfaceD3DTexture2DShareHandle = true; outExtensions->surfaceD3DTexture2DShareHandle = true;
} }
#ifdef ANGLE_ENABLE_KEYEDMUTEX
outExtensions->keyedMutex = true; outExtensions->keyedMutex = true;
#endif
outExtensions->querySurfacePointer = true; outExtensions->querySurfacePointer = true;
outExtensions->windowFixedSize = true; outExtensions->windowFixedSize = true;
outExtensions->surfaceOrientation = true; outExtensions->surfaceOrientation = true;
......
...@@ -263,9 +263,11 @@ EGLint SwapChain11::resetOffscreenColorBuffer(int backbufferWidth, int backbuffe ...@@ -263,9 +263,11 @@ EGLint SwapChain11::resetOffscreenColorBuffer(int backbufferWidth, int backbuffe
} }
} }
} }
mKeyedMutex = d3d11::DynamicCastComObject<IDXGIKeyedMutex>(mOffscreenTexture);
} }
// This may return null if the original texture was created without a keyed mutex.
mKeyedMutex = d3d11::DynamicCastComObject<IDXGIKeyedMutex>(mOffscreenTexture);
D3D11_RENDER_TARGET_VIEW_DESC offscreenRTVDesc; D3D11_RENDER_TARGET_VIEW_DESC offscreenRTVDesc;
offscreenRTVDesc.Format = backbufferFormatInfo.rtvFormat; offscreenRTVDesc.Format = backbufferFormatInfo.rtvFormat;
offscreenRTVDesc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2D; offscreenRTVDesc.ViewDimension = D3D11_RTV_DIMENSION_TEXTURE2D;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment