kc3-lang/SDL/src/render

Branch :


Log

Author Commit Date CI Message
5346c93b 2022-01-08 12:28:43 Fixed assertion on number of points rendered
4b719620 2022-01-08 12:02:08 Prevent overdraw with connected line segments
09ece861 2022-01-08 11:36:29 Added the hint SDL_HINT_RENDER_LINE_METHOD to select the line rendering method
c1e60798 2022-01-08 11:09:11 As an optimization, draw horizontal and vertical lines using rectangles
3da7c630 2022-01-08 11:07:03 Assert that we have drawn the expected number of points
9f56faee 2022-01-08 10:59:31 Added line drawing using Bresenham's line algorithm (thanks @rtrussell!)
fe3a33a0 2022-01-08 10:10:18 Use RenderGeometry for drawing lines at all scales
1694782b 2022-01-08 09:32:23 Remove redundant work when render scale is 1.0
2026a78d 2022-01-08 09:23:58 Don't flush in RenderDraw*WithRects() This allows these functions to be reused in the future for other primitives
18e4d9fe 2022-01-08 09:02:25 Re-enable line drawing path in render drivers This is still used for scaled line drawing in RenderDrawLinesWithRects()
4472b831 2022-01-08 11:56:56 PSP_RunCommandQueue: fix argument to PSP_SetBlendState() src/render/psp/SDL_render_psp.c: In function 'PSP_RunCommandQueue': src/render/psp/SDL_render_psp.c:1200: warning: passing argument 1 of 'PSP_SetBlendState' from incompatible pointer type
cc201337 2022-01-07 20:20:57 render: Fixed some compiler warnings. Fixes #5197.
6d3b5d66 2022-01-07 18:18:53 psp: draw lines with RenderGeometry, same as with the other renderers.
9cb2c549 2022-01-07 22:43:30 Remove QueueDrawLines from D3D, D3D11
b88b6b3c 2022-01-07 22:43:12 Remove QueueDrawLines from METAL
9aac5531 2022-01-07 22:42:52 Remove QueueDrawLines from GL, GLES, GLES2
8ea8b2e6 2022-01-07 22:42:13 Use QueueDrawLine if provided, otherwise use RenderGeometry
c4987274 2022-01-07 22:14:28 render: Use RenderGeometry to draw lines This patch is from @1bsyl Fixes #5061.
4b38d4c9 2022-01-07 12:37:28 Leave the Metal view active on the window when recreating the Metal renderer Fixes https://github.com/libsdl-org/SDL/issues/5140 Also move the metal tag definition to SDL_syswm.h so it can be used by applications
88ac517d 2022-01-07 15:03:47 opengles2: Fix point drawing.
515b5f2a 2021-12-22 12:04:10 Fix build errors in PSP port
34e34ad5 2021-12-22 11:43:07 Remove debug code from PSP renderer
520c89a0 2021-01-19 20:11:36 cleaning
09f4711f 2021-01-09 12:52:55 Fix LRU when destroying texture.
c3ec62d6 2021-01-09 11:25:39 PSP lazier blend states, display mode report with 16bit option
0f5368fe 2021-01-09 10:33:38 PSP cached blending and texturing state, ABGR1555 stencil hack
fe405eb2 2020-12-28 14:00:53 fixed LRU cache code
c1f15229 2020-12-27 11:43:22 Spill render targets to ram on PSP
77d874e3 2020-12-26 19:20:17 Attempt to make render to texture work on PSP
120c76c8 2022-01-03 09:40:00 Updated copyright for 2022
8622eda9 2022-01-02 22:34:56 SDL_RenderGeometry / software: TRIANGLE_GET_TEXTCOORD interpolates up to the max values included, so reduce by 1
724468ae 2021-12-13 15:48:55 GL renderer uses glDrawArrays instead of glBegin/glEnd. Also change internal colors sent to GL to use unorm8 components instead of float, for improved performance.
44c84c0d 2021-12-17 17:44:34 GLES2/Big-endian: don´t swap datas for yuv textures (Thanks 0x1F9F1 !)
3a69828e 2021-12-17 13:15:39 Fixed GLES2 back-end on Big Endian Platform (see #5093)
3d5fcb5d 2021-12-16 11:10:07 Fix warning
4342e6bd 2021-12-16 10:53:27 SDL_render.c: lighten the cast syntax
50d49c63 2021-12-16 10:52:36 GLES2 backend: cast with SDL_Vertex and SDL_VertexSolid
0b7b0977 2020-12-27 17:51:39 fix PSP texure artifacts
0341ec93 2021-11-26 11:34:40 Improve performance when vsync is enabled and the game is not reaching the 60 FPS
3a5e148b 2021-12-14 11:02:07 Renderer backends use SDL_Color instead of int for geometry colors.
b08e57e9 2021-12-14 09:32:05 Don't try to create a vbo if we aren't using any vertices
b7885abc 2021-12-14 10:31:55 Fixed bug #5087: SDL_RenderGeometryRaw() passes colors as int* instead of SDL_Color*
323ba6c0 2021-12-13 18:27:49 d3d11 renderer: reduce vertex bandwidth and calculations.
8927d73b 2021-12-12 09:55:23 RenderGeometry: simplify casting (Thanks Daniel Gibson)
d7f66ba1 2021-12-11 20:04:53 Remove strict aliasing warning in opengles2 backend
3e43d6e3 2021-12-11 17:19:00 SDL_RenderGeometry: remove some warning "dereferencing type-punned pointer might break strict-aliasing"
1940d289 2021-12-08 09:41:33 SW Renderer: fix invalid read if VSYNC hint is initially set with an empty value (eg "") because: - GeHint return a value pointer. - SetHint free internally the pointer - The -now invalid- pointer is re-read ==9363== Invalid read of size 1 ==9363== at 0x4946860: SW_CreateRenderer (SDL_render_sw.c:1044) ==9363== by 0x48F0EC3: SDL_CreateRenderer_REAL (SDL_render.c:938) ==9363== by 0x48C5921: SDL_CreateRenderer (SDL_dynapi_procs.h:332) ==9363== by 0x401584: main (main.c:421) ==9363== Address 0x9c24040 is 0 bytes inside a block of size 1 free'd ==9363== at 0x484621F: free (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so) ==9363== by 0x494E403: SDL_free_REAL (SDL_malloc.c:5432) ==9363== by 0x48A6153: SDL_SetHintWithPriority_REAL (SDL_hints.c:76) ==9363== by 0x48A6254: SDL_SetHint_REAL (SDL_hints.c:101)
21d46b7e 2020-12-26 12:46:07 PSP renderer fixed
801dcbc5 2021-12-07 14:04:10 SDL_render_sw.c: fix -Wshadow warnings.
e17a3154 2021-12-07 10:56:48 Fix build issue
7266cf66 2021-12-07 10:54:30 Clean up PSP render code to fit C standard used better
07608bf4 2021-12-07 10:36:19 Fix ISO C90 violations in psp render code
d09f80ef 2021-12-07 11:31:57 SDL_DrawPointsF: fix error message typo
6dafc850 2021-12-07 10:44:12 SDL_DrawLines: minor simpification: - scale is 1.0f, don't need to multiply - typo in error message - remap SDL_DrawLines to SDL_DrawLinesF
a0818a63 2021-12-07 10:07:15 Fixed bug #5071 - Float conversion warnings in SDL_render.c (see also #5003)
e14d1026 2021-11-26 13:12:22 Change viewport and cliprect to float version: from SDL_Rect to SDL_FRect
7828362d 2021-11-24 16:45:06 SDL_Renderer software, D3D11: don't use "renderer->viewport" in back-ends, but use the one from SETVIEWPORT cmd
b786c100 2021-11-26 19:45:16 SDL_render_gl.c: GL_RunCommandQueue: always set viewport_dirty on macOS Without this, moving the window changes the viewport and causes contents to render stretched. Fixes #1504
86c0cf2b 2021-11-26 14:31:20 software: Draw a single pixel for a line with the same start/end point. Otherwise it would drop it, which seems like a bug to me, as it normally fills the endpoint on lines. Reference #2006.
e77cfb9a 2021-11-24 00:29:45 Fixed d3d11 renderer creation
2a24418b 2021-11-23 09:44:37 More "Integer overflow generates Illegal instruction under sanitizers" (see bug #4995)
8dd6edec 2021-11-23 09:30:42 Fixed bug #3232 - Integer overflow generates Illegal instruction under sanitizers + see bug #4995
e18be04b 2021-11-23 08:01:02 Fixed undefined behavior in QueueCmdSetDrawColor() Fixes https://github.com/libsdl-org/SDL/issues/4995 Patch from Andrew Kelley
aef71054 2021-11-22 16:58:04 Use SDL_free
fb218e58 2021-11-22 16:16:04 PSP: use SDL_malloc/SDL_free
161dd83c 2021-11-22 11:15:23 Don´t use "trunc" as var name, since it's also a function
d31251b0 2021-11-21 22:30:48 use SDL's functions version inplace of libc version
49369142 2021-11-21 17:40:48 Fixed bug #4625: with integer scale, viewport (as reported by SDL_RenderGetViewport) becomes -2147483648x-2147483648 0 isn't valid scale. Min integer scale is 1.0f
9ec2b351 2021-11-15 13:45:53 Fixed the GLES2 shader count to be in sync with the enum
d4df5d33 2021-11-15 09:43:44 GLES2: prevent batching if blend mode changes (see bug #4964)
92f2fdfc 2021-11-15 09:36:18 GLES2: batch non joined lines (see #4964)
17f156fa 2021-11-15 09:08:09 Fixed bug #4964 - opengles2 & batching = conjoined lines put back the initial switch case because groups of joined lines cannot be batched.
d8888e46 2021-11-15 08:37:49 Fixed bug #4964 - opengles2 & batching = conjoined lines
c55ab963 2021-11-13 22:21:57 Added a hint for alternate OpenGL NV12 data format
70c8d20a 2021-11-13 15:04:19 Revert previous commit a50ca98e2b9ca10368b62e93b6a0977dc68fd584 (see bug #4625)
a50ca98e 2021-11-13 14:48:36 Fixed bug #4625 - SDL_RenderSetLogicalSize issues viewport becomes -2147483648x-2147483648 when logical_w/h is greater than window size. division should be done with floats
3bf7994f 2021-09-27 14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Clang before Clang 10 and GCC before GCC 7 have problems with using __attribute__ as a sole statement and warn about a "declaration not declaring anything", so fall back to using the /* fallthrough */ comment if we are using those older compiler versions. Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
abc12a83 2021-11-11 15:58:44 Revert "Add and use `SDL_FALLTHROUGH` for fallthroughs" This reverts commit 66a08aa3914a98667f212e79b4f0b9453203d656. This causes problems with older compilers: https://github.com/libsdl-org/SDL/pull/4791#issuecomment-966630997
66a08aa3 2021-09-27 14:38:12 Add and use `SDL_FALLTHROUGH` for fallthroughs Case fallthrough warnings can be suppressed using the __fallthrough__ compiler attribute. Unfortunately, not all compilers have this attribute, or even have __has_attribute to check if they have the __fallthrough__ attribute. [[fallthrough]] is also available in C++17 and the next C2x, but not everyone uses C++17 or C2x. So define the SDL_FALLTHROUGH macro to deal with those problems - if we are using C++17 or C2x, it expands to [[fallthrough]]; else if the compiler has __has_attribute and has the __fallthrough__ attribute, then it expands to __attribute__((__fallthrough__)); else it expands to an empty statement, with a /* fallthrough */ comment (it's a do {} while (0) statement, because users of this macro need to use a semicolon, because [[fallthrough]] and __attribute__((__fallthrough__)) require a semicolon). Applications using SDL are also free to use this macro (because it is defined in begin_code.h). All existing /* fallthrough */ comments have been replaced with this macro. Some of them were unnecessary because they were the last case in a switch; using SDL_FALLTHROUGH in those cases would result in a compile error on compilers that support __fallthrough__, for having a __attribute__((__fallthrough__)) statement that didn't immediately precede a case label.
6c4b4ee7 2021-11-10 09:41:43 Don't assert on API parameters This causes lots of spam in test automation and it's not clear it's useful to developers. If we need this level of validation, we should add a log category for it.
3a31a450 2021-11-10 05:24:31 End the scene before resetting the D3D device, since we'll start with BeginScene after that. If we don't do this, we'll end up with unbalanced Begin/End scene pairs which causes D3DERR_INVALIDCALL in the present. Fixes https://github.com/libsdl-org/SDL/issues/4933
0d987936 2021-11-09 22:03:42 testwm2: Fix video modes menu hit detection when highdpi or logical size used (#4936) * SDLTest_CommonDrawWindowInfo: log SDL_RenderGetScale, SDL_RenderGetLogicalSize * testwm2: fix video modes menu hit detection in High DPI cases - also when logical size is specified, e.g. `--logical 640x480 --resizable --allow-highdpi` * add function to determine logical coordinates of renderer point when given window point * change since to the targeted milestone * fix typo * rename for consistency * Change logical coordinate type to float, since we can render with floating point precision. * add function to convert logical to window coordinates * testwm2: use new SDL_RenderWindowToLogical * SDL_render.c: alternate SDL_RenderWindowToLogical/SDL_RenderLogicalToWindow Co-authored-by: John Blat <johnblat64@protonmail.com> Co-authored-by: John Blat <47202511+johnblat64@users.noreply.github.com>
04f42e04 2021-11-09 11:50:49 metal: Deal better with -[CAMetalLayer nextDrawable] returning nil. Fixes #4863.
637bcd0b 2021-11-07 11:19:07 Fixed build warnings
848d7b12 2021-11-02 16:12:55 Vita: Implement command batching
3f7a94fc 2021-11-02 15:16:48 Vita: Remove FillRects
fba82ad1 2021-10-31 12:38:08 Remove sceGxmFinish from RenderPresent on Vita. Make sure that rendering is finished on render texture during locking
4960cc3d 2021-10-25 16:18:40 Fixed a few warnings
b7933945 2021-10-25 13:46:40 SDL_Renderer: make clear that we use render geometry for fillrect/copy/copyex when there is no specific back-end implementation (currently software, PSP, directfb)
b3f9d8f3 2021-10-25 07:05:50 remove unused local vars after the latest commits.
502e9c3b 2021-10-24 17:16:49 SDL_Renderer simplifications: - Factorize PrepQueueCmdDraw{,DrawTexture,Solid) into one single function - Change SDL_Texture/Renderer r,g,b,a Uint8 into an SDL_Color, so that it can be passed directly to RenderGeometry - Don't automatically queue a SET_DRAW_COLOR cmd for RenderGeometry (and update GLES2 renderer)
79732c9d 2021-09-25 11:35:20 Remove FillRects from back-end, where RenderGeometry can be used
f02ad282 2021-09-25 11:31:18 Remove FillRects from back-end, where RenderGeometry can be used
70b10c75 2021-09-24 22:39:49 Use correct indices when using RenderGeometry / FillRects
16beed9a 2021-09-24 17:09:04 Less code since color is constant when done with triangles
99a34643 2021-09-24 09:42:04 OpenGLES2: LINES and POINTS successive commands are combined into a single draw call (using the same case for DRAW_GEOMETRY)
f0cdc1d0 2021-09-24 09:38:25 OpenGLES2: remove FillRects, since it's can be done with RenderGeometry
37c39d5c 2021-09-23 22:45:45 Use geometry to implement FillRects
b0eef52f 2021-09-23 22:32:29 GLES2 batching: probably need to check for blendMode changes
c27e1249 2021-09-20 17:17:34 Remove SDL_HAVE_RENDER_GEOMETRY define