Commit Graph

5003 Commits

Author SHA1 Message Date
Sam Lantinga
cc347f201a Fixed compiling on Windows CE 2011-02-04 13:58:29 -08:00
Sam Lantinga
9f81da0aa6 Removed missing file 2011-02-04 13:57:55 -08:00
Sam Lantinga
ce8fba858d Use the exact format of the window if possible, for speed. 2011-02-04 13:47:02 -08:00
Sam Lantinga
976387a5ed 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
6bd644058c Don't free the surface since the application might be still using it. 2011-02-04 12:26:01 -08:00
Sam Lantinga
7656894d2a 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
44c37e3487 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
164a293ce9 Removed unused variables 2011-02-04 12:22:52 -08:00
Sam Lantinga
6d8925632d 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
8675df42c8 Fixed recursion crash when setting SDL_VIDEO_RENDERER=software 2011-02-03 17:42:58 -08:00
Sam Lantinga
b9dd9284f1 Fixed crash if SDL_VideoDriverName() is passed a NULL namebuf 2011-02-03 16:57:38 -08:00
Sam Lantinga
93a4e38e98 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
7880fa3997 Extended SDL_SetWindowData() to allow arbitrary named values. 2011-02-03 11:16:57 -08:00
Sam Lantinga
4360f9d15a Added an intro to the features and goals of the 2D rendering API. 2011-02-03 10:03:55 -08:00
Sam Lantinga
e4569cfdca Making the API simpler, moved the surface drawing functions to the software renderer. 2011-02-03 02:45:29 -08:00
Sam Lantinga
ff6324fb43 Updated for API changes 2011-02-03 02:42:50 -08:00
Sam Lantinga
004e4cde9f Fixed building for Android 2011-02-03 01:30:28 -08:00
Sam Lantinga
dd03fe7ff1 Re-ordered platforms based on frequency 2011-02-03 01:19:10 -08:00
Sam Lantinga
599d9d75f5 Create the video texture based on the available texture formats, not the backbuffer format. 2011-02-03 01:13:48 -08:00
Sam Lantinga
533d4862d6 Simplified and improved the process of creating a texture from a surface. 2011-02-03 00:54:29 -08:00
Sam Lantinga
a5bfac214f Making the API simpler, removed the writepixels interface 2011-02-03 00:22:18 -08:00
Sam Lantinga
405d4ed7e4 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.
2011-02-03 00:19:40 -08:00
Sam Lantinga
433b8c4189 Fixed compiling on Windows 2011-02-02 22:55:12 -08:00
Sam Lantinga
8bf50cc83c 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. 2011-02-02 14:34:54 -08:00
Sam Lantinga
3f10d86ed9 Fixed compiling with the latest API changes 2011-02-02 14:34:24 -08:00
Sam Lantinga
adfafcaa35 Removing Visual Studio projects for testpalette 2011-02-01 21:51:54 -08:00
Sam Lantinga
c7881753b8 SDL doesn't actually support the physical/logical palette split anymore. 2011-02-01 21:51:09 -08:00
Sam Lantinga
482e5c0697 Nobody is currently maintaining the QNX code, so removing it for now. 2011-02-01 21:40:03 -08:00
Sam Lantinga
1f34b65342 Making the API simpler, removed support for palettized video modes and textures. 2011-02-01 21:23:43 -08:00
Sam Lantinga
1fceabf43c The DrawRect API is implemented using lines 2011-02-01 20:50:04 -08:00
Sam Lantinga
adaab5944f 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
5978f70063 Added functions to watch events as they go through the event queue. 2011-02-01 19:15:42 -08:00
Sam Lantinga
f729dd20de Split the rendering API out into a separate header file. 2011-02-01 15:02:21 -08:00
Sam Lantinga
f0bd43ac99 The renderers always support texture modulation and blend modes. 2011-02-01 12:54:27 -08:00
Sam Lantinga
5d5f352744 Renumbered the renderer flags 2011-02-01 12:44:52 -08:00
Sam Lantinga
88718ffabe Making the API simpler, the renderer present semantics are always having a backbuffer and then discarding it. This is best for hardware accelerated rendering. 2011-02-01 12:19:46 -08:00
Eric Wing
870377a6f9 merged: might need to check main.c in the iOS template to make sure no changes were abandoned. 2011-02-01 00:37:02 -08:00
Sam Lantinga
fb80cf39a4 Making the API simpler, texture color and alpha modulation are supported by all renderers. 2011-01-31 23:37:30 -08:00
Sam Lantinga
0efb1ea0b2 Making the API simpler, the blend modes are "none, blend, add" and are supported by all renderers. 2011-01-31 23:23:57 -08:00
Sam Lantinga
f9ebc0527f Removed more partially functional renderers 2011-01-31 22:53:45 -08:00
Sam Lantinga
471a85fb52 Making the API simpler, scaling is always defined as linear interpolation and should be supported as much as possible on all renderers. 2011-01-31 22:44:43 -08:00
Sam Lantinga
096a6b8d79 Removed partially functional renderers 2011-01-31 22:21:29 -08:00
Sam Lantinga
2a2df3d2b1 Spacing for documentation tweaks 2011-02-01 12:01:37 -08:00
Sam Lantinga
e191dd269c Tweak for documentation 2011-02-01 11:53:29 -08:00
Sam Lantinga
52ecd71fd9 Fixed bug #1025 (iphone keyboard doesn't send 'return' and 'backspace' events)
Vittorio Giovara      2011-02-01 02:25:48 PST

i have attached an updated patch that fixes this behaviour
2011-02-01 09:04:43 -08:00
Sam Lantinga
262b76230f Fixed spacing, adding vim spacing hints 2011-02-01 09:02:53 -08:00
Sam Lantinga
39de371db9 Added vim spacing hints 2011-02-01 09:00:47 -08:00
Sam Lantinga
eb67b9777b Fixed spacing 2011-02-01 08:59:22 -08:00
Sam Lantinga
c60a170bc7 Fixed bug #1112 (retina display support)
Vittorio Giovara      2011-02-01 02:21:50 PST

with the attached patch, the opengles context will always use the maximum
screensize available; this is particularly useful for supporting retina display
on latest iphone.

please note: Apple documentation warns that using the "upscaled" gl context
actually uses more memory and bandwitdh, so it might be worth to let the user
decide whether to disable it or not, either with a flag or a sdl function...
2011-02-01 08:54:34 -08:00
Sam Lantinga
5f28c7bf36 Fixed spacing 2011-02-01 08:53:22 -08:00