slouken@7228
|
1 |
|
slouken@7878
|
2 |
This is a list of major changes in SDL's version history.
|
slouken@7228
|
3 |
|
slouken@7878
|
4 |
---------------------------------------------------------------------------
|
gabomdq@8676
|
5 |
2.0.4:
|
gabomdq@8676
|
6 |
---------------------------------------------------------------------------
|
gabomdq@8676
|
7 |
|
gabomdq@8676
|
8 |
General:
|
slouken@9732
|
9 |
* Added support for web applications using Emscripten, see docs/README-emscripten.md for more information
|
slouken@9732
|
10 |
* Added support for web applications using Native Client (NaCl), see docs/README-nacl.md for more information
|
slouken@9732
|
11 |
* Added an API to queue audio instead of using the audio callback:
|
slouken@9732
|
12 |
SDL_QueueAudio(), SDL_GetQueuedAudioSize(), SDL_ClearQueuedAudio()
|
slouken@9732
|
13 |
* Added events for audio device hot plug support:
|
slouken@9732
|
14 |
SDL_AUDIODEVICEADDED, SDL_AUDIODEVICEREMOVED
|
slouken@9732
|
15 |
* Added SDL_PointInRect()
|
slouken@9732
|
16 |
* Added SDL_HasAVX2() to detect CPUs with AVX2 support
|
slouken@9732
|
17 |
* Added SDL_SetWindowHitTest() to let apps treat parts of their SDL window like traditional window decorations (drag areas, resize areas)
|
slouken@9732
|
18 |
* Added SDL_GetGrabbedWindow() to get the window that currently has input grab, if any
|
slouken@9732
|
19 |
* Added SDL_RenderIsClipEnabled() to tell whether clipping is currently enabled in a renderer
|
slouken@9732
|
20 |
* Added SDL_CaptureMouse() to capture the mouse to get events while the mouse is not in your window
|
slouken@9732
|
21 |
* Added SDL_WarpMouseGlobal() to warp the mouse cursor in global screen space
|
slouken@9732
|
22 |
* Added SDL_GetGlobalMouseState() to get the current mouse state outside of an SDL window
|
slouken@9732
|
23 |
* Added a direction field to mouse wheel events to tell whether they are flipped (natural) or not
|
slouken@9732
|
24 |
* Added GL_CONTEXT_RELEASE_BEHAVIOR GL attribute (maps to [WGL|GLX]_ARB_context_flush_control extension)
|
slouken@9732
|
25 |
* Added EGL_KHR_create_context support to allow OpenGL ES version selection on some platforms
|
slouken@9732
|
26 |
* Added NV12 and NV21 YUV texture support for OpenGL and OpenGL ES 2.0 renderers
|
slouken@9732
|
27 |
* Added a Vivante video driver that is used on various SoC platforms
|
slouken@9732
|
28 |
* Added an event SDL_RENDER_DEVICE_RESET that is sent from the D3D renderers when the D3D device is lost, and from Android's event loop when the GLES context had to be recreated
|
slouken@9732
|
29 |
* Added a hint SDL_HINT_NO_SIGNAL_HANDLERS to disable SDL's built in signal handling
|
philipp@9759
|
30 |
* Added a hint SDL_HINT_THREAD_STACK_SIZE to set the stack size of SDL's threads
|
philipp@9759
|
31 |
* Added SDL_sqrtf(), SDL_tan(), and SDL_tanf() to the stdlib routines
|
slouken@9732
|
32 |
* Improved support for WAV and BMP files with unusual chunks in them
|
philipp@9759
|
33 |
* Renamed SDL_assert_data to SDL_AssertData and SDL_assert_state to SDL_AssertState
|
philipp@9830
|
34 |
* Added a hint SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN to prevent window interaction while cursor is hidden
|
philipp@9855
|
35 |
* Added SDL_GetDisplayDPI() to get the DPI information for a display
|
philipp@9893
|
36 |
* Added SDL_JoystickCurrentPowerLevel() to get the battery level of a joystick
|
icculus@9916
|
37 |
* Added SDL_JoystickFromInstanceID(), as a helper function, to get the SDL_Joystick* that an event is referring to.
|
icculus@9916
|
38 |
* Added SDL_GameControllerFromInstanceID(), as a helper function, to get the SDL_GameController* that an event is referring to.
|
slouken@9732
|
39 |
|
slouken@9732
|
40 |
Windows:
|
dludwig@9936
|
41 |
* Added support for Windows Phone 8.1 and Windows 10/UWP (Universal Windows Platform)
|
slouken@9732
|
42 |
* Timer resolution is now 1 ms by default, adjustable with the SDL_HINT_TIMER_RESOLUTION hint
|
slouken@9732
|
43 |
* SDLmain no longer depends on the C runtime, so you can use the same .lib in both Debug and Release builds
|
slouken@9732
|
44 |
* Added SDL_SetWindowsMessageHook() to set a function to be called for every windows message before TranslateMessage()
|
slouken@9732
|
45 |
* Added a hint SDL_HINT_WINDOWS_ENABLE_MESSAGELOOP to control whether SDL_PumpEvents() processes the Windows message loop
|
philipp@9748
|
46 |
* You can distinguish between real mouse and touch events by looking for SDL_TOUCH_MOUSEID in the mouse event "which" field
|
slouken@9732
|
47 |
* SDL_SysWMinfo now contains the window HDC
|
slouken@9732
|
48 |
* Added support for Unicode command line options
|
slouken@9732
|
49 |
* Prevent beeping when Alt-key combos are pressed
|
philipp@9759
|
50 |
* SDL_SetTextInputRect() re-positions the OS-rendered IME
|
philipp@9830
|
51 |
* Added a hint SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4 to prevent generating SDL_WINDOWEVENT_CLOSE events when Alt-F4 is pressed
|
philipp@9830
|
52 |
* Added a hint SDL_HINT_XINPUT_USE_OLD_JOYSTICK_MAPPING to use the old axis and button mapping for XInput devices (deprecated)
|
slouken@9732
|
53 |
|
slouken@9732
|
54 |
Mac OS X:
|
slouken@9732
|
55 |
* Implemented drag-and-drop support
|
slouken@9732
|
56 |
* Improved joystick hot-plug detection
|
slime73@9757
|
57 |
* The SDL_WINDOWEVENT_EXPOSED window event is triggered in the appropriate situations
|
slouken@9732
|
58 |
* Fixed relative mouse mode when the application loses/regains focus
|
slime73@9757
|
59 |
* Fixed bugs related to transitioning to and from Spaces-aware fullscreen-desktop mode
|
slime73@9757
|
60 |
* Fixed the refresh rate of display modes
|
slouken@9732
|
61 |
* SDL_SysWMInfo is now ARC-compatible
|
philipp@9830
|
62 |
* Added a hint SDL_HINT_MAC_BACKGROUND_APP to prevent forcing the application to become a foreground process
|
slouken@9732
|
63 |
|
slouken@9732
|
64 |
Linux:
|
slouken@9732
|
65 |
* Enabled building with Mir and Wayland support by default.
|
slouken@9732
|
66 |
* Added IBus IME support
|
slouken@9732
|
67 |
* Added a hint SDL_HINT_IME_INTERNAL_EDITING to control whether IBus should handle text editing internally instead of sending SDL_TEXTEDITING events
|
philipp@9921
|
68 |
* Added a hint SDL_HINT_VIDEO_X11_NET_WM_PING to allow disabling _NET_WM_PING protocol handling in SDL_CreateWindow()
|
slouken@9732
|
69 |
* Added support for multiple audio devices when using Pulseaudio
|
slouken@9732
|
70 |
* Fixed duplicate mouse events when using relative mouse motion
|
slouken@9732
|
71 |
|
slouken@9732
|
72 |
iOS:
|
slouken@9732
|
73 |
* Added support for iOS 8
|
slime73@9995
|
74 |
* The SDL_WINDOW_ALLOW_HIGHDPI window flag now enables high-dpi support, and SDL_GL_GetDrawableSize() or SDL_GetRendererOutputSize() gets the window resolution in pixels
|
slime73@9995
|
75 |
* SDL_GetWindowSize() and display mode sizes are in the "DPI-independent points" / "screen coordinates" coordinate space rather than pixels (matches OS X behavior)
|
slime73@9995
|
76 |
* Added native resolution support for the iPhone 6 Plus
|
slime73@9876
|
77 |
* Added support for MFi game controllers
|
slime73@9757
|
78 |
* Added support for the hint SDL_HINT_ACCELEROMETER_AS_JOYSTICK
|
slime73@9757
|
79 |
* Added sRGB OpenGL ES context support on iOS 7+
|
philipp@9874
|
80 |
* Added support for SDL_DisableScreenSaver(), SDL_EnableScreenSaver() and the hint SDL_HINT_VIDEO_ALLOW_SCREENSAVER
|
slime73@9757
|
81 |
* SDL_SysWMinfo now contains the OpenGL ES framebuffer and color renderbuffer objects used by the window's active GLES view
|
slime73@9757
|
82 |
* Fixed various rotation and orientation issues
|
slime73@9757
|
83 |
* Fixed memory leaks
|
slouken@9732
|
84 |
|
slouken@9732
|
85 |
Android:
|
slouken@9732
|
86 |
* Added a hint SDL_HINT_ANDROID_SEPARATE_MOUSE_AND_TOUCH to prevent mouse events from being registered as touch events
|
philipp@9830
|
87 |
* Added hints SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION and SDL_HINT_ANDROID_APK_EXPANSION_PATCH_FILE_VERSION
|
philipp@9874
|
88 |
* Added support for SDL_DisableScreenSaver(), SDL_EnableScreenSaver() and the hint SDL_HINT_VIDEO_ALLOW_SCREENSAVER
|
philipp@9874
|
89 |
* Added support for SDL_ShowMessageBox() and SDL_ShowSimpleMessageBox()
|
slouken@9732
|
90 |
|
slouken@9732
|
91 |
Raspberry Pi:
|
slouken@9732
|
92 |
* Added support for the Raspberry Pi 2
|
slouken@9732
|
93 |
|
gabomdq@8676
|
94 |
|
gabomdq@8676
|
95 |
---------------------------------------------------------------------------
|
slouken@8303
|
96 |
2.0.3:
|
slouken@8303
|
97 |
---------------------------------------------------------------------------
|
slouken@8303
|
98 |
|
slouken@8625
|
99 |
Mac OS X:
|
slouken@8625
|
100 |
* Fixed creating an OpenGL context by default on Mac OS X 10.6
|
slouken@8625
|
101 |
|
slouken@8303
|
102 |
|
slouken@8303
|
103 |
---------------------------------------------------------------------------
|
gabomdq@7907
|
104 |
2.0.2:
|
gabomdq@7907
|
105 |
---------------------------------------------------------------------------
|
gabomdq@8044
|
106 |
General:
|
slouken@8197
|
107 |
* Added SDL_GL_ResetAttributes() to reset OpenGL attributes to default values
|
philipp@8220
|
108 |
* Added an API to load a database of game controller mappings from a file:
|
slouken@8270
|
109 |
SDL_GameControllerAddMappingsFromFile(), SDL_GameControllerAddMappingsFromRW()
|
slouken@8197
|
110 |
* Added game controller mappings for the PS4 and OUYA controllers
|
slouken@8197
|
111 |
* Added SDL_GetDefaultAssertionHandler() and SDL_GetAssertionHandler()
|
slouken@8197
|
112 |
* Added SDL_DetachThread()
|
slouken@8197
|
113 |
* Added SDL_HasAVX() to determine if the CPU has AVX features
|
slouken@8197
|
114 |
* Added SDL_vsscanf(), SDL_acos(), and SDL_asin() to the stdlib routines
|
gabomdq@8062
|
115 |
* EGL can now create/manage OpenGL and OpenGL ES 1.x/2.x contexts, and share
|
gabomdq@8062
|
116 |
them using SDL_GL_SHARE_WITH_CURRENT_CONTEXT
|
slouken@8270
|
117 |
* Added a field "clicks" to the mouse button event which records whether the event is a single click, double click, etc.
|
slouken@8270
|
118 |
* The screensaver is now disabled by default, and there is a hint SDL_HINT_VIDEO_ALLOW_SCREENSAVER that can change that behavior.
|
slouken@8270
|
119 |
* Added a hint SDL_HINT_MOUSE_RELATIVE_MODE_WARP to specify whether mouse relative mode should be emulated using mouse warping.
|
slouken@8197
|
120 |
* testgl2 does not need to link with libGL anymore
|
slouken@8197
|
121 |
* Added testgles2 test program to demonstrate working with OpenGL ES 2.0
|
slouken@8197
|
122 |
* Added controllermap test program to visually map a game controller
|
philipp@8220
|
123 |
|
gabomdq@8044
|
124 |
Windows:
|
gabomdq@8044
|
125 |
* Support for OpenGL ES 2.x contexts using either WGL or EGL (natively via
|
gabomdq@8044
|
126 |
the driver or emulated through ANGLE)
|
slouken@8270
|
127 |
* Added a hint SDL_HINT_VIDEO_WIN_D3DCOMPILER to specify which D3D shader compiler to use for OpenGL ES 2 support through ANGLE
|
slouken@8270
|
128 |
* Added a hint SDL_HINT_VIDEO_WINDOW_SHARE_PIXEL_FORMAT that is useful when creating multiple windows that should share the same OpenGL context.
|
slouken@8270
|
129 |
* Added an event SDL_RENDER_TARGETS_RESET that is sent when D3D9 render targets are reset after the device has been restored.
|
slouken@8270
|
130 |
|
slouken@8270
|
131 |
Mac OS X:
|
slouken@8270
|
132 |
* 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.
|
slouken@8270
|
133 |
|
slouken@8270
|
134 |
Linux:
|
slouken@8270
|
135 |
* Fixed fullscreen and focused behavior when receiving NotifyGrab events
|
slouken@8270
|
136 |
* Added experimental Wayland and Mir support, disabled by default
|
gabomdq@7907
|
137 |
|
gabomdq@7907
|
138 |
Android:
|
gabomdq@7907
|
139 |
* Joystick support (minimum SDK version required to build SDL is now 12,
|
gabomdq@7907
|
140 |
the required runtime version remains at 10, but on such devices joystick
|
gabomdq@7907
|
141 |
support won't be available).
|
gabomdq@8057
|
142 |
* Hotplugging support for joysticks
|
slouken@8274
|
143 |
* Added a hint SDL_HINT_ACCELEROMETER_AS_JOYSTICK to control whether the accelerometer should be listed as a 3 axis joystick, which it will by default.
|
slouken@8197
|
144 |
|
gabomdq@7907
|
145 |
|
gabomdq@7907
|
146 |
---------------------------------------------------------------------------
|
slouken@7878
|
147 |
2.0.1:
|
slouken@7878
|
148 |
---------------------------------------------------------------------------
|
slouken@7878
|
149 |
|
slouken@7878
|
150 |
General:
|
slouken@7878
|
151 |
* Added an API to get common filesystem paths in SDL_filesystem.h:
|
slouken@7878
|
152 |
SDL_GetBasePath(), SDL_GetPrefPath()
|
slouken@7878
|
153 |
* Added an API to do optimized YV12 and IYUV texture updates:
|
slouken@7878
|
154 |
SDL_UpdateYUVTexture()
|
slouken@7878
|
155 |
* Added an API to get the amount of RAM on the system:
|
slouken@7878
|
156 |
SDL_GetSystemRAM()
|
slouken@7878
|
157 |
* Added a macro to perform timestamp comparisons with SDL_GetTicks():
|
slouken@7878
|
158 |
SDL_TICKS_PASSED()
|
slouken@7878
|
159 |
* Dramatically improved OpenGL ES 2.0 rendering performance
|
slouken@7878
|
160 |
* Added OpenGL attribute SDL_GL_FRAMEBUFFER_SRGB_CAPABLE
|
slouken@7878
|
161 |
|
slouken@7878
|
162 |
Windows:
|
slouken@7878
|
163 |
* Created a static library configuration for the Visual Studio 2010 project
|
slouken@7878
|
164 |
* Added a hint to create the Direct3D device with support for multi-threading:
|
slouken@7878
|
165 |
SDL_HINT_RENDER_DIRECT3D_THREADSAFE
|
slouken@7878
|
166 |
* Added a function to get the D3D9 adapter index for a display:
|
slouken@7878
|
167 |
SDL_Direct3D9GetAdapterIndex()
|
slouken@7878
|
168 |
* Added a function to get the D3D9 device for a D3D9 renderer:
|
slouken@7878
|
169 |
SDL_RenderGetD3D9Device()
|
slouken@7878
|
170 |
* Fixed building SDL with the mingw32 toolchain (mingw-w64 is preferred)
|
slouken@7878
|
171 |
* Fixed crash when using two XInput controllers at the same time
|
slouken@7878
|
172 |
* Fixed detecting a mixture of XInput and DirectInput controllers
|
slouken@7878
|
173 |
* Fixed clearing a D3D render target larger than the window
|
slouken@7878
|
174 |
* Improved support for format specifiers in SDL_snprintf()
|
slouken@7878
|
175 |
|
slouken@7878
|
176 |
Mac OS X:
|
slouken@7878
|
177 |
* Added support for retina displays:
|
slouken@7878
|
178 |
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.
|
slouken@7878
|
179 |
* Fixed mouse warping in fullscreen mode
|
slouken@7878
|
180 |
* Right mouse click is emulated by holding the Ctrl key while left clicking
|
slouken@7878
|
181 |
|
slouken@7878
|
182 |
Linux:
|
slouken@7878
|
183 |
* Fixed float audio support with the PulseAudio driver
|
slouken@7878
|
184 |
* Fixed missing line endpoints in the OpenGL renderer on some drivers
|
slouken@7878
|
185 |
* X11 symbols are no longer defined to avoid collisions when linking statically
|
slouken@7878
|
186 |
|
slouken@7878
|
187 |
iOS:
|
slouken@7878
|
188 |
* Fixed status bar visibility on iOS 7
|
slouken@7878
|
189 |
* Flipped the accelerometer Y axis to match expected values
|
slouken@7878
|
190 |
|
slouken@7878
|
191 |
Android:
|
slouken@7878
|
192 |
IMPORTANT: You MUST get the updated SDLActivity.java to match C code
|
slouken@7878
|
193 |
* Moved EGL initialization to native code
|
slouken@7878
|
194 |
* Fixed the accelerometer axis rotation relative to the device rotation
|
slouken@7878
|
195 |
* Fixed race conditions when handling the EGL context on pause/resume
|
slouken@7878
|
196 |
* Touch devices are available for enumeration immediately after init
|
slouken@7878
|
197 |
|
slouken@7878
|
198 |
Raspberry Pi:
|
slouken@7878
|
199 |
* Added support for the Raspberry Pi, see README-raspberrypi.txt for details
|