Commit graph

4013 commits

Author SHA1 Message Date
Sam Lantinga
37f40cdb19 Allow SDL_HINT_FRAMEBUFFER_ACCELERATION to specify the renderer to use. 2011-02-05 10:11:27 -08:00
Sam Lantinga
ce1ef46aeb Added a hint to determine whether framebuffer texture acceleration should be used, and added default behaviors for the various platforms. 2011-02-05 10:03:12 -08:00
Sam Lantinga
7f7bf51bdb Added a hint system to allow configuration hints to be specified by the application. 2011-02-05 10:02:39 -08:00
Sam Lantinga
d3229ca45a Removed execute permissions on source files. 2011-02-05 01:03:51 -08:00
Sam Lantinga
08c975d3ab Fixed permissions on the Android config header. 2011-02-05 01:02:24 -08:00
Sam Lantinga
f59b2ba3fb Updated the name of the Direct3D renderer. 2011-02-05 00:34:34 -08:00
Sam Lantinga
12098369fe Allow resizing of testsprite 2011-02-04 21:46:38 -08:00
Sam Lantinga
8209e2a9a9 Restored SDL_BLENDMODE_MOD for MAME 2011-02-04 19:50:56 -08:00
Sam Lantinga
31f1dceb0c Removed a bunch of X11 support that we no longer need. 2011-02-04 19:18:08 -08:00
Sam Lantinga
3bcc4afe75 Added the X11 framebuffer implementation. Simple! :) 2011-02-04 18:05:20 -08:00
Sam Lantinga
e27077bfaf The format detection code works better with 555 and 565 pixel formats 2011-02-04 16:55:50 -08:00
Sam Lantinga
065cf0f75a SDL_SetTextureBlendMode broken, caught by Kai Sterker - Thanks! 2011-02-05 00:32:04 -08:00
Sam Lantinga
dfade9a630 These aren't executable files. :) 2011-02-04 23:31:56 -08:00
Sam Lantinga
5920369169 Fixed compiling on Windows CE 2011-02-04 13:58:29 -08:00
Sam Lantinga
1667e9cf70 Removed missing file 2011-02-04 13:57:55 -08:00
Sam Lantinga
1b6243d5dc Use the exact format of the window if possible, for speed. 2011-02-04 13:47:02 -08:00
Sam Lantinga
d9aa583921 Added the Windows framebuffer implementation.
This actually ends up being faster than Direct3D with a dynamic texture. (???)
2011-02-04 12:29:58 -08:00
Sam Lantinga
f5569d20c7 Don't free the surface since the application might be still using it. 2011-02-04 12:26:01 -08:00
Sam Lantinga
60296780e3 Standardized on using the managed texture pool.
Also experimented with dynamic textures, but didn't get any speed increase with them.  More research and testing is needed.
2011-02-04 12:25:26 -08:00
Sam Lantinga
d8fd1e0861 Don't free the surface since the application might be still using it.
Also experimented with texture rectangle updates, but I think at this point the full rect update gives the most consistent results.
2011-02-04 12:24:28 -08:00
Sam Lantinga
1ed5bd8dd1 Removed unused variables 2011-02-04 12:22:52 -08:00
Sam Lantinga
125e56851f Switched the SDL 1.2 compatibility to use the window surface, so it's fast even when there's no hardware acceleration available.
This means that the YUV overlay now uses software, but that's okay since fast YUV code should be using the textures now anyway.
2011-02-03 21:13:55 -08:00
Sam Lantinga
1fc2b68be2 Fixed recursion crash when setting SDL_VIDEO_RENDERER=software 2011-02-03 17:42:58 -08:00
Sam Lantinga
4f0e222a0b Fixed crash if SDL_VideoDriverName() is passed a NULL namebuf 2011-02-03 16:57:38 -08:00
Sam Lantinga
052351dbe2 Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
The software renderer has been re-routed to use the framebuffer interface, which makes it possible to have software rendering available even on simple ports.
2011-02-03 15:49:37 -08:00
Sam Lantinga
657d4fd190 Extended SDL_SetWindowData() to allow arbitrary named values. 2011-02-03 11:16:57 -08:00
Sam Lantinga
ddfdd2c2b9 Added an intro to the features and goals of the 2D rendering API. 2011-02-03 10:03:55 -08:00
Sam Lantinga
c1295241c6 Making the API simpler, moved the surface drawing functions to the software renderer.
--HG--
rename : src/video/SDL_blendline.c => src/render/software/SDL_blendline.c
rename : src/video/SDL_blendpoint.c => src/render/software/SDL_blendpoint.c
rename : src/video/SDL_draw.h => src/render/software/SDL_draw.h
rename : src/video/SDL_drawline.c => src/render/software/SDL_drawline.c
rename : src/video/SDL_drawpoint.c => src/render/software/SDL_drawpoint.c
2011-02-03 02:45:29 -08:00
Sam Lantinga
348ea88682 Updated for API changes 2011-02-03 02:42:50 -08:00
Sam Lantinga
6ddcc36edf Fixed building for Android 2011-02-03 01:30:28 -08:00
Sam Lantinga
5689d8ef80 Re-ordered platforms based on frequency 2011-02-03 01:19:10 -08:00
Sam Lantinga
6950191fad Create the video texture based on the available texture formats, not the backbuffer format. 2011-02-03 01:13:48 -08:00
Sam Lantinga
fe2b0d9703 Simplified and improved the process of creating a texture from a surface. 2011-02-03 00:54:29 -08:00
Sam Lantinga
31b3ad2414 Making the API simpler, removed the writepixels interface 2011-02-03 00:22:18 -08:00
Sam Lantinga
d2b54f7d24 Made it possible to create a texture of any format, even if not supported by the renderer.
This allows me to reduce the set of formats supported by the renderers to the most optimal set, for a nice speed boost.

--HG--
rename : src/video/SDL_yuv_mmx.c => src/render/SDL_yuv_mmx.c
rename : src/video/SDL_yuv_sw.c => src/render/SDL_yuv_sw.c
rename : src/video/SDL_yuv_sw_c.h => src/render/SDL_yuv_sw_c.h
rename : src/video/mmx.h => src/render/mmx.h
2011-02-03 00:19:40 -08:00
Sam Lantinga
613d92a832 Fixed compiling on Windows 2011-02-02 22:55:12 -08:00
Sam Lantinga
5897ef7d95 Moved the rendering code out to a separate directory in the hope that it can someday be completely decoupled from the rest of the library and be expanded to an awesome 2D on 3D library.
--HG--
rename : src/video/windows/SDL_d3drender.c => src/render/direct3d/SDL_d3drender.c
rename : src/video/SDL_renderer_gl.c => src/render/opengl/SDL_renderer_gl.c
rename : src/video/SDL_renderer_gles.c => src/render/opengles/SDL_renderer_gles.c
rename : src/video/SDL_renderer_sw.c => src/render/software/SDL_renderer_sw.c
2011-02-02 14:34:54 -08:00
Sam Lantinga
9623680313 Fixed compiling with the latest API changes 2011-02-02 14:34:24 -08:00
Sam Lantinga
3b68836c8d Removing Visual Studio projects for testpalette 2011-02-01 21:51:54 -08:00
Sam Lantinga
446ad38c37 SDL doesn't actually support the physical/logical palette split anymore. 2011-02-01 21:51:09 -08:00
Sam Lantinga
a47948aab0 Nobody is currently maintaining the QNX code, so removing it for now. 2011-02-01 21:40:03 -08:00
Sam Lantinga
09a8558897 Making the API simpler, removed support for palettized video modes and textures. 2011-02-01 21:23:43 -08:00
Sam Lantinga
b4fff42fc6 The DrawRect API is implemented using lines 2011-02-01 20:50:04 -08:00
Sam Lantinga
df94d4c6a4 The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future. 2011-02-01 19:19:43 -08:00
Sam Lantinga
52cf8a6451 Added functions to watch events as they go through the event queue. 2011-02-01 19:15:42 -08:00
Sam Lantinga
b231d0b93d Split the rendering API out into a separate header file. 2011-02-01 15:02:21 -08:00
Sam Lantinga
6539ab9c74 The renderers always support texture modulation and blend modes. 2011-02-01 12:54:27 -08:00
Sam Lantinga
32406a59c6 Renumbered the renderer flags 2011-02-01 12:44:52 -08:00
Sam Lantinga
d627939049 Making the API simpler, the renderer present semantics are always having a backbuffer and then discarding it. This is best for hardware accelerated rendering.
--HG--
extra : rebase_source : bbe6641fce097c79ccd47f4e1ea6b27683fd0acb
2011-02-01 12:19:46 -08:00
Sam Lantinga
4c06e58153 Making the API simpler, texture color and alpha modulation are supported by all renderers.
--HG--
extra : rebase_source : 880752438aae8f6526503d220bad91aabc3a7d1c
2011-01-31 23:37:30 -08:00