author Sam Lantinga
Sun, 05 Apr 2020 08:58:47 -0700
changeset 13689 c3055b205671
parent 10953 d617899aadee
permissions -rw-r--r--
Fixed bug 5015 - SDL_RenderReadPixels on DirectX 11.1 backend seems to be broken


It appears that I cannot use SDL_RenderReadPixels on a bound framebuffer (SDL_Texture set as render target) as it simply results in gibberish data. However, drawing that framebuffer into the default target (window surface) does render it correctly. Other backends (OpenGL, software, Direct3D) do work fine.

It looks to me like D3D11_RenderReadPixels just gets the general backbuffer and not the current render target and its backbuffer.

Here is the patch which actually fetches the current render target and its underlying ID3D11Resource which is ID3D11Texture2D.
     1 Mercurial
     2 =========
     4 The latest development version of SDL is available via Mercurial.
     5 Mercurial allows you to get up-to-the-minute fixes and enhancements;
     6 as a developer works on a source tree, you can use "hg" to mirror that
     7 source tree instead of waiting for an official release. Please look
     8 at the Mercurial website ( ) for more
     9 information on using hg, where you can also download software for
    10 Mac OS X, Windows, and Unix systems.
    12     hg clone
    14 If you are building SDL via configure, you will need to run
    15 before running configure.
    17 There is a web interface to the subversion repository at:
    20 There is an RSS feed available at that URL, for those that want to
    21 track commits in real time.