Releases Tags
-
1.13.1 Stable
released this 2 weeks ago | 0 commits to main since this release
No ABI break in this release, but there is a significant memory management improvement!
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 254 KiB Refresh.dll
- 184 KiB libRefresh.so
-
1.13.0 Stable
released this 2 months ago | 1 commits to main since this release
BREAKING API CHANGES
- Removed format and data type specific load and free functions
- Removed SaveQOI
- Removed BGRA SavePNG path
Refresh_Image_Load
takes raw RGBA bytes in PNG or QOI format and decodes them, returning a pixel bufferRefresh_Image_Free
should be used on data returned fromRefresh_Image_Load
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 247 KiB Refresh.dll
- 179 KiB libRefresh.so
-
1.12.0 Stable
released this 2 months ago | 4 commits to main since this release
BUG FIXES
- Added missing texture formats to size function
- Fix MultipleThreads validation error when resetting command buffers
BREAKING API CHANGES
- Changed
Refresh_Image_Load
toRefresh_Image_LoadPNGFromFile
- Changed
Refresh_Image_Free
toRefresh_Image_FreePNG
- Added
Refresh_Image_LoadPNGFromMemory
- Added
Refresh_Image_LoadQOIFromFile
- Added
Refresh_Image_LoadQOIFromMemory
- Added
Refresh_Image_FreeQOI
- Added
Refresh_Image_SaveQOI
BEHAVIOR CHANGES
- You can now load images directly from memory instead of using a filename.
- Added support for the QOI image format: https://qoiformat.org/
- You must call the appropriate
Free
function when freeing an image load pixel buffer.
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 248 KiB Refresh.dll
- 184 KiB libRefresh.so
-
1.11.0 Stable
released this 4 months ago | 8 commits to main since this release
BUG FIXES
- Fixed transfer buffer alignment
- Fixed 3D texture creation
- Fixed framebuffers interacting incorrectly with mip levels
BREAKING API CHANGES
- Removed fixed command buffers
- Shader loading now expects a
.refresh
blob instead of backend-specific shader binary - Removed sample count from render passes
- Added sample count to textures
BEHAVIOR CHANGES
- We now ship a shader compiler,
refreshc
, which accepts glsl code and emits a.refresh
binary blob that is used to load shaders from any backend. This tool expects that your machine hasglslc
andspirv-cross
available, which can both be obtained from the Vulkan SDK. - MSAA support for depth textures
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 242 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.10.0 Stable
released this 5 months ago | 19 commits to main since this release
BUG FIXES
- Fixed a render target segfault
- Fixed an issue where pushing data multiple times to the same resource would not set a memory barrier
BREAKING API CHANGES
- Removed SRC1 blend factors
- Removed depth clamp feature
BEHAVIOR CHANGES
- Enabled multi draw indirect feature and added indirect command struct
- Made submission mutex behavior consistent across Refresh_Wait and Refresh_Submit
- Removed input validation from several APIs - if you're using the C API directly you are responsible for submitting correct inputs!
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 240 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.9.0 Stable
released this 7 months ago | 26 commits to main since this release
BUG FIXES
- Enabled missing anisotropy feature
- Fixed bug where multisample enum values were not being translated into their equivalent Vulkan enums
- Fixed bug where MSAA attachments in transient render pass creation were using a sample count of 1
- Fixed bug where the clearValues array in BeginRenderPass was not being populated with clear values for multisample attachments
- Fixed bug where the multisample texture was not being transitioned when beginning a render pass
- Fixed bugs where multisampling logic wasn't kicking in for certain sample counts due to incorrect enum comparisons
BREAKING API CHANGES
- Removed REFRESH_SAMPLECOUNT_16/32/64, since hardware support for these sample counts is generally poor (and completely non-existent with MoltenVK and certain consoles).
- Removed unused sampleCount parameter from Refresh_TextureCreateInfo
- Removed sampleCount parameter from Refresh_ColorAttachmentDescription
- Removed the renderArea parameter from Refresh_BeginRenderPass
BEHAVIOR CHANGES
- When creating a render pass or graphics pipeline, the requested multisample count will be converted into a sample count that's actually supported by the GPU
- All color attachments are now forced to have an internal store op of STORE, even if REFRESH_STORE_OP_DONTCARE is specified. The one exception is internal multisample textures -- if DONTCARE is used, those textures will be discarded to save on bandwidth. (Their resolve textures will still be stored)
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 242 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.8.2 Stable
released this 7 months ago | 30 commits to main since this release
- Fixes window minimize regression on SDL 2.24
- Various fixes related to claiming windows and swapchain recreation
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 241 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.8.1 Stable
released this 8 months ago | 33 commits to main since this release
- Fix backend iteration when certain backends are not compiled into the binary
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 241 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.8.0 Stable
released this 8 months ago | 35 commits to main since this release
- The application must now call Refresh_SetBackend before creating the device
- Refresh_SetBackend can set a preferred backend, but will fall back if it is not available
- Device creation no longer takes presentation parameters
- Windows must now be explicitly claimed by the device
- Windows can be unclaimed by the device
- Windows can have their swapchain present mode changed after creation
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 241 KiB Refresh.dll
- 180 KiB libRefresh.so
-
1.7.1 Stable
released this 8 months ago | 37 commits to main since this release
- Fix memory barrier issue on texture copies
- Slight memory barrier optimization for color and depth stencil render targets
Downloads
- Source Code (ZIP)
- Source Code (TAR.GZ)
- 239 KiB Refresh.dll
- 175 KiB libRefresh.so