Skip to content

Releases: FNA-XNA/FNA3D

22.04

01 Apr 15:52
Compare
Choose a tag to compare

New Features:

Fixes:

  • D3D11: Precompiled the faux-backbuffer blit shaders, removing FNA3D's dependency on d3dcompiler
    • MojoShader still requires an HLSL compiler for D3D11 support (see above)

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

22.03

01 Mar 16:52
Compare
Choose a tag to compare

New Features:

  • D3D11 now supports presenting to multiple windows with a single device
    • The expected behavior should be similar to Vulkan, varying behavior may be a bug

Fixes:

  • Vulkan:
    • Rework submit synchronization, should make better use of GPU time overall
    • Fix a possible data race when updating buffer data during a defrag period
    • Clean up some swapchain data checks
  • Refresh the VisualC filters file

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

22.02

01 Feb 15:51
Compare
Choose a tag to compare

New Features:

  • Vulkan now supports presenting to multiple windows with a single device
  • FNA3D_Replay now supports forcing debug contexts for all traces
  • Added support for BC7 textures

Modified Features:

  • FNA3D_GetDrawableSize's documentation has been updated to suggest calling the function after the device has been made
    • Fixes MoltenVK high-DPI support
  • FNA3D_DISABLE_LATESWAPTEAR has now been inverted into FNA3D_ENABLE_LATESWAPTEAR
    • Late swap tear is now disabled by default

Fixes:

  • Vulkan:
    • Buffer implementation has been simplified, improving performance
    • Fixed incorrect sampler limit query
    • A bunch of texture swizzle fixes
  • D3D11:
    • On newer systems, EnumAdapterByGpuPreference is now used to pick the dedicated GPU
    • Device creation now correctly falls back to 11_0 and lower if 11_1 is an unknown version

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

22.01

01 Jan 16:50
Compare
Choose a tag to compare

New Features:

  • Added support for SRGB textures/renderbuffers

Removed Features:

  • The Metal renderer has been removed, in favor of Vulkan/MoltenVK

Fixes:

  • Vulkan: Various fixes for device support checks
  • Image: Log errors from stb_image

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.12

01 Dec 16:42
Compare
Choose a tag to compare

New Features:

  • MojoShader: Add support for multiple shader contexts
    • The threading rules are roughly the same as the renderers themselves. Don't go crazy with this!

Fixes:

  • Vulkan:
    • Fix validation errors for RenderTarget mipmap generation
    • Fix SetBufferData overwriting in-flight None and Discard submissions
    • Make device queue family requirements more lenient; compute and transfer bits aren't mandatory
  • OpenGL: Fix ridiculous SetRenderTargets crash where a renderbuffer and texture share the same GLuint handle
  • SPIR-V: Fix support for FragDepth builtin

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.11

01 Nov 15:44
Compare
Choose a tag to compare

Fixes:

  • Vulkan: Make mipmap quality match other drivers
  • OpenGL:
    • Removed the Wayland alpha workaround. Wayland users should migrate to Mesa 21.3 and newer.
    • Removed the ANGLE D3D11 ARB_draw_elements_base_vertex workaround

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.10

01 Oct 15:02
Compare
Choose a tag to compare

New Features:

  • The Vulkan renderer is now officially considered stable!

Deprecations:

  • The Metal renderer is now deprecated
    • Metal users should migrate to Vulkan via MoltenVK, which is far more stable and performant
    • MetalRenderer will be removed in 22.01

Fixes:

  • OpenGL: Work around a radeonsi Git driver regression related to point sprite state
  • Vulkan:
    • Fix a vertex texture sample race
    • Avoid a possible crash when the OS does not a return a display's refresh rate
  • D3D11:
    • Work around a gigantic horrible Xbox OS regression for UWP swapchains
    • Draw directly to the swapchain when a faux-backbuffer is not needed, improves performance
  • Tracing: Minor VS2010 buildfix

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.09

01 Sep 15:45
Compare
Choose a tag to compare

Fixes:

  • D3D11:
    • Try to discard target textures before setting them as targets, fixes debug layer spam
    • Fix vertex buffer state shadowing
  • OpenGL: Work around errors caused by windows that default to 2X multisampling (Xwayland...)
  • Tracing: Buffer disk writes, should dramatically improve tracing performance
  • Continued work on the Vulkan pre-release

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.08

01 Aug 15:40
Compare
Choose a tag to compare

Fixes:

  • D3D11:
    • Fix a crash on presentation due to overlays violating thread safety rules (looking at you, EGS)
    • Fix generating color renderbuffers with no multisampling support
  • OpenGL: Explicitly check for anisotropic filtering support, fixes support for llvmpipe in particular
  • Continued work on the Vulkan pre-release

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors:

21.07

01 Jul 15:47
Compare
Choose a tag to compare

New Features:

  • MojoShader has migrated from Mercurial to Git, and we have transferred ownership of our repository to Ryan C. Gordon, the original author of MojoShader. All previous links should remain valid, but our Git history is now the official history!

Fixes:

  • D3D11: Fix emitting POSITION1+ attributes in HLSL shaders

Thanks to our GitHub Sponsors, including...

Super Sponsors:

Sponsors: