Closed claudiuslollarius closed 6 years ago
Hi there, apologies for the delayed reply. Have you tried calling eglGetError rather than glGetError?
I recommend trying to use DXGI_FORMAT_B8G8R8A8_UNORM instead of R8G8B8A8. You should still use EGL_TEXTURE_RGBA in your pBufferAttributes though.
I also recommend comparing your code to the sample code available here:
Hope this helps!
I'm closing this old issue since I believe your question has been answered. Please feel free to reopen this issue if you have further questions on this topic. Thanks!
Hi! Does this interop work on Windows 7 too?
I created a Direct3D 9 device & texture, took shared HANDLE
from it & can confirm that it's working on Windows 10 & 11.
But, it is showing a blank screen on Windows 7.
One more thing I'd like to mention is that I needed glFlush
on Windows 11. Is there something I'm missing?
I recommend asking over on the main ANGLE repo, either their Google Group or their Slack channel. More info: https://chromium.googlesource.com/angle/angle/+/main/README.md
Mainly to work around the issues with Swapchainpanel resizing, I am trying to use Angle to render to an off screen buffer and draw that as a Bitmaplmage using Win2D, which has been working well for me so far.
I am trying to follow the instructions outlined here, so:
CanvasDevice^
, I get the underlyingID3D11Device
ID3D11Texture2D
withD3D11_RESOURCE_MISC_SHARED
set in the description'sMiscFlags
CanvasBitmap^
from the texture (this seems to work) viaCanvasBitmap::CreateFromDirect3D11Surface
IDXGIResource
from the sameID3D11Texture2D
, from that get a handle viadxgiResource->GetSharedHandle(&sharedHandle)
Up to this point, everything seems to work: I get a non null handle. However calls to
eglCreatePbufferFromClientBuffer
always returnEGL_NO_SURFACE
, andglGetError()
returns 0.What am I doing wrong?
I am quoting the relevant code below. You can also check the full source here. (look in the
LibretroRT.FrontendComponents.Renderer
project)