All Versions
19
Latest Version
Avg Release Cycle
472 days
Latest Release
972 days ago

Changelog History
Page 1

  • v3.8.1

    July 26, 2022
  • v3.8 Changes

    August 10, 2020

    ➕ Added

    • New Plane constructor. #6085
    • Round, Ceiling, Floor functions for Vector2/3/4. #6318
    • Dotnet templating templates. #6494
    • TransformMatrix for SpriteEffect. #6623
    • SpriteBatch constructor overload with capacity parameter. #6682
    • [OpenGL] Support for separate blend states per render target. #6343
    • Multiply operator overload for Color: scale * Color. #6747
    • Overloads for garbageless BoundingBox.CreateFromPoints. #6743
    • UseStandardPixelAddressing flag. #6621 #6780
    • [MGCB] Search fonts in HKEY_CURRENT_USER on Windows. #6671
    • Garbageless GetPressedKeys overload. #6643
    • Expose GraphicsDevice.DiscardColor to set the clear color of render targets. #6832
    • KeyDown and KeyUp events on GameWindow. #6762
    • FromFile for Texture2D and SoundEffect. #6586
    • PlatformInfo class to query runtime platform. #6846 #6873
    • API to query graphical system at runtime. #6872
    • Etc2 texture format support. #6864
    • MonoGame.Content.Builder package. #6905
    • τ constant. #6937
    • [UWP] Overloads for more detailed vibration control. #6933
    • [MGCB Editor] Always use Headerbar. #6938
    • Joystick display name for the Joystick API. #7008
    • [OpenGL] Overload with base index for draw instancing. #7016
    • Google Stadia Support. #7020 #7049
    • LastJoystickIndex for the Joystick API. #7017
    • MouseState.ToString. #7091
    • [MGCB Editor] .NET Core tool. #7090
    • [MGFXC] Wine support. #7098 #7103 #7107 #7188
    • EffectParameter.SetValue for int array. #7143
    • Add Web platform information to the content builder. #7144
    • [macOS] MonoGame Content pad for VS for Mac. #7266

    ✂ Removed

    • Remove obsolete SpriteBatch.Draw overload. #6818
    • Disable Piranha portable build. #6844
    • Removed MonoGame.Framework.Net. #6900 #6775
    • Remove internal PNG Utility Classes. #6976
    • Protobuild removed and replaced with solutions and projects. #7040 #7041

    🔄 Changed

    • OpenAssetImporter Improvements and FbxImporter Unit Tests. #6158
    • Made sound system optional. #6629
    • [UWP] Do not set minimum window size. #6763
    • Added Cake build script to replace NANT. #6776
    • Marked Color.TransparentBlack obsolete. #6817
    • [SDL] Performance and garbage optimizations to Joystick. #6829 #6834
    • Track GamePad packet number and general optimizations. #6760
    • [DirectX] Basic performance enhancements to Texture2D. #6726
    • Inline Vector2 operator / and Point.ToVector2(). #6700
    • Make OggStreamer thread a background thread. #6848
    • Made it so Texture2D in any format could be saved as Png/Jpeg when using MonoGame.DesktopGL backend. #6855
    • Upgrade SDK projects to .NET 4.5.2. #6902 #6903 #7050
    • Reduced garbage in Direct X-specific SetRenderTargets methods. #7034
    • MouseState Improvements. #6973
    • KeyboardState Improvements. #6972
    • [SDL] Updated controller DB. #7124
    • We now pool ContentManager scratch buffers. #5921
    • [OpenAL] Clean up sound disposal. #7097
    • [macOS] Replaced System.Drawing with StbImageSharp to enable tests. #7071
    • [Docs] Moved to DocFX v2 for documentation. #7127
    • [SDL] Bump dependencies to SDL 2.0.12. #7133
    • [Docs] Update for 3.8. #7117 #7240
    • [MGCB Editor] Changed position for context menu item Rebuild. #7176
    • [MGCB] Replace symbols for assembly references. #7272

    🛠 Fixed

    • Support arrays > 255 elements in shaders. #5995
    • [DesktopGL] Fix setting mouse cursor from Texture2D. #6187
    • Remove trailing NUL chars in registry font name. #6577
    • [OpenAL] Fix loading OpenAL-Soft in DesktopGL when # is in path. #6581
    • [WindowsDX] Avoid freezing while moving/resizing window. #6594
    • [iOS] Fixed background music stopping on game startup. #6596
    • Fixed GameUpdateRequiredException namespace. #6597
    • [MGCB] Fixed build not cleaning empty projects. #6615
    • Reduce garbage from TextInput. #6664
    • Fix for loading native libraries on Amazon Fire HD 8. #6677
    • Fixes reflection support on SpriteBatch ctor. #6709
    • [Android] Fixed crashes on launch and resume. #6741
    • [Android] Fixed restoration of an activity after Game.Exit. #6739
    • [SDL] Fix rumble infinity threshold. #6744
    • [SDL] Fixed OnTextInput. #6749
    • Move touches are now aged too. (fixes #6753). #6756
    • [Android] Fixed Texture2D.GetData corrupting the Texture2D object. #6729
    • [MGCB Editor] Fix assembly load API used for custom user references. #6770
    • Fix nuget metadata URL properties. #6774
    • Fix IRenderTarget comments. #6785
    • Catch ArgumentException when trying to get encoding upon PipelineController.DoBuild. #6826
    • [OpenAL] Free source when sound instance is disposed. #6813
    • Use Resume when Play is called on Paused sound effect instance. #6815
    • Fixed BoundingSphere.Intersects(BoundingBox). #6666
    • Override Dispose in DrawableGameComponent to unload content. #6858
    • Fixed SwapChain is null in GraphicsDevice.PlatformDispose. #6869
    • Swap red and blue when setting mouse cursor texture. #6859
    • [DesktopGL] Fix IsActive not getting set to false. #6895
    • Fix FileHelpers Uri getting confused by double slashes. #6924
    • [UWP] Vibrate controller handles instead of triggers. #6933
    • Fix for CoreRT support. #6948
    • Fix a crash on macOS and CoreRT related to mishandling unmanaged function pointers. #6949
    • [MGCB] Rethrow InvalidContentException for Importers instead of wrapping it in a new PipelineException. #6954
    • Throw InvalidContentException with error line number/position in ContentIdentity. #6953
    • Fall back to less precise frame pacing on non-Windows platforms. #6941
    • [UWP] Fixes content loading to work with packaged files (and not just resources). #6964
    • [UWP] Fixes window resizing upon GraphicsDeviceManager.ApplyChanges(). #6964
    • [Android] fix GamePad.Back emulation. #6951
    • [Android] Fixes android APIs fallback. #6952
    • Fixed sample count in SoundEffect. #6996
    • [SDL] Fixed memory leak in controller mapping by freeing the returned string. #7021
    • [macOS] Look for native libraries in Frameworks folder for .app bundles. #7022
    • [OpenGL] Fixed PlatformClear and PlatformPresent to be private in GraphicsDevice. #7026
    • [DesktopGL] Fixed GraphicsAdapter.Description to return renderer. #6959
    • [OpenGL] Query correct value for the bounds to GL.ActiveTexture. #6970
    • Fix Content.mgcb not being visible in VS 2019. #7064
    • [iOS] Fix initialization crash on GLES 2.0 devices. #7047
    • [iOS] Fix GL error and race condition. #7073
    • [MGCB Editor] Mac fixes. #7077
    • [OpenAL] Fixing audio duplicating sourceids. #7095
    • [MGCB] Fix FindCommand not looking system locations on macOS/Linux. #7100
    • Fix FuncLoader not properly checking the current folder (fixes #7101). #7102
    • Fix .NET Standard template using wrong nuget. #7099
    • [DirectX] Fixed MSAA RenderTarget GetData and SetData. #5838
    • Fixed deconstruction of color for bytes and floats. #7109
    • [MGCB] Fix failing to find ffmpeg because it tries relative path. #7138
    • [MGFXC] Various fixes. #7148
    • Fixed a bug where The "New Item" dialogue would have no templates listed. #7141
    • [MGCB Editor] Darken text in output. #7163
    • [MGCB] Fix trying to chmod root files. #7183
    • [MGCB Editor] Fixed to not require root privileges for installing. #7185
    • [SDL] Better debugging for macOS. #7187
    • Fixed content failing to load on NetCore. #7199
    • [MGCB Editor] Fix parsing filename from arguments on macOS. #7215
    • [Linux] Flatpak packaging upgrades. #7224
    • Fix path in RebuildMGFX.bat. #7239
    • [DirectX] Fix issues with RenderTexture2D and SwapChainRenderTarget. #7225
    • [macOS] VSMac addin fixes. #7253
    • [MGCB Editor] PropertyGrid fixes. #7256
    • [MGCB Editor] General fixes. #7262
    • Fix a race condition when playing sound in worker threads. #7219
    • [Android] Fixed surface recreation when resuming from sleep mode on FireTV. #7211
    • Fix loading of content with special characters in a file name. #7267
  • v3.7.1 Changes

    December 08, 2018
    • MGCB now generates content building statistics. #6401
    • Fixes to dependency loading in Pipeline Tool. #6450
    • Fixed crash when canceling choose folder dialog in Pipeline Tool. #6449
    • Fix add item dialog jumping around in Pipeline Tool. #6451
    • Fix OpenAL library loading on some Android phones. #6454
    • Fix Gamepad index tracking under UWP. #6456
    • Rename "Copy Asset Path" to "Copy Asset Name" for consistency with XNA in Pipeline Tool. #6457
    • Fix TextInput Keys argument for UWP. #6455
    • Add new GamePad.GetState() overloads to support different dead zone modes. #6467
    • Fixed incorrect offset DynamicSoundEffectInstance.SubmitBuffer under XAudio. #6523
    • Improved accuracy of fixed time step. #6535
    • Ensure intermediate output path exists before writing stats in Pipeline Tool. #6503
    • Fix for special window close case under SDL. #6489
    • Marshal microphone identifiers as UTF-8. #6530
    • Clear the current selections when excluding items in the Pipeline Tool. #6549
    • Enable standard derivatives extension for GLSL shaders. #6501
    • Fixed framebuffer object EXT loading under OpenGL. #6562
    • Fixed GL.RenderbufferStorage for devices that use the EXT entry points. #6563
    • Fix VS template installation when C# folder is missing. #6544
    • Fix for SDL loading when a '#' is in the directory path. #6573
    • Restored Buttons[] constructor in GamePadState fixing XNA compatibility. #6572
  • v3.7 Changes

    September 23, 2018
    • Remove Scale and Rotation properties from Matrix. #5584
    • Added Switch as a platform. #5596
    • DirectX: Fixed multisample clamping logic. #5477
    • SDL Gamepad DB update. #5605
    • Add Missing method OpaqueDataDictionary.GetValue. #5637
    • Increase code coverage in Model* family. #5632
    • Fix scroll wheel events on Windows Universal. #5631
    • Implement GetHashCode on Vertex types. #5654
    • Implement GetHashCode and ToString methods for Joystick. #5670
    • Fixed Gamepad DPad on Android. #5673
    • Pipeline process not terminating on exit fix. #5672
    • Added Joystick.IsSupported property. #5678
    • Use GraphicsCapabilities.MaxTextureAnisotropy on SamplerState. #5676
    • Make SpriteBatch.End throw when Begin not called. #5689
    • Add Open Output Directory option to Pipeline Tool. #5690
    • Rename Exit to Quit on Pipeline Tool Linux Headerbar. #5687
    • Added minimum size to the Pipeline Tool window. #5692
    • Added Id and DisplayName properties to Gamepad. #5625
    • Improved GameController database loading for DesktopGL. #5606
    • RPC curves are now updated before Cue is played. #5709
    • Fixes to Texture2D.FromStream on Windows DirectX. #5712
    • Support DistanceScale and DopplerFactor under OpenAL. #5718
    • Implemented Microphone for OpenAL platforms. #5651
    • Implemented caching of staging resources used to copy data from a Texture2D under DirectX. #5704
    • Reusable function for raising events. #5713
    • Remove reference to SharpDX from project templates. #5611
    • Improvements to VideoPlayer for Desktop DirectX. #5737
    • Use SharpDX NuGet packages from our NuGet packages. #5748
    • Fixed leaks that affected shutting down and recreating GraphicsDevice under DirectX. #5728
    • Texture2D mipmap generation and population fixes. #5614
    • Remove SharpDX.RawInput.dll reference from DirectX graphics backend. #5723
    • New fast Texture2D.FromStream implementation for DesktopGL ported from STB. #5630
    • Added support DrawInstancedPrimitives on OpenGL platforms. #4920
    • Fixed mouse touch event to release when mouse moves outside the client area or we loses focus. #5641
    • Added GraphicsAdapter.UseDebugLayers to enable GPU debug features in release builds. #5791
    • Fixed DirectX back buffer update when multisampling changes. #5617
    • Adds Xbox One S controller support to Linux. #5797
    • Do not allow the Pipeline tool to delete files outside the content folder. #5820
    • OpenGL Mouse.SetCursor now works with alpha correctly. #5829
    • Implement Mouse.SetCursor() for Windows. #5831
    • Fix pre-emptive song finish in OggStreamer. #5821
    • UWP Templates use target version selected in wizard. #5819
    • Implement Mouse.WindowHandle under Windows DirectX. #5816
    • Improve shader error/warning parsing in Pipeline Tool. #5849
    • Fix crash on multi-editing bool values in Pipeline Tool. #5859
    • Fixes to XACT sound effect pooling. #5832
    • Improved disposal of OpenGL resources. #5850
    • Better support for WAV audio formats in content pipeline and FromStream. #5750
    • Fix for build hang with no mgcb file in project. #5886
    • Removed deprecated Rider settings from Linux installer. #5881
    • Improved performance of SpriteFont.MeasureString() & SpriteBatch.DrawString(). #5874
    • Sort content when saving MGCB files. #5930
    • Fix a crash when building content in xbuild. #5897
    • Fixed back button problems in UWP. #5810
    • Removed Windows 8.1 and Windows Phone 8.1 support. #5809
    • Upgrade to SharpDX 4.0.1. #5949
    • Update the UWP Template to use the Latest SDK. #5931
    • Fixed the Scissor rect calculation on DesktopGL and OpenGL platforms. #5977
    • Calculate the Client Bounds a bit later. #5975
    • Rework Android OpenGL Framebuffer Support. #5993
    • Implemented GraphicsDevice.GetBackBufferData. #5114
    • Optimizations to Length and Normalize in Vector3 and Vector4. #6004
    • Added MGCB man page for Linux. #5987
    • Included mgcb autocomplete for bash. #5985
    • Fixed GamePad.SetVibration crash. #5965
    • Fallback SurfaceFormat for RenderTargets. #6170
    • Added O(1) EffectParameter lookups by name. #6146
    • Reduce MouseState garbage in Desktop DirectX. #6168
    • Made SpriteFont constructor public. #6126
    • New Template System using Nuget. #6135
    • Use StbSharp for all Texture2D.FromStream. #6008
    • Dynamic reference loading in Pipeline Tool. #6202
    • Fix Pipeline tool to work regardless of Mono changes. #6197
    • Update Template Icons and Fix Mac Info.plist. #6209
    • Fix typo in VS2013 Shared Project Template. #6216
    • Fill up dotnet template info. #6226
    • Support Mac Unit Tests. #5952
    • Updated Assimp to latest version. #6222
    • Make sure that the window titlebar is within screen bounds on DesktopGL. #6258
    • Fixed trigger/dpad button state and reduced garbage in iOS Gamepad. #6271
    • Updated Windows Universal Min SDK Versions. #6257
    • Fix property content serialization detection when using a property named Item. #5996
    • Fix launcher default mimetype in Linux installer. #6275
    • Restore NVTT. #6239
    • Support unicode in window title under DesktopGL. #6335
    • Add crash report window to Pipeline Tool. #6272
    • Fix linking for copy action in Pipeline Tool. #6398
    • Implemented KeyboardInput and MessageBox for Windows DX. #6410
    • Fixed audio interruption bug on iOS. #6433
  • v3.6 Changes

    March 01, 2017
    • Fixed XML deserialization of Curve type. #5494
    • Fix #5498 Pipeline Tool template loading on MacOS. #5501
    • Fix typo in the exclude.addins which cause warnings when installing the Addin in XS. #5500
    • Added support for arbitrary defines passed to the Effect compiler. #5496
    • Fixed GraphicsDevice.Present() to check for current render target. #5389
    • Custom texture compression for SpriteFonts. #5299
    • Performance improvements to SpriteBatch.DrawString(). #5226
    • Removed the OUYA platform #5194
    • Dispose of all graphical resources in unit tests. #5133
    • Throw NoSuitableGraphicsDeviceException if graphics device creation fails. #5130
    • Optimized and added additional constructors to Color. #5117
    • Added SamplerState.TextureFilterMode to correctly support comparison filtering. #5112
    • Fixed Apply3D() on stereo SoundEffect. #5099
    • Fixed Effect.OnApply to return void to match XNA. #5090
    • Fix crash when DynamicSoundEffectInstance not disposed. #5075
    • Texture2D.FromStream now correctly throws on null arguments. #5050
    • Implemented GraphicsAdapter for DirectX platforms. #5024
    • Fixed initialization of GameComponent when created within another GameComponent. #5020
    • Improved SoundEffect internal platform extendability. #5006
    • Refactored audio processing for platform extensibility. #5001
    • Refactored texture processing for platform extensibility. #4996
    • Refactor ShaderProfile to allow for pipeline extensibility. #4992
    • Removed unnessasary dictionary lookup for user index buffers for DirectX platforms. #4988
    • New SetRenderTargets() method which allows for variable target count. #4987
    • Added support for XACT reverb and filter effects. #4974
    • Remove array in GamePadDPad constructor. #4970
    • Updated to the latest version of Protobuild. #4964
    • Fixed static VBs and IBs on UWP on XB1. #4955
    • Updated to the latest version of Protobuild. #4950
    • Update Xamarin Studio addin for latest platform changes. #4926
    • Replace OpenTK with custom OpenGL bindings #4874
    • Fix Mouse updating when moving the Window. #4924
    • Fix incorrect use of startIndex in Texture2D.GetData DX. #4833
    • Cleanup of AssemblyInfo for framework assembly. #4810
    • New SDL2 backend for desktop GL platforms. #4428
    • Two MaterialProcessor properties fixed. #4746
    • Fixed thumbstick virtual buttons to always use independent axes. #4742
    • Fixed back buffer MSAA on DirectX platforms. #4739
    • Added new CHANGELOG.md to project. #4732
    • Added obsolete attribute and updated documentation. #4731
    • Fixed layout of UWP windows in VS template to ignore window chrome. #4727
    • Remove support for reading raw assets through ContentManager. #4726
    • Implemented DynamicSoundEffectInstance for DirectX and OpenAL platforms. #4715
    • Removed unused Yeti Mp3 compressor. #4713
    • MonoGame Portable Assemblies. #4712
    • Fixed RGBA64 packing and added unit tests. #4683
    • Fix Gamepad crash when platform doesn't support the amount. #4677
    • Fixed Song stopping before they are finished on Windows. #4668
    • Removed the Linux .deb installer. #4665
    • OpenAssetImporter is now automatically selected for all the formats it supports. #4663
    • Fixed broken unit tests under Linux. #4614
    • Split out Title Container into partial classes. #4590
    • Added Rider Support to Linux installer. #4589
    • Implement vertexStride in VertexBuffer.SetData for OpenGL. #4568
    • Performance improvement to SpriteBatch vertex generation. #4547
    • Optimization of indices initialization in SpriteBatcher. #4546
    • Optimized ContentReader to decode LZ4 compressed streams directly. #4522
    • TitleContainer partial class cleanup. #4520
    • Remove raw asset support from ContentManager. #4489
    • Initial implementation of RenderTargetCube for OpenGL. #4488
    • Removed unnecessary platform differences in MGFX. #4486
    • SoundEffect fixes and tests. #4469
    • Cleanup FX syntax for shader compiler. #4462
    • General Improvements to Pipeline Gtk implementation. #4459
    • ShaderProfile Refactor. #4438
    • GraphicsDeviceManager partial class refactor. #4425
    • Remove legacy Storage classes. #4320
    • Added mipmap generation for DirectX render targets. #4189
  • v3.5.1 Changes

    March 30, 2016
    • Fixed negative values when pressing up on left thumbstick on Mac.
    • Removed exception and just return empty state when requesting an invalid GamePad index.
    • Fixed texture processing for 64bpp textures.
    • Fixed Texture2D.SaveAsPng on Mac.
  • v3.5 Changes

    March 16, 2016
    • Content Pipeline Integration for Xamarin Studio and MonoDevleop on Mac and Linux.
    • Automatic inclusion of XNBs into your final project on Mac and Linux.
    • Improved Mac and Linux installers.
    • Assemblies are now installed locally on Mac and Linux just like they are on Windows.
    • New cross-platform "Desktop" project where same binary and content will work on Windows, Linux and Mac desktops.
    • Better Support for Xamarin.Mac and Xam.Mac.
    • Apple TV support (requires to be built from source at the moment).
    • Various sound system fixes.
    • New GraphicsMetrics API.
    • Optimizations to SpriteBatch performance and garbage generation.
    • Many improvements to the Pipeline tool: added toolbar, new filtered output view, new templates, drag and drop, and more.
    • New GamePad support for UWP.
    • Mac and Linux now support Vorbis compressed music.
    • Major refactor of texture support in content pipeline.
    • Added 151 new unit tests.
    • Big improvements to FBX and model content processing.
    • Various fixes to XML serialization.
    • MediaLibrary implementation for Windows platforms.
    • Removed PlayStation Mobile platform.
    • Added content pipeline extension template project.
    • Support for binding multiple vertex buffers in a draw call.
    • Fixed deadzone issues in GamePad support.
    • OcclusionQuery support for DX platforms.
    • Fixed incorrect z depth in SpriteBatch.
    • Lots of OpenTK backend fixes.
    • Much improved font processing.
    • Added new VertexPosition vertex format.
    • Better VS project template installation under Windows.
  • v3.4 Changes

    April 29, 2015
    • Removed old XNA content pipeline extensions.
    • Added all missing PackedVector types.
    • Replacement of old SDL joystick path with OpenTK.
    • Added SamplerState.ComparisonFunction feature to DX and OGL platforms.
    • Fixed bug where content importers would not be autodetected on upper case file extensions.
    • Fixed compatibility with XNA sound effect XNBs.
    • Lots of reference doc improvements.
    • Added SamplerState.BorderColor feature to DX and OGL platforms.
    • Lots of improvements to the Mac, Linux and Windows versions of the Pipeline GUI tool.
    • Fixes for bad key mapping on Linux.
    • Support for texture arrays on DX platforms.
    • Fixed broken ModelMesh.Tag
    • VS templates will now only install if VS is detected on your system.
    • Added Color.MonoGameOrange.
    • Fixed Xact SoundBack loading bug on Android.
    • Added support for a bunch of missing render states to MGFX.
    • Added support for sRGB texture formats to DX and OGL platforms.
    • Added RasterizerState.DepthClipEnable support for DX and OGL platforms.
    • New support for the Windows 10 UAP plafform.
    • Fixed bug which caused the GamePad left thumbstick to not work correctly.
    • Preliminary base classed for future Joystick API.
    • Performance improvement on iOS by avoiding unnessasary GL context changes.
    • Fixed bug where MediaPlayer volume affected all sounds.
    • New XamarinStudio/MonoDevelop Addin for Mac.
    • New Mac installer packages.
  • v3.3 Changes

    March 16, 2015
    • Support for vertex texture fetch on Windows.
    • New modern classes for KeyboardInput and MessageBox.
    • Added more validation to draw calls and render states.
    • Cleaned up usage of statics to support multiple GraphicsDevice instances.
    • Support Window.Position on WindowsGL platform.
    • Reduction of redundant OpenGL calls.
    • Fullscreen support for Windows DX platform.
    • Implemented Texture2D SaveAsPng and SaveAsJpeg for Android.
    • Improved GamePad deadzone calculations.
    • We now use FFmpeg for audio content building.
    • BoundingSphere fixes and optimizations.
    • Many improvements to Linux platform.
    • Various fixes to FontTextureProcessor.
    • New Windows Universal App template for Windows Store and Windows Phone support.
    • Many fixes to reduce garbage generation during runtime.
    • Adding support for TextureFormatOptions to FontDescriptionProcessor.
    • XNA compatibility improvements to FontDescriptionProcessor.
    • Resuscitated the unit test framework with 100s of additional unit tests.
    • BoundingFrustum fixes and optimizations.
    • Added VS2013 project templates.
    • Moved to new MonoGame logo.
    • Added MSAA render target support for OpenGL platforms.
    • Added optional content compression support to content pipeline and runtime.
    • TextureCube content reader and GetData fixes.
    • New OpenAL software implementation for Android.
    • Xact compatibility improvements.
    • Lots of Android fixes and improvements.
    • Added MediaLibrary implementation for Android, iOS, Windows Phone, and Windows Store.
    • Added ReflectiveWriter implementation to content pipeline.
    • Fixes to Texture2D.GetData on DirectX platforms.
    • SpriteFont rendering performance optimizations.
    • Huge refactor of ModelProcessor to be more compatible with XNA.
    • Moved NET and GamerServices into its own MonoGame.Framework.Net assembly.
    • Runtime support for ETC1 textures for Androud.
    • Improved compatibility for FBXImporter and XImporter.
    • Multiple SpritBatch compatibility fixes.
    • We now use FreeImage in TextureImporter to support many more input formats.
    • MGFX parsing and render state improvements.
    • New Pipeline GUI tool for managing content projects for Windows, Mac, and Linux desktops.
    • New implementation of content pipeline IntermediateSerializer.
    • All tools and content pipeline built for 64-bit.
    • New documentation system.
    • Implement web platform (JSIL) stubs.
    • Lots of fixes to PSM.
    • Added Protobuild support for project generation.
    • Major refactor of internals to better separate platform specific code.
    • Added MGCB command line tool to Windows installer.
  • v3.2 Changes

    March 03, 2018
    • Implemented missing PackedVector types.
    • VS2013 support for MonoGame templates.
    • Big improvement to XInput performance on Windows/Windows8.
    • Added GameWindow.TextInput event enhancement.
    • Added Xamarin.Mac compatability.
    • Support for WPF interop under DirectX.
    • Enhancement to support multiple GameWindows on Windows under DirectX.
    • Various SpriteFont compatibility improvements.
    • OpenAL performance/memory/error handling improvements.
    • Reduction of Effect runtime memory usage.
    • Support for DXT/S3TC textures on Android.
    • Touch support on Windows desktop games.
    • Added new RenderTarget3D enhancement.
    • OUYA gamepad improvements.
    • Internal improvements to reduce garbage generation.
    • Various windowing fixes for OpenTK on Linux, Mac, and Windows.
    • Automatic support for content reloading on resume for Android.
    • Support for TextureCube, Texture3D, and RenderTargetCube on DirectX.
    • Added TitleContainer.SupportRetina enhancement for loading @2x content.
    • Lots of Android/Kindle compatibility fixes.
    • Added enhancement GameWindow.IsBorderless.
    • OpenGL now supports multiple render targets.
    • Game.IsRunningSlowly working accurately to XNA.
    • Game tick resolution improvements.
    • XACT compatibility improvements.
    • Various fixes and improvements to math types.
    • DrawUserIndexedPrimitives now works with 32bit indicies.
    • GamerServices fixes under iOS.
    • Various MonoGame FX improvements and fixes.
    • Render target fixes for Windows Phone.
    • MediaPlayer/MediaQueue/Song fixes on Windows Phone.
    • XNA accuracy fixes to TitleContainer.
    • Fixes to SpriteBatch performance and compatibility with XNA.
    • Threading fixes around SoundEffectInstance.
    • Support for Song.Duration.
    • Fixed disposal of OpenGL shader program cache.
    • Improved support of PoT textures in OpenGL.
    • Implemented missing EffectParameter SetValue/GetValue calls.
    • Touch fixes to Windows Phone.
    • Fixes to orientation support in iOS.
    • Lots of PSM fixes which make it usable for 2D games.
    • New Windows desktop platform using DirectX/XAudio.
    • Old Windows project renamed WindowsGL.
    • Fixed offsetInBytes parameter in IndexBuffer/VertexBuffer SetData.
    • Fixed subpixel offset when viewport is changed in OpenGL.
    • Tons of content pipeline improvements making it close to complete.