Commit Graph

4071 Commits

Author SHA1 Message Date
Sam Lantinga
2e54bfdc19 Don't reset the viewport unless you have to. 2011-02-15 14:17:42 -08:00
Sam Lantinga
83c480de5c Whoops, need to actually clip to the viewport in the software renderer. 2011-02-15 14:10:50 -08:00
Sam Lantinga
b59da3ffdc Changed the concept of a render clip rect to a render viewport.
The render viewport is automatically re-centered when the window changes size, so applications that don't care will not have to handle recalculating their rendering coordinates.

Fixed API for drawing and filling multiple rectangles - the parameter should be an array of rects, not an array of pointers to rects.

Fixed API for updating window rects for consistency with other APIs - the order is pointer to array followed by count in array.
2011-02-15 13:59:59 -08:00
Ken Rogoway
8c8191deef Software scaling support. Not very fast, but it seems to work. 2011-02-14 11:50:18 -06:00
Sam Lantinga
e66826bbdf Patch from Ken Rogoway:
Migrate all of the recent changes into the SDL VS2005 project file.
Fix missing return value in SDL_pixels.c
Fix compile error in testscale.c, variable was incorrectly named.
Added VS2005 project file for testscale
2011-02-14 00:45:16 -08:00
Sam Lantinga
416f3ec4e0 Center the old SDL 1.2 screen in the window if we can't get the size we wanted. 2011-02-13 23:09:18 -08:00
Sam Lantinga
675f896925 Fixed crash while resizing a window on Mac OS X. 2011-02-13 22:53:12 -08:00
Sam Lantinga
2ad2f08f4d The format_version isn't used anymore. 2011-02-13 22:30:06 -08:00
Sam Lantinga
02677f3644 Fixed renderer variable scope. 2011-02-13 14:05:33 -08:00
Sam Lantinga
789241249f Removed renderer definition, removed extra -I statements since no other platform has them (files should be explicit in their include paths). 2011-02-13 14:02:37 -08:00
Sam Lantinga
35db143abf Frank Zago to SDL
On 02/12/2011 01:44 PM, Sam Lantinga wrote:
> BTW, you probably want to nuke the NDS renderer and just implement these three
> functions instead:
>     int (*CreateWindowFramebuffer) (_THIS, SDL_Window * window, Uint32 *
> format, void ** pixels, int *pitch);
>     int (*UpdateWindowFramebuffer) (_THIS, SDL_Window * window, int numrects,
> SDL_Rect * rects);
>     void (*DestroyWindowFramebuffer) (_THIS, SDL_Window * window);

Patch attached. The renderer for the DS is not used anymore, but I left the
file in place if someone wants to finish it.

I've also added a README.ds and fixed the spinlocks.
2011-02-13 14:01:02 -08:00
Sam Lantinga
c7b5cc946d A few fixes:
Fixed creating render texture framebuffer.
Removed the need for palette watch, added surface format caching.
Added an SDL_DONTFREE flag so you can't free the window and 1.2 shadow surfaces.
2011-02-13 13:46:10 -08:00
Sam Lantinga
a4031e9f9f Whoops, work in progress, didn't mean to commit. 2011-02-13 01:31:07 -08:00
Sam Lantinga
ea3c0c473a Updated the platform test for the new CPU feature functions. 2011-02-13 01:29:29 -08:00
Sam Lantinga
0b39bed131 Needed to pass the renderer in. 2011-02-13 00:18:05 -08:00
Eric Wing
f7271a7775 Changed output directory of Universal libSDL.a for iOS to respect build configurations. Template generator was updated to reflect these changes as well. 2011-02-12 21:52:30 -08:00
Eric Wing
cfe2553f50 merged 2011-02-12 21:34:36 -08:00
Eric Wing
79313ce09b merged 2011-02-12 19:16:09 -08:00
Sam Lantinga
e6ec7f6b28 Fixed bug #1117
There's a new event that's always sent when the window changes size, and that event is what the renderers listen for to determine if they need to rebind their context.
2011-02-12 19:02:14 -08:00
Sam Lantinga
dcfeae7397 Fixed bug #1116
Don't allocate the window's texture data until after creating the renderer, in case the renderer recreates the window.
2011-02-12 17:51:47 -08:00
Sam Lantinga
f1441f7929 changeset: 5278:b4b71ec2af73
tag: tip
user: Martin Decky <martin@decky.cz>
date: Sat Feb 12 22:27:14 2011 +0100
summary: fix typo (assigning height value into displayrect.w instead of displayrect.h)
2011-02-12 17:36:09 -08:00
Sam Lantinga
43c2c12758 This should match the header change. 2011-02-12 12:04:23 -08:00
Sam Lantinga
c3265bbc90 changeset: 5272:cb08ef104ac4
tag: tip
user: Martin Decky <martin@decky.cz>
date: Sat Feb 12 20:53:06 2011 +0100
summary: improve header files compatibility with SDL 1.2 applications (namely QEMU)
2011-02-12 12:04:00 -08:00
Sam Lantinga
fd246efe1e Removed the atomic file for the old API 2011-02-12 11:43:22 -08:00
Sam Lantinga
362639036a Frank Zago to sdl
The following patch fixes some of the bitrot for the Nintendo DS port.
The support is still basic at the moment, but it allows to run the "general"
test under the current head of tree (parent: 5269:11bd1585efb5 tip).
Most of the patch is mine, but I integrated a couple changes that John
Magnotti posted on Feb 1st.
2011-02-12 11:36:56 -08:00
Sam Lantinga
52f11a9f4f The YV12 image isn't w*h*2, it's actually w*h + w*h/4 + w*h/4 2011-02-12 10:13:53 -08:00
Sam Lantinga
8fed295309 Fixed a crash caused by the 1.2 code path getting a YV12 texture. :) 2011-02-12 08:17:58 -08:00
Sam Lantinga
5645af4067 Only expose the OpenGL flag to SDL 1.2 if it was requested.
The window flags mean the window is OpenGL capable.  The surface flag means that the surface is a stub surface representing a window that has an OpenGL context attached.
2011-02-12 08:17:37 -08:00
Sam Lantinga
5410391fe9 Removed private API use that was causing AppStore rejection
Pavel Kanzelsberger to SDL

I tried to submit a SDL application to the Mac AppStore and it got rejected because SDL cocoa is using a Private (non-public) API. Problematic part is here:

SDL_cocoaevents.m

@implementation NSApplication(SDL)
- (void)setRunning
{
    _running = 1;
}
@end

Symbol _running in NSApplication is private and shouldn't be used. Any ideas what could I do about this?
2011-02-12 07:57:35 -08:00
Sam Lantinga
acd458dad9 Ah there, that fixed it. :) 2011-02-12 00:42:39 -08:00
Sam Lantinga
5e1535525c Initial pass at shader YV12 support - doesn't quite work yet. 2011-02-12 00:25:02 -08:00
Sam Lantinga
aef6fb230a Fixed SSE4 detection, and split it into SSE 4.1 and 4.2 2011-02-11 23:02:35 -08:00
Sam Lantinga
a2cdcf5486 Happy 2011! :) 2011-02-11 22:37:15 -08:00
Sam Lantinga
193c1b9aab There is only one width and height for the window. If those are changed during the course of a fullscreen mode change, then they'll stay that size when returning to windowed mode. 2011-02-11 20:49:13 -08:00
Sam Lantinga
97ef063646 itsnotabigtruck has given me permission to replace the license for his contribution. 2011-02-11 19:11:27 -08:00
Sam Lantinga
2af371cc2e Updated CPU detection code for SSE3 and SSE4 and removed obsolete 3DNow! and Altivec support. 2011-02-11 14:51:04 -08:00
Sam Lantinga
80b4be23d9 More removal of leak code. 2011-02-11 14:42:58 -08:00
Sam Lantinga
cef32c046e Finished removing unused leak detection code. 2011-02-11 14:42:06 -08:00
Sam Lantinga
76489b5e9e Removed unused leak detection code. 2011-02-11 14:23:22 -08:00
Sam Lantinga
395873376b Cleaned up the file a bit for tutorial viewing 2011-02-11 13:06:35 -08:00
Sam Lantinga
30ee8f3440 Added a very simple example of texture streaming 2011-02-11 12:24:59 -08:00
Sam Lantinga
7fbc48134b Fixed creating the window on Mac OS X. 2011-02-11 12:17:40 -08:00
Sam Lantinga
37522ace07 Fixed error check 2011-02-11 11:43:58 -08:00
Sam Lantinga
65eb03e87b Fixed compile in Xcode 2011-02-11 10:18:34 -08:00
Sam Lantinga
7e3a76e238 Fixed compiling on Windows 2011-02-11 10:13:30 -08:00
Sam Lantinga
3482e0aa2f Mostly fixed fullscreen mode on Mac OS X, and you can toggle it on and off.
There are still some problems with the ConvertNSRect() calculations when switching video modes, which causes wierd window positioning issues, and the fullscreen window is still minimized on exit.
2011-02-11 00:25:44 -08:00
Sam Lantinga
f34f9e640b Fixed cocoa trying to shuffling windows when going fullscreen on the main display. 2011-02-10 22:49:14 -08:00
Sam Lantinga
d43d02f3c3 Allow windows to be created on non-primary displays. 2011-02-10 22:37:01 -08:00
Sam Lantinga
37993063c6 Window coordinates are in the global space and windows are not tied to a particular display.
Also added Ctrl-Enter keybinding to the test code to toggle fullscreen mode for testing.
2011-02-10 14:44:25 -08:00
Sam Lantinga
d0eeed2dc6 Fixed line endings - in Mercurial they're \n 2011-02-10 14:36:09 -08:00