Commit Graph

38 Commits

Author SHA1 Message Date
Adam Sawicki
a8c1543723 Major refactoring - reordered sections in vk_mem_alloc.h
Added #ifndef _VMA_* for convenient folding in IDEs.
Regenerated docs.
2021-12-14 16:53:50 +01:00
Adam Sawicki
35eeb340a3 Renamed function vmaGetBudget to vmaGetHeapBudgets. COMPATIBILITY BREAKING!
Rebuilt the docs.
Closes #213
2021-12-06 17:36:18 +01:00
Adam Sawicki
fac8ef44d2 Added convenience function vmaGetAllocationMemoryProperties
Regenerated documentation.
2021-11-23 13:35:19 +01:00
Adam Sawicki
e93a581969 Written documentation for API of the virtual allocator
Regenerated the documentation.
2021-10-28 17:36:41 +02:00
Adam Sawicki
d2f0313d20 Fixes in comments
Regenerated documentation.
2021-10-18 17:32:40 +02:00
Adam Sawicki
9f586a20bc Added documentation chapter about OpenGL interop
Rebuilt the docs.
2021-07-28 15:25:52 +02:00
Adam Sawicki
55868965ae Fixed documentation of the new function vmaCreateBufferWithAlignment 2021-07-07 15:34:10 +02:00
Adam Sawicki
e92f989423 Added VmaAllocatorCreateInfo::pTypeExternalMemoryHandleTypes 2021-07-07 14:52:10 +02:00
Adam Sawicki
0790b5f0a9 Regenerated documentation
Used new Doxygen 1.9.1
2021-06-21 14:55:01 +02:00
Adam Sawicki
3528e2aed3 Minor formatting fix in documentation
Regenerated documentation using new Doxygen.
2020-10-15 15:04:12 +02:00
Adam Sawicki
0620c8e5e1 Add test and documentation for resource aliasing (overlap). 2020-08-18 16:43:44 +02:00
Adam Sawicki
25d9b2c0ec Add function vmaFlushAllocations, vmaInvalidateAllocations for multiple allocations at once
Closes #119
Added internal class VmaSmallVector.
Refactored common code into a new function VmaAllocator_T::GetFlushOrInvalidateRange.
Regenerated docs.
2020-04-19 19:02:28 +02:00
Adam Sawicki
facf05ee63 Some fixes after fb3a337 #115 2020-04-08 17:09:59 +02:00
Adam Sawicki
e73e988daf Add support for buffer device address, together with documentation and tests
Added VMA_ALLOCATOR_CREATE_BUFFER_DEVICE_ADDRESS_BIT.
2020-03-20 18:05:42 +01:00
Adam Sawicki
a1d992f5d1 Add function vmaGetAllocatorInfo, structure VmaAllocatorInfo
Closes #99

Also rebuilt Doxygen documentation.
2020-03-02 15:32:10 +01:00
Adam Sawicki
76004205fd Add documentation chapter about VK_AMD_device_coherent_memory extension usage
Regenerated Doxygen documentation.
2020-02-07 17:18:35 +01:00
Adam Sawicki
4670506a22 Announce version 2.3.0-alpha.1 2019-11-25 12:46:57 +01:00
Adam Sawicki
69185555f4 Add VMA_MEMORY_USAGE_GPU_LAZILY_ALLOCATED
Closes #84
2019-11-18 17:03:34 +01:00
Adam Sawicki
c22c72fa4b Regenerate Doxygen documentation 2019-11-18 16:39:48 +01:00
Adam Sawicki
52d0272459 Regenerate documentation, rebuild binaries
Switched binaries from vs2017 to vs2019.
2019-11-18 15:03:59 +01:00
Adam Sawicki
48b8a33869 Fixes and adjustments for budget, regenerate documentation 2019-11-02 15:24:33 +01:00
Adam Sawicki
4abe30c1ae Add functions vmaBindBufferMemory2, vmaBindImageMemory2, flag VMA_ALLOCATOR_CREATE_KHR_BIND_MEMORY2_BIT
This change adds usage of VK_KHR_bind_memory2 extension.
Also add structure members VmaVulkanFunctions::vkBindBufferMemory2KHR, vkBindImageMemory2KHR.
2019-07-02 14:37:21 +02:00
Adam Sawicki
71db590d7d Merge branch 'sparse_binding_example' into v2.2
# Conflicts:
#	docs/html/vk__mem__alloc_8h_source.html
#	src/Tests.cpp
#	src/VmaReplay/VmaReplay.cpp
#	src/VulkanSample.cpp
#	src/vk_mem_alloc.h
2018-12-10 14:45:56 +01:00
Adam Sawicki
6a6d8c6ea2 Merge branch 'master' into sparse_binding_example
# Conflicts:
#	docs/html/vk__mem__alloc_8h.html
#	docs/html/vk__mem__alloc_8h_source.html
#	src/Tests.cpp
#	src/VulkanSample.cpp
#	src/vk_mem_alloc.h
2018-12-05 13:20:32 +01:00
Adam Sawicki
48a12aa835 Merge branch 'master' into allocation_defragmentation_strategies
# Conflicts:
#	docs/html/vk__mem__alloc_8h_source.html
#	src/Tests.cpp
#	src/vk_mem_alloc.h
2018-11-16 14:36:57 +01:00
Adam Sawicki
b0c363693f Added function vmaResizeAllocation.
Added tests: function TestResize. Bumped CSV recording file format version to 1.4.
2018-11-13 16:17:38 +01:00
Adam Sawicki
012a4ac697 Designed and documented new interface for defragmentation.
Added: VmaDefragmentationContext, VmaDefragmentationFlagBits, VmaDefragmentationFlags, VmaDefragmentationInfo2, vmaDefragmentationBegin(), vmaDefragmentationEnd(). Extended VmaDefragmentationStats by allocationsLost. Deprecated VmaDefragmentationInfo2, vmaDefragment().
2018-10-09 13:25:01 +02:00
Adam Sawicki
d062b784d3 Added functions: vmaAllocateMemoryPages, vmaFreeMemoryPages to create and destroy multiple allocations at once. 2018-10-03 15:26:22 +02:00
Adam Sawicki
212a4a6567 Added new feature: corruption detection. Added debug macro VMA_DEBUG_DETECT_CORRUPTION, functions vmaCheckCorruption, vmaCheckPoolCorruption 2018-06-14 15:51:47 +02:00
Adam Sawicki
776ae0d5f8 Improved support for non-coherent memory. Added functions: vmaFlushAllocation, vmaInvalidateAllocation. nonCoherentAtomSize is respected automatically. Issue #27 Thanks @egdaniel !
Also added VmaVulkanFunctions::vkFlushMappedMemoryRanges, vkInvalidateMappedMemoryRanges. Fixed bug with uninitialized VmaPool_T::m_Id.
2018-06-08 17:11:12 +02:00
Adam Sawicki
ba335cf8c0 Fixed threading bug with mapping vs binding. Added functions vmaBindBufferMemory, vmaBindImageMemory. Removed class VmaDeviceMemoryMapping. Minor fixes in documentation. 2018-03-13 14:59:12 +01:00
Adam Sawicki
b31aac8a06 Minor fix bool -> VkBool32 on interface. 2018-03-06 10:34:15 +01:00
Adam Sawicki
9ecb59e847 Version 2.0.0-alpha.8. Added functions: vmaTouchAllocation, vmaFindMemoryTypeIndexForBufferInfo, vmaFindMemoryTypeIndexForImageInfo. 2018-03-05 18:20:23 +01:00
Adam Sawicki
5268dbbce5 Version 2.0.0-alpha.5. Major change in memory mapping - now it's internally reference-counted.
Renamed flag VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT to VMA_ALLOCATION_CREATE_MAPPED_BIT.
See documentation of vmaMapMemory().
2017-11-08 12:52:05 +01:00
Adam Sawicki
d08dc0cd6a Reorganized Doxygen documentation into more separate pages. 2017-10-17 11:27:14 +02:00
Adam Sawicki
976f920c15 Version 2.0.0-alpha.3 - major update. 2017-09-12 20:45:14 +02:00
Adam Sawicki
988ac4c05d Updated version number to 2.0.0-alpha.2. Regenerated Doxygen documentation. 2017-07-11 15:22:12 +02:00
Adam Sawicki
9b3adfc9d0 Generated Doxygen documentation into docs/ directory. 2017-06-20 11:17:23 +02:00