Releases: FNA-XNA/FNA3D
21.08
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
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:
21.06
Fixes:
-fpermissive
fix for C++ compilers- Minor cleanup for OpenGLRenderer
- Minor cleanup for the template driver
- Continued work on the Vulkan pre-release
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
21.05
Fixes:
- Minor Xcode project file updates
- OpenGL: Fix setting present interval for EGL-based contexts
- Continued work on the Vulkan pre-release
- Added
FNA3D_VULKAN_DEVICE_LOCAL_HEAP_USAGE_FACTOR
- Removed
FNA3D_VULKAN_MEMORY_REQUIREMENT
- Added
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
21.04
Fixes:
- OpenGL:
- Fix a possible conditional on uninitialized memory in ReadBackbuffer
- Builds no longer require SDL_syswm.h, unless you're building for UIKit
- VertexElementFormat.Color input should be normalized, even if VertexElementUsage is not also Color
- Work around Wayland transparency issues by inaccurately forcing an RGB8 backbuffer, rather than RGBA8
- D3D11: Various threading safety fixes, notably for shader programs and ReadBackbuffer
- Fixed a tracing bug that caused data to get overwritten after calling ResetBackbuffer
- Continued work on the Vulkan pre-release
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
21.03
New Features:
- Added support for tracing FNA3D call streams. FNA3D binaries built with tracing enabled will capture FNA3D calls and serialize them to a file, which can be played back on any platform and renderer with the program found in the replay/ folder. Note that these traces contains texture/buffer data, so be careful to respect copyrights regarding game data!
Fixes:
- Fix a possible crash when calling SetRenderTargets with 0 targets but a non-null target array
- Micro-optimize OpenGL thread commands by skipping the round-trip through the public FNA3D API
- Continued work on the Vulkan pre-release
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
21.02
New Features:
- Added FNA3D_SysRenderer.h, which contains extensions for external graphics middleware interop
Fixes:
- Fix VPOS for OpenGL ES contexts
- Pipeline cache data is now properly invalidated when associated shaders are deleted
- Wrap-up work on the Vulkan beta, now in the release candidate stage
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
21.01
New Features:
- CMake: Add a build option to allow disabling the D3D11 backend
Fixes:
- Enforce SDL 2.0.12 or newer as a build requirement
- Fix GLSL support for PSIZE1+ attributes
- Continued work on the Vulkan beta
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
20.12
New Features:
- Added an x64 configuration to visualc
Fixes:
- D3D11: Dramatically improved the error messages, notably for GetDeviceRemovedReason
- Continued work on the Vulkan beta
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors:
20.11
Modified Features:
- Metal is no longer the default on macOS, due to poor driver performance (especially on Big Sur)
- Metal is now the only renderer on iOS/tvOS, as OpenGL no longer applies for our supported hardware
Fixes:
- D3D11:
- Fix a couple potential memory leaks for shaders and the backbuffer
- Dramatically reduce memory use for games frequently using GetData
- Restore textures that were bound while also being used as render targets
- Fix bool uniform memory alignment
- Disable DXGI's keyboard shortcuts (or at least, try to... Microsoft pls)
- Metal: Force a pipeline flush when SetData is called on a texture that was bound on the same frame
- OpenGL: Return 0 from PrepareWindowAttributes when SDL_GL_LoadLibrary fails
- Continued work on the Vulkan beta
Thanks to our GitHub Sponsors, including...
Super Sponsors:
Sponsors: