What's new in SDL 2.0.2
Mar 10, 2014
- General:
- Added SDL_GL_ResetAttributes() to reset OpenGL attributes to default values
- Added an API to load a database of game controller mappings from a file:
- SDL_GameControllerAddMappingsFromFile(), SDL_GameControllerAddMappingsFromRW()
- Added game controller mappings for the PS4 and OUYA controllers
- Added SDL_GetDefaultAssertionHandler() and SDL_GetAssertionHandler()
- Added SDL_DetachThread()
- Added SDL_HasAVX() to determine if the CPU has AVX features
- Added SDL_vsscanf(), SDL_acos(), and SDL_asin() to the stdlib routines
- EGL can now create/manage OpenGL and OpenGL ES 1.x/2.x contexts, and share
- them using SDL_GL_SHARE_WITH_CURRENT_CONTEXT
- Added a field "clicks" to the mouse button event which records whether the event is a single click, double click, etc.
- The screensaver is now disabled by default, and there is a hint SDL_HINT_VIDEO_ALLOW_SCREENSAVER that can change that behavior.
- Added a hint SDL_HINT_MOUSE_RELATIVE_MODE_WARP to specify whether mouse relative mode should be emulated using mouse warping.
- testgl2 does not need to link with libGL anymore
- Added testgles2 test program to demonstrate working with OpenGL ES 2.0
- Added controllermap test program to visually map a game controller
- Mac OS X:
- Fullscreen desktop mode now uses spaces for a more fluid Mac experience.
- Added a hint SDL_HINT_MAC_CTRL_CLICK_EMULATE_RIGHT_CLICK to control whether Ctrl+click should be treated as a right click on Mac OS X. This is off by default.
New in SDL 2.0.1 (Nov 9, 2013)
- General:
- Added an API to get common filesystem paths in SDL_filesystem.h: SDL_GetBasePath(), SDL_GetPrefPath()
- Added an API to do optimized YV12 and IYUV texture updates: SDL_UpdateYUVTexture()
- Added an API to get the amount of RAM on the system: SDL_GetSystemRAM()
- Added a macro to perform timestamp comparisons with SDL_GetTicks(): SDL_TICKS_PASSED()
- Dramatically improved OpenGL ES 2.0 rendering performance
- Added OpenGL attribute SDL_GL_FRAMEBUFFER_SRGB_CAPABLE
- Mac OS X:
- Added support for retina displays: Create your window with the SDL_WINDOW_ALLOW_HIGHDPI flag, and then use SDL_GL_GetDrawableSize() to find the actual drawable size. You are responsible for scaling mouse and drawing coordinates appropriately.
- Fixed mouse warping in fullscreen mode
- Right mouse click is emulated by holding the Ctrl key while left clicking
- iOS:
- Fixed status bar visibility on iOS 7
- Flipped the accelerometer Y axis to match expected values
New in SDL 2.0.0 (Aug 13, 2013)
- Full 3D hardware acceleration
- Support for OpenGL 3.0+ in various profiles (core, compatibility, debug, robust, etc)
- Support for OpenGL ES
- Support for multiple windows
- Support for multiple displays
- Support for multiple audio devices
- Android and iOS support
- Simple 2D rendering API that can use Direct3D, OpenGL, OpenGL ES, or software rendering behind the scenes
- Force Feedback available on Windows, Mac OS X and Linux
- XInput and XAudio2 support for Windows
- Atomic operations
- Power management (exposes battery life remaining, etc)
- Shaped windows
- 32-bit audio (int and float)
- Simplified Game Controller API (the Joystick API is still here, too!)
- Touch support (multitouch, gestures, etc)
- Better fullscreen support
- Better keyboard support (scancodes vs keycodes, etc).
- Message boxes
- Clipboard support
- Basic Drag'n'Drop support
- Proper unicode input and IME support
- A really powerful assert macro
- Lots of old annoyances from 1.2 are gone
New in SDL 1.2.15 (Jun 4, 2012)
- Fixed assembly register clobbering in CPU info routines
- Fixed memory stomp when using stretch blit on large images
- Fixed pixel corruption with overlapping blits
- SDL_JOYSTICK_DEVICE can be a colon separated list of joystick devices
- Disabled MMX blitters since they don't compile on modern compilers
- Fixed building and running on Mac OS X 10.7 (Lion)