Adam Sawicki
f451b94158
Fixed vmaBuildVirtualBlockStatsString, vmaFreeVirtualBlockStatsString to also be inside #if VMA_STATS_STRING_ENABLED
...
Updated copyright headers for to year 2022.
Change by @medranSolus
2022-01-21 12:56:18 +01:00
Adam Sawicki
d3a85f0dc3
Refactored virtual allocator. (COMPATIBILITY BREAKING!) Added TLSF algoritym.
...
Refactored virtual allocator: Added type VmaVirtualAllocation, member VmaVirtualAllocationInfo::offset, changed parameters of vmaVirtualAllocate, vmaVirtualFree, vmaSetVirtualAllocationUserData, vmaGetVirtualAllocationInfo.
Added TLSF algorithm: Added VMA_POOL_CREATE_TLSF_ALGORITHM_BIT, VMA_VIRTUAL_BLOCK_CREATE_TLSF_ALGORITHM_BIT.
Some internal refactoring.
Improved documentation: Grouped API elements into Doxygen modules.
Code mostly by @medranSolus.
2022-01-20 17:00:33 +01:00
Adam Sawicki
a8581fc96c
Deleted the whole Record&Replay feature. COMPATIBILITY BREAKING!
...
Removed from the API: VmaAllocatorCreateInfo::pRecordSettings, VmaRecordSettings, VmaRecordFlagBits, VmaRecordFlags.
Regenerated documentation. Updated README.
2022-01-10 18:11:09 +01:00
Adam Sawicki
1e97603ab8
Deleted the whole feature of lost allocations. COMPATIBILITY BREAKING!
...
Removed from the interface: VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT, VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT, vmaCreateLostAllocation, vmaMakePoolAllocationsLost, vmaTouchAllocation, VmaAllocatorCreateInfo::frameInUseCount, VmaPoolCreateInfo::frameInUseCount.
Also fixed a bug with synchronization in VmaDedicatedAllocationList.
2022-01-10 17:57:11 +01:00
Adam Sawicki
5453c4b5eb
Fixed compilation of tests.
2022-01-07 14:27:36 +01:00
Adam Sawicki
c61770a162
Fixed CMakeLists.txt regarding VMA_DYNAMIC_VULKAN_FUNCTIONS, VMA_STATIC_VULKAN_FUNCTIONS
...
Closes #218
2022-01-05 18:41:51 +01:00
Adam Sawicki
7c48285034
Removed VMA_USE_STL_CONTAINERS
2021-12-22 14:57:18 +01:00
Adam Sawicki
cbad11e039
Fixed vmaGetPoolStats for dedicated allocations
...
Added new tests: TestPoolsAndAllocationParameters.
2021-12-22 14:50:49 +01:00
Adam Sawicki
4586be47d8
Fixed usage of VMA_STATIC_VULKAN_FUNCTIONS, VMA_DYNAMIC_VULKAN_FUNCTIONS in CmakeLists.txt
...
Fixes #215
2021-12-17 12:11:06 +01:00
Adam Sawicki
5c8b3ba955
Fixes in CMakeLists.txt files
...
Added header files, added NATVIS file, added missing project dependencies.
2021-12-07 16:48:59 +01:00
Adam Sawicki
d3067c3620
Improved NATVIS file - added support for VmaIntrusiveLinkedList usage
2021-12-07 16:48:07 +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
4cd813a8c6
Added flag VMA_ALLOCATION_CREATE_CAN_ALIAS_BIT
2021-12-06 12:14:13 +01:00
Adam Sawicki
4e4e1c085d
Added parameters -t --Test and -s -TestSparseBinding to the test app, to execute tests and exit.
2021-12-03 12:13:44 +01:00
Adam Sawicki
d74155933e
Improvements in CMakeLists.txt
2021-12-03 11:37:36 +01:00
Adam Sawicki
2854266061
Fix in TestHeapSizeLimit
2021-12-02 16:38:35 +01:00
Adam Sawicki
f529a86ab5
Added VmaVulkanFunctions::vkGetInstanceProcAddr, vkGetDeviceProcAddr
...
These are now required when using VMA_DYNAMIC_VULKAN_FUNCTIONS. Compatibility breaking!
Closes #211
2021-11-29 17:52:30 +01:00
Adam Sawicki
41296759b9
Refactoring: Added function VmaAddStatInfoAllocation, VmaAddStatInfoUnusedRange
...
Submitting improved tests.
2021-10-30 12:44:40 +02:00
Adam Sawicki
73ff8e07d1
Preparations for adding support for alternative algorithms in virtual blocks and tests for them
2021-10-28 19:20:12 +02:00
Adam Sawicki
c6432507c5
Implemented vmaBuildVirtualBlockStatsString, vmaFreeVirtualBlockStatsString
2021-10-28 17:00:17 +02:00
Adam Sawicki
cc61fe10d8
Implemented vmaClearVirtualBlock
2021-10-28 16:03:09 +02:00
Adam Sawicki
9a091e8ccb
Implemented vmaCalculateVirtualBlockStats
2021-10-28 15:00:24 +02:00
Adam Sawicki
72949fa9d8
Enabled more tests
2021-10-28 14:54:07 +02:00
Adam Sawicki
e1812303d6
More coding and more tests. Basic functionality is working now.
2021-10-28 14:46:45 +02:00
Adam Sawicki
54b7eccc35
More implementation and first tests.
...
Crashing for now - need more refactoring.
2021-10-28 14:32:34 +02:00
Adam Sawicki
642bbfd793
Fixed TestInvalidAllocations
2021-10-27 16:45:19 +02:00
Lukasz Izdebski
cf6b1a9270
Doxygen added to CMake, shader project dependency added to Sample Project
2021-10-06 13:30:04 +02:00
Adam Sawicki
1b0bd18053
Standardized line endings to LF
...
See also #195
2021-09-30 12:03:35 +02:00
Sergey Kosarevsky
73f3aed74d
Fixed issue #192 with hardcoded VK_USE_PLATFORM_WIN32_KHR
2021-09-20 15:11:21 +03:00
Adam Sawicki
82731feeb9
Fixes. Left only new member VmaPoolCreateInfo::pMemoryAllocateNext.
2021-06-21 14:47:37 +02:00
Adam Sawicki
d780fe0263
Merge branch 'master' into PoolCustomPnext
...
# Conflicts:
# include/vk_mem_alloc.h
2021-06-21 14:08:45 +02:00
Adam Sawicki
11dce16f00
Added VmaPoolCreateInfo::minAllocationAlignment
2021-06-18 15:25:57 +02:00
Adam Sawicki
8d4a9e9174
Renamed macro VMA_DEBUG_ALIGNMENT to VMA_MIN_ALIGNMENT as there are valid use cases for it other than debugging purposes.
2021-06-14 17:01:33 +02:00
Adam Sawicki
2f4bc1bb20
Merge pull request #171 from IAmNotHanni/master
...
Add CMake support
2021-06-09 16:48:06 +02:00
Adam Sawicki
e30b3ab39c
Moving Doxyfile to main directory
2021-06-09 16:30:59 +02:00
Johannes Schneider
c9777daabb
Remove macros which can be configured through CMake from VmaUsage.h
2021-06-02 23:18:54 +02:00
Johannes Schneider
948be70048
Enable compiling with multiple processes for VmaReplay
2021-06-02 12:18:42 +02:00
Johannes Schneider
191c64c8ee
Link VulkanMemoryAllocator to Vulkan only if static linking is enabled
2021-06-02 00:23:57 +02:00
Johannes Schneider
8111c12b36
Expose important VMA settings macros as CMake options
2021-06-02 00:22:18 +02:00
Johannes Schneider
e65c1469d9
Improve consistency in naming of targets and options
2021-05-31 23:53:21 +02:00
Johannes Schneider
696ecd674d
Replace add_definitions with add_compile_definitions
2021-05-31 23:53:21 +02:00
Johannes Schneider
a3078999ea
Move add_subdirectory for shaders and VmaReplay to the end of the file
2021-05-31 23:53:21 +02:00
Johannes Schneider
61a2844a4f
Only set VMA_EXAMPLE_SOURCE_FILES when building sample app
2021-05-31 23:53:20 +02:00
Johannes Schneider
1a25921427
Make target_include_directories a one line instruction
2021-05-31 23:53:20 +02:00
Johannes Schneider
853f713db1
Remove source_group instructions
2021-05-31 23:53:19 +02:00
Johannes Schneider
8f62aa27c2
Rename replay app target and shaders target
2021-05-28 20:03:27 +02:00
Johannes Schneider
a7f6b7e1f1
Fix VmaReplay build
2021-05-28 20:03:26 +02:00
Johannes Schneider
3f2238ac9d
Fix VMA_BUILD_EXAMPLE_APP_SHADERS being ignored on Linux
2021-05-28 12:45:58 +02:00
Johannes Schneider
6b733a5ba2
Fix missing Vulkan dependency of VmaExample
2021-05-28 11:56:59 +02:00
Johannes Schneider
e32721df9e
Make building shaders, VMA example application and VMA replay app optional
2021-05-28 02:04:15 +02:00