Allegro, a cross platform C++ based 2D game engine, just released version 5.2.0. This release is source compatible with prior releases, but is not binary compatible. The following changes occurred in this release:
Make destructors log messages more meaningful.
Mouse emulation API for touch devices is now unstable.
- Haptic API is now unstable.
- Fixed bogus display destruction on Android which previously caused zombie states.
Fix OSX mouse state position scaling.
Fix other various scaling issues.
Make toggling ALLEGRO_FRAMELESS work.
Fix an issue where fullscreen windows would occasionally leave empty space for the titlebar.
Fix incorrect debug assert in the audio addon.
Make Allegro apps DPI-aware by default, which means that they won't be scaled by the OS.
Fix compilation for the CPU detection code on some compilers.
Don't sync the D3D bitmap when locking with WRITE_ONLY.
Remove dsound.dll runtime loading.
Don't link xinput and d3dx9 libraries (they are still required at runtime though if you're using the relevant features).
Fix a bug where al_wait_for_event_timed can block despite 0 timeout (Aldo Nunez).
- Install PDB files when building with MSVC.
Fix source links for API entries with multi-line prototypes.
Make the readme look prettier on GitHub.
Tons of assorted documentation improvements, especially for the audio addon.
- Add a stability system where some unstable APIs need to be opted into by defining
ALLEGRO_UNSTABLEbefore including Allegro headers.
Native dialog addon:
al_toggle_menu_item_flags is now unstable.
- Add an option to pre-cache the glyphs, useful for platforms where the current algorithm is buggy (typically some Android devices).
- Temporarily remove FFmpeg backend, as it was too buggy, didn't build and was too hard to fix.
ex_vsync less likely cause a seizure.
ex_touch_input switch in/out on Android.
Add documentation to
ex_bitmap (Daniel Johnson).
ex_logo text entry experience.
The full change log is available here, Allegro can be downloaded here.