Skip to content

Releases: FNA-XNA/FNA

16.12

01 Dec 15:46
Compare
Choose a tag to compare

New Features:

  • GraphicsAdapter: Implement DeviceName property
  • AudioCategory: Pause/Resume/Stop now properly applies to subcategories
  • CASE_SENSITIVITY_HACK now spams logger with all case sensitivity errors

Fixes:

  • Game: Fix a regression for IsFixedTimeStep default value
  • Effect: Fix application of Anisotropic mag/min/mip filters from sampler_state objects
  • DynamicSoundEffectInstance:
    • Fix Pause/Resume behavior
    • Throw NoAudioHardwareException when ALDevice isn't available

Special thanks to our Patrons, including...

16.11

01 Nov 15:17
Compare
Choose a tag to compare

New Features:

Fixes:

  • Various accuracy fixes for math structures
  • SpriteBatch: Minor performance improvements
  • Texture2D/TextureCube: Fix reading mip levels > 0
  • OpenGLDevice/ModernGLDevice: Reduce memory allocation for SetRenderTargets

Special thanks to our Patrons, including...

16.10

01 Oct 15:31
Compare
Choose a tag to compare

New Features:

  • Add support for subcategory volume control for AudioCategory
  • Add ColorBgraEXT extension

Fixes:

  • SDL2_FNAPlatform:
    • Fix a couple Norwegian keys in the keycode converter
    • Use SDL_HINT_WINDOWS_DISABLE_THREAD_NAMING from upcoming SDL 2.0.5 release
      • Windows developers will need to update to the latest fnalibs.tar.bz2!
  • IGLDevice: Minor polish to the API to prevent redundant code in implementations

Special thanks to our Patrons, including...

16.09

01 Sep 15:53
Compare
Choose a tag to compare

New Features:

Fixes:

  • Replaced internal "SortingFilteringCollection" with XNA-like GameComponent storage
  • GraphicsDevice PresentationParameters Reset timing accuracy fix
  • GraphicsDeviceManager ClientSizeChanged accuracy fix
  • Various crash fixes in VideoPlayer
  • Lots of XNA Math accuracy fixes
  • Lots of PackedVector accuracy fixes
  • XACT:
    • Lots of Cue gain accuracy fixes
    • Lots of PlayWaveEvent variation accuracy fixes

Special thanks to our Patrons, including...

16.08

01 Aug 15:25
Compare
Choose a tag to compare

New Features:

  • Add x64/AnyCPU targets to csproj file
  • Implement TitleLocation class, apparently found internally in XNA
  • Implement stereo-to-mono wavedata conversion for Apply3D calls on stereo buffers
  • Implement PointListEXT extension

Fixes:

  • A handful of fixes to some Vector methods
  • Game: UnloadContent is now called on GraphicsDevice disposal
  • GraphicsDeviceManager/GraphicsDevice: Tons of event timing accuracy fixes
  • OpenGLDevice/ModernGLDevice: Fix GetBackBufferData for multisample backbuffers
  • XACT: AudioCategory.SetVolume now multiplies the default volume, rather than overwriting
  • Video: Preserve duration from XNB files, used to sidestep Duration hack
  • StorageDevice/StorageContainer:
    • Fixes to properties related to DriveInfo
    • Strip out ".vshost" from SavedGames folder when debugging
  • Song:
    • FromUri now properly accepts relative and absolute paths
    • Discard XNB durationMS data, does not appear to be consistent

Special thanks to our Patrons, including...

16.07

01 Jul 14:27
Compare
Choose a tag to compare

New Features:

  • All FNAPlatform/IGLDevice/IALDevice code is now in src/FNAPlatform/
    • Platform API documentation is in src/FNAPlatform/README
  • Add FNALoggerEXT extension
    • The LogHookEXT extension has consequently been removed
  • Add FNA_SONG_DISABLE_THREADS environment variable
    • The NO_STREAM_THREAD build option has consequently been removed
  • Add CASE_SENSITIVITY_HACK build option
  • XACT: Implement Cue IsPreparing and IsPrepared properties
  • Add experimental ModernGLDevice, which uses ARB_direct_state_access and ARB_sampler_objects
    • Disabled by default, enable with FNA_GRAPHICS_FORCE_GLDEVICE="ModernGLDevice"

Fixes:

  • Effect: Fix Get/SetValue(Array) calls for Vector parameter types
  • XACT: Fix min/max RPC bounds behavior
  • OpenALDevice: Fix for stray PCM16 data causing AL_INVALID_VALUE errors
  • SDL2_FNAPlatform:
    • Set window size more aggressively when leaving fullscreen
    • Improved error handling for GetKeyFromScancodeEXT

Special thanks to our Patrons, including...

16.06

01 Jun 13:12
Compare
Choose a tag to compare

New Features:

  • SDL2_FNAPlatform: Full support for global mouse state, rather than just window mouse state
  • SDL2_GameWindow: Full support for AllowUserResizing via SDL_SetWindowResizable
    • FNA_WORKAROUND_WINDOW_RESIZABLE is expected to be removed for SDL 2.0.5.

Fixes:

  • Effect:
    • More verbose error reporting on failure to parse effects
    • Fix a crash on failure to compile effects
  • SpriteBatch:
    • Various microoptimizations and GC performance improvements
    • Fix a crash on invalid SpriteEffects parameter inputs
  • Design: Fix list separator strings
  • SDL2_FNAPlatform: Fix scaled SaveAsPng results being completely transparent
  • DrawableGameComponent: Dispose is now explicitly overloaded, per XNA4 spec

Special thanks to our Patrons, including...

16.05.05

05 May 19:03
Compare
Choose a tag to compare

Fixes a SpriteBatch MatrixTransform calculation regression from 16.05.

16.05

01 May 14:25
Compare
Choose a tag to compare

New Features:

  • FrameworkDispatcher implemented, supports Audio and Media callbacks
  • SpriteBatch: MatrixTransform calculation is now significantly faster
  • Effect:
    • Tons of optimizations, notably for large effect parameter arrays
    • Tons of accuracy fixes, notably for ID3DXEffect::SetRawValue users
    • Quaternion parameter support

Fixes:

  • SDL2_FNAPlatform:
    • GamePad: TONS of dead zone accuracy fixes
    • WM_PAINT event accuracy fixes, mostly for Windows
  • OpenALDevice: Fix ALsizei type size, should fix possible crashes in OpenAL Soft 64-bit
  • Content: Fix SoundEffectReader for nonseekable streams
  • LogHookEXT: Hooks can now be set before init, to get messages from FNAPlatform static initialization

Special thanks to our Patrons, including...

16.04

01 Apr 14:00
Compare
Choose a tag to compare

New Features:

  • Effect: 2x2 Matrix parameter support
  • IGLDevice/IALDevice: Rewrote internal FNA platform APIs to use pointers rather than templates
    • This will make new backends easier to write, but should not be apparent otherwise.

Fixes:

  • SDL2_FNAPlatform: GamePad data is now loaded as soon as SDL inits
  • PackedVector: Rewrote basically the whole namespace for XNA accuracy fixes
  • TextureCollection: Check for disposed textures (DEBUG mode only)
  • XACT: Rewrote NumCueInstances tracking to improve instance limiting accuracy
  • Song:
    • Fix ObjectDisposedException on MediaPlayer.Play for inactive songs
    • Fix list of supported file extensions (should be .ogg and .oga)
  • VideoPlayer: Fix disposing when Videos are never played

Special thanks to our Patrons, including...