Adam Sawicki
b2e7801ff3
Added function vmaGetAllocationInfo2, structure VmaAllocationInfo2
...
See #383 , #340 Thanks @debaetsd !
Rebuilt the docs.
2023-11-08 18:01:19 +01:00
Adam Sawicki
7bd97fa410
Fixed memory leak in VmaPool_T::~VmaPool_T
...
Fixes #378 Thanks @alecazam
2023-10-30 18:17:52 +01:00
Adam Sawicki
138ce7bda0
Fix in VmaJsonWriter::ContinueString
...
Fixes #376 Thanks @alecazam
2023-10-30 18:14:08 +01:00
Adam Sawicki
2f382df218
Fixed signed/unsigned mismatch in FindMemoryPreferences
...
For compatibility with UBSan. Fixes #368 - thanks @markridgewell
2023-09-11 17:58:15 +02:00
manaskulkarni
66bb67cf18
Make C++20 features optional
...
- Some compilers with C++20 dont have std::popcount
- Support to toggle C++20 features from user side using new VMA_CPP20 macro. If the macro is not defined, it will be set using default logic - #if __cplusplus >= 202002L || _MSVC_LANG >= 202002L
2023-09-01 14:10:40 +05:30
Adam Sawicki
e88fff957b
Fixed main memory type selection algorithm for Raspberry Pi
...
In function FindMemoryPreferences, not requiring HOST_CACHED memory, as some platforms may not have it. See #362 - thanks @cos-public
2023-08-22 13:13:09 +02:00
Adam Sawicki
33067f6b4f
Refactoring in FindMemoryPreferences
...
Without changing the logic. Fixes #354 . Thanks @marc0246 !
2023-07-14 14:18:53 +02:00
Adam Sawicki
6ce692a385
Added callback VmaDefragmentationInfo::pfnBreakCallback that allows to break long execution of vmaBeginDefragmentation
...
Added also PFN_vmaCheckDefragmentationBreakFunction, VmaDefragmentationInfo::pBreakCallbackUserData.
2023-07-14 13:56:46 +02:00
Adam Sawicki
01fe410548
Fixes in Cmake scripts after merging #350
2023-07-11 18:00:37 +02:00
Robin Quint
1d0e8ba3b3
Added small documentation
2023-06-30 17:42:12 +02:00
Robin Quint
ca5ce7df23
Added VMA_EXTENDS_VK_STRUCT
2023-06-30 17:39:36 +02:00
Adam Sawicki
59734bbc63
A fix in VmaBlockMetadata_TLSF::CreateAllocationRequest
...
Code by @medranSolus. See #343
2023-06-12 13:30:02 +02:00
Adam Sawicki
ff37e92786
Fixed bug in VmaDefragmentationContext_T::ComputeDefragmentation_Extensive
...
Fixes #328 . Code by @medranSolus.
2023-04-07 10:58:24 +02:00
Adam Sawicki
7e63caa879
Fix in VmaDefragmentationContext_T::CounterStatus
...
See #327 . Code by @medranSolus.
2023-04-06 11:25:09 +02:00
Adam Sawicki
e2f5eed2e2
Revert "Merge pull request #325 from lawadr/use-alignof"
2023-04-03 17:49:00 +02:00
Stephan Hartmann
383f06b9fd
IWYU: add cstdio for snprintf in vk_mem_alloc.h
...
Discoverd with upcoming GCC 13.
2023-04-02 21:19:16 +02:00
lawadr
d16730ce64
Change __alignof to alignof
...
Whereas __alignof is a non-standard compiler extension that seems to
come from Microsoft and is supported (yet undocumented) by Clang and
GCC, alignof is a standard language feature in C++11. Clang and GCC
both document __alignof__ as a compiler extension, but this isn't
supported by Microsoft.
This fixes builds on compilers that don't support __alignof.
2023-03-22 15:33:11 +00:00
Adam Sawicki
66afe099f1
Improved documentation chapter "Resource aliasing (overlap)"
2023-03-06 11:43:13 +01:00
Adam Sawicki
dd09767ff6
Fixed usage of VMA_FALLTHROUGH
2023-02-24 14:17:44 +01:00
Adam Sawicki
4c58c1fefe
Defined VMA_FALLTHROUGH to fix more compiler warnings
...
See #321
2023-02-24 14:15:41 +01:00
Adam Sawicki
729b7c1408
Fixes for some compiler warnings
...
Found by Visual Studio 2019
2023-02-24 14:04:59 +01:00
Adam Sawicki
c51730a857
Further fixes to importing function vkGetPhysicalDeviceMemoryProperties2 / vkGetPhysicalDeviceMemoryProperties2KHR
...
See #322
2023-02-21 11:31:21 +01:00
Vladislav Belov
3e6b3847e3
Fixes uninitialized vkGetPhysicalDeviceMemoryProperties2KHR during ImportVulkanFunctions_Custom.
2023-02-19 11:31:42 +03:00
Jeroen Bakker
c265047b29
Fix compilation warning.
...
GPU/Linux
2023-02-02 08:09:05 +01:00
Adam Sawicki
7c35d6299b
Added missing vmaFlushAllocation in documentation
...
Fixes #316
2023-01-30 14:18:09 +01:00
Adam Sawicki
29d492b60c
Added missing #include <cstdio>
...
For snprintf, for compatibility with GCC 13.
Fixes #312 - thanks @marxin !
2023-01-19 13:19:55 +01:00
Denis Orlov
3e3877ac83
Fix builds on Linux CI
...
This fixes compilation on older Linux compilers (gcc 7.5.0, clang 7.0.0)
that do not seem to implement P0558R1 defect report, thus not allowing
the usage of value_type member typedef from std::atomic.
2023-01-05 00:05:16 +03:00
Denis Orlov
3459fd780a
Fix atomic type used in AtomicTransactionalIncrement
...
This partially reverts changes from 4dfa169ffc
2023-01-04 21:34:16 +03:00
Adam Sawicki
2606c0039f
Fixed potential integer overflow in VmaAllocator_T::AllocateMemoryOfType when maxMemoryAllocationCount Vulkan limit has high value
...
Fixes #300
2022-11-29 16:53:36 +01:00
Adam Sawicki
14469a5eea
Refactored some switch statements
...
Fixes #299
2022-11-29 16:42:14 +01:00
Adam Sawicki
85a2580529
Removed unused local variables unusedRangeSize
...
Fixes #298
2022-11-29 16:23:17 +01:00
Adam Sawicki
6d2fe13627
Split macros into separate VMA_DEBUG_LOG and VMA_DEBUG_LOG_FORMAT
...
To fix compiler errors with -Wpedantic -Werror - see #297
2022-11-29 16:16:12 +01:00
manaskulkarni
2ea07806af
BindBufferMemory, BindImageMemory - Return VK_ERROR_UNKNOWN for unknown allocation type
2022-11-23 14:02:24 +05:30
Adam Sawicki
936bc4b57e
Internal refactoring for compatibility with 32-bit
...
Removed VmaJsonWriter::WriteSize, ContinueString_Size.
See #293
2022-11-09 16:42:33 +01:00
Adam Sawicki
800acede8d
Merge branch 'master' of https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
2022-11-04 17:02:51 +01:00
Adam Sawicki
cb5bf6452c
Minor fix in documentation
...
Regenerated the documentation using Doxygen 1.9.5.
2022-11-04 17:02:24 +01:00
Riku Palomäki
f741604e04
Remove extra semicolons, fixes build with -Wextra-semi
2022-11-01 10:08:23 +02:00
Russell Greene
198127a0ee
Fix build for iOS
2022-10-27 14:46:35 -05:00
qbojj
19dbbe92c0
fix typo in specification of VmaAlignDown
2022-09-20 13:29:31 +02:00
Pavel Rojtberg
a4c1afb3c4
allow building against vulkan 1.2 headers
...
e.g. on ubuntu 20.04
2022-09-12 18:16:00 +02:00
Tiago Chaves
157a8173d1
Fix minor typos in documentation
2022-09-07 17:37:26 -03:00
Adam Sawicki
0aa8a44acf
Reordered macro definitions in the file to fix compilation on Linux
2022-09-07 16:27:35 +02:00
Adam Sawicki
db0f9b481a
Changed implementation of vma_aligned_alloc to only use aligned_alloc when C++17 is enabled, where the function is defined.
...
See #285
May break on some platforms! If it affects you, please enable C++17 or later in your compiler or provide custom implementation of macro VMA_SYSTEM_ALIGNED_MALLOC (and VMA_SYSTEM_ALIGNED_FREE if needed) using the API of your system.
2022-09-07 16:21:34 +02:00
Adam Sawicki
d6b705bf75
Added function vmaCreateAliasingBuffer2, vmaCreateAliasingImage2 with new parameter allocationLocalOffset
...
Thanks @sagaceilo for the idea!
2022-09-04 13:26:39 +02:00
rumblehhh
177862376c
Fix various typos
2022-08-05 09:20:11 +01:00
Max Rodriguez
b367bf3b87
docs: Fixed a typo under 'Selecting Vulkan version' section
2022-07-26 11:44:54 -07:00
Adam Sawicki
1022be64cf
Added missing mutex when unmapping memory.
...
Hopefully fixes #267 . Code by @medranSolus
2022-06-22 12:48:27 +02:00
Adam Sawicki
b51fea7a53
Improved documentation regarding selecting Vulkan version
...
See #256
Updated to Doxygen 1.9.4.
2022-06-14 16:43:27 +02:00
Rémi Verschelde
9eab57ea44
Strip trailing whitespace in code files
2022-06-14 13:41:15 +02:00
Rémi Verschelde
e20c24c4c8
Convert VMA line endings to Unix style (LF)
...
This makes it consistent with other files in the repository,
and is typically the norm for cross-platform Git repos.
2022-06-14 12:00:24 +02:00