SDL Changelog

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)