|
96b613ea
|
2014-07-13T09:04:55
|
|
Fixed bug 2640 - Unable to SDL_SetRenderTarget to original surface for software renderer without a window
Damian Kaczmarek
Basically this bug is probably not a common use case. My goal is to allow rendering totally without a window, for example to a screenshot and I need to rely on SDL_SetRenderTarget to properly work for a purely software renderer created by SDL_CreateSoftwareRenderer.
|
|
fd1da994
|
2014-07-12T16:21:56
|
|
Fixed bug 2639 - SDL_BLENDMODE_BLEND not working properly for software renderer, thanks to Melker Narikka
|
|
d23d9c88
|
2014-07-07T23:26:34
|
|
Fixed bug 2421 - SDL_RenderCopyEx off by one when rotating by 90 and -90
chasesan
When using SDL_RenderCopyEx, I get a problem on some platforms where the output is offset by +/-1 on other platforms and not on others. I tried it with a center of both 0,0 (and offsetting by width/height) and NULL (for centered).
The rotation involved is 90, and/or -90 rotation. The rotation was a constant, no arithmetic was involved when inputting it into SDL_RenderCopyEx.
This occurred with 32x32, 24x24, and 16x16 texture sizes. I apologize that I don't have more precise information, as I received the information as a bug report myself. But I have tracked the problem down to here.
My program requires pixel perfect alignment on several different platforms, so this is something of a showstopper for me.
--
Sylvain
It appears the RenderCopyEx is done as expected,
this is the red rectangle which is not correctly positionned !
So, here's patch with a 0.5 float increment, like for opengles2, for DrawLines, and also Draw Points.
|
|
7187b74c
|
2014-07-07T11:00:25
|
|
Fixed compiler warnings on iOS
|
|
1ee96bb9
|
2014-07-07T10:26:28
|
|
Fixed mingw64 build and warnings
|
|
2748e282
|
2014-07-03T10:22:12
|
|
The YUV offset is 16 / 255, not 16 / 256
|
|
3d5f4a69
|
2014-06-25T21:06:47
|
|
Fixed YUV texture update with a subrect in OpenGL ES 2.0 - thanks Sylvain!
|
|
b4deeeba
|
2014-06-25T00:58:40
|
|
Fixed bug 2595 - Padded, non-contiguous YUV does not display correctly using OpenGL ES 2.0 renderer
Sylvain
Ok, I found out : GLES2_UpdateTexture is just not handling the YUV, I will attach a patch.
|
|
e63e1a5e
|
2014-06-23T09:25:27
|
|
Fixes OpenGL ES 2 renderer (Thanks Sylvain Becker)
|
|
1b3d4e6d
|
2014-06-22T09:42:43
|
|
565 textures have higher priority than 555 textures
|
|
d65ac778
|
2014-06-22T02:48:43
|
|
Restore window OpenGL state if creating an OpenGL renderer fails
|
|
5df11f8a
|
2014-06-21T21:46:42
|
|
Made SDL_PIXELFORMAT_ARGB8888 the default texture format for consistency across renderer implementations.
|
|
62bdecc8
|
2014-06-21T12:45:54
|
|
Fixed compiler warning with new OpenGL ES header files
|
|
e8f8e672
|
2014-06-21T12:38:46
|
|
Fixed bug 2595 - Padded, non-contiguous YUV does not display correctly using OpenGL ES 2.0 renderer
Alvin
The new OpenGL ES 2.0 YUV Texture support does not correctly display padded, non-contiguous YUV data.
I am using SDL2 95bd3d33482e (as provided by 'hg id --id') from Mercurial.
The YUV data I am using is provided by the FFMPEG family of libraries. According to FFMPEG's documentation, "The linesize [pitch] may be larger than the size of usable data -- there may be extra padding present for performance reasons."
The dimensions of the video file that I am using are 480x360. What I get from FFMPEG is a Ypitch of 512, and Upitch and Vpitch are both 256.
When I pack new Y, U and V buffers with only the "usable" data (Ypitch is 480 and Upitch and Vpitch are both 240), and use those new buffers, the image is display correctly.
It appears that the Ypitch, Upitch and Vpitch parameters are not being used by SDL_UpdateYUVTexture().
I use SDL_PIXELFORMAT_YV12 for my YUV texture, however, the same results are seen when I use SDL_PIXELFORMAT_IYUV.
Not sure if this is related or not, but when I render the YUV texture (padded and unpadded) to a RGB24 texture, the resulting image is greyscale (or could by just the Y channel).
The URL field for this bug entry is set to my email (SDL mailing list archive) which includes an example image of what I see when rendering padded, non-contiguous YUV data.
|
|
af50403e
|
2014-06-15T18:09:39
|
|
Fixed bug 2575 - Current GL context tracking fails
Ronie Salgado
The GL Renderer current context tracking fails when one window is used with an SDL renderer but another separate window is used with a user handled OpenGL context.
Attached is a small program that reproduces this bug, at least in some Linux machines where an OpenGL renderer is provided by default.
Expected Output:
-"First window" should be blue.
-"Second window" should be green.
Gotten Output:
- "First window" black.
- "Second window" blue.
What happened:
The renderer created for the "first window" ends rendering into the "second window" OpenGL context.
Bug location:
SDL_render_gl.c - line 286 on hg:
static SDL_GLContext SDL_CurrentContext = NULL;
When making SDL_GL_MakeCurrent from the user perspective, that variable or the GL renderer is not notified about the OpenGL context change.
Solution proposal:
- Move the current GL context cache into another place global.
|
|
9fb2cc10
|
2014-06-07T11:36:08
|
|
dront78 implemented YUV texture support for OpenGL ES 2.0
|
|
1e352d79
|
2014-06-06T15:45:59
|
|
Chrome's Native Client backend implementation
|
|
4fd03b95
|
2014-06-04T10:57:52
|
|
Setting the window size changes the fullscreen display mode, unless a window display mode has been set.
Testing:
* Ran testsprite2 --fullscreen, used Ctrl+ and Ctrl- to change window sizes, verified that the display mode changed as well.
|
|
c15e26d7
|
2014-06-04T10:57:40
|
|
Fixed crash and lost pixel data when recovering from a lost device situation (e.g. alt-tab from fullscreen)
|
|
d623c0b4
|
2014-06-04T09:59:10
|
|
SDL_opengl: Fix Mac build with new glext.h
|
|
49c53fd2
|
2014-05-31T11:37:12
|
|
Use D3D9Ex when available
This hopefully works around crashes in Intel D3D9 support in Windows 8.1.
|
|
9bc47465
|
2014-05-18T21:11:30
|
|
Changed C++ style comments.
|
|
fb389950
|
2014-05-10T16:23:06
|
|
Fixes #2529, guard SDL_d3math.* with the proper defines
|
|
164e5b89
|
2014-05-09T21:28:52
|
|
WinRT: display-information code cleanups
|
|
0a879d63
|
2014-05-09T20:16:21
|
|
Fixed rendering-alignment issues on WinPhone 8.1, when the device was rotated
If a Windows Phone 8.1 device was rotated to anything but Portrait mode,
the Direct3D 11 renderer's output wouldn't get aligned correctly with the
screen.
|
|
ec5f6ad5
|
2014-04-30T21:12:47
|
|
WinRT: suppressed an unused param warning when building for Windows Phone 8.1
|
|
defd90b6
|
2014-04-19T13:15:41
|
|
Render: Allow empty cliprect.
This fixes an issue where an empty cliprect is treated the same as a NULL
cliprect, causing the render backends to disable clipping.
Also adds a new API, SDL_RenderIsClipEnabled(render) that allows you to
differentiate between:
- SDL_RenderSetClipRect(render, NULL)
- SDL_Rect r = {0,0,0,0}; SDL_RenderSetClipRect(render, &r);
Fixes https://bugzilla.libsdl.org/show_bug.cgi?id=2504
|
|
3dcb451f
|
2014-04-09T21:29:19
|
|
Added a README file regarding WinRT support
To note, this file is currently formatted with CRLF line endings, rather than
LF, to allow the file to be viewed with Notepad.
|
|
83200a32
|
2014-04-05T23:50:09
|
|
Removed empty statements.
|
|
a99bf4d7
|
2014-03-24T22:51:03
|
|
WinRT: Call IDXGIDevice3::Trim before app-suspend, as required on Windows 8.1
Thanks to Sylvain Becker for pointing this out!
|
|
26823b1b
|
2014-03-23T23:09:22
|
|
Added an event SDL_RENDER_DEVICE_RESET, which is triggered on Direct3D 11 when the device has been lost and all textures need to be recreated.
|
|
3317e434
|
2014-03-23T22:53:50
|
|
Fixing Alt-Enter handling, submitted by Nader Golbaz
I encountered a little issue: DXGI monitors application's message queue and this behavior interferes with SDL if the application already handles Alt-Enter sequence. I think it is necessary to disable this behavior.
http://msdn.microsoft.com/en-us/library/windows/desktop/bb174540%28v=vs.85%29.aspx
|
|
46a80b04
|
2014-03-23T16:08:32
|
|
D3D11: Fixed a crash after a GPU device-reset on Win32
|
|
6ce684e9
|
2014-03-23T13:48:16
|
|
D3D11: Added code to handle GPU-device-removed scenarios
These scenarios can happen when a GPU is switched, its driver updated, or in
some virtual machines (such as Parallels) are suspended and then resumed. In
these cases, all GPU resources will already be lost, and it's up to the app to
recover.
For now, SDL's D3D11 renderer will handle this by freeing all GPU resources,
including all textures, and then sending a SDL_RENDER_TARGETS_RESET event.
It's currently up to an app to intercept this event, destroy all of its
textures, then recreate them from scratch.
|
|
93ba5bd8
|
2014-03-20T16:23:18
|
|
Static analysis fix: uninitialized value.
(A false positive: clang doesn't know SDL_SetError() always returns -1.)
|
|
415675be
|
2014-03-20T11:14:44
|
|
Static analysis fix: division by zero.
|
|
b659c700
|
2014-03-20T10:41:47
|
|
Static analysis fix: uninitialized variables.
This is actually a false-positive, in this case, since Clang doesn't know
that SDL_SetError() only ever returns -1. Feature request to improve that,
with explanation about these specific SDL patches, is here:
http://llvm.org/bugs/show_bug.cgi?id=19208
|
|
e84fc5a3
|
2014-03-19T18:25:21
|
|
Static analysis fix: division by zero.
|
|
f25ee50b
|
2014-03-15T14:54:23
|
|
Fixed broken rotation detection routines on WinRT
Rotation detection and handling should now work across all, publicly-released,
WinRT-based platforms (Windows 8.0, Windows 8.1, and Windows Phone 8.0).
|
|
5281f9f1
|
2014-03-15T13:27:18
|
|
Fixed a crash on Windows Phone 8 that occurred after rotating a device
This changeset prevents IDXGISwapChain::ResizeBuffers from being invoked on
Windows Phone 8, a function that isn't available on the platform (but is
available on other Windows platforms). The call would fail, which ultimately
led to a crash.
This changeset also attempts to make sure that the D3D11 swap chain is created
at the correct size, when using Windows Phone 8.
Still TODO: make sure rotation-querying works across relevant Windows
platforms (that support Direct3D 11.x).
|
|
f9a58968
|
2014-03-13T21:21:26
|
|
Added missing copyright notices
|
|
ed02f61d
|
2014-03-13T00:40:08
|
|
Fixed the copyright date on files contributed by David Ludwig
|
|
4cd5ed7b
|
2014-03-12T12:12:20
|
|
Merged various WinRT build fixes
|
|
b68b6e23
|
2014-03-12T11:57:15
|
|
Fixed various build and runtime errors when using WinRT with VS2012.
|
|
641ba099
|
2014-03-12T07:26:07
|
|
Fixed compiling Windows RT code on Visual Studio 2013
|
|
36e7c8d9
|
2014-03-11T12:40:31
|
|
Fixed compiler errors in the D3D11 renderer when building for WinRT
Still TODO: fix other build errors, especially linker errors, when building
SDL/WinRT, then fix any runtime errors that pop up.
|
|
ce3c5b84
|
2014-03-10T22:53:03
|
|
Made VS2012 build the D3D11 renderer
This change is currently limited to Win32/Windows-Desktop builds. Build fixes
for WinRT + VS2012 are still pending.
|
|
2c558ca2
|
2014-03-10T17:19:19
|
|
Fixed D3D9 initialization on Windows 8, which doesn't have D3DX
|
|
9c2fb684
|
2014-03-10T15:00:59
|
|
Implemented fullscreen <-> windowed transition on Windows 8
|
|
7e8b2553
|
2014-03-10T14:35:37
|
|
Fixed line endings
|
|
3df586ce
|
2014-03-10T12:49:15
|
|
Fixed creating the rendering context on a specific device
|
|
9aa5b1d4
|
2014-03-10T05:44:34
|
|
Implemented YV12 and IYUV texture support for the D3D11 renderer
|
|
965cdf10
|
2014-03-10T02:13:44
|
|
Minor style tweaks
|
|
1a35f32b
|
2014-03-10T01:51:03
|
|
Converted David Ludwig's D3D11 renderer to C and optimized it.
The D3D11 renderer is now slightly faster than D3D9 on my Windows 8 machine (testsprite2 runs at 3400 FPS vs 3100 FPS)
This will need tweaking to fix the Windows RT build.
|
|
a8f540fe
|
2014-03-09T22:48:38
|
|
Fixed renderer flags to include support for target textures after the renderer is created.
|
|
1367bf87
|
2014-03-09T11:36:47
|
|
Integrated David Ludwig's support for Windows RT
|
|
05c23063
|
2014-03-09T11:06:11
|
|
Fixed line endings on WinRT source code
|
|
f61602b4
|
2014-02-27T20:21:46
|
|
Improve window recreation logic in OpenGL* renderers
|
|
4c192bc8
|
2014-02-25T17:42:34
|
|
Fixes #2308, recreate window if GL requirements for the renderer are not met
If the window has been created with values for SDL_GL_CONTEXT_PROFILE_MASK,
SDL_GL_CONTEXT_MAJOR_VERSION and SDL_GL_CONTEXT_MINOR_VERSION not matching those
required by the renderer, attempt to recreate the window.
This is needed on platforms where both GL and GLES 1/2 surfaces are supported
by the video backend, requiring that the window be recreated when switching
between context types.
|
|
8db4c5a9
|
2014-02-25T10:04:49
|
|
Fixed crash if the input data pitch is larger than the locked texture pitch
|
|
6ee12d6c
|
2014-02-24T18:57:22
|
|
Fixes #2296 - SDL_GL_UnbindTexture segfaults (thanks Daniel B?nzli)
|
|
22e3217e
|
2014-02-20T21:07:56
|
|
Fixed infinite recursion in D3D_Reset()
|
|
6b33f2e8
|
2014-02-17T22:20:33
|
|
Fixed resetting the current render target if the D3D device is reset while using a non-default render target.
|
|
076a14b2
|
2014-02-10T13:40:02
|
|
Fixed crash if render target textures are used while the device is lost
|
|
ae05f178
|
2014-02-10T10:02:51
|
|
Recreate render target textures when the D3D device is being reset, and notify the application using the SDL_RENDER_TARGETS_RESET event when this happens.
|
|
3ab3ea64
|
2014-02-09T01:56:41
|
|
Fixed bug 2385 - error: unknown type name 'IDirect3DDevice9'
Sandu Liviu Catalin
I'm unable to compile the latest SDL (directly from the repository) even though I disabled every DirectX option since I don't need DirectX.
I allways het these errors:
D:\DevLibs\SDL\src\render\direct3d\SDL_render_d3d.c:1897:1: error: unknown type name 'IDirect3DDevice9'
D:\DevLibs\SDL\src\render\direct3d\SDL_render_d3d.c:1898:25: error: unknown type name 'SDL_Renderer'
|
|
b331ada8
|
2014-02-09T01:49:01
|
|
Fixed bug 2354 - [ES 2.0] SDL_RenderClear clears render target with wrong color
ny00
SDL_RenderClear clears a render target with the wrong color, if the opengles2 renderer driver is used and the target texture's format is SDL_PIXELFORMAT_ARGB8888.
The bug is *not* reproduced if SDL_PIXELFORMAT_ABGR8888 is used as the texture format (the first from the renderer's list).
It is further not reproduced using any of the following renderer drivers: opengl, opengles (apparently powered by Gallium3D), software.
Finally, the correct color can be drawn using SDL_RenderFillRect (instead of SDL_RenderClear).
A few details about the current setup:
- OS: Ubuntu 12.04 for x86_64
- GPU: GeForce GTX 460
- GPU driver version: 331.20-0ubuntu1~xedgers~precise1 (from the xorg-edgers PPA)
---
Seth Williams
Sam,
It appears that the clear just needs to take the render target format into consideration.
Seth.
|
|
58edac3e
|
2014-02-02T00:53:27
|
|
Fixed bug 2374 - Update copyright for 2014...
Is it that time already??
|
|
aff44ccd
|
2014-01-27T16:13:13
|
|
Patched to compile...uh, everywhere. :)
|
|
87cfee27
|
2014-01-27T16:10:15
|
|
Patched to compile on Windows when not supporting Direct3D.
|
|
44b0e901
|
2013-12-30T11:59:04
|
|
WinRT: d3d11 blend mode bug fixes
The destination target's alpha wasn't getting set correctly in many cases. Among other problems, this prevented some alpha-blended textures from displaying correctly in Windows Phone 8's multitasking screen.
The d3d11 renderer now uses the same blending settings found in the d3d9 renderer.
|
|
0562e53f
|
2013-12-26T11:04:35
|
|
WinRT: minor header file usage cleanup in the d3d11 renderer
|
|
94233675
|
2013-12-26T11:03:43
|
|
WinRT: simplified the d3d11 vertex shader a bit
The projection and view matrices are now computed ahead of time, as they both get computed in the same spot, and typically not often. If this does, however, become a performance problem later on, this change can always be reverted.
|
|
7ef05d26
|
2013-12-26T10:18:33
|
|
WinRT: implemented SDL_RenderSetClipRect for the d3d11 renderer
|
|
700f82de
|
2013-12-25T23:46:19
|
|
WinRT: corrected a minor error in an end-of-file comment
|
|
8b2694f9
|
2013-12-25T23:45:07
|
|
WinRT: minor rotation/orientation code cleanup in the d3d11 renderer
|
|
b93ab1e6
|
2013-12-25T23:25:25
|
|
WinRT: removed a bit of dead d3d11 code
|
|
f0e406e9
|
2013-12-25T22:27:58
|
|
WinRT: d3d11 compiled-shader code cleanup
I'm surprised this code even compiled, before this change. It did, but regardless, here's a cleanup.
|
|
4d16628f
|
2013-12-25T22:05:18
|
|
WinRT: made sure d3d11 debug mode doesn't get enabled by default
D3D11 debug mode got inadvertently enabled, in all cases, via changeset c0e68f3. This change reverts that.
|
|
ce805722
|
2013-12-25T21:39:48
|
|
WinRT: compiled the d3d11 renderer's shaders into SDL itself
Previously, the shaders would get compiled separately, the output of which would need to be packaged into the app. This change should make SDL's dll be the only binary needed to include SDL in a WinRT app.
|
|
8db33416
|
2013-12-25T14:20:40
|
|
WinRT: added a TODO note regarding texture-[un]locking in the d3d11 renderer
|
|
187f52e8
|
2013-12-25T14:17:49
|
|
WinRT: renamed d3d11-internal struct, SDL_VertexShaderConstants, to just VertexShaderConstants
This is primarily to keep naming consistent with other shader-bound structs.
|
|
22254931
|
2013-12-25T13:13:15
|
|
WinRT: moved contents of the d3d11 renderer's header file into its implementation file
|
|
d4ae3929
|
2013-12-25T13:00:41
|
|
WinRT: simplified a potentially-common error message from D3D11_SetRenderTarget
|
|
b0df9157
|
2013-12-25T12:58:37
|
|
WinRT: removed an unnecessary use of std::string in the d3d11 renderer
|
|
10f2de1e
|
2013-12-25T12:52:16
|
|
WinRT: utilized SDL_SetError's return value in the d3d11 renderer
|
|
43e27aa8
|
2013-12-25T12:48:47
|
|
WinRT: minor d3d11 code cleanups
|
|
8c8feb83
|
2013-12-25T12:47:39
|
|
WinRT: made d3d11-spawned error messages trickle down
Some error messages had the potential to be overwritten/obscured.
|
|
5fba7db2
|
2013-12-25T12:43:26
|
|
WinRT: made d3d11-spawned error messages include the function name of failed calls
|
|
7fe277cd
|
2013-12-23T17:15:32
|
|
Fixed float to int conversion warning, which was a legitimate bug.
|
|
5e6aba06
|
2013-12-22T21:13:35
|
|
WinRT: better rendering performance via D3D11_USAGE_DYNAMIC
|
|
472068dd
|
2013-12-19T06:01:18
|
|
fixed gles/gles2 renderer creation fail on Android when default major/minor version doesn't match
|
|
ec1cb49e
|
2013-12-14T20:18:43
|
|
Wayland support
Based on the original port to Wayland by: Joel Teichroeb, Benjamin Franzke, Scott Moreau, et al.
Additional changes in this commit, done by me:
* Wayland uses the common EGL framework
* EGL can now create a desktop OpenGL context
* testgl2 loads GL functions dynamically, no need to link to libGL anymore
* Assorted fixes to the Wayland backend
Tested on the Weston Compositor (v1.0.5) that ships with Ubuntu 13.10,
running Weston under X. Tests ran: testrendercopyex (all backends), testgl2, testgles2,testintersections
|
|
446a2704
|
2013-12-10T22:34:08
|
|
WinRT: fixed bug: SDL_RenderReadPixels didn't work with certain orientations of the physical display
|
|
f848adff
|
2013-11-29T10:06:08
|
|
Improve Android pause/resume behavior.
|
|
b6f80d85
|
2013-11-29T00:19:46
|
|
WinRT: enable the OpenGL ES 2 SDL_Renderer backend, if and when OpenGL ES 2 support is compiled in
|
|
46740a5a
|
2013-11-28T22:09:21
|
|
WinRT: merged with latest SDL 2.x/HG code
SDL 2.x recently accepted patches to enable OpenGL ES 2 support via Google's ANGLE library. The thought is to try to eventually merge SDL/WinRT's OpenGL code with SDL-official's.
|
|
7e1289af
|
2013-11-24T23:56:17
|
|
Make internal SDL sources include SDL_internal.h instead of SDL_config.h
The new header will include SDL_config.h, but allows for other global stuff.
|
|
61959aa6
|
2013-11-22T13:24:53
|
|
OpenGL ES support for Windows
|
|
8093cfd8
|
2013-11-15T22:07:35
|
|
Better fix for bug 2207 - SDL_RenderSetViewport behavior is different/incorrect on OpenGL renderer vs DirectX renderer
At least, it works better here on my Mac. :)
|