Releases: FNA-XNA/FNA
Releases · FNA-XNA/FNA
18.07
New Features:
- MojoShader is now included in the FNA repository as a submodule
- SetDataPointerEXT is now available for Texture objects
Fixes:
- SDL2_FNAPlatform:
- GC fixes for keyboard input
- Add a couple obscure scancodes to the input dictionary
- VideoPlayer: Texture is now only updated in GetTexture function
18.06
New Features:
- SetDataPointerEXT is now available for all VertexBuffer/IndexBuffer objects
Fixes:
- Song: Fix attempting to set the volume on a disposed Song object
- FNA.Core: Fix a regression that prevented referencing FNA.Core in UWP projects
- Texture2DReader: More robust checks for MemoryStreams without direct buffer access
- SDL2_FNAPlatform: Fix SetVibration range on Windows/macOS for LEFTRIGHT effects
- TitleLocation/FNAPlatform: Fix circular dependency on FNAPlatform base directory and TitleLocation.Path
- OpenGLDevice/ModernGLDevice: ARB_debug_output errors are now presented in the Exception message
- ContentManager: Compressed XNB data is now read in all at once, dramatically improving performance on machines with slow filesystems
18.05
New Features:
- Add FNA_OPENGL_FORCE_COMPATIBILITY_PROFILE environment variable
Fixes:
- Various fixes for BRUTE support
- Allow .NET 4.0 projects to reference FNA.Core
- OpenGLDevice: Fix GL_LUMINANCE support for ES3 contexts
- RenderTarget2D/RenderTargetCube: Supported SurfaceFormat list is now more explicit
- VideoPlayer: Set the YUV texture data before pushing GL state, slightly optimizes call stream
- GraphicsAdapter: CurrentDisplayMode now queries the FNAPlatform for each request, not just on startup
- SDL2_FNAPlatform:
- GetIconName now uses TitleLocation.Path to look for images
- ClientSizeChanged events now fire even without AllowUserResizing, per XNA behavior
- Experimental platforms no longer require AssemblyCompany to generate the storage root
- This changes the folder layout for Storage, but only on platforms that have not shipped yet
18.04
New Features:
- FNA now supports the BRUTE C#-to-C++ code generator
- SDL2_FNAPlatform:
- Add full support for GamePadCapabilities
- VolumeUp/VolumeDown keys are now supported
- OpenGLDevice: NoSuitableGraphicsDevice now includes device information, if available
- DynamicVertexBuffer/DynamicIndexBuffer: Add SetDataPointerEXT extension
Fixes:
- Game: Rewrite ResetElapsedTime to do what it's actually supposed to do
- Effect: Various optimizations related to sampler/texture parameter mapping
- Texture2DReader: Fix reading from streams that start in the middle, rather than 0
18.03
New Features:
- FNAPlatform: Add GetBaseDirectory function for upcoming platform support
- SpriteBatch: Reorganize variables to make SpriteBatch.cs easier to re-use outside of FNA
Fixes:
- Effect: Allocate state changes struct as AllocHGlobal memory, fixes crash on Apply
- Video: Add width/height information to XNB mismatch error message
- SoundEffect: Fix FromStream loading for MSADPCM wav data
- SoundEffectInstance: Allow using Apply3D(AudioListener[]) with one listener
- SDL2_FNAPlatform: Fix event filter for Windows SDL_WINDOWEVENT_EXPOSED events
- FNA.Core: Fix building in the same directory as FNA
18.02
New Features:
- TextInputEXT: Add SetInputRectangle function
Fixes:
- SDL2_FNAPlatform: Non-desktop platforms now use SDL_GetPrefPath to get storage root
18.01.02
Fixes:
- StorageDevice: Critical fix for Mono GetPathRoot workaround
Special thanks to our Patrons, including...
- Daniel Crenna
- David Gow
- Lee Vermeulen
- Chad Yates
- El Gran Jorge
- Jeremiah Carpenter
18.01
New Features:
- Add experimental support for FreeBSD, OpenBSD, and NetBSD
Fixes:
- SpriteFont: Reflection accuracy fixes
- StorageDevice: Minor fixes to Mono GetPathRoot workaround
Special thanks to our Patrons, including...
- Daniel Crenna
- David Gow
- Lee Vermeulen
- Chad Yates
- El Gran Jorge
- Jeremiah Carpenter
17.12
New Features:
- Texture2D: Add support for SaveAsJpeg
- Currently saves at 100% quality level, uses SDL_image via SDL2_FNAPlatform
Fixes:
- OpenGLDevice: Lower MSAA requirements ever so slightly by separating glSampleMaski requirement
- IRenderTarget: Fall back to SurfaceFormat.Color when attempting to create DXT RenderTarget
- SpriteBatch: Fix support for negative width/height values for sourceRectangle
- X360TexUtil: Fix mipmap loading
- FrameworkDispatcher: AudioDevice.Initialize() should only be attempted on the first frame
- Content: ExternalReferenceReader's TargetType is actually null
- FNA.Core: Change intermediate output folder to prevent conflicts with original FNA output
Special thanks to our Patrons, including...
- Daniel Crenna
- David Gow
- Lee Vermeulen
- Chad Yates
- El Gran Jorge
- Jeremiah Carpenter
17.11
New Features:
- Add support for .NET Standard 2.0
- This includes support for .NET Core 2.0 and UWP 6.0
- Add Microsoft.Xna.Framework.Input.Touch namespace
- Like XNA 4.0 for Windows, this namespace is currently a stub
- Add support for Xbox 360 Texture2D/SpriteFont data
- Add DDSFromStreamEXT extension
Fixes:
- SDL2_FNAPlatform:
- Add a log message when SDL2.dll is not found
- Force GLES context when platform is GLES-only (such as UWP)
- OpenGLDevice: Fix SetData support for Bgr565, Bgra5551, Bgra4444, and Rgba1010102
- StorageDevice: Work around Mono Linux bug for Path.GetPathRoot
- Various math type fixes/optimizations
Special thanks to our Patrons, including...
- Daniel Crenna
- David Gow
- Lee Vermeulen
- Chad Yates
- El Gran Jorge
- Jeremiah Carpenter