mirror of
https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator
synced 2024-11-21 20:00:11 +00:00
Version 2.0.0-alpha.3 - major update.
This commit is contained in:
parent
0c1c663062
commit
976f920c15
Binary file not shown.
@ -64,14 +64,16 @@ $(function() {
|
||||
<div class="contents">
|
||||
<div class="textblock">Here are the classes, structs, unions and interfaces with brief descriptions:</div><div class="directory">
|
||||
<table class="directory">
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_allocation_info.html" target="_self">VmaAllocationInfo</a></td><td class="desc">Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> </td></tr>
|
||||
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_allocator_create_info.html" target="_self">VmaAllocatorCreateInfo</a></td><td class="desc">Description of a Allocator to be created </td></tr>
|
||||
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_defragmentation_info.html" target="_self">VmaDefragmentationInfo</a></td><td class="desc">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> </td></tr>
|
||||
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_defragmentation_stats.html" target="_self">VmaDefragmentationStats</a></td><td class="desc">Statistics returned by function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> </td></tr>
|
||||
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_device_memory_callbacks.html" target="_self">VmaDeviceMemoryCallbacks</a></td><td class="desc">Set of callbacks that the library will call for vkAllocateMemory and vkFreeMemory </td></tr>
|
||||
<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_memory_requirements.html" target="_self">VmaMemoryRequirements</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_stat_info.html" target="_self">VmaStatInfo</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_stats.html" target="_self">VmaStats</a></td><td class="desc">General statistics from current state of Allocator </td></tr>
|
||||
<tr id="row_0_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_allocation_create_info.html" target="_self">VmaAllocationCreateInfo</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_1_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_allocation_info.html" target="_self">VmaAllocationInfo</a></td><td class="desc">Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> </td></tr>
|
||||
<tr id="row_2_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_allocator_create_info.html" target="_self">VmaAllocatorCreateInfo</a></td><td class="desc">Description of a Allocator to be created </td></tr>
|
||||
<tr id="row_3_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_defragmentation_info.html" target="_self">VmaDefragmentationInfo</a></td><td class="desc">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> </td></tr>
|
||||
<tr id="row_4_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_defragmentation_stats.html" target="_self">VmaDefragmentationStats</a></td><td class="desc">Statistics returned by function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> </td></tr>
|
||||
<tr id="row_5_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_device_memory_callbacks.html" target="_self">VmaDeviceMemoryCallbacks</a></td><td class="desc">Set of callbacks that the library will call for vkAllocateMemory and vkFreeMemory </td></tr>
|
||||
<tr id="row_6_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_pool_create_info.html" target="_self">VmaPoolCreateInfo</a></td><td class="desc">Describes parameter of created <code>VmaPool</code> </td></tr>
|
||||
<tr id="row_7_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_pool_stats.html" target="_self">VmaPoolStats</a></td><td class="desc">Describes parameter of existing VmaPool </td></tr>
|
||||
<tr id="row_8_" class="even"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_stat_info.html" target="_self">VmaStatInfo</a></td><td class="desc"></td></tr>
|
||||
<tr id="row_9_"><td class="entry"><span style="width:16px;display:inline-block;"> </span><span class="icona"><span class="icon">C</span></span><a class="el" href="struct_vma_stats.html" target="_self">VmaStats</a></td><td class="desc">General statistics from current state of Allocator </td></tr>
|
||||
</table>
|
||||
</div><!-- directory -->
|
||||
</div><!-- contents -->
|
||||
|
@ -65,9 +65,9 @@ $(function() {
|
||||
<div class="qindex"><a class="qindex" href="#letter_v">v</a></div>
|
||||
<table class="classindex">
|
||||
<tr><td rowspan="2" valign="bottom"><a name="letter_v"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah">  v  </div></td></tr></table>
|
||||
</td><td valign="top"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>   </td><td valign="top"><a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a>   </td><td valign="top"><a class="el" href="struct_vma_stats.html">VmaStats</a>   </td></tr>
|
||||
<tr><td valign="top"><a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a>   </td><td valign="top"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a>   </td><td></td></tr>
|
||||
<tr><td valign="top"><a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>   </td><td></td><td></td><td></td><td></td></tr>
|
||||
</td><td valign="top"><a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a>   </td><td valign="top"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a>   </td><td></td></tr>
|
||||
<tr><td valign="top"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a>   </td><td valign="top"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a>   </td><td></td></tr>
|
||||
<tr><td valign="top"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a>   </td><td valign="top"><a class="el" href="struct_vma_stats.html">VmaStats</a>   </td><td></td></tr>
|
||||
<tr><td></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table>
|
||||
<div class="qindex"><a class="qindex" href="#letter_v">v</a></div>
|
||||
|
@ -61,9 +61,21 @@ $(function() {
|
||||
<div class="textblock">Here is a list of all class members with links to the classes they belong to:</div>
|
||||
|
||||
<h3><a id="index_a"></a>- a -</h3><ul>
|
||||
<li>allocationCount
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>AllocationCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeAvg
|
||||
: <a class="el" href="struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeMax
|
||||
: <a class="el" href="struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>allocationsMoved
|
||||
: <a class="el" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9">VmaDefragmentationStats</a>
|
||||
</li>
|
||||
@ -71,6 +83,12 @@ $(function() {
|
||||
|
||||
|
||||
<h3><a id="index_b"></a>- b -</h3><ul>
|
||||
<li>BlockCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>blockSize
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>bytesFreed
|
||||
: <a class="el" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28">VmaDefragmentationStats</a>
|
||||
</li>
|
||||
@ -95,8 +113,13 @@ $(function() {
|
||||
|
||||
<h3><a id="index_f"></a>- f -</h3><ul>
|
||||
<li>flags
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>frameInUseCount
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -105,6 +128,9 @@ $(function() {
|
||||
<li>maxAllocationsToMove
|
||||
: <a class="el" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc">VmaDefragmentationInfo</a>
|
||||
</li>
|
||||
<li>maxBlockCount
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>maxBytesToMove
|
||||
: <a class="el" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d">VmaDefragmentationInfo</a>
|
||||
</li>
|
||||
@ -115,6 +141,12 @@ $(function() {
|
||||
: <a class="el" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">VmaAllocationInfo</a>
|
||||
, <a class="el" href="struct_vma_stats.html#a13e3caf754be79352c42408756309331">VmaStats</a>
|
||||
</li>
|
||||
<li>memoryTypeIndex
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>minBlockCount
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@ -144,8 +176,11 @@ $(function() {
|
||||
<li>pMappedData
|
||||
: <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">VmaAllocationInfo</a>
|
||||
</li>
|
||||
<li>pool
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>preferredFlags
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#a6e105f836c2288034c711815b18226dc">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>preferredLargeHeapBlockSize
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">VmaAllocatorCreateInfo</a>
|
||||
@ -154,15 +189,15 @@ $(function() {
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a">VmaAllocatorCreateInfo</a>
|
||||
</li>
|
||||
<li>pUserData
|
||||
: <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo</a>
|
||||
, <a class="el" href="struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">VmaAllocationCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_r"></a>- r -</h3><ul>
|
||||
<li>requiredFlags
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#a8876c1b0f112e13a277f16967064cfe0">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -170,18 +205,7 @@ $(function() {
|
||||
<h3><a id="index_s"></a>- s -</h3><ul>
|
||||
<li>size
|
||||
: <a class="el" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f">VmaAllocationInfo</a>
|
||||
</li>
|
||||
<li>SuballocationCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeAvg
|
||||
: <a class="el" href="struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeMax
|
||||
: <a class="el" href="struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b">VmaStatInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">VmaPoolStats</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -197,6 +221,9 @@ $(function() {
|
||||
<li>UnusedBytes
|
||||
: <a class="el" href="struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>unusedRangeCount
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>UnusedRangeCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6">VmaStatInfo</a>
|
||||
</li>
|
||||
@ -209,8 +236,11 @@ $(function() {
|
||||
<li>UnusedRangeSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>unusedSize
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>usage
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#ab588497177a57847ed04e0a1aef54bbe">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>UsedBytes
|
||||
: <a class="el" href="struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04">VmaStatInfo</a>
|
||||
|
@ -61,9 +61,21 @@ $(function() {
|
||||
 
|
||||
|
||||
<h3><a id="index_a"></a>- a -</h3><ul>
|
||||
<li>allocationCount
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>AllocationCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeAvg
|
||||
: <a class="el" href="struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeMax
|
||||
: <a class="el" href="struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>AllocationSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>allocationsMoved
|
||||
: <a class="el" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9">VmaDefragmentationStats</a>
|
||||
</li>
|
||||
@ -71,6 +83,12 @@ $(function() {
|
||||
|
||||
|
||||
<h3><a id="index_b"></a>- b -</h3><ul>
|
||||
<li>BlockCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>blockSize
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>bytesFreed
|
||||
: <a class="el" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28">VmaDefragmentationStats</a>
|
||||
</li>
|
||||
@ -95,8 +113,13 @@ $(function() {
|
||||
|
||||
<h3><a id="index_f"></a>- f -</h3><ul>
|
||||
<li>flags
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">VmaAllocationCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>frameInUseCount
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">VmaAllocatorCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -105,6 +128,9 @@ $(function() {
|
||||
<li>maxAllocationsToMove
|
||||
: <a class="el" href="struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc">VmaDefragmentationInfo</a>
|
||||
</li>
|
||||
<li>maxBlockCount
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>maxBytesToMove
|
||||
: <a class="el" href="struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d">VmaDefragmentationInfo</a>
|
||||
</li>
|
||||
@ -115,6 +141,12 @@ $(function() {
|
||||
: <a class="el" href="struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5">VmaAllocationInfo</a>
|
||||
, <a class="el" href="struct_vma_stats.html#a13e3caf754be79352c42408756309331">VmaStats</a>
|
||||
</li>
|
||||
<li>memoryTypeIndex
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
<li>minBlockCount
|
||||
: <a class="el" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">VmaPoolCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
@ -144,8 +176,11 @@ $(function() {
|
||||
<li>pMappedData
|
||||
: <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2">VmaAllocationInfo</a>
|
||||
</li>
|
||||
<li>pool
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>preferredFlags
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#a6e105f836c2288034c711815b18226dc">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>preferredLargeHeapBlockSize
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">VmaAllocatorCreateInfo</a>
|
||||
@ -154,15 +189,15 @@ $(function() {
|
||||
: <a class="el" href="struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a">VmaAllocatorCreateInfo</a>
|
||||
</li>
|
||||
<li>pUserData
|
||||
: <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo</a>
|
||||
, <a class="el" href="struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">VmaAllocationCreateInfo</a>
|
||||
, <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">VmaAllocationInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3><a id="index_r"></a>- r -</h3><ul>
|
||||
<li>requiredFlags
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#a8876c1b0f112e13a277f16967064cfe0">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -170,18 +205,7 @@ $(function() {
|
||||
<h3><a id="index_s"></a>- s -</h3><ul>
|
||||
<li>size
|
||||
: <a class="el" href="struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f">VmaAllocationInfo</a>
|
||||
</li>
|
||||
<li>SuballocationCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeAvg
|
||||
: <a class="el" href="struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeMax
|
||||
: <a class="el" href="struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>SuballocationSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b">VmaStatInfo</a>
|
||||
, <a class="el" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">VmaPoolStats</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@ -197,6 +221,9 @@ $(function() {
|
||||
<li>UnusedBytes
|
||||
: <a class="el" href="struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>unusedRangeCount
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>UnusedRangeCount
|
||||
: <a class="el" href="struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6">VmaStatInfo</a>
|
||||
</li>
|
||||
@ -209,8 +236,11 @@ $(function() {
|
||||
<li>UnusedRangeSizeMin
|
||||
: <a class="el" href="struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6">VmaStatInfo</a>
|
||||
</li>
|
||||
<li>unusedSize
|
||||
: <a class="el" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">VmaPoolStats</a>
|
||||
</li>
|
||||
<li>usage
|
||||
: <a class="el" href="struct_vma_memory_requirements.html#ab588497177a57847ed04e0a1aef54bbe">VmaMemoryRequirements</a>
|
||||
: <a class="el" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">VmaAllocationCreateInfo</a>
|
||||
</li>
|
||||
<li>UsedBytes
|
||||
: <a class="el" href="struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04">VmaStatInfo</a>
|
||||
|
@ -71,24 +71,30 @@ $(function() {
|
||||
|
||||
|
||||
<h3><a id="index_v"></a>- v -</h3><ul>
|
||||
<li>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT
|
||||
: <a class="el" href="group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fabe92b706180652ceb320da5bc383aef4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATOR_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fa914e905a08c2e578f76b9d6c418626cc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_USAGE_CPU_ONLY
|
||||
: <a class="el" href="group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
@ -107,17 +113,35 @@ $(function() {
|
||||
<li>VMA_MEMORY_USAGE_UNKNOWN
|
||||
: <a class="el" href="group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_STATS_STRING_ENABLED
|
||||
: <a class="el" href="group__general.html#gae25f0d55fd91cb166f002b63244800e1">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaAllocateMemory()
|
||||
: <a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaAllocateMemoryForBuffer()
|
||||
: <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaAllocateMemoryForImage()
|
||||
: <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateFlagBits
|
||||
: <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateFlags
|
||||
: <a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateInfo
|
||||
: <a class="el" href="group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationInfo
|
||||
: <a class="el" href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">vk_mem_alloc.h</a>
|
||||
@ -141,10 +165,16 @@ $(function() {
|
||||
: <a class="el" href="group__general.html#ga200692051ddb34240248234f5f4c17bb">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateBuffer()
|
||||
: <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateImage()
|
||||
: <a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateLostAllocation()
|
||||
: <a class="el" href="group__layer2.html#gae5c9657d9e94756269145b01c05d16f1">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreatePool()
|
||||
: <a class="el" href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaDefragment()
|
||||
: <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb">vk_mem_alloc.h</a>
|
||||
@ -164,11 +194,14 @@ $(function() {
|
||||
<li>vmaDestroyImage()
|
||||
: <a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaDestroyPool()
|
||||
: <a class="el" href="group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaDeviceMemoryCallbacks
|
||||
: <a class="el" href="group__general.html#ga5e2eb68d727cfd4df25702b027b7aa31">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaFindMemoryTypeIndex()
|
||||
: <a class="el" href="group__layer1.html#gadf80663373e94bcef382f17534b8694e">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaFreeMemory()
|
||||
: <a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">vk_mem_alloc.h</a>
|
||||
@ -188,27 +221,39 @@ $(function() {
|
||||
<li>vmaGetPhysicalDeviceProperties()
|
||||
: <a class="el" href="group__general.html#gaecabf7b6e91ea87d0316fa0a9e014fe0">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaGetPoolStats()
|
||||
: <a class="el" href="group__layer2.html#gae8bf76997b234ef68aad922616df4153">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaMakePoolAllocationsLost()
|
||||
: <a class="el" href="group__layer2.html#ga736bd6cbda886f36c891727e73bd4024">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaMapMemory()
|
||||
: <a class="el" href="group__layer2.html#gad5bd1243512d099706de88168992f069">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaMapPersistentlyMappedMemory()
|
||||
: <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirementFlagBits
|
||||
: <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirementFlags
|
||||
: <a class="el" href="group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirements
|
||||
: <a class="el" href="group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryUsage
|
||||
: <a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateFlagBits
|
||||
: <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateFlags
|
||||
: <a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateInfo
|
||||
: <a class="el" href="group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolStats
|
||||
: <a class="el" href="group__layer2.html#ga2e5612d871d64c5624087b837a338c34">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaSetAllocationUserData()
|
||||
: <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaSetCurrentFrameIndex()
|
||||
: <a class="el" href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaStatInfo
|
||||
: <a class="el" href="group__general.html#ga810b009a788ee8aac72a25b42ffbe31c">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
|
@ -59,15 +59,18 @@ $(function() {
|
||||
|
||||
<div class="contents">
|
||||
 <ul>
|
||||
<li>VmaAllocationCreateFlagBits
|
||||
: <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocatorFlagBits
|
||||
: <a class="el" href="group__general.html#ga34fff29c218d23a7ff7dff44b77b6b6f">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirementFlagBits
|
||||
: <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryUsage
|
||||
: <a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateFlagBits
|
||||
: <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
|
@ -59,24 +59,30 @@ $(function() {
|
||||
|
||||
<div class="contents">
|
||||
 <ul>
|
||||
<li>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT
|
||||
: <a class="el" href="group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fabe92b706180652ceb320da5bc383aef4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_ALLOCATOR_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fa914e905a08c2e578f76b9d6c418626cc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_MEMORY_USAGE_CPU_ONLY
|
||||
: <a class="el" href="group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
@ -95,6 +101,15 @@ $(function() {
|
||||
<li>VMA_MEMORY_USAGE_UNKNOWN
|
||||
: <a class="el" href="group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VMA_POOL_CREATE_PERSISTENT_MAP_BIT
|
||||
: <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
|
@ -60,13 +60,13 @@ $(function() {
|
||||
<div class="contents">
|
||||
 <ul>
|
||||
<li>vmaAllocateMemory()
|
||||
: <a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaAllocateMemoryForBuffer()
|
||||
: <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaAllocateMemoryForImage()
|
||||
: <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaBuildStatsString()
|
||||
: <a class="el" href="group__general.html#gaa4fee7eb5253377599ef4fd38c93c2a0">vk_mem_alloc.h</a>
|
||||
@ -78,10 +78,16 @@ $(function() {
|
||||
: <a class="el" href="group__general.html#ga200692051ddb34240248234f5f4c17bb">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateBuffer()
|
||||
: <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateImage()
|
||||
: <a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreateLostAllocation()
|
||||
: <a class="el" href="group__layer2.html#gae5c9657d9e94756269145b01c05d16f1">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaCreatePool()
|
||||
: <a class="el" href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaDefragment()
|
||||
: <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb">vk_mem_alloc.h</a>
|
||||
@ -95,8 +101,11 @@ $(function() {
|
||||
<li>vmaDestroyImage()
|
||||
: <a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaDestroyPool()
|
||||
: <a class="el" href="group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaFindMemoryTypeIndex()
|
||||
: <a class="el" href="group__layer1.html#gadf80663373e94bcef382f17534b8694e">vk_mem_alloc.h</a>
|
||||
: <a class="el" href="group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaFreeMemory()
|
||||
: <a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">vk_mem_alloc.h</a>
|
||||
@ -116,6 +125,12 @@ $(function() {
|
||||
<li>vmaGetPhysicalDeviceProperties()
|
||||
: <a class="el" href="group__general.html#gaecabf7b6e91ea87d0316fa0a9e014fe0">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaGetPoolStats()
|
||||
: <a class="el" href="group__layer2.html#gae8bf76997b234ef68aad922616df4153">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaMakePoolAllocationsLost()
|
||||
: <a class="el" href="group__layer2.html#ga736bd6cbda886f36c891727e73bd4024">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaMapMemory()
|
||||
: <a class="el" href="group__layer2.html#gad5bd1243512d099706de88168992f069">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
@ -125,6 +140,9 @@ $(function() {
|
||||
<li>vmaSetAllocationUserData()
|
||||
: <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaSetCurrentFrameIndex()
|
||||
: <a class="el" href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>vmaUnmapMemory()
|
||||
: <a class="el" href="group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
|
@ -65,6 +65,15 @@ $(function() {
|
||||
<li>PFN_vmaFreeDeviceMemoryFunction
|
||||
: <a class="el" href="group__general.html#gaef2545dc2e9dd4f29ab9ba6ac6fe2f49">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateFlagBits
|
||||
: <a class="el" href="group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateFlags
|
||||
: <a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationCreateInfo
|
||||
: <a class="el" href="group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaAllocationInfo
|
||||
: <a class="el" href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
@ -86,18 +95,21 @@ $(function() {
|
||||
<li>VmaDeviceMemoryCallbacks
|
||||
: <a class="el" href="group__general.html#ga5e2eb68d727cfd4df25702b027b7aa31">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirementFlagBits
|
||||
: <a class="el" href="group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirementFlags
|
||||
: <a class="el" href="group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryRequirements
|
||||
: <a class="el" href="group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaMemoryUsage
|
||||
: <a class="el" href="group__layer1.html#gad63b2113c0bfdbeade1cb498f5a8580d">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateFlagBits
|
||||
: <a class="el" href="group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateFlags
|
||||
: <a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolCreateInfo
|
||||
: <a class="el" href="group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaPoolStats
|
||||
: <a class="el" href="group__layer2.html#ga2e5612d871d64c5624087b837a338c34">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
<li>VmaStatInfo
|
||||
: <a class="el" href="group__general.html#ga810b009a788ee8aac72a25b42ffbe31c">vk_mem_alloc.h</a>
|
||||
</li>
|
||||
|
@ -133,6 +133,9 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:ga8701444752eb5de4464adb5a2b514bca"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#ga8701444752eb5de4464adb5a2b514bca">vmaGetMemoryTypeProperties</a> (VmaAllocator allocator, uint32_t memoryTypeIndex, VkMemoryPropertyFlags *pFlags)</td></tr>
|
||||
<tr class="memdesc:ga8701444752eb5de4464adb5a2b514bca"><td class="mdescLeft"> </td><td class="mdescRight">Given Memory Type Index, returns Property Flags of this memory type. <a href="#ga8701444752eb5de4464adb5a2b514bca">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga8701444752eb5de4464adb5a2b514bca"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236">vmaSetCurrentFrameIndex</a> (VmaAllocator allocator, uint32_t frameIndex)</td></tr>
|
||||
<tr class="memdesc:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="mdescLeft"> </td><td class="mdescRight">Sets index of the current frame. <a href="#gade56bf8dc9f5a5eaddf5f119ed525236">More...</a><br /></td></tr>
|
||||
<tr class="separator:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga333b61c1788cb23559177531e6a93ca3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#ga333b61c1788cb23559177531e6a93ca3">vmaCalculateStats</a> (VmaAllocator allocator, <a class="el" href="struct_vma_stats.html">VmaStats</a> *pStats)</td></tr>
|
||||
<tr class="memdesc:ga333b61c1788cb23559177531e6a93ca3"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves statistics from current state of the Allocator. <a href="#ga333b61c1788cb23559177531e6a93ca3">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga333b61c1788cb23559177531e6a93ca3"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@ -535,6 +538,37 @@ Functions</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
<p>PhysicalDeviceProperties are fetched from physicalDevice by the allocator. You can access it here, without fetching it again on your own. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gade56bf8dc9f5a5eaddf5f119ed525236"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gade56bf8dc9f5a5eaddf5f119ed525236">◆ </a></span>vmaSetCurrentFrameIndex()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void vmaSetCurrentFrameIndex </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">uint32_t </td>
|
||||
<td class="paramname"><em>frameIndex</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Sets index of the current frame. </p>
|
||||
<p>This function must be used if you make allocations with <code>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</code> and <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> flags to inform the allocator when a new frame begins. Allocations queried using <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> cannot become lost in the current frame. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div><!-- contents -->
|
||||
|
@ -70,20 +70,20 @@ $(function() {
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
|
||||
Classes</h2></td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a></td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
|
||||
Typedefs</h2></td></tr>
|
||||
<tr class="memitem:gad63b2113c0bfdbeade1cb498f5a8580d"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gad63b2113c0bfdbeade1cb498f5a8580d">VmaMemoryUsage</a></td></tr>
|
||||
<tr class="separator:gad63b2113c0bfdbeade1cb498f5a8580d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b">VmaMemoryRequirementFlagBits</a></td></tr>
|
||||
<tr class="memdesc:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. <a href="#gaecb50b7fdb759cc4c4346c40819bf00b">More...</a><br /></td></tr>
|
||||
<tr class="separator:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gab96b90d34cd1bd0f340fc48f8ca2664a"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a">VmaMemoryRequirementFlags</a></td></tr>
|
||||
<tr class="separator:gab96b90d34cd1bd0f340fc48f8ca2664a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae9ee98bebd6e474aa0ef679e10f1d8ca"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca">VmaMemoryRequirements</a></td></tr>
|
||||
<tr class="separator:gae9ee98bebd6e474aa0ef679e10f1d8ca"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4">VmaAllocationCreateFlagBits</a></td></tr>
|
||||
<tr class="memdesc:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. <a href="#gabf6bf6748c7a9fe7ce5b7835c0f56af4">More...</a><br /></td></tr>
|
||||
<tr class="separator:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5225e5e11f8376f6a31a1791f3d6e817"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a></td></tr>
|
||||
<tr class="separator:ga5225e5e11f8376f6a31a1791f3d6e817"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga86c44f9950b40d50088ed93a17870a7a"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a">VmaAllocationCreateInfo</a></td></tr>
|
||||
<tr class="separator:ga86c44f9950b40d50088ed93a17870a7a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
|
||||
Enumerations</h2></td></tr>
|
||||
@ -98,59 +98,64 @@ Enumerations</h2></td></tr>
|
||||
<br />
|
||||
}</td></tr>
|
||||
<tr class="separator:gaa5846affa1e9da3800e3e78fae2305cc"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a> { <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed">VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4">VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc">VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT</a> = 0x00000004,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21">VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
}<tr class="memdesc:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. <a href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">More...</a><br /></td></tr>
|
||||
<tr class="memitem:gad9889c10c798b040d59c92f257cae597"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> { <br />
|
||||
  <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4">VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312">VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT</a> = 0x00000004,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a> = 0x00000008,
|
||||
<br />
|
||||
  <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a> = 0x00000010,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
<br />
|
||||
}<tr class="memdesc:gad9889c10c798b040d59c92f257cae597"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. <a href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">More...</a><br /></td></tr>
|
||||
</td></tr>
|
||||
<tr class="separator:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="separator:gad9889c10c798b040d59c92f257cae597"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:gadf80663373e94bcef382f17534b8694e"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gadf80663373e94bcef382f17534b8694e">vmaFindMemoryTypeIndex</a> (VmaAllocator allocator, uint32_t memoryTypeBits, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, uint32_t *pMemoryTypeIndex)</td></tr>
|
||||
<tr class="separator:gadf80663373e94bcef382f17534b8694e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gaef15a94b58fbcb0fe706d5720e84a74a"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a">vmaFindMemoryTypeIndex</a> (VmaAllocator allocator, uint32_t memoryTypeBits, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, uint32_t *pMemoryTypeIndex)</td></tr>
|
||||
<tr class="separator:gaef15a94b58fbcb0fe706d5720e84a74a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<h2 class="groupheader">Typedef Documentation</h2>
|
||||
<a id="gaecb50b7fdb759cc4c4346c40819bf00b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gaecb50b7fdb759cc4c4346c40819bf00b">◆ </a></span>VmaMemoryRequirementFlagBits</h2>
|
||||
<a id="gabf6bf6748c7a9fe7ce5b7835c0f56af4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gabf6bf6748c7a9fe7ce5b7835c0f56af4">◆ </a></span>VmaAllocationCreateFlagBits</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef enum <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a> <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a></td>
|
||||
<td class="memname">typedef enum <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. </p>
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gab96b90d34cd1bd0f340fc48f8ca2664a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gab96b90d34cd1bd0f340fc48f8ca2664a">◆ </a></span>VmaMemoryRequirementFlags</h2>
|
||||
<a id="ga5225e5e11f8376f6a31a1791f3d6e817"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga5225e5e11f8376f6a31a1791f3d6e817">◆ </a></span>VmaAllocationCreateFlags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef VkFlags <a class="el" href="group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a">VmaMemoryRequirementFlags</a></td>
|
||||
<td class="memname">typedef VkFlags <a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gae9ee98bebd6e474aa0ef679e10f1d8ca"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gae9ee98bebd6e474aa0ef679e10f1d8ca">◆ </a></span>VmaMemoryRequirements</h2>
|
||||
<a id="ga86c44f9950b40d50088ed93a17870a7a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga86c44f9950b40d50088ed93a17870a7a">◆ </a></span>VmaAllocationCreateInfo</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef struct <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a></td>
|
||||
<td class="memname">typedef struct <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
@ -172,32 +177,42 @@ Functions</h2></td></tr>
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Enumeration Type Documentation</h2>
|
||||
<a id="gadec54ccdb0fd3901e89ac6d38c2619ed"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gadec54ccdb0fd3901e89ac6d38c2619ed">◆ </a></span>VmaMemoryRequirementFlagBits</h2>
|
||||
<a id="gad9889c10c798b040d59c92f257cae597"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gad9889c10c798b040d59c92f257cae597">◆ </a></span>VmaAllocationCreateFlagBits</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">enum <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a></td>
|
||||
<td class="memname">enum <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. </p>
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. </p>
|
||||
<table class="fieldtable">
|
||||
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed"></a>VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT </td><td class="fielddoc"><p>Set this flag if the allocation should have its own memory block. </p>
|
||||
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4"></a>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT </td><td class="fielddoc"><p>Set this flag if the allocation should have its own memory block. </p>
|
||||
<p>Use it for special, big resources, like fullscreen images used as attachments.</p>
|
||||
<p>This flag must also be used for host visible resources that you want to map simultaneously because otherwise they might end up as regions of the same VkDeviceMemory, while mapping same VkDeviceMemory multiple times is illegal. </p>
|
||||
<p>This flag must also be used for host visible resources that you want to map simultaneously because otherwise they might end up as regions of the same <code>VkDeviceMemory</code>, while mapping same <code>VkDeviceMemory</code> multiple times simultaneously is illegal.</p>
|
||||
<p>You should not use this flag if <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150" title="Pool that this allocation should be created in. ">VmaAllocationCreateInfo::pool</a> is not null. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4"></a>VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT </td><td class="fielddoc"><p>Set this flag to only try to allocate from existing VkDeviceMemory blocks and never create new such block. </p>
|
||||
<p>If new allocation cannot be placed in any of the existing blocks, allocation fails with VK_ERROR_OUT_OF_DEVICE_MEMORY error.</p>
|
||||
<p>It makes no sense to set VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT and VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT at the same time. </p>
|
||||
<tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff"></a>VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT </td><td class="fielddoc"><p>Set this flag to only try to allocate from existing <code>VkDeviceMemory</code> blocks and never create new such block. </p>
|
||||
<p>If new allocation cannot be placed in any of the existing blocks, allocation fails with <code>VK_ERROR_OUT_OF_DEVICE_MEMORY</code> error.</p>
|
||||
<p>You should not use <code>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT</code> and <code>VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT</code> at the same time. It makes no sense.</p>
|
||||
<p>If <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150" title="Pool that this allocation should be created in. ">VmaAllocationCreateInfo::pool</a> is not null, this flag is implied and ignored. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc"></a>VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT </td><td class="fielddoc"><p>Set to use a memory that will be persistently mapped and retrieve pointer to it. </p>
|
||||
<p>Pointer to mapped memory will be returned through <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a>. You cannot map the memory on your own as multiple maps of a single VkDeviceMemory are illegal. </p>
|
||||
<tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312"></a>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT </td><td class="fielddoc"><p>Set this flag to use a memory that will be persistently mapped and retrieve pointer to it. </p>
|
||||
<p>Pointer to mapped memory will be returned through <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a>. You cannot map the memory on your own as multiple mappings of a single <code>VkDeviceMemory</code> are illegal.</p>
|
||||
<p>If <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150" title="Pool that this allocation should be created in. ">VmaAllocationCreateInfo::pool</a> is not null, usage of this flag must match usage of flag <code>VMA_POOL_CREATE_PERSISTENT_MAP_BIT</code> used during pool creation. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21"></a>VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM </td><td class="fielddoc"></td></tr>
|
||||
<tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2"></a>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT </td><td class="fielddoc"><p>Allocation created with this flag can become lost as a result of another allocation with <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> flag, so you must check it before use.</p>
|
||||
<p>To check if allocation is not lost, call <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> and check if <a class="el" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67" title="Handle to Vulkan memory object. ">VmaAllocationInfo::deviceMemory</a> is not <code>VK_NULL_HANDLE</code>.</p>
|
||||
<p>For details about supporting lost allocations, see Lost Allocations chapter of User Guide on Main Page. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e"></a>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT </td><td class="fielddoc"><p>While creating allocation using this flag, other allocations that were created with flag <code>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</code> can become lost.</p>
|
||||
<p>For details about supporting lost allocations, see Lost Allocations chapter of User Guide on Main Page. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882"></a>VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM </td><td class="fielddoc"></td></tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
@ -216,16 +231,16 @@ Functions</h2></td></tr>
|
||||
<table class="fieldtable">
|
||||
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd"></a>VMA_MEMORY_USAGE_UNKNOWN </td><td class="fielddoc"><p>No intended memory usage specified. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"></a>VMA_MEMORY_USAGE_GPU_ONLY </td><td class="fielddoc"><p>Memory will be used on device only, no need to be mapped on host. </p>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7"></a>VMA_MEMORY_USAGE_GPU_ONLY </td><td class="fielddoc"><p>Memory will be used on device only, so faster access from the device is preferred. No need to be mappable on host. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"></a>VMA_MEMORY_USAGE_CPU_ONLY </td><td class="fielddoc"><p>Memory will be mapped on host. Could be used for transfer to device. </p>
|
||||
<p>Guarantees to be HOST_VISIBLE and HOST_COHERENT. </p>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5"></a>VMA_MEMORY_USAGE_CPU_ONLY </td><td class="fielddoc"><p>Memory will be mapped on host. Could be used for transfer to/from device. </p>
|
||||
<p>Guarantees to be <code>HOST_VISIBLE</code> and <code>HOST_COHERENT</code>. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67"></a>VMA_MEMORY_USAGE_CPU_TO_GPU </td><td class="fielddoc"><p>Memory will be used for frequent (dynamic) updates from host and reads on device. </p>
|
||||
<p>Guarantees to be HOST_VISIBLE. </p>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67"></a>VMA_MEMORY_USAGE_CPU_TO_GPU </td><td class="fielddoc"><p>Memory will be used for frequent (dynamic) updates from host and reads on device (upload). </p>
|
||||
<p>Guarantees to be <code>HOST_VISIBLE</code>. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27"></a>VMA_MEMORY_USAGE_GPU_TO_CPU </td><td class="fielddoc"><p>Memory will be used for writing on device and readback on host. </p>
|
||||
<p>Guarantees to be HOST_VISIBLE. </p>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27"></a>VMA_MEMORY_USAGE_GPU_TO_CPU </td><td class="fielddoc"><p>Memory will be used for frequent writing on device and readback on host (download). </p>
|
||||
<p>Guarantees to be <code>HOST_VISIBLE</code>. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="ggaa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e"></a>VMA_MEMORY_USAGE_MAX_ENUM </td><td class="fielddoc"></td></tr>
|
||||
</table>
|
||||
@ -233,8 +248,8 @@ Functions</h2></td></tr>
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="gadf80663373e94bcef382f17534b8694e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gadf80663373e94bcef382f17534b8694e">◆ </a></span>vmaFindMemoryTypeIndex()</h2>
|
||||
<a id="gaef15a94b58fbcb0fe706d5720e84a74a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gaef15a94b58fbcb0fe706d5720e84a74a">◆ </a></span>vmaFindMemoryTypeIndex()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -254,8 +269,8 @@ Functions</h2></td></tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pAllocationCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -273,9 +288,9 @@ Functions</h2></td></tr>
|
||||
<p>This algorithm tries to find a memory type that:</p>
|
||||
<ul>
|
||||
<li>Is allowed by memoryTypeBits.</li>
|
||||
<li>Contains all the flags from pMemoryRequirements->requiredFlags.</li>
|
||||
<li>Contains all the flags from pAllocationCreateInfo->requiredFlags.</li>
|
||||
<li>Matches intended usage.</li>
|
||||
<li>Has as many flags from pMemoryRequirements->preferredFlags as possible.</li>
|
||||
<li>Has as many flags from pAllocationCreateInfo->preferredFlags as possible.</li>
|
||||
</ul>
|
||||
<dl class="section return"><dt>Returns</dt><dd>Returns VK_ERROR_FEATURE_NOT_PRESENT if not found. Receiving such result from this function or any other allocating function probably means that your device doesn't support any memory type with requested features for the specific type of resource you want to use it for. Please check parameters of your resource, like image layout (OPTIMAL versus LINEAR) or mip level count. </dd></dl>
|
||||
|
||||
|
@ -61,6 +61,7 @@ $(function() {
|
||||
<div class="summary">
|
||||
<a href="#nested-classes">Classes</a> |
|
||||
<a href="#typedef-members">Typedefs</a> |
|
||||
<a href="#enum-members">Enumerations</a> |
|
||||
<a href="#func-members">Functions</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">Layer 2 Allocating Memory</div> </div>
|
||||
@ -69,8 +70,14 @@ $(function() {
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
|
||||
Classes</h2></td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of created <code>VmaPool</code>. <a href="struct_vma_pool_create_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of existing VmaPool. <a href="struct_vma_pool_stats.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="struct_vma_allocation_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="struct_vma_allocation_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. <a href="struct_vma_defragmentation_info.html#details">More...</a><br /></td></tr>
|
||||
@ -81,8 +88,19 @@ Classes</h2></td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
|
||||
Typedefs</h2></td></tr>
|
||||
<tr class="memitem:ga8f93195158e0e2ac80ca352064e71c1f"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f">VmaPoolCreateFlagBits</a></td></tr>
|
||||
<tr class="memdesc:ga8f93195158e0e2ac80ca352064e71c1f"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. <a href="#ga8f93195158e0e2ac80ca352064e71c1f">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga8f93195158e0e2ac80ca352064e71c1f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga2770e325ea42e087c1b91fdf46d0292a"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a></td></tr>
|
||||
<tr class="separator:ga2770e325ea42e087c1b91fdf46d0292a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga211706e9348dcee25a843ed4ea69bce7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7">VmaPoolCreateInfo</a></td></tr>
|
||||
<tr class="memdesc:ga211706e9348dcee25a843ed4ea69bce7"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of created <code>VmaPool</code>. <a href="#ga211706e9348dcee25a843ed4ea69bce7">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga211706e9348dcee25a843ed4ea69bce7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga2e5612d871d64c5624087b837a338c34"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga2e5612d871d64c5624087b837a338c34">VmaPoolStats</a></td></tr>
|
||||
<tr class="memdesc:ga2e5612d871d64c5624087b837a338c34"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of existing VmaPool. <a href="#ga2e5612d871d64c5624087b837a338c34">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga2e5612d871d64c5624087b837a338c34"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga795e6ff02a21d5486c0565f403dd9255"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">VmaAllocationInfo</a></td></tr>
|
||||
<tr class="memdesc:ga795e6ff02a21d5486c0565f403dd9255"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="#ga795e6ff02a21d5486c0565f403dd9255">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga795e6ff02a21d5486c0565f403dd9255"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="#ga795e6ff02a21d5486c0565f403dd9255">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga795e6ff02a21d5486c0565f403dd9255"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae67f8573a0cf20f16f0a1eecbca566a0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae67f8573a0cf20f16f0a1eecbca566a0">VmaDefragmentationInfo</a></td></tr>
|
||||
<tr class="memdesc:gae67f8573a0cf20f16f0a1eecbca566a0"><td class="mdescLeft"> </td><td class="mdescRight">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. <a href="#gae67f8573a0cf20f16f0a1eecbca566a0">More...</a><br /></td></tr>
|
||||
@ -91,18 +109,39 @@ Typedefs</h2></td></tr>
|
||||
<tr class="memdesc:gab0f9b06441c840fee560de4a2967f8c9"><td class="mdescLeft"> </td><td class="mdescRight">Statistics returned by function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. <a href="#gab0f9b06441c840fee560de4a2967f8c9">More...</a><br /></td></tr>
|
||||
<tr class="separator:gab0f9b06441c840fee560de4a2967f8c9"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
|
||||
Enumerations</h2></td></tr>
|
||||
<tr class="memitem:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> { <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9">VMA_POOL_CREATE_PERSISTENT_MAP_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
}<tr class="memdesc:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. <a href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">More...</a><br /></td></tr>
|
||||
</td></tr>
|
||||
<tr class="separator:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:ga1a7d45920877a53e9a8fbefd6a536119"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119">vmaAllocateMemory</a> (VmaAllocator allocator, const VkMemoryRequirements *pVkMemoryRequirements, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pVmaMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga1a7d45920877a53e9a8fbefd6a536119"><td class="mdescLeft"> </td><td class="mdescRight">General purpose memory allocation. <a href="#ga1a7d45920877a53e9a8fbefd6a536119">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga1a7d45920877a53e9a8fbefd6a536119"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga3536b4da2a2744dc3f3f138be555af02"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer</a> (VmaAllocator allocator, VkBuffer buffer, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga3536b4da2a2744dc3f3f138be555af02"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga801f98c24eb928642742bb1e5615e86e"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e">vmaAllocateMemoryForImage</a> (VmaAllocator allocator, VkImage image, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga801f98c24eb928642742bb1e5615e86e"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>. <a href="#ga801f98c24eb928642742bb1e5615e86e">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga801f98c24eb928642742bb1e5615e86e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50">vmaCreatePool</a> (VmaAllocator allocator, const <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> *pCreateInfo, VmaPool *pPool)</td></tr>
|
||||
<tr class="memdesc:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="mdescLeft"> </td><td class="mdescRight">Allocates Vulkan device memory and creates <code>VmaPool</code> object. <a href="#ga5c8770ded7c59c8caac6de0c2cb00b50">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5485779c8f1948238fc4e92232fa65e1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1">vmaDestroyPool</a> (VmaAllocator allocator, VmaPool pool)</td></tr>
|
||||
<tr class="memdesc:ga5485779c8f1948238fc4e92232fa65e1"><td class="mdescLeft"> </td><td class="mdescRight">Destroys VmaPool object and frees Vulkan device memory. <a href="#ga5485779c8f1948238fc4e92232fa65e1">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga5485779c8f1948238fc4e92232fa65e1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae8bf76997b234ef68aad922616df4153"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae8bf76997b234ef68aad922616df4153">vmaGetPoolStats</a> (VmaAllocator allocator, VmaPool pool, <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> *pPoolStats)</td></tr>
|
||||
<tr class="memdesc:gae8bf76997b234ef68aad922616df4153"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves statistics of existing VmaPool object. <a href="#gae8bf76997b234ef68aad922616df4153">More...</a><br /></td></tr>
|
||||
<tr class="separator:gae8bf76997b234ef68aad922616df4153"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga736bd6cbda886f36c891727e73bd4024"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga736bd6cbda886f36c891727e73bd4024">vmaMakePoolAllocationsLost</a> (VmaAllocator allocator, VmaPool pool, size_t *pLostAllocationCount)</td></tr>
|
||||
<tr class="memdesc:ga736bd6cbda886f36c891727e73bd4024"><td class="mdescLeft"> </td><td class="mdescRight">Marks all allocations in given pool as lost if they are not used in current frame or <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa" title="Maximum number of additional frames that are in use at the same time as current frame. ">VmaPoolCreateInfo::frameInUseCount</a> back from now. <a href="#ga736bd6cbda886f36c891727e73bd4024">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga736bd6cbda886f36c891727e73bd4024"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a> (VmaAllocator allocator, const VkMemoryRequirements *pVkMemoryRequirements, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="mdescLeft"> </td><td class="mdescRight">General purpose memory allocation. <a href="#gabf28077dbf82d0908b8acbe8ee8dd9b8">More...</a><br /></td></tr>
|
||||
<tr class="separator:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga7fdf64415b6c3d83c454f28d2c53df7b"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer</a> (VmaAllocator allocator, VkBuffer buffer, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga7fdf64415b6c3d83c454f28d2c53df7b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga0faa3f9e5fb233d29d1e00390650febb"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb">vmaAllocateMemoryForImage</a> (VmaAllocator allocator, VkImage image, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga0faa3f9e5fb233d29d1e00390650febb"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>. <a href="#ga0faa3f9e5fb233d29d1e00390650febb">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga0faa3f9e5fb233d29d1e00390650febb"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">vmaFreeMemory</a> (VmaAllocator allocator, VmaAllocation allocation)</td></tr>
|
||||
<tr class="memdesc:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="mdescLeft"> </td><td class="mdescRight">Frees memory previously allocated using <a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. <a href="#ga11f0fbc034fa81a4efedd73d61ce7568">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="mdescLeft"> </td><td class="mdescRight">Frees memory previously allocated using <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. <a href="#ga11f0fbc034fa81a4efedd73d61ce7568">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga86dd08aba8633bfa4ad0df2e76481d8b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a> (VmaAllocator allocator, VmaAllocation allocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga86dd08aba8633bfa4ad0df2e76481d8b"><td class="mdescLeft"> </td><td class="mdescRight">Returns current information about specified allocation. <a href="#ga86dd08aba8633bfa4ad0df2e76481d8b">More...</a><br /></td></tr>
|
||||
@ -110,15 +149,18 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:gaf9147d31ffc11d62fc187bde283ed14f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f">vmaSetAllocationUserData</a> (VmaAllocator allocator, VmaAllocation allocation, void *pUserData)</td></tr>
|
||||
<tr class="memdesc:gaf9147d31ffc11d62fc187bde283ed14f"><td class="mdescLeft"> </td><td class="mdescRight">Sets pUserData in given allocation to new value. <a href="#gaf9147d31ffc11d62fc187bde283ed14f">More...</a><br /></td></tr>
|
||||
<tr class="separator:gaf9147d31ffc11d62fc187bde283ed14f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae5c9657d9e94756269145b01c05d16f1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae5c9657d9e94756269145b01c05d16f1">vmaCreateLostAllocation</a> (VmaAllocator allocator, VmaAllocation *pAllocation)</td></tr>
|
||||
<tr class="memdesc:gae5c9657d9e94756269145b01c05d16f1"><td class="mdescLeft"> </td><td class="mdescRight">Creates new allocation that is in lost state from the beginning. <a href="#gae5c9657d9e94756269145b01c05d16f1">More...</a><br /></td></tr>
|
||||
<tr class="separator:gae5c9657d9e94756269145b01c05d16f1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gad5bd1243512d099706de88168992f069"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gad5bd1243512d099706de88168992f069">vmaMapMemory</a> (VmaAllocator allocator, VmaAllocation allocation, void **ppData)</td></tr>
|
||||
<tr class="separator:gad5bd1243512d099706de88168992f069"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga9bc268595cb33f6ec4d519cfce81ff45"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory</a> (VmaAllocator allocator, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:ga9bc268595cb33f6ec4d519cfce81ff45"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga26b87244491c1fe77f11fe9ab5779c27"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27">vmaUnmapPersistentlyMappedMemory</a> (VmaAllocator allocator)</td></tr>
|
||||
<tr class="memdesc:ga26b87244491c1fe77f11fe9ab5779c27"><td class="mdescLeft"> </td><td class="mdescRight">Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. <a href="#ga26b87244491c1fe77f11fe9ab5779c27">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga26b87244491c1fe77f11fe9ab5779c27"><td class="mdescLeft"> </td><td class="mdescRight">Unmaps persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. <a href="#ga26b87244491c1fe77f11fe9ab5779c27">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga26b87244491c1fe77f11fe9ab5779c27"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga03366170bb8e186605518d2f5d65b85a"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a">vmaMapPersistentlyMappedMemory</a> (VmaAllocator allocator)</td></tr>
|
||||
<tr class="memdesc:ga03366170bb8e186605518d2f5d65b85a"><td class="mdescLeft"> </td><td class="mdescRight">Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. <a href="#ga03366170bb8e186605518d2f5d65b85a">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga03366170bb8e186605518d2f5d65b85a"><td class="mdescLeft"> </td><td class="mdescRight">Maps back persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. <a href="#ga03366170bb8e186605518d2f5d65b85a">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga03366170bb8e186605518d2f5d65b85a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga6aced90fcc7b39882b6654a740a0b9bb"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb">vmaDefragment</a> (VmaAllocator allocator, VmaAllocation *pAllocations, size_t allocationCount, VkBool32 *pAllocationsChanged, const <a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> *pDefragmentationInfo, <a class="el" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a> *pDefragmentationStats)</td></tr>
|
||||
<tr class="memdesc:ga6aced90fcc7b39882b6654a740a0b9bb"><td class="mdescLeft"> </td><td class="mdescRight">Compacts memory by moving allocations. <a href="#ga6aced90fcc7b39882b6654a740a0b9bb">More...</a><br /></td></tr>
|
||||
@ -138,7 +180,7 @@ Functions</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. </p>
|
||||
<p>Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -172,11 +214,102 @@ Functions</h2></td></tr>
|
||||
|
||||
<p>Statistics returned by function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga8f93195158e0e2ac80ca352064e71c1f"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga8f93195158e0e2ac80ca352064e71c1f">◆ </a></span>VmaPoolCreateFlagBits</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef enum <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga2770e325ea42e087c1b91fdf46d0292a"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga2770e325ea42e087c1b91fdf46d0292a">◆ </a></span>VmaPoolCreateFlags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef VkFlags <a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga211706e9348dcee25a843ed4ea69bce7"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga211706e9348dcee25a843ed4ea69bce7">◆ </a></span>VmaPoolCreateInfo</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef struct <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Describes parameter of created <code>VmaPool</code>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga2e5612d871d64c5624087b837a338c34"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga2e5612d871d64c5624087b837a338c34">◆ </a></span>VmaPoolStats</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">typedef struct <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Describes parameter of existing VmaPool. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Enumeration Type Documentation</h2>
|
||||
<a id="ga9a7c45f9c863695d98c83fa5ac940fe7"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga9a7c45f9c863695d98c83fa5ac940fe7">◆ </a></span>VmaPoolCreateFlagBits</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">enum <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. </p>
|
||||
<table class="fieldtable">
|
||||
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9"></a>VMA_POOL_CREATE_PERSISTENT_MAP_BIT </td><td class="fielddoc"><p>Set this flag to use a memory that will be persistently mapped.</p>
|
||||
<p>Each allocation made from this pool will have <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a> available.</p>
|
||||
<p>Usage of this flag must match usage of VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT flag for every allocation made from this pool. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2"></a>VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT </td><td class="fielddoc"><p>Use this flag if you always allocate only buffers and linear images or only optimal images out of this pool and so Buffer-Image Granularity can be ignored. </p>
|
||||
<p>This is na optional optimization flag.</p>
|
||||
<p>If you always allocate using <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>, <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a>, <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>, then you don't need to use it because allocator knows exact type of your allocations so it can handle Buffer-Image Granularity in the optimal way.</p>
|
||||
<p>If you also allocate using <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a> or <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, exact type of such allocations is not known, so allocator must be conservative in handling Buffer-Image Granularity, which can lead to suboptimal allocation (wasted memory). In that case, if you can make sure you always allocate only buffers and linear images or only optimal images out of this pool, use this flag to make allocator disregard Buffer-Image Granularity and so make allocations more optimal. </p>
|
||||
</td></tr>
|
||||
<tr><td class="fieldname"><a id="gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec"></a>VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM </td><td class="fielddoc"></td></tr>
|
||||
</table>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="ga1a7d45920877a53e9a8fbefd6a536119"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga1a7d45920877a53e9a8fbefd6a536119">◆ </a></span>vmaAllocateMemory()</h2>
|
||||
<a id="gabf28077dbf82d0908b8acbe8ee8dd9b8"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gabf28077dbf82d0908b8acbe8ee8dd9b8">◆ </a></span>vmaAllocateMemory()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -196,8 +329,8 @@ Functions</h2></td></tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pVmaMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -228,12 +361,12 @@ Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<p>You should free the memory using <a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568" title="Frees memory previously allocated using vmaAllocateMemory(), vmaAllocateMemoryForBuffer(), or vmaAllocateMemoryForImage(). ">vmaFreeMemory()</a>.</p>
|
||||
<p>It is recommended to use <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>, <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>, <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a>, <a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a> instead whenever possible. </p>
|
||||
<p>It is recommended to use <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>, <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>, <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>, <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a> instead whenever possible. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga3536b4da2a2744dc3f3f138be555af02"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga3536b4da2a2744dc3f3f138be555af02">◆ </a></span>vmaAllocateMemoryForBuffer()</h2>
|
||||
<a id="ga7fdf64415b6c3d83c454f28d2c53df7b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga7fdf64415b6c3d83c454f28d2c53df7b">◆ </a></span>vmaAllocateMemoryForBuffer()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -253,8 +386,8 @@ Functions</h2></td></tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -286,8 +419,8 @@ Functions</h2></td></tr>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga801f98c24eb928642742bb1e5615e86e"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga801f98c24eb928642742bb1e5615e86e">◆ </a></span>vmaAllocateMemoryForImage()</h2>
|
||||
<a id="ga0faa3f9e5fb233d29d1e00390650febb"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga0faa3f9e5fb233d29d1e00390650febb">◆ </a></span>vmaAllocateMemoryForImage()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -307,8 +440,8 @@ Functions</h2></td></tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -330,7 +463,84 @@ Functions</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Function similar to <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>. </p>
|
||||
<p>Function similar to <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gae5c9657d9e94756269145b01c05d16f1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gae5c9657d9e94756269145b01c05d16f1">◆ </a></span>vmaCreateLostAllocation()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void vmaCreateLostAllocation </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">VmaAllocation * </td>
|
||||
<td class="paramname"><em>pAllocation</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Creates new allocation that is in lost state from the beginning. </p>
|
||||
<p>It can be useful if you need a dummy, non-null allocation.</p>
|
||||
<p>You still need to destroy created object using <a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568" title="Frees memory previously allocated using vmaAllocateMemory(), vmaAllocateMemoryForBuffer(), or vmaAllocateMemoryForImage(). ">vmaFreeMemory()</a>.</p>
|
||||
<p>Returned allocation is not tied to any specific memory pool or memory type and not bound to any image or buffer. It has size = 0. It cannot be turned into a real, non-empty allocation. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga5c8770ded7c59c8caac6de0c2cb00b50"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga5c8770ded7c59c8caac6de0c2cb00b50">◆ </a></span>vmaCreatePool()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkResult vmaCreatePool </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">VmaPool * </td>
|
||||
<td class="paramname"><em>pPool</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Allocates Vulkan device memory and creates <code>VmaPool</code> object. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir"></td><td class="paramname">allocator</td><td>Allocator object. </td></tr>
|
||||
<tr><td class="paramdir"></td><td class="paramname">pCreateInfo</td><td>Parameters of pool to create. </td></tr>
|
||||
<tr><td class="paramdir">[out]</td><td class="paramname">pPool</td><td>Handle to created pool. </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -396,16 +606,16 @@ Functions</h2></td></tr>
|
||||
</dd>
|
||||
</dl>
|
||||
<dl class="section return"><dt>Returns</dt><dd>VK_SUCCESS if completed, VK_INCOMPLETE if succeeded but didn't make all possible optimizations because limits specified in pDefragmentationInfo have been reached, negative error code in case of error.</dd></dl>
|
||||
<p>This function works by moving allocations to different places (different VkDeviceMemory objects and/or different offsets) in order to optimize memory usage. Only allocations that are in pAllocations array can be moved. All other allocations are considered nonmovable in this call. Basic rules:</p>
|
||||
<p>This function works by moving allocations to different places (different <code>VkDeviceMemory</code> objects and/or different offsets) in order to optimize memory usage. Only allocations that are in pAllocations array can be moved. All other allocations are considered nonmovable in this call. Basic rules:</p>
|
||||
<ul>
|
||||
<li>Only allocations made in memory types that have VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT flag can be compacted. You may pass other allocations but it makes no sense - these will never be moved.</li>
|
||||
<li>You may pass allocations made with VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT but it makes no sense - they will never be moved.</li>
|
||||
<li>Both allocations made with or without VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT flag can be compacted. If not persistently mapped, memory will be mapped temporarily inside this function if needed, so it shouldn't be mapped by you for the time of this call.</li>
|
||||
<li>You must not pass same VmaAllocation object multiple times in pAllocations array.</li>
|
||||
<li>Only allocations made in memory types that have <code>VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT</code> flag can be compacted. You may pass other allocations but it makes no sense - these will never be moved.</li>
|
||||
<li>You may pass allocations made with <code>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT</code> but it makes no sense - they will never be moved.</li>
|
||||
<li>Both allocations made with or without <code>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT</code> flag can be compacted. If not persistently mapped, memory will be mapped temporarily inside this function if needed, so it shouldn't be mapped by you for the time of this call.</li>
|
||||
<li>You must not pass same <code>VmaAllocation</code> object multiple times in pAllocations array.</li>
|
||||
</ul>
|
||||
<p>The function also frees empty VkDeviceMemory blocks.</p>
|
||||
<p>The function also frees empty <code>VkDeviceMemory</code> blocks.</p>
|
||||
<p>After allocation has been moved, its <a class="el" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67" title="Handle to Vulkan memory object. ">VmaAllocationInfo::deviceMemory</a> and/or <a class="el" href="struct_vma_allocation_info.html#a4a3c732388dbdc7a23f9365b00825268" title="Offset into deviceMemory object to the beginning of this allocation, in bytes. (deviceMemory, offset) pair is unique to this allocation. ">VmaAllocationInfo::offset</a> changes. You must query them again using <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> if you need them.</p>
|
||||
<p>If an allocation has been moved, data in memory is copied to new place automatically, but if it was bound to a buffer or an image, you must destroy that object yourself, create new one and bind it to the new memory pointed by the allocation. You must use vkDestroyBuffer(), vkDestroyImage(), vkCreateBuffer(), vkCreateImage() for that purpose and NOT <a class="el" href="group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer()</a>, <a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage()</a>, <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a>, <a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a>! Example:</p>
|
||||
<p>If an allocation has been moved, data in memory is copied to new place automatically, but if it was bound to a buffer or an image, you must destroy that object yourself, create new one and bind it to the new memory pointed by the allocation. You must use <code>vkDestroyBuffer()</code>, <code>vkDestroyImage()</code>, <code>vkCreateBuffer()</code>, <code>vkCreateImage()</code> for that purpose and NOT <a class="el" href="group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer()</a>, <a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage()</a>, <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>, <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a>! Example:</p>
|
||||
<pre class="fragment">VkDevice device = ...;
|
||||
VmaAllocator allocator = ...;
|
||||
std::vector<VkBuffer> buffers = ...;
|
||||
@ -433,6 +643,36 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
}
|
||||
</pre><p>This function may be time-consuming, so you shouldn't call it too often (like every frame or after every resource creation/destruction), but rater you can call it on special occasions (like when reloading a game level, when you just destroyed a lot of objects). </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga5485779c8f1948238fc4e92232fa65e1"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga5485779c8f1948238fc4e92232fa65e1">◆ </a></span>vmaDestroyPool()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void vmaDestroyPool </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">VmaPool </td>
|
||||
<td class="paramname"><em>pool</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Destroys VmaPool object and frees Vulkan device memory. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga11f0fbc034fa81a4efedd73d61ce7568"></a>
|
||||
@ -461,7 +701,7 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Frees memory previously allocated using <a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. </p>
|
||||
<p>Frees memory previously allocated using <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -499,6 +739,94 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
|
||||
<p>Returns current information about specified allocation. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gae8bf76997b234ef68aad922616df4153"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gae8bf76997b234ef68aad922616df4153">◆ </a></span>vmaGetPoolStats()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void vmaGetPoolStats </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">VmaPool </td>
|
||||
<td class="paramname"><em>pool</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> * </td>
|
||||
<td class="paramname"><em>pPoolStats</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Retrieves statistics of existing VmaPool object. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir"></td><td class="paramname">allocator</td><td>Allocator object. </td></tr>
|
||||
<tr><td class="paramdir"></td><td class="paramname">pool</td><td>Pool object. </td></tr>
|
||||
<tr><td class="paramdir">[out]</td><td class="paramname">pPoolStats</td><td>Statistics of specified pool. </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga736bd6cbda886f36c891727e73bd4024"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga736bd6cbda886f36c891727e73bd4024">◆ </a></span>vmaMakePoolAllocationsLost()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void vmaMakePoolAllocationsLost </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">VmaAllocator </td>
|
||||
<td class="paramname"><em>allocator</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">VmaPool </td>
|
||||
<td class="paramname"><em>pool</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">size_t * </td>
|
||||
<td class="paramname"><em>pLostAllocationCount</em> </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td></td>
|
||||
<td>)</td>
|
||||
<td></td><td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Marks all allocations in given pool as lost if they are not used in current frame or <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa" title="Maximum number of additional frames that are in use at the same time as current frame. ">VmaPoolCreateInfo::frameInUseCount</a> back from now. </p>
|
||||
<dl class="params"><dt>Parameters</dt><dd>
|
||||
<table class="params">
|
||||
<tr><td class="paramdir"></td><td class="paramname">allocator</td><td>Allocator object. </td></tr>
|
||||
<tr><td class="paramdir"></td><td class="paramname">pool</td><td>Pool. </td></tr>
|
||||
<tr><td class="paramdir">[out]</td><td class="paramname">pLostAllocationCount</td><td>Number of allocations marked as lost. Optional - pass null if you don't need this information. </td></tr>
|
||||
</table>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="gad5bd1243512d099706de88168992f069"></a>
|
||||
@ -533,7 +861,7 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Feel free to use vkMapMemory on these memory blocks on you own if you want, but just for convenience and to make sure correct offset and size is always specified, usage of <a class="el" href="group__layer2.html#gad5bd1243512d099706de88168992f069">vmaMapMemory()</a> / <a class="el" href="group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory()</a> is recommended.</p>
|
||||
<p>Do not use it on memory allocated with VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT as multiple maps to same VkDeviceMemory is illegal. </p>
|
||||
<p>Do not use it on memory allocated with <code>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT</code> as multiple maps to same <code>VkDeviceMemory</code> is illegal. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -553,9 +881,9 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. </p>
|
||||
<p>See <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>.</p>
|
||||
<p>After this call <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a> of some allocation may have value different than before calling <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>. </p>
|
||||
<p>Maps back persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. </p>
|
||||
<p>See <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>.</p>
|
||||
<p>After this call <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a> of some allocation may have value different than before calling <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -639,13 +967,13 @@ for(size_t i = 0; i < allocations.size(); ++i)
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. </p>
|
||||
<p>This is optional performance optimization. On Windows you should call it before every call to vkQueueSubmit and vkQueuePresent. After which you can remap the allocations again using <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a>. This is because of the internal behavior of WDDM. Example:</p>
|
||||
<p>Unmaps persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. </p>
|
||||
<p>This is optional performance optimization. On Windows you should call it before every call to <code>vkQueueSubmit</code> and <code>vkQueuePresent</code>. After which you can remap the allocations again using <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a>. This is because of the internal behavior of WDDM. Example:</p>
|
||||
<pre class="fragment">vmaUnmapPersistentlyMappedMemory(allocator);
|
||||
vkQueueSubmit(...)
|
||||
vmaMapPersistentlyMappedMemory(allocator);
|
||||
</pre><p>After this call <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a> of some allocations may become null.</p>
|
||||
<p>This call is reference-counted. Memory is mapped again after you call <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a> same number of times that you called <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>. </p>
|
||||
<p>This call is reference-counted. Memory is mapped again after you call <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a> same number of times that you called <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -67,20 +67,20 @@ $(function() {
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
<tr class="memitem:ga2f711e32e95cf9bf8dff4917230c2e9b"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer</a> (VmaAllocator allocator, const VkBufferCreateInfo *pCreateInfo, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VkBuffer *pBuffer, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga2f711e32e95cf9bf8dff4917230c2e9b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gac72ee55598617e8eecca384e746bab51"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a> (VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:gac72ee55598617e8eecca384e746bab51"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga0d9f4e4ba5bf9aab1f1c746387753d77"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a> (VmaAllocator allocator, VkBuffer buffer, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:ga0d9f4e4ba5bf9aab1f1c746387753d77"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa">vmaCreateImage</a> (VmaAllocator allocator, const VkImageCreateInfo *pCreateInfo, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VkImage *pImage, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a>. <a href="#ga9e34bc318ff4b25d1958e79b9db3f1aa">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga02a94f25679275851a53e82eacbcfc73"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73">vmaCreateImage</a> (VmaAllocator allocator, const VkImageCreateInfo *pImageCreateInfo, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, VkImage *pImage, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga02a94f25679275851a53e82eacbcfc73"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>. <a href="#ga02a94f25679275851a53e82eacbcfc73">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga02a94f25679275851a53e82eacbcfc73"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae50d2cb3b4a3bfd4dd40987234e50e7e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage</a> (VmaAllocator allocator, VkImage image, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:gae50d2cb3b4a3bfd4dd40987234e50e7e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<h2 class="groupheader">Function Documentation</h2>
|
||||
<a id="ga2f711e32e95cf9bf8dff4917230c2e9b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga2f711e32e95cf9bf8dff4917230c2e9b">◆ </a></span>vmaCreateBuffer()</h2>
|
||||
<a id="gac72ee55598617e8eecca384e746bab51"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#gac72ee55598617e8eecca384e746bab51">◆ </a></span>vmaCreateBuffer()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -95,13 +95,13 @@ Functions</h2></td></tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const VkBufferCreateInfo * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
<td class="paramname"><em>pBufferCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pAllocationCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -147,8 +147,8 @@ Functions</h2></td></tr>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ga9e34bc318ff4b25d1958e79b9db3f1aa"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga9e34bc318ff4b25d1958e79b9db3f1aa">◆ </a></span>vmaCreateImage()</h2>
|
||||
<a id="ga02a94f25679275851a53e82eacbcfc73"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ga02a94f25679275851a53e82eacbcfc73">◆ </a></span>vmaCreateImage()</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
@ -163,13 +163,13 @@ Functions</h2></td></tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const VkImageCreateInfo * </td>
|
||||
<td class="paramname"><em>pCreateInfo</em>, </td>
|
||||
<td class="paramname"><em>pImageCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
<td></td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> * </td>
|
||||
<td class="paramname"><em>pMemoryRequirements</em>, </td>
|
||||
<td class="paramtype">const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> * </td>
|
||||
<td class="paramname"><em>pAllocationCreateInfo</em>, </td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="paramkey"></td>
|
||||
@ -197,7 +197,7 @@ Functions</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Function similar to <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a>. </p>
|
||||
<p>Function similar to <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -62,15 +62,32 @@ $(function() {
|
||||
<div class="title">Vulkan Memory Allocator </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Version 2.0.0-alpha.2 (2017-07-11)</p>
|
||||
<div class="toc"><h3>Table of Contents</h3>
|
||||
<ul><li class="level1"><a href="#problem">Problem statement</a></li>
|
||||
<li class="level1"><a href="#features">Features</a></li>
|
||||
<li class="level1"><a href="#prequisites">Prequisites</a></li>
|
||||
<li class="level1"><a href="#user_guide">User guide</a><ul><li class="level2"><a href="#quick_start">Quick start</a></li>
|
||||
<li class="level2"><a href="#persistently_mapped_memory">Persistently mapped memory</a></li>
|
||||
<li class="level2"><a href="#custom_memory_pools">Custom memory pools</a></li>
|
||||
<li class="level2"><a href="#defragmentation">Defragmentation</a></li>
|
||||
<li class="level2"><a href="#lost_allocations">Lost allocations</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="level1"><a href="#configuration">Configuration</a><ul><li class="level2"><a href="#custom_memory_allocator">Custom memory allocator</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li class="level1"><a href="#thread_safety">Thread safety</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="textblock"><p><b>Version 2.0.0-alpha.3</b> (2017-09-12)</p>
|
||||
<p>Members grouped: see <a href="modules.html"><b>Modules</b></a>.</p>
|
||||
<p>All members: see <a class="el" href="vk__mem__alloc_8h.html">vk_mem_alloc.h</a>.</p>
|
||||
<h1><a class="anchor" id="problem"></a>
|
||||
Problem Statement</h1>
|
||||
Problem statement</h1>
|
||||
<p>Memory allocation and resource (buffer and image) creation in Vulkan is difficult (comparing to older graphics API-s, like D3D11 or OpenGL) for several reasons:</p>
|
||||
<ul>
|
||||
<li>It requires a lot of boilerplate code, just like everything else in Vulkan, because it is a low-level and high-performance API.</li>
|
||||
<li>There is additional level of indirection: VkDeviceMemory is allocated separately from creating VkBuffer/VkImage and they must be bound together. The binding cannot be changed later - resource must be recreated.</li>
|
||||
<li>There is additional level of indirection: <code>VkDeviceMemory</code> is allocated separately from creating <code>VkBuffer</code>/<code>VkImage</code> and they must be bound together. The binding cannot be changed later - resource must be recreated.</li>
|
||||
<li>Driver must be queried for supported memory heaps and memory types. Different IHV-s provide different types of it.</li>
|
||||
<li>It is recommended practice to allocate bigger chunks of memory and assign parts of them to particular resources.</li>
|
||||
</ul>
|
||||
@ -82,7 +99,7 @@ Features</h1>
|
||||
<li>Required or preferred traits of the memory are expressed using higher-level description comparing to Vulkan flags.</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>Functions that allocate memory blocks, reserve and return parts of them (VkDeviceMemory + offset + size) to the user.<ul>
|
||||
<li>Functions that allocate memory blocks, reserve and return parts of them (<code>VkDeviceMemory</code> + offset + size) to the user.<ul>
|
||||
<li>Library keeps track of allocated memory blocks, used and unused ranges inside them, finds best matching unused ranges for new allocations, takes all the rules of alignment into consideration.</li>
|
||||
</ul>
|
||||
</li>
|
||||
@ -95,10 +112,12 @@ Prequisites</h1>
|
||||
<li>Public interface in C, in same convention as Vulkan API. Implementation in C++.</li>
|
||||
<li>Interface documented using Doxygen-style comments.</li>
|
||||
<li>Platform-independent, but developed and tested on Windows using Visual Studio.</li>
|
||||
<li>Error handling implemented by returning VkResult error codes - same way as in Vulkan.</li>
|
||||
<li>Error handling implemented by returning <code>VkResult</code> error codes - same way as in Vulkan.</li>
|
||||
</ul>
|
||||
<h1><a class="anchor" id="quick_start"></a>
|
||||
Quick Start</h1>
|
||||
<h1><a class="anchor" id="user_guide"></a>
|
||||
User guide</h1>
|
||||
<h2><a class="anchor" id="quick_start"></a>
|
||||
Quick start</h2>
|
||||
<p>In your project code:</p>
|
||||
<ol type="1">
|
||||
<li>Include "vk_mem_alloc.h" file wherever you want to use the library.</li>
|
||||
@ -108,8 +127,8 @@ Quick Start</h1>
|
||||
#include "vk_mem_alloc.h"
|
||||
</pre><p>At program startup:</p>
|
||||
<ol type="1">
|
||||
<li>Initialize Vulkan to have VkPhysicalDevice and VkDevice object.</li>
|
||||
<li>Fill <a class="el" href="struct_vma_allocator_create_info.html" title="Description of a Allocator to be created. ">VmaAllocatorCreateInfo</a> structure and create VmaAllocator object by calling <a class="el" href="group__general.html#ga200692051ddb34240248234f5f4c17bb" title="Creates Allocator object. ">vmaCreateAllocator()</a>.</li>
|
||||
<li>Initialize Vulkan to have <code>VkPhysicalDevice</code> and <code>VkDevice</code> object.</li>
|
||||
<li>Fill <a class="el" href="struct_vma_allocator_create_info.html" title="Description of a Allocator to be created. ">VmaAllocatorCreateInfo</a> structure and create <code>VmaAllocator</code> object by calling <a class="el" href="group__general.html#ga200692051ddb34240248234f5f4c17bb" title="Creates Allocator object. ">vmaCreateAllocator()</a>.</li>
|
||||
</ol>
|
||||
<pre class="fragment">VmaAllocatorCreateInfo allocatorInfo = {};
|
||||
allocatorInfo.physicalDevice = physicalDevice;
|
||||
@ -119,36 +138,174 @@ VmaAllocator allocator;
|
||||
vmaCreateAllocator(&allocatorInfo, &allocator);
|
||||
</pre><p>When you want to create a buffer or image:</p>
|
||||
<ol type="1">
|
||||
<li>Fill VkBufferCreateInfo / VkImageCreateInfo structure.</li>
|
||||
<li>Fill <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> structure.</li>
|
||||
<li>Call <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a> / <a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a> to get VkBuffer/VkImage with memory already allocated and bound to it.</li>
|
||||
<li>Fill <code>VkBufferCreateInfo</code> / <code>VkImageCreateInfo</code> structure.</li>
|
||||
<li>Fill <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> structure.</li>
|
||||
<li>Call <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a> / <a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73" title="Function similar to vmaCreateBuffer(). ">vmaCreateImage()</a> to get <code>VkBuffer</code>/<code>VkImage</code> with memory already allocated and bound to it.</li>
|
||||
</ol>
|
||||
<pre class="fragment">VkBufferCreateInfo bufferInfo = { VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO };
|
||||
bufferInfo.size = myBufferSize;
|
||||
bufferInfo.usage = VK_BUFFER_USAGE_VERTEX_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT;
|
||||
|
||||
VmaMemoryRequirements memReq = {};
|
||||
VmaAllocationCreateInfo memReq = {};
|
||||
memReq.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
|
||||
VkBuffer buffer;
|
||||
VmaAllocation allocation;
|
||||
vmaCreateBuffer(allocator, &bufferInfo, &memReq, &buffer, &allocation, nullptr);
|
||||
</pre><p>Don't forget to destroy your objects:</p>
|
||||
</pre><p>Don't forget to destroy your objects when no longer needed:</p>
|
||||
<pre class="fragment">vmaDestroyBuffer(allocator, buffer, allocation);
|
||||
vmaDestroyAllocator(allocator);
|
||||
</pre><h1><a class="anchor" id="configuration"></a>
|
||||
</pre><h2><a class="anchor" id="persistently_mapped_memory"></a>
|
||||
Persistently mapped memory</h2>
|
||||
<p>If you need to map memory on host, it may happen that two allocations are assigned to the same <code>VkDeviceMemory</code> block, so if you map them both at the same time, it will cause error because mapping single memory block multiple times is illegal in Vulkan.</p>
|
||||
<p>It is safer, more convenient and more efficient to use special feature designed for that: persistently mapped memory. Allocations made with <code>VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT</code> flag set in <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a> are returned from device memory blocks that stay mapped all the time, so you can just access CPU pointer to it. <a class="el" href="struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2" title="Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistent...">VmaAllocationInfo::pMappedData</a> pointer is already offseted to the beginning of particular allocation. Example:</p>
|
||||
<pre class="fragment">VkBufferCreateInfo bufCreateInfo = { VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO };
|
||||
bufCreateInfo.size = 1024;
|
||||
bufCreateInfo.usage = VK_BUFFER_USAGE_TRANSFER_SRC_BIT;
|
||||
|
||||
VmaAllocationCreateInfo allocCreateInfo = {};
|
||||
allocCreateInfo.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
allocCreateInfo.flags = VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT;
|
||||
|
||||
VkBuffer buf;
|
||||
VmaAllocation alloc;
|
||||
VmaAllocationInfo allocInfo;
|
||||
vmaCreateBuffer(allocator, &bufCreateInfo, &allocCreateInfo, &buf, &alloc, &allocInfo);
|
||||
|
||||
.// Buffer is immediately mapped. You can access its memory.
|
||||
memcpy(allocInfo.pMappedData, myData, 1024);
|
||||
</pre><p>Memory in Vulkan doesn't need to be unmapped before using it e.g. for transfers, but if you are not sure whether it's <code>HOST_COHERENT</code> (here is surely is because it's created with <code>VMA_MEMORY_USAGE_CPU_ONLY</code>), you should check it. If it's not, you should call <code>vkInvalidateMappedMemoryRanges()</code> before reading and <code>vkFlushMappedMemoryRanges()</code> after writing to mapped memory on CPU. Example:</p>
|
||||
<pre class="fragment">VkMemoryPropertyFlags memFlags;
|
||||
vmaGetMemoryTypeProperties(allocator, allocInfo.memoryType, &memFlags);
|
||||
if((memFlags & VK_MEMORY_PROPERTY_HOST_COHERENT_BIT) == 0)
|
||||
{
|
||||
VkMappedMemoryRange memRange = { VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE };
|
||||
memRange.memory = allocInfo.deviceMemory;
|
||||
memRange.offset = allocInfo.offset;
|
||||
memRange.size = allocInfo.size;
|
||||
vkFlushMappedMemoryRanges(device, 1, &memRange);
|
||||
}
|
||||
</pre><p>For performance reasons it is also recommended to unmap Vulkan memory for the time of call to <code>vkQueueSubmit()</code> or <code>vkQueuePresent()</code>. You can do it for all persistently mapped memory using just one function call. For details, see function <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>, <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a>.</p>
|
||||
<h2><a class="anchor" id="custom_memory_pools"></a>
|
||||
Custom memory pools</h2>
|
||||
<p>The library automatically creates and manages default memory pool for each memory type available on the device. A pool contains a number of <code>VkDeviceMemory</code> blocks. You can create custom pool and allocate memory out of it. It can be useful if you want to:</p>
|
||||
<ul>
|
||||
<li>Keep certain kind of allocations separate from others.</li>
|
||||
<li>Enforce particular size of Vulkan memory blocks.</li>
|
||||
<li>Limit maximum amount of Vulkan memory allocated for that pool.</li>
|
||||
</ul>
|
||||
<p>To use custom memory pools:</p>
|
||||
<ol type="1">
|
||||
<li>Fill <a class="el" href="struct_vma_pool_create_info.html" title="Describes parameter of created VmaPool. ">VmaPoolCreateInfo</a> structure.</li>
|
||||
<li>Call <a class="el" href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50" title="Allocates Vulkan device memory and creates VmaPool object. ">vmaCreatePool()</a> to obtain <code>VmaPool</code> handle.</li>
|
||||
<li>When making an allocation, set <a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150" title="Pool that this allocation should be created in. ">VmaAllocationCreateInfo::pool</a> to this handle. You don't need to specify any other parameters of this structure, like usage.</li>
|
||||
</ol>
|
||||
<p>Example:</p>
|
||||
<pre class="fragment">.// Create a pool that could have at most 2 blocks, 128 MB each.
|
||||
VmaPoolCreateInfo poolCreateInfo = {};
|
||||
poolCreateInfo.memoryTypeIndex = ...
|
||||
poolCreateInfo.blockSize = 128ull * 1024 * 1024;
|
||||
poolCreateInfo.maxBlockCount = 2;
|
||||
|
||||
VmaPool pool;
|
||||
vmaCreatePool(allocator, &poolCreateInfo, &pool);
|
||||
|
||||
.// Allocate a buffer out of it.
|
||||
VkBufferCreateInfo bufCreateInfo = { VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO };
|
||||
bufCreateInfo.size = 1024;
|
||||
bufCreateInfo.usage = VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT;
|
||||
|
||||
VmaAllocationCreateInfo allocCreateInfo = {};
|
||||
allocCreateInfo.pool = pool;
|
||||
|
||||
VkBuffer buf;
|
||||
VmaAllocation alloc;
|
||||
VmaAllocationInfo allocInfo;
|
||||
vmaCreateBuffer(allocator, &bufCreateInfo, &allocCreateInfo, &buf, &alloc, &allocInfo);
|
||||
</pre><p>You have to free all allocations made from this pool before destroying it.</p>
|
||||
<pre class="fragment">vmaDestroyBuffer(allocator, buf, alloc);
|
||||
vmaDestroyPool(allocator, pool);
|
||||
</pre><h2><a class="anchor" id="defragmentation"></a>
|
||||
Defragmentation</h2>
|
||||
<p>Interleaved allocations and deallocations of many objects of varying size can cause fragmentation, which can lead to a situation where the library is unable to find a continuous range of free memory for a new allocation despite there is enough free space, just scattered across many small free ranges between existing allocations.</p>
|
||||
<p>To mitigate this problem, you can use <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. Given set of allocations, this function can move them to compact used memory, ensure more continuous free space and possibly also free some <code>VkDeviceMemory</code>. It can work only on allocations made from memory type that is <code>HOST_VISIBLE</code>. Allocations are modified to point to the new <code>VkDeviceMemory</code> and offset. Data in this memory is also <code>memmove</code>-ed to the new place. However, if you have images or buffers bound to these allocations (and you certainly do), you need to destroy, recreate, and bind them to the new place in memory.</p>
|
||||
<p>For further details and example code, see documentation of function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>.</p>
|
||||
<h2><a class="anchor" id="lost_allocations"></a>
|
||||
Lost allocations</h2>
|
||||
<p>If your game oversubscribes video memory, if may work OK in previous-generation graphics APIs (DirectX 9, 10, 11, OpenGL) because resources are automatically paged to system RAM. In Vulkan you can't do it because when you run out of memory, an allocation just fails. If you have more data (e.g. textures) that can fit into VRAM and you don't need it all at once, you may want to upload them to GPU on demand and "push out" ones that are not used for a long time to make room for the new ones, effectively using VRAM (or a cartain memory pool) as a form of cache. Vulkan Memory Allocator can help you with that by supporting a concept of "lost allocations".</p>
|
||||
<p>To create an allocation that can become lost, include <code>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</code> flag in <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. Before using a buffer or image bound to such allocation in every new frame, you need to query it if it's not lost. To check it: call <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> and see if <a class="el" href="struct_vma_allocation_info.html#ae0bfb7dfdf79a76ffefc9a94677a2f67" title="Handle to Vulkan memory object. ">VmaAllocationInfo::deviceMemory</a> is not <code>VK_NULL_HANDLE</code>. If the allocation is lost, you should not use it or buffer/image bound to it. You mustn't forget to destroy this allocation and this buffer/image.</p>
|
||||
<p>To create an allocation that can make some other allocations lost to make room for it, use <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> flag. You will usually use both flags <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> and <code>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</code> at the same time.</p>
|
||||
<p>Warning! Current implementation uses quite naive, brute force algorithm, which can make allocation calls that use <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> flag quite slow. A new, more optimal algorithm and data structure to speed this up is planned for the future.</p>
|
||||
<p><b>When interleaving creation of new allocations with usage of existing ones, how do you make sure that an allocation won't become lost while it's used in the current frame?</b></p>
|
||||
<p>It is ensured because <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> not only returns allocation parameters and checks whether it's not lost, but when it's not, it also atomically marks it as used in the current frame, which makes it impossible to become lost in that frame. It uses lockless algorithm, so it works fast and doesn't involve locking any internal mutex.</p>
|
||||
<p><b>What if my allocation may still be in use by the GPU when it's rendering a previous frame while I already submit new frame on the CPU?</b></p>
|
||||
<p>You can make sure that allocations "touched" by <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> will not become lost for a number of additional frames back from the current one by specifying this number as <a class="el" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7" title="Maximum number of additional frames that are in use at the same time as current frame. ">VmaAllocatorCreateInfo::frameInUseCount</a> (for default memory pool) and <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa" title="Maximum number of additional frames that are in use at the same time as current frame. ">VmaPoolCreateInfo::frameInUseCount</a> (for custom pool).</p>
|
||||
<p><b>How do you inform the library when new frame starts?</b></p>
|
||||
<p>You need to call function <a class="el" href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236" title="Sets index of the current frame. ">vmaSetCurrentFrameIndex()</a>.</p>
|
||||
<p>Example code:</p>
|
||||
<pre class="fragment">struct MyBuffer
|
||||
{
|
||||
VkBuffer m_Buf = nullptr;
|
||||
VmaAllocation m_Alloc = nullptr;
|
||||
|
||||
.// Called when the buffer is really needed in the current frame.
|
||||
void EnsureBuffer();
|
||||
};
|
||||
|
||||
void MyBuffer::EnsureBuffer()
|
||||
{
|
||||
.// Buffer has been created.
|
||||
if(m_Buf != VK_NULL_HANDLE)
|
||||
{
|
||||
.// Check if its allocation is not lost + mark it as used in current frame.
|
||||
VmaAllocationInfo allocInfo;
|
||||
vmaGetAllocationInfo(allocator, m_Alloc, &allocInfo);
|
||||
if(allocInfo.deviceMemory != VK_NULL_HANDLE)
|
||||
{
|
||||
.// It's all OK - safe to use m_Buf.
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
.// Buffer not yet exists or lost - destroy and recreate it.
|
||||
|
||||
vmaDestroyBuffer(allocator, m_Buf, m_Alloc);
|
||||
|
||||
VkBufferCreateInfo bufCreateInfo = { VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO };
|
||||
bufCreateInfo.size = 1024;
|
||||
bufCreateInfo.usage = VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT | VK_BUFFER_USAGE_TRANSFER_DST_BIT;
|
||||
|
||||
VmaAllocationCreateInfo allocCreateInfo = {};
|
||||
allocCreateInfo.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
allocCreateInfo.flags = VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT |
|
||||
VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT;
|
||||
|
||||
vmaCreateBuffer(allocator, &bufCreateInfo, &allocCreateInfo, &m_Buf, &m_Alloc, nullptr);
|
||||
}
|
||||
</pre><p>When using lost allocations, you may see some Vulkan validation layer warnings about overlapping regions of memory bound to different kinds of buffers and images. This is still valid as long as you implement proper handling of lost allocations (like in the example above) and don't use them.</p>
|
||||
<p>The library uses following algorithm for allocation, in order:</p>
|
||||
<ol type="1">
|
||||
<li>Try to find free range of memory in existing blocks.</li>
|
||||
<li>If failed, try to create a new block of <code>VkDeviceMemory</code>, with preferred block size.</li>
|
||||
<li>If failed, try to create such block with size/2 and size/4.</li>
|
||||
<li>If failed and <code>VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</code> flag was specified, try to find space in existing blocks, possilby making some other allocations lost.</li>
|
||||
<li>If failed, try to allocate separate <code>VkDeviceMemory</code> for this allocation, just like when you use <code>VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT</code>.</li>
|
||||
<li>If failed, choose other memory type that meets the requirements specified in <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> and go to point 1.</li>
|
||||
<li>If failed, return <code>VK_ERROR_OUT_OF_DEVICE_MEMORY</code>.</li>
|
||||
</ol>
|
||||
<h1><a class="anchor" id="configuration"></a>
|
||||
Configuration</h1>
|
||||
<p>Please check "CONFIGURATION SECTION" in the code to find macros that you can define before each #include of this file or change directly in this file to provide your own implementation of basic facilities like assert, min and max functions, mutex etc. C++ STL is used by default, but changing these allows you to get rid of any STL usage if you want, as many game developers tend to do.</p>
|
||||
<h1><a class="anchor" id="custom_memory_allocator"></a>
|
||||
Custom memory allocator</h1>
|
||||
<p>You can use custom memory allocator by filling optional member <a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d" title="Custom allocation callbacks. ">VmaAllocatorCreateInfo::pAllocationCallbacks</a>. These functions will be passed to Vulkan, as well as used by the library itself to make any CPU-side allocations.</p>
|
||||
<p>Please check "CONFIGURATION SECTION" in the code to find macros that you can define before each <code>#include</code> of this file or change directly in this file to provide your own implementation of basic facilities like assert, min and max functions, mutex etc. C++ STL is used by default, but changing these allows you to get rid of any STL usage if you want, as many game developers tend to do.</p>
|
||||
<h2><a class="anchor" id="custom_memory_allocator"></a>
|
||||
Custom memory allocator</h2>
|
||||
<p>You can use custom memory allocator by filling optional member <a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d" title="Custom CPU memory allocation callbacks. ">VmaAllocatorCreateInfo::pAllocationCallbacks</a>. These functions will be passed to Vulkan, as well as used by the library itself to make any CPU-side allocations.</p>
|
||||
<h1><a class="anchor" id="thread_safety"></a>
|
||||
Thread safety</h1>
|
||||
<ul>
|
||||
<li>The library has no global state, so separate VmaAllocator objects can be used independently.</li>
|
||||
<li>By default, all calls to functions that take VmaAllocator as first parameter are safe to call from multiple threads simultaneously because they are synchronized internally when needed.</li>
|
||||
<li>When the allocator is created with VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT flag, calls to functions that take such VmaAllocator object must be synchronized externally.</li>
|
||||
<li>Access to a VmaAllocation object must be externally synchronized. For example, you must not call <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> and <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> from different threads at the same time if you pass the same VmaAllocation object to these functions. </li>
|
||||
<li>The library has no global state, so separate <code>VmaAllocator</code> objects can be used independently.</li>
|
||||
<li>By default, all calls to functions that take <code>VmaAllocator</code> as first parameter are safe to call from multiple threads simultaneously because they are synchronized internally when needed.</li>
|
||||
<li>When the allocator is created with <code>VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT</code> flag, calls to functions that take such <code>VmaAllocator</code> object must be synchronized externally.</li>
|
||||
<li>Access to a <code>VmaAllocation</code> object must be externally synchronized. For example, you must not call <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a> and <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> from different threads at the same time if you pass the same <code>VmaAllocation</code> object to these functions. </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
|
@ -1,5 +1,8 @@
|
||||
var searchData=
|
||||
[
|
||||
['allocationcount',['AllocationCount',['../struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0',1,'VmaStatInfo']]],
|
||||
['allocationcount',['AllocationCount',['../struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0',1,'VmaStatInfo::AllocationCount()'],['../struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb',1,'VmaPoolStats::allocationCount()']]],
|
||||
['allocationsizeavg',['AllocationSizeAvg',['../struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21',1,'VmaStatInfo']]],
|
||||
['allocationsizemax',['AllocationSizeMax',['../struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c',1,'VmaStatInfo']]],
|
||||
['allocationsizemin',['AllocationSizeMin',['../struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580',1,'VmaStatInfo']]],
|
||||
['allocationsmoved',['allocationsMoved',['../struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9',1,'VmaDefragmentationStats']]]
|
||||
];
|
||||
|
@ -1,5 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['blockcount',['BlockCount',['../struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9',1,'VmaStatInfo']]],
|
||||
['blocksize',['blockSize',['../struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676',1,'VmaPoolCreateInfo']]],
|
||||
['bytesfreed',['bytesFreed',['../struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28',1,'VmaDefragmentationStats']]],
|
||||
['bytesmoved',['bytesMoved',['../struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d',1,'VmaDefragmentationStats']]]
|
||||
];
|
||||
|
@ -1,4 +1,5 @@
|
||||
var searchData=
|
||||
[
|
||||
['flags',['flags',['../struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6',1,'VmaMemoryRequirements::flags()']]]
|
||||
['flags',['flags',['../struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b',1,'VmaAllocationCreateInfo::flags()'],['../struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446',1,'VmaPoolCreateInfo::flags()']]],
|
||||
['frameinusecount',['frameInUseCount',['../struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7',1,'VmaAllocatorCreateInfo::frameInUseCount()'],['../struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa',1,'VmaPoolCreateInfo::frameInUseCount()']]]
|
||||
];
|
||||
|
@ -1,7 +1,10 @@
|
||||
var searchData=
|
||||
[
|
||||
['maxallocationstomove',['maxAllocationsToMove',['../struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc',1,'VmaDefragmentationInfo']]],
|
||||
['maxblockcount',['maxBlockCount',['../struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c',1,'VmaPoolCreateInfo']]],
|
||||
['maxbytestomove',['maxBytesToMove',['../struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d',1,'VmaDefragmentationInfo']]],
|
||||
['memoryheap',['memoryHeap',['../struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0',1,'VmaStats']]],
|
||||
['memorytype',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]]
|
||||
['memorytype',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]],
|
||||
['memorytypeindex',['memoryTypeIndex',['../struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319',1,'VmaPoolCreateInfo']]],
|
||||
['minblockcount',['minBlockCount',['../struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae',1,'VmaPoolCreateInfo']]]
|
||||
];
|
||||
|
@ -8,8 +8,9 @@ var searchData=
|
||||
['pfnfree',['pfnFree',['../struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c',1,'VmaDeviceMemoryCallbacks']]],
|
||||
['physicaldevice',['physicalDevice',['../struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156',1,'VmaAllocatorCreateInfo']]],
|
||||
['pmappeddata',['pMappedData',['../struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2',1,'VmaAllocationInfo']]],
|
||||
['preferredflags',['preferredFlags',['../struct_vma_memory_requirements.html#a6e105f836c2288034c711815b18226dc',1,'VmaMemoryRequirements']]],
|
||||
['pool',['pool',['../struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150',1,'VmaAllocationCreateInfo']]],
|
||||
['preferredflags',['preferredFlags',['../struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d',1,'VmaAllocationCreateInfo']]],
|
||||
['preferredlargeheapblocksize',['preferredLargeHeapBlockSize',['../struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a',1,'VmaAllocatorCreateInfo']]],
|
||||
['preferredsmallheapblocksize',['preferredSmallHeapBlockSize',['../struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a',1,'VmaAllocatorCreateInfo']]],
|
||||
['puserdata',['pUserData',['../struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a',1,'VmaMemoryRequirements::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]]
|
||||
['puserdata',['pUserData',['../struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19',1,'VmaAllocationCreateInfo::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]]
|
||||
];
|
||||
|
@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['requiredflags',['requiredFlags',['../struct_vma_memory_requirements.html#a8876c1b0f112e13a277f16967064cfe0',1,'VmaMemoryRequirements']]]
|
||||
['requiredflags',['requiredFlags',['../struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90',1,'VmaAllocationCreateInfo']]]
|
||||
];
|
||||
|
@ -1,8 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['size',['size',['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo']]],
|
||||
['suballocationcount',['SuballocationCount',['../struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead',1,'VmaStatInfo']]],
|
||||
['suballocationsizeavg',['SuballocationSizeAvg',['../struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b',1,'VmaStatInfo']]],
|
||||
['suballocationsizemax',['SuballocationSizeMax',['../struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271',1,'VmaStatInfo']]],
|
||||
['suballocationsizemin',['SuballocationSizeMin',['../struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b',1,'VmaStatInfo']]]
|
||||
['size',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]]
|
||||
];
|
||||
|
@ -1,10 +1,11 @@
|
||||
var searchData=
|
||||
[
|
||||
['unusedbytes',['UnusedBytes',['../struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d',1,'VmaStatInfo']]],
|
||||
['unusedrangecount',['UnusedRangeCount',['../struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6',1,'VmaStatInfo']]],
|
||||
['unusedrangecount',['UnusedRangeCount',['../struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6',1,'VmaStatInfo::UnusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
|
||||
['unusedrangesizeavg',['UnusedRangeSizeAvg',['../struct_vma_stat_info.html#a88ad9bdc2b3a98964a4d0c338c0c9060',1,'VmaStatInfo']]],
|
||||
['unusedrangesizemax',['UnusedRangeSizeMax',['../struct_vma_stat_info.html#a10c52c0841f01ca704e8ddb1ea6a635d',1,'VmaStatInfo']]],
|
||||
['unusedrangesizemin',['UnusedRangeSizeMin',['../struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6',1,'VmaStatInfo']]],
|
||||
['usage',['usage',['../struct_vma_memory_requirements.html#ab588497177a57847ed04e0a1aef54bbe',1,'VmaMemoryRequirements']]],
|
||||
['unusedsize',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
|
||||
['usage',['usage',['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo']]],
|
||||
['usedbytes',['UsedBytes',['../struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04',1,'VmaStatInfo']]]
|
||||
];
|
||||
|
@ -2,22 +2,30 @@ var searchData=
|
||||
[
|
||||
['vulkan_20memory_20allocator',['Vulkan Memory Allocator',['../index.html',1,'']]],
|
||||
['vk_5fmem_5falloc_2eh',['vk_mem_alloc.h',['../vk__mem__alloc_8h.html',1,'']]],
|
||||
['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fown_5fmemory_5fbit',['VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fpersistent_5fmap_5fbit',['VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocator_5fexternally_5fsynchronized_5fbit',['VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT',['../group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fabe92b706180652ceb320da5bc383aef4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocator_5fflag_5fbits_5fmax_5fenum',['VMA_ALLOCATOR_FLAG_BITS_MAX_ENUM',['../group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fa914e905a08c2e578f76b9d6c418626cc',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fflag_5fbits_5fmax_5fenum',['VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fnever_5fallocate_5fbit',['VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fown_5fmemory_5fbit',['VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fpersistent_5fmap_5fbit',['VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fcpu_5fonly',['VMA_MEMORY_USAGE_CPU_ONLY',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fgpu_5fonly',['VMA_MEMORY_USAGE_GPU_ONLY',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fmax_5fenum',['VMA_MEMORY_USAGE_MAX_ENUM',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5funknown',['VMA_MEMORY_USAGE_UNKNOWN',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fpersistent_5fmap_5fbit',['VMA_POOL_CREATE_PERSISTENT_MAP_BIT',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fstats_5fstring_5fenabled',['VMA_STATS_STRING_ENABLED',['../group__general.html#gae25f0d55fd91cb166f002b63244800e1',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememory',['vmaAllocateMemory',['../group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforbuffer',['vmaAllocateMemoryForBuffer',['../group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforimage',['vmaAllocateMemoryForImage',['../group__layer2.html#ga801f98c24eb928642742bb1e5615e86e',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememory',['vmaAllocateMemory',['../group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforbuffer',['vmaAllocateMemoryForBuffer',['../group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforimage',['vmaAllocateMemoryForImage',['../group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocationcreateflagbits',['VmaAllocationCreateFlagBits',['../group__layer1.html#gad9889c10c798b040d59c92f257cae597',1,'VmaAllocationCreateFlagBits(): vk_mem_alloc.h'],['../group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4',1,'VmaAllocationCreateFlagBits(): vk_mem_alloc.h']]],
|
||||
['vmaallocationcreateflags',['VmaAllocationCreateFlags',['../group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocationcreateinfo',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'VmaAllocationCreateInfo'],['../group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a',1,'VmaAllocationCreateInfo(): vk_mem_alloc.h']]],
|
||||
['vmaallocationinfo',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'VmaAllocationInfo'],['../group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255',1,'VmaAllocationInfo(): vk_mem_alloc.h']]],
|
||||
['vmaallocatorcreateinfo',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'VmaAllocatorCreateInfo'],['../group__general.html#gae0f6d1d733dded220d28134da46b4283',1,'VmaAllocatorCreateInfo(): vk_mem_alloc.h']]],
|
||||
['vmaallocatorflagbits',['VmaAllocatorFlagBits',['../group__general.html#ga34fff29c218d23a7ff7dff44b77b6b6f',1,'VmaAllocatorFlagBits(): vk_mem_alloc.h'],['../group__general.html#gac51ae2c316ee760ec5aebbae06d31253',1,'VmaAllocatorFlagBits(): vk_mem_alloc.h']]],
|
||||
@ -25,29 +33,36 @@ var searchData=
|
||||
['vmabuildstatsstring',['vmaBuildStatsString',['../group__general.html#gaa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
|
||||
['vmacalculatestats',['vmaCalculateStats',['../group__general.html#ga333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateallocator',['vmaCreateAllocator',['../group__general.html#ga200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatebuffer',['vmaCreateBuffer',['../group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateimage',['vmaCreateImage',['../group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatebuffer',['vmaCreateBuffer',['../group__layer3.html#gac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateimage',['vmaCreateImage',['../group__layer3.html#ga02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatelostallocation',['vmaCreateLostAllocation',['../group__layer2.html#gae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatepool',['vmaCreatePool',['../group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
|
||||
['vmadefragment',['vmaDefragment',['../group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb',1,'vk_mem_alloc.h']]],
|
||||
['vmadefragmentationinfo',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'VmaDefragmentationInfo'],['../group__layer2.html#gae67f8573a0cf20f16f0a1eecbca566a0',1,'VmaDefragmentationInfo(): vk_mem_alloc.h']]],
|
||||
['vmadefragmentationstats',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'VmaDefragmentationStats'],['../group__layer2.html#gab0f9b06441c840fee560de4a2967f8c9',1,'VmaDefragmentationStats(): vk_mem_alloc.h']]],
|
||||
['vmadestroyallocator',['vmaDestroyAllocator',['../group__general.html#gaa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroybuffer',['vmaDestroyBuffer',['../group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroyimage',['vmaDestroyImage',['../group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroypool',['vmaDestroyPool',['../group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
|
||||
['vmadevicememorycallbacks',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'VmaDeviceMemoryCallbacks'],['../group__general.html#ga5e2eb68d727cfd4df25702b027b7aa31',1,'VmaDeviceMemoryCallbacks(): vk_mem_alloc.h']]],
|
||||
['vmafindmemorytypeindex',['vmaFindMemoryTypeIndex',['../group__layer1.html#gadf80663373e94bcef382f17534b8694e',1,'vk_mem_alloc.h']]],
|
||||
['vmafindmemorytypeindex',['vmaFindMemoryTypeIndex',['../group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
|
||||
['vmafreememory',['vmaFreeMemory',['../group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568',1,'vk_mem_alloc.h']]],
|
||||
['vmafreestatsstring',['vmaFreeStatsString',['../group__general.html#ga3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
|
||||
['vmagetallocationinfo',['vmaGetAllocationInfo',['../group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
|
||||
['vmagetmemoryproperties',['vmaGetMemoryProperties',['../group__general.html#gab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
|
||||
['vmagetmemorytypeproperties',['vmaGetMemoryTypeProperties',['../group__general.html#ga8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
|
||||
['vmagetphysicaldeviceproperties',['vmaGetPhysicalDeviceProperties',['../group__general.html#gaecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
|
||||
['vmagetpoolstats',['vmaGetPoolStats',['../group__layer2.html#gae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
|
||||
['vmamakepoolallocationslost',['vmaMakePoolAllocationsLost',['../group__layer2.html#ga736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
|
||||
['vmamapmemory',['vmaMapMemory',['../group__layer2.html#gad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
|
||||
['vmamappersistentlymappedmemory',['vmaMapPersistentlyMappedMemory',['../group__layer2.html#ga03366170bb8e186605518d2f5d65b85a',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirementflagbits',['VmaMemoryRequirementFlagBits',['../group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed',1,'VmaMemoryRequirementFlagBits(): vk_mem_alloc.h'],['../group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b',1,'VmaMemoryRequirementFlagBits(): vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirementflags',['VmaMemoryRequirementFlags',['../group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirements',['VmaMemoryRequirements',['../struct_vma_memory_requirements.html',1,'VmaMemoryRequirements'],['../group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca',1,'VmaMemoryRequirements(): vk_mem_alloc.h']]],
|
||||
['vmamemoryusage',['VmaMemoryUsage',['../group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc',1,'VmaMemoryUsage(): vk_mem_alloc.h'],['../group__layer1.html#gad63b2113c0bfdbeade1cb498f5a8580d',1,'VmaMemoryUsage(): vk_mem_alloc.h']]],
|
||||
['vmapoolcreateflagbits',['VmaPoolCreateFlagBits',['../group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7',1,'VmaPoolCreateFlagBits(): vk_mem_alloc.h'],['../group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f',1,'VmaPoolCreateFlagBits(): vk_mem_alloc.h']]],
|
||||
['vmapoolcreateflags',['VmaPoolCreateFlags',['../group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolcreateinfo',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'VmaPoolCreateInfo'],['../group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7',1,'VmaPoolCreateInfo(): vk_mem_alloc.h']]],
|
||||
['vmapoolstats',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'VmaPoolStats'],['../group__layer2.html#ga2e5612d871d64c5624087b837a338c34',1,'VmaPoolStats(): vk_mem_alloc.h']]],
|
||||
['vmasetallocationuserdata',['vmaSetAllocationUserData',['../group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
|
||||
['vmasetcurrentframeindex',['vmaSetCurrentFrameIndex',['../group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
|
||||
['vmastatinfo',['VmaStatInfo',['../struct_vma_stat_info.html',1,'VmaStatInfo'],['../group__general.html#ga810b009a788ee8aac72a25b42ffbe31c',1,'VmaStatInfo(): vk_mem_alloc.h']]],
|
||||
['vmastats',['VmaStats',['../struct_vma_stats.html',1,'']]],
|
||||
['vmaunmapmemory',['vmaUnmapMemory',['../group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]],
|
||||
|
@ -1,11 +1,13 @@
|
||||
var searchData=
|
||||
[
|
||||
['vmaallocationcreateinfo',['VmaAllocationCreateInfo',['../struct_vma_allocation_create_info.html',1,'']]],
|
||||
['vmaallocationinfo',['VmaAllocationInfo',['../struct_vma_allocation_info.html',1,'']]],
|
||||
['vmaallocatorcreateinfo',['VmaAllocatorCreateInfo',['../struct_vma_allocator_create_info.html',1,'']]],
|
||||
['vmadefragmentationinfo',['VmaDefragmentationInfo',['../struct_vma_defragmentation_info.html',1,'']]],
|
||||
['vmadefragmentationstats',['VmaDefragmentationStats',['../struct_vma_defragmentation_stats.html',1,'']]],
|
||||
['vmadevicememorycallbacks',['VmaDeviceMemoryCallbacks',['../struct_vma_device_memory_callbacks.html',1,'']]],
|
||||
['vmamemoryrequirements',['VmaMemoryRequirements',['../struct_vma_memory_requirements.html',1,'']]],
|
||||
['vmapoolcreateinfo',['VmaPoolCreateInfo',['../struct_vma_pool_create_info.html',1,'']]],
|
||||
['vmapoolstats',['VmaPoolStats',['../struct_vma_pool_stats.html',1,'']]],
|
||||
['vmastatinfo',['VmaStatInfo',['../struct_vma_stat_info.html',1,'']]],
|
||||
['vmastats',['VmaStats',['../struct_vma_stats.html',1,'']]]
|
||||
];
|
||||
|
@ -1,6 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['vmaallocationcreateflagbits',['VmaAllocationCreateFlagBits',['../group__layer1.html#gad9889c10c798b040d59c92f257cae597',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatorflagbits',['VmaAllocatorFlagBits',['../group__general.html#ga34fff29c218d23a7ff7dff44b77b6b6f',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirementflagbits',['VmaMemoryRequirementFlagBits',['../group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryusage',['VmaMemoryUsage',['../group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc',1,'vk_mem_alloc.h']]]
|
||||
['vmamemoryusage',['VmaMemoryUsage',['../group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolcreateflagbits',['VmaPoolCreateFlagBits',['../group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7',1,'vk_mem_alloc.h']]]
|
||||
];
|
||||
|
@ -1,15 +1,20 @@
|
||||
var searchData=
|
||||
[
|
||||
['vma_5fallocation_5fcreate_5fcan_5fbecome_5flost_5fbit',['VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fcan_5fmake_5fother_5flost_5fbit',['VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fflag_5fbits_5fmax_5fenum',['VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fnever_5fallocate_5fbit',['VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fown_5fmemory_5fbit',['VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocation_5fcreate_5fpersistent_5fmap_5fbit',['VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT',['../group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocator_5fexternally_5fsynchronized_5fbit',['VMA_ALLOCATOR_EXTERNALLY_SYNCHRONIZED_BIT',['../group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fabe92b706180652ceb320da5bc383aef4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fallocator_5fflag_5fbits_5fmax_5fenum',['VMA_ALLOCATOR_FLAG_BITS_MAX_ENUM',['../group__general.html#gga34fff29c218d23a7ff7dff44b77b6b6fa914e905a08c2e578f76b9d6c418626cc',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fflag_5fbits_5fmax_5fenum',['VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fnever_5fallocate_5fbit',['VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fown_5fmemory_5fbit',['VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5frequirement_5fpersistent_5fmap_5fbit',['VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT',['../group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fcpu_5fonly',['VMA_MEMORY_USAGE_CPU_ONLY',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca40bdf4cddeffeb12f43d45ca1286e0a5',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fcpu_5fto_5fgpu',['VMA_MEMORY_USAGE_CPU_TO_GPU',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca9066b52c5a7079bb74a69aaf8b92ff67',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fgpu_5fonly',['VMA_MEMORY_USAGE_GPU_ONLY',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccac6b5dc1432d88647aa4cd456246eadf7',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fgpu_5fto_5fcpu',['VMA_MEMORY_USAGE_GPU_TO_CPU',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca7b586d2fdaf82a463b58f581ed72be27',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5fmax_5fenum',['VMA_MEMORY_USAGE_MAX_ENUM',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305cca091e69437ef693e8d0d287f1c719ba6e',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fmemory_5fusage_5funknown',['VMA_MEMORY_USAGE_UNKNOWN',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]]
|
||||
['vma_5fmemory_5fusage_5funknown',['VMA_MEMORY_USAGE_UNKNOWN',['../group__layer1.html#ggaa5846affa1e9da3800e3e78fae2305ccaf50d27e34e0925cf3a63db8c839121dd',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fflag_5fbits_5fmax_5fenum',['VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fignore_5fbuffer_5fimage_5fgranularity_5fbit',['VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2',1,'vk_mem_alloc.h']]],
|
||||
['vma_5fpool_5fcreate_5fpersistent_5fmap_5fbit',['VMA_POOL_CREATE_PERSISTENT_MAP_BIT',['../group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9',1,'vk_mem_alloc.h']]]
|
||||
];
|
||||
|
@ -1,27 +1,33 @@
|
||||
var searchData=
|
||||
[
|
||||
['vmaallocatememory',['vmaAllocateMemory',['../group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforbuffer',['vmaAllocateMemoryForBuffer',['../group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforimage',['vmaAllocateMemoryForImage',['../group__layer2.html#ga801f98c24eb928642742bb1e5615e86e',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememory',['vmaAllocateMemory',['../group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforbuffer',['vmaAllocateMemoryForBuffer',['../group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatememoryforimage',['vmaAllocateMemoryForImage',['../group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb',1,'vk_mem_alloc.h']]],
|
||||
['vmabuildstatsstring',['vmaBuildStatsString',['../group__general.html#gaa4fee7eb5253377599ef4fd38c93c2a0',1,'vk_mem_alloc.h']]],
|
||||
['vmacalculatestats',['vmaCalculateStats',['../group__general.html#ga333b61c1788cb23559177531e6a93ca3',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateallocator',['vmaCreateAllocator',['../group__general.html#ga200692051ddb34240248234f5f4c17bb',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatebuffer',['vmaCreateBuffer',['../group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateimage',['vmaCreateImage',['../group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatebuffer',['vmaCreateBuffer',['../group__layer3.html#gac72ee55598617e8eecca384e746bab51',1,'vk_mem_alloc.h']]],
|
||||
['vmacreateimage',['vmaCreateImage',['../group__layer3.html#ga02a94f25679275851a53e82eacbcfc73',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatelostallocation',['vmaCreateLostAllocation',['../group__layer2.html#gae5c9657d9e94756269145b01c05d16f1',1,'vk_mem_alloc.h']]],
|
||||
['vmacreatepool',['vmaCreatePool',['../group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50',1,'vk_mem_alloc.h']]],
|
||||
['vmadefragment',['vmaDefragment',['../group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroyallocator',['vmaDestroyAllocator',['../group__general.html#gaa8d164061c88f22fb1fd3c8f3534bc1d',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroybuffer',['vmaDestroyBuffer',['../group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroyimage',['vmaDestroyImage',['../group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e',1,'vk_mem_alloc.h']]],
|
||||
['vmafindmemorytypeindex',['vmaFindMemoryTypeIndex',['../group__layer1.html#gadf80663373e94bcef382f17534b8694e',1,'vk_mem_alloc.h']]],
|
||||
['vmadestroypool',['vmaDestroyPool',['../group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1',1,'vk_mem_alloc.h']]],
|
||||
['vmafindmemorytypeindex',['vmaFindMemoryTypeIndex',['../group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a',1,'vk_mem_alloc.h']]],
|
||||
['vmafreememory',['vmaFreeMemory',['../group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568',1,'vk_mem_alloc.h']]],
|
||||
['vmafreestatsstring',['vmaFreeStatsString',['../group__general.html#ga3104eb30d8122c84dd8541063f145288',1,'vk_mem_alloc.h']]],
|
||||
['vmagetallocationinfo',['vmaGetAllocationInfo',['../group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b',1,'vk_mem_alloc.h']]],
|
||||
['vmagetmemoryproperties',['vmaGetMemoryProperties',['../group__general.html#gab88db292a17974f911182543fda52d19',1,'vk_mem_alloc.h']]],
|
||||
['vmagetmemorytypeproperties',['vmaGetMemoryTypeProperties',['../group__general.html#ga8701444752eb5de4464adb5a2b514bca',1,'vk_mem_alloc.h']]],
|
||||
['vmagetphysicaldeviceproperties',['vmaGetPhysicalDeviceProperties',['../group__general.html#gaecabf7b6e91ea87d0316fa0a9e014fe0',1,'vk_mem_alloc.h']]],
|
||||
['vmagetpoolstats',['vmaGetPoolStats',['../group__layer2.html#gae8bf76997b234ef68aad922616df4153',1,'vk_mem_alloc.h']]],
|
||||
['vmamakepoolallocationslost',['vmaMakePoolAllocationsLost',['../group__layer2.html#ga736bd6cbda886f36c891727e73bd4024',1,'vk_mem_alloc.h']]],
|
||||
['vmamapmemory',['vmaMapMemory',['../group__layer2.html#gad5bd1243512d099706de88168992f069',1,'vk_mem_alloc.h']]],
|
||||
['vmamappersistentlymappedmemory',['vmaMapPersistentlyMappedMemory',['../group__layer2.html#ga03366170bb8e186605518d2f5d65b85a',1,'vk_mem_alloc.h']]],
|
||||
['vmasetallocationuserdata',['vmaSetAllocationUserData',['../group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f',1,'vk_mem_alloc.h']]],
|
||||
['vmasetcurrentframeindex',['vmaSetCurrentFrameIndex',['../group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236',1,'vk_mem_alloc.h']]],
|
||||
['vmaunmapmemory',['vmaUnmapMemory',['../group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45',1,'vk_mem_alloc.h']]],
|
||||
['vmaunmappersistentlymappedmemory',['vmaUnmapPersistentlyMappedMemory',['../group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27',1,'vk_mem_alloc.h']]]
|
||||
];
|
||||
|
@ -1,5 +1,8 @@
|
||||
var searchData=
|
||||
[
|
||||
['vmaallocationcreateflagbits',['VmaAllocationCreateFlagBits',['../group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocationcreateflags',['VmaAllocationCreateFlags',['../group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocationcreateinfo',['VmaAllocationCreateInfo',['../group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocationinfo',['VmaAllocationInfo',['../group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatorcreateinfo',['VmaAllocatorCreateInfo',['../group__general.html#gae0f6d1d733dded220d28134da46b4283',1,'vk_mem_alloc.h']]],
|
||||
['vmaallocatorflagbits',['VmaAllocatorFlagBits',['../group__general.html#gac51ae2c316ee760ec5aebbae06d31253',1,'vk_mem_alloc.h']]],
|
||||
@ -7,9 +10,10 @@ var searchData=
|
||||
['vmadefragmentationinfo',['VmaDefragmentationInfo',['../group__layer2.html#gae67f8573a0cf20f16f0a1eecbca566a0',1,'vk_mem_alloc.h']]],
|
||||
['vmadefragmentationstats',['VmaDefragmentationStats',['../group__layer2.html#gab0f9b06441c840fee560de4a2967f8c9',1,'vk_mem_alloc.h']]],
|
||||
['vmadevicememorycallbacks',['VmaDeviceMemoryCallbacks',['../group__general.html#ga5e2eb68d727cfd4df25702b027b7aa31',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirementflagbits',['VmaMemoryRequirementFlagBits',['../group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirementflags',['VmaMemoryRequirementFlags',['../group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryrequirements',['VmaMemoryRequirements',['../group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca',1,'vk_mem_alloc.h']]],
|
||||
['vmamemoryusage',['VmaMemoryUsage',['../group__layer1.html#gad63b2113c0bfdbeade1cb498f5a8580d',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolcreateflagbits',['VmaPoolCreateFlagBits',['../group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolcreateflags',['VmaPoolCreateFlags',['../group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolcreateinfo',['VmaPoolCreateInfo',['../group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7',1,'vk_mem_alloc.h']]],
|
||||
['vmapoolstats',['VmaPoolStats',['../group__layer2.html#ga2e5612d871d64c5624087b837a338c34',1,'vk_mem_alloc.h']]],
|
||||
['vmastatinfo',['VmaStatInfo',['../group__general.html#ga810b009a788ee8aac72a25b42ffbe31c',1,'vk_mem_alloc.h']]]
|
||||
];
|
||||
|
@ -1,5 +1,8 @@
|
||||
var searchData=
|
||||
[
|
||||
['allocationcount',['AllocationCount',['../struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0',1,'VmaStatInfo']]],
|
||||
['allocationcount',['AllocationCount',['../struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0',1,'VmaStatInfo::AllocationCount()'],['../struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb',1,'VmaPoolStats::allocationCount()']]],
|
||||
['allocationsizeavg',['AllocationSizeAvg',['../struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21',1,'VmaStatInfo']]],
|
||||
['allocationsizemax',['AllocationSizeMax',['../struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c',1,'VmaStatInfo']]],
|
||||
['allocationsizemin',['AllocationSizeMin',['../struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580',1,'VmaStatInfo']]],
|
||||
['allocationsmoved',['allocationsMoved',['../struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9',1,'VmaDefragmentationStats']]]
|
||||
];
|
||||
|
@ -1,5 +1,7 @@
|
||||
var searchData=
|
||||
[
|
||||
['blockcount',['BlockCount',['../struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9',1,'VmaStatInfo']]],
|
||||
['blocksize',['blockSize',['../struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676',1,'VmaPoolCreateInfo']]],
|
||||
['bytesfreed',['bytesFreed',['../struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28',1,'VmaDefragmentationStats']]],
|
||||
['bytesmoved',['bytesMoved',['../struct_vma_defragmentation_stats.html#a36f9d5df2a10ba2a36b16e126d60572d',1,'VmaDefragmentationStats']]]
|
||||
];
|
||||
|
@ -1,4 +1,5 @@
|
||||
var searchData=
|
||||
[
|
||||
['flags',['flags',['../struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6',1,'VmaMemoryRequirements::flags()']]]
|
||||
['flags',['flags',['../struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859',1,'VmaAllocatorCreateInfo::flags()'],['../struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b',1,'VmaAllocationCreateInfo::flags()'],['../struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446',1,'VmaPoolCreateInfo::flags()']]],
|
||||
['frameinusecount',['frameInUseCount',['../struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7',1,'VmaAllocatorCreateInfo::frameInUseCount()'],['../struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa',1,'VmaPoolCreateInfo::frameInUseCount()']]]
|
||||
];
|
||||
|
@ -1,7 +1,10 @@
|
||||
var searchData=
|
||||
[
|
||||
['maxallocationstomove',['maxAllocationsToMove',['../struct_vma_defragmentation_info.html#aa7c7304e13c71f604c907196c4e28fbc',1,'VmaDefragmentationInfo']]],
|
||||
['maxblockcount',['maxBlockCount',['../struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c',1,'VmaPoolCreateInfo']]],
|
||||
['maxbytestomove',['maxBytesToMove',['../struct_vma_defragmentation_info.html#acb311c940a777270e67e1b81c5ab6a1d',1,'VmaDefragmentationInfo']]],
|
||||
['memoryheap',['memoryHeap',['../struct_vma_stats.html#a0e6611508c29a187f0fd14ff1a0329c0',1,'VmaStats']]],
|
||||
['memorytype',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]]
|
||||
['memorytype',['memoryType',['../struct_vma_stats.html#a13e3caf754be79352c42408756309331',1,'VmaStats::memoryType()'],['../struct_vma_allocation_info.html#a7f6b0aa58c135e488e6b40a388dad9d5',1,'VmaAllocationInfo::memoryType()']]],
|
||||
['memorytypeindex',['memoryTypeIndex',['../struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319',1,'VmaPoolCreateInfo']]],
|
||||
['minblockcount',['minBlockCount',['../struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae',1,'VmaPoolCreateInfo']]]
|
||||
];
|
||||
|
@ -6,8 +6,9 @@ var searchData=
|
||||
['pfnfree',['pfnFree',['../struct_vma_device_memory_callbacks.html#abe8a3328bbc916f6f712fdb6b299444c',1,'VmaDeviceMemoryCallbacks']]],
|
||||
['physicaldevice',['physicalDevice',['../struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156',1,'VmaAllocatorCreateInfo']]],
|
||||
['pmappeddata',['pMappedData',['../struct_vma_allocation_info.html#a5eeffbe2d2f30f53370ff14aefbadbe2',1,'VmaAllocationInfo']]],
|
||||
['preferredflags',['preferredFlags',['../struct_vma_memory_requirements.html#a6e105f836c2288034c711815b18226dc',1,'VmaMemoryRequirements']]],
|
||||
['pool',['pool',['../struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150',1,'VmaAllocationCreateInfo']]],
|
||||
['preferredflags',['preferredFlags',['../struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d',1,'VmaAllocationCreateInfo']]],
|
||||
['preferredlargeheapblocksize',['preferredLargeHeapBlockSize',['../struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a',1,'VmaAllocatorCreateInfo']]],
|
||||
['preferredsmallheapblocksize',['preferredSmallHeapBlockSize',['../struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a',1,'VmaAllocatorCreateInfo']]],
|
||||
['puserdata',['pUserData',['../struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a',1,'VmaMemoryRequirements::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]]
|
||||
['puserdata',['pUserData',['../struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19',1,'VmaAllocationCreateInfo::pUserData()'],['../struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13',1,'VmaAllocationInfo::pUserData()']]]
|
||||
];
|
||||
|
@ -1,4 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['requiredflags',['requiredFlags',['../struct_vma_memory_requirements.html#a8876c1b0f112e13a277f16967064cfe0',1,'VmaMemoryRequirements']]]
|
||||
['requiredflags',['requiredFlags',['../struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90',1,'VmaAllocationCreateInfo']]]
|
||||
];
|
||||
|
@ -1,8 +1,4 @@
|
||||
var searchData=
|
||||
[
|
||||
['size',['size',['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo']]],
|
||||
['suballocationcount',['SuballocationCount',['../struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead',1,'VmaStatInfo']]],
|
||||
['suballocationsizeavg',['SuballocationSizeAvg',['../struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b',1,'VmaStatInfo']]],
|
||||
['suballocationsizemax',['SuballocationSizeMax',['../struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271',1,'VmaStatInfo']]],
|
||||
['suballocationsizemin',['SuballocationSizeMin',['../struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b',1,'VmaStatInfo']]]
|
||||
['size',['size',['../struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c',1,'VmaPoolStats::size()'],['../struct_vma_allocation_info.html#aac76d113a6a5ccbb09fea00fb25fd18f',1,'VmaAllocationInfo::size()']]]
|
||||
];
|
||||
|
@ -1,10 +1,11 @@
|
||||
var searchData=
|
||||
[
|
||||
['unusedbytes',['UnusedBytes',['../struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d',1,'VmaStatInfo']]],
|
||||
['unusedrangecount',['UnusedRangeCount',['../struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6',1,'VmaStatInfo']]],
|
||||
['unusedrangecount',['UnusedRangeCount',['../struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6',1,'VmaStatInfo::UnusedRangeCount()'],['../struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4',1,'VmaPoolStats::unusedRangeCount()']]],
|
||||
['unusedrangesizeavg',['UnusedRangeSizeAvg',['../struct_vma_stat_info.html#a88ad9bdc2b3a98964a4d0c338c0c9060',1,'VmaStatInfo']]],
|
||||
['unusedrangesizemax',['UnusedRangeSizeMax',['../struct_vma_stat_info.html#a10c52c0841f01ca704e8ddb1ea6a635d',1,'VmaStatInfo']]],
|
||||
['unusedrangesizemin',['UnusedRangeSizeMin',['../struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6',1,'VmaStatInfo']]],
|
||||
['usage',['usage',['../struct_vma_memory_requirements.html#ab588497177a57847ed04e0a1aef54bbe',1,'VmaMemoryRequirements']]],
|
||||
['unusedsize',['unusedSize',['../struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8',1,'VmaPoolStats']]],
|
||||
['usage',['usage',['../struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910',1,'VmaAllocationCreateInfo']]],
|
||||
['usedbytes',['UsedBytes',['../struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04',1,'VmaStatInfo']]]
|
||||
];
|
||||
|
82
docs/html/struct_vma_allocation_create_info-members.html
Normal file
82
docs/html/struct_vma_allocation_create_info-members.html
Normal file
@ -0,0 +1,82 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: Member List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaAllocationCreateInfo Member List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">flags</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">pool</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">preferredFlags</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">pUserData</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">requiredFlags</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">usage</a></td><td class="entry"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
208
docs/html/struct_vma_allocation_create_info.html
Normal file
208
docs/html/struct_vma_allocation_create_info.html
Normal file
@ -0,0 +1,208 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: VmaAllocationCreateInfo Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="struct_vma_allocation_create_info-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaAllocationCreateInfo Struct Reference<div class="ingroups"><a class="el" href="group__layer1.html">Layer 1 Choosing Memory Type</a></div></div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p><code>#include <<a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a>></code></p>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
||||
Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:add09658ac14fe290ace25470ddd6d41b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b">flags</a></td></tr>
|
||||
<tr class="memdesc:add09658ac14fe290ace25470ddd6d41b"><td class="mdescLeft"> </td><td class="mdescRight">Use VmaAllocationCreateFlagBits enum. <a href="#add09658ac14fe290ace25470ddd6d41b">More...</a><br /></td></tr>
|
||||
<tr class="separator:add09658ac14fe290ace25470ddd6d41b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:accb8b06b1f677d858cb9af20705fa910"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#accb8b06b1f677d858cb9af20705fa910">usage</a></td></tr>
|
||||
<tr class="memdesc:accb8b06b1f677d858cb9af20705fa910"><td class="mdescLeft"> </td><td class="mdescRight">Intended usage of memory. <a href="#accb8b06b1f677d858cb9af20705fa910">More...</a><br /></td></tr>
|
||||
<tr class="separator:accb8b06b1f677d858cb9af20705fa910"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9166390303ff42d783305bc31c2b6b90"><td class="memItemLeft" align="right" valign="top">VkMemoryPropertyFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#a9166390303ff42d783305bc31c2b6b90">requiredFlags</a></td></tr>
|
||||
<tr class="memdesc:a9166390303ff42d783305bc31c2b6b90"><td class="mdescLeft"> </td><td class="mdescRight">Flags that must be set in a Memory Type chosen for an allocation. <a href="#a9166390303ff42d783305bc31c2b6b90">More...</a><br /></td></tr>
|
||||
<tr class="separator:a9166390303ff42d783305bc31c2b6b90"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a7fe8d81a1ad10b2a2faacacee5b15d6d"><td class="memItemLeft" align="right" valign="top">VkMemoryPropertyFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#a7fe8d81a1ad10b2a2faacacee5b15d6d">preferredFlags</a></td></tr>
|
||||
<tr class="memdesc:a7fe8d81a1ad10b2a2faacacee5b15d6d"><td class="mdescLeft"> </td><td class="mdescRight">Flags that preferably should be set in a Memory Type chosen for an allocation. <a href="#a7fe8d81a1ad10b2a2faacacee5b15d6d">More...</a><br /></td></tr>
|
||||
<tr class="separator:a7fe8d81a1ad10b2a2faacacee5b15d6d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a8259e85c272683434f4abb4ddddffe19"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19">pUserData</a></td></tr>
|
||||
<tr class="memdesc:a8259e85c272683434f4abb4ddddffe19"><td class="mdescLeft"> </td><td class="mdescRight">Custom general-purpose pointer that will be stored in VmaAllocation, can be read as <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13" title="Custom general-purpose pointer that was passed as VmaAllocationCreateInfo::pUserData or set using vma...">VmaAllocationInfo::pUserData</a> and changed using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. <a href="#a8259e85c272683434f4abb4ddddffe19">More...</a><br /></td></tr>
|
||||
<tr class="separator:a8259e85c272683434f4abb4ddddffe19"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6272c0555cfd1fe28bff1afeb6190150"><td class="memItemLeft" align="right" valign="top">VmaPool </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html#a6272c0555cfd1fe28bff1afeb6190150">pool</a></td></tr>
|
||||
<tr class="memdesc:a6272c0555cfd1fe28bff1afeb6190150"><td class="mdescLeft"> </td><td class="mdescRight">Pool that this allocation should be created in. <a href="#a6272c0555cfd1fe28bff1afeb6190150">More...</a><br /></td></tr>
|
||||
<tr class="separator:a6272c0555cfd1fe28bff1afeb6190150"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="add09658ac14fe290ace25470ddd6d41b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#add09658ac14fe290ace25470ddd6d41b">◆ </a></span>flags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a> VmaAllocationCreateInfo::flags</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Use VmaAllocationCreateFlagBits enum. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6272c0555cfd1fe28bff1afeb6190150"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6272c0555cfd1fe28bff1afeb6190150">◆ </a></span>pool</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VmaPool VmaAllocationCreateInfo::pool</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Pool that this allocation should be created in. </p>
|
||||
<p>Leave <code>VK_NULL_HANDLE</code> to allocate from general memory. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a7fe8d81a1ad10b2a2faacacee5b15d6d"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a7fe8d81a1ad10b2a2faacacee5b15d6d">◆ </a></span>preferredFlags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkMemoryPropertyFlags VmaAllocationCreateInfo::preferredFlags</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags that preferably should be set in a Memory Type chosen for an allocation. </p>
|
||||
<p>Set to 0 if no additional flags are prefered and only <code>requiredFlags</code> should be used. <br />
|
||||
If not 0, it must be a superset or equal to <code>requiredFlags</code>. <br />
|
||||
If <code>pool</code> is not null, this member is ignored. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a8259e85c272683434f4abb4ddddffe19"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a8259e85c272683434f4abb4ddddffe19">◆ </a></span>pUserData</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void* VmaAllocationCreateInfo::pUserData</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Custom general-purpose pointer that will be stored in VmaAllocation, can be read as <a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13" title="Custom general-purpose pointer that was passed as VmaAllocationCreateInfo::pUserData or set using vma...">VmaAllocationInfo::pUserData</a> and changed using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a9166390303ff42d783305bc31c2b6b90"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9166390303ff42d783305bc31c2b6b90">◆ </a></span>requiredFlags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkMemoryPropertyFlags VmaAllocationCreateInfo::requiredFlags</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Flags that must be set in a Memory Type chosen for an allocation. </p>
|
||||
<p>Leave 0 if you specify requirement via usage. <br />
|
||||
If <code>pool</code> is not null, this member is ignored. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="accb8b06b1f677d858cb9af20705fa910"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#accb8b06b1f677d858cb9af20705fa910">◆ </a></span>usage</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> VmaAllocationCreateInfo::usage</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Intended usage of memory. </p>
|
||||
<p>Leave <code>VMA_MEMORY_USAGE_UNKNOWN</code> if you specify <code>requiredFlags</code>. You can also use both. <br />
|
||||
If <code>pool</code> is not null, this member is ignored. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a></li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -66,7 +66,7 @@ $(function() {
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>.
|
||||
<p>Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>.
|
||||
<a href="struct_vma_allocation_info.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <<a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a>></code></p>
|
||||
@ -89,11 +89,11 @@ Public Attributes</h2></td></tr>
|
||||
<tr class="memdesc:a5eeffbe2d2f30f53370ff14aefbadbe2"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistently mapped. <a href="#a5eeffbe2d2f30f53370ff14aefbadbe2">More...</a><br /></td></tr>
|
||||
<tr class="separator:a5eeffbe2d2f30f53370ff14aefbadbe2"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:adc507656149c04de7ed95d0042ba2a13"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_info.html#adc507656149c04de7ed95d0042ba2a13">pUserData</a></td></tr>
|
||||
<tr class="memdesc:adc507656149c04de7ed95d0042ba2a13"><td class="mdescLeft"> </td><td class="mdescRight">Custom general-purpose pointer that was passed as <a class="el" href="struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a" title="Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...">VmaMemoryRequirements::pUserData</a> or set using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. <a href="#adc507656149c04de7ed95d0042ba2a13">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:adc507656149c04de7ed95d0042ba2a13"><td class="mdescLeft"> </td><td class="mdescRight">Custom general-purpose pointer that was passed as <a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19" title="Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...">VmaAllocationCreateInfo::pUserData</a> or set using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. <a href="#adc507656149c04de7ed95d0042ba2a13">More...</a><br /></td></tr>
|
||||
<tr class="separator:adc507656149c04de7ed95d0042ba2a13"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. </p>
|
||||
<div class="textblock"><p>Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. </p>
|
||||
</div><h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="ae0bfb7dfdf79a76ffefc9a94677a2f67"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae0bfb7dfdf79a76ffefc9a94677a2f67">◆ </a></span>deviceMemory</h2>
|
||||
@ -109,7 +109,8 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
<p>Handle to Vulkan memory object. </p>
|
||||
<p>Same memory object can be shared by multiple allocations.</p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function, or if allocation is lost.</p>
|
||||
<p>If the allocation is lost, it is equal to <code>VK_NULL_HANDLE</code>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -143,7 +144,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Offset into deviceMemory object to the beginning of this allocation, in bytes. (deviceMemory, offset) pair is unique to this allocation. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function, or if allocation is lost. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -160,7 +161,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Pointer to the beginning of this allocation as mapped data. Null if this alloaction is not persistently mapped. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>, <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a>. It can also change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27" title="Unmaps persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaUnmapPersistentlyMappedMemory()</a>, <a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a" title="Maps back persistently mapped memory of types that are HOST_COHERENT and DEVICE_LOCAL. ">vmaMapPersistentlyMappedMemory()</a>. It can also change after call to <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a> if this allocation is passed to the function. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -176,7 +177,7 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Custom general-purpose pointer that was passed as <a class="el" href="struct_vma_memory_requirements.html#a8470093e93ed07ed2557490cdc67566a" title="Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...">VmaMemoryRequirements::pUserData</a> or set using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. </p>
|
||||
<p>Custom general-purpose pointer that was passed as <a class="el" href="struct_vma_allocation_create_info.html#a8259e85c272683434f4abb4ddddffe19" title="Custom general-purpose pointer that will be stored in VmaAllocation, can be read as VmaAllocationInfo...">VmaAllocationCreateInfo::pUserData</a> or set using <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a>. </p>
|
||||
<p>It can change after call to <a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f" title="Sets pUserData in given allocation to new value. ">vmaSetAllocationUserData()</a> for this allocation. </p>
|
||||
|
||||
</div>
|
||||
@ -194,7 +195,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Size of this allocation, in bytes. </p>
|
||||
<p>It never changes. </p>
|
||||
<p>It never changes, unless allocation is lost. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -67,11 +67,12 @@ $(function() {
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#ad924ddd77b04039c88d0c09b0ffcd500">device</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a35d3b42ac5a3be3758926819dc053859">flags</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">pAllocationCallbacks</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e">pDeviceMemoryCallbacks</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">physicalDevice</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">preferredLargeHeapBlockSize</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a">preferredSmallHeapBlockSize</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">frameInUseCount</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">pAllocationCallbacks</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e">pDeviceMemoryCallbacks</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a08230f04ae6ccf8a78150a9e829a7156">physicalDevice</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#a8e4714298e3121cdd8b214a1ae7a637a">preferredLargeHeapBlockSize</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html#ab435423d84d5ab26e2c347c51771f90a">preferredSmallHeapBlockSize</a></td><td class="entry"><a class="el" href="struct_vma_allocator_create_info.html">VmaAllocatorCreateInfo</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
|
@ -89,11 +89,14 @@ Public Attributes</h2></td></tr>
|
||||
<tr class="memdesc:ab435423d84d5ab26e2c347c51771f90a"><td class="mdescLeft"> </td><td class="mdescRight">Size of a single memory block to allocate for resources from a small heap <= 512 MB. <a href="#ab435423d84d5ab26e2c347c51771f90a">More...</a><br /></td></tr>
|
||||
<tr class="separator:ab435423d84d5ab26e2c347c51771f90a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6e409087e3be55400d0e4ccbe43c608d"><td class="memItemLeft" align="right" valign="top">const VkAllocationCallbacks * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocator_create_info.html#a6e409087e3be55400d0e4ccbe43c608d">pAllocationCallbacks</a></td></tr>
|
||||
<tr class="memdesc:a6e409087e3be55400d0e4ccbe43c608d"><td class="mdescLeft"> </td><td class="mdescRight">Custom allocation callbacks. <a href="#a6e409087e3be55400d0e4ccbe43c608d">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:a6e409087e3be55400d0e4ccbe43c608d"><td class="mdescLeft"> </td><td class="mdescRight">Custom CPU memory allocation callbacks. <a href="#a6e409087e3be55400d0e4ccbe43c608d">More...</a><br /></td></tr>
|
||||
<tr class="separator:a6e409087e3be55400d0e4ccbe43c608d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:af1380969b5e1ea4c3184a877892d260e"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="struct_vma_device_memory_callbacks.html">VmaDeviceMemoryCallbacks</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocator_create_info.html#af1380969b5e1ea4c3184a877892d260e">pDeviceMemoryCallbacks</a></td></tr>
|
||||
<tr class="memdesc:af1380969b5e1ea4c3184a877892d260e"><td class="mdescLeft"> </td><td class="mdescRight">Informative callbacks for vkAllocateMemory, vkFreeMemory. <a href="#af1380969b5e1ea4c3184a877892d260e">More...</a><br /></td></tr>
|
||||
<tr class="separator:af1380969b5e1ea4c3184a877892d260e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a21ea188dd212b8171cb9ecbed4a2a3a7"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocator_create_info.html#a21ea188dd212b8171cb9ecbed4a2a3a7">frameInUseCount</a></td></tr>
|
||||
<tr class="memdesc:a21ea188dd212b8171cb9ecbed4a2a3a7"><td class="mdescLeft"> </td><td class="mdescRight">Maximum number of additional frames that are in use at the same time as current frame. <a href="#a21ea188dd212b8171cb9ecbed4a2a3a7">More...</a><br /></td></tr>
|
||||
<tr class="separator:a21ea188dd212b8171cb9ecbed4a2a3a7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Description of a Allocator to be created. </p>
|
||||
@ -111,7 +114,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Vulkan device. </p>
|
||||
<p>It must be valid throughout whole lifetime of created Allocator. </p>
|
||||
<p>It must be valid throughout whole lifetime of created allocator. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -129,6 +132,25 @@ Public Attributes</h2></td></tr>
|
||||
|
||||
<p>Flags for created allocator. Use VmaAllocatorFlagBits enum. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a21ea188dd212b8171cb9ecbed4a2a3a7"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a21ea188dd212b8171cb9ecbed4a2a3a7">◆ </a></span>frameInUseCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint32_t VmaAllocatorCreateInfo::frameInUseCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maximum number of additional frames that are in use at the same time as current frame. </p>
|
||||
<p>This value is used only when you make allocations with VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT flag. Such allocation cannot become lost if allocation.lastUseFrameIndex >= allocator.currentFrameIndex - frameInUseCount.</p>
|
||||
<p>For example, if you double-buffer your command buffers, so resources used for rendering in previous frame may still be in use by the GPU at the moment you allocate resources needed for the current frame, set this value to 1.</p>
|
||||
<p>If you want to allow any allocations other than used in the current frame to become lost, set this value to 0. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6e409087e3be55400d0e4ccbe43c608d"></a>
|
||||
@ -143,7 +165,7 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Custom allocation callbacks. </p>
|
||||
<p>Custom CPU memory allocation callbacks. </p>
|
||||
<p>Optional, can be null. When specified, will also be used for all CPU-side memory allocations. </p>
|
||||
|
||||
</div>
|
||||
@ -178,7 +200,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Vulkan physical device. </p>
|
||||
<p>It must be valid throughout whole lifetime of created Allocator. </p>
|
||||
<p>It must be valid throughout whole lifetime of created allocator. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -96,7 +96,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maximum number of allocations that can be moved to different place. </p>
|
||||
<p>Default is UINT32_MAX, which means no limit. </p>
|
||||
<p>Default is <code>UINT32_MAX</code>, which means no limit. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -113,7 +113,7 @@ Public Attributes</h2></td></tr>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maximum total numbers of bytes that can be copied while moving allocations to different places. </p>
|
||||
<p>Default is VK_WHOLE_SIZE, which means no limit. </p>
|
||||
<p>Default is <code>VK_WHOLE_SIZE</code>, which means no limit. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
@ -77,13 +77,13 @@ Public Attributes</h2></td></tr>
|
||||
<tr class="memdesc:a36f9d5df2a10ba2a36b16e126d60572d"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes that have been copied while moving allocations to different places. <a href="#a36f9d5df2a10ba2a36b16e126d60572d">More...</a><br /></td></tr>
|
||||
<tr class="separator:a36f9d5df2a10ba2a36b16e126d60572d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ab0cb9ac0dbc106c77e384ea676422f28"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_defragmentation_stats.html#ab0cb9ac0dbc106c77e384ea676422f28">bytesFreed</a></td></tr>
|
||||
<tr class="memdesc:ab0cb9ac0dbc106c77e384ea676422f28"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes that have been released to the system by freeing empty VkDeviceMemory objects. <a href="#ab0cb9ac0dbc106c77e384ea676422f28">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ab0cb9ac0dbc106c77e384ea676422f28"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes that have been released to the system by freeing empty <code>VkDeviceMemory</code> objects. <a href="#ab0cb9ac0dbc106c77e384ea676422f28">More...</a><br /></td></tr>
|
||||
<tr class="separator:ab0cb9ac0dbc106c77e384ea676422f28"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aefeabf130022008eadd75999478af3f9"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_defragmentation_stats.html#aefeabf130022008eadd75999478af3f9">allocationsMoved</a></td></tr>
|
||||
<tr class="memdesc:aefeabf130022008eadd75999478af3f9"><td class="mdescLeft"> </td><td class="mdescRight">Number of allocations that have been moved to different places. <a href="#aefeabf130022008eadd75999478af3f9">More...</a><br /></td></tr>
|
||||
<tr class="separator:aefeabf130022008eadd75999478af3f9"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a0113f1877904a5d1ee8f409216ff276b"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_defragmentation_stats.html#a0113f1877904a5d1ee8f409216ff276b">deviceMemoryBlocksFreed</a></td></tr>
|
||||
<tr class="memdesc:a0113f1877904a5d1ee8f409216ff276b"><td class="mdescLeft"> </td><td class="mdescRight">Number of empty VkDeviceMemory objects that have been released to the system. <a href="#a0113f1877904a5d1ee8f409216ff276b">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:a0113f1877904a5d1ee8f409216ff276b"><td class="mdescLeft"> </td><td class="mdescRight">Number of empty <code>VkDeviceMemory</code> objects that have been released to the system. <a href="#a0113f1877904a5d1ee8f409216ff276b">More...</a><br /></td></tr>
|
||||
<tr class="separator:a0113f1877904a5d1ee8f409216ff276b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
@ -117,7 +117,7 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Total number of bytes that have been released to the system by freeing empty VkDeviceMemory objects. </p>
|
||||
<p>Total number of bytes that have been released to the system by freeing empty <code>VkDeviceMemory</code> objects. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
@ -149,7 +149,7 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of empty VkDeviceMemory objects that have been released to the system. </p>
|
||||
<p>Number of empty <code>VkDeviceMemory</code> objects that have been released to the system. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
82
docs/html/struct_vma_pool_create_info-members.html
Normal file
82
docs/html/struct_vma_pool_create_info-members.html
Normal file
@ -0,0 +1,82 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: Member List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaPoolCreateInfo Member List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">blockSize</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">flags</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">frameInUseCount</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">maxBlockCount</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">memoryTypeIndex</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">minBlockCount</a></td><td class="entry"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
212
docs/html/struct_vma_pool_create_info.html
Normal file
212
docs/html/struct_vma_pool_create_info.html
Normal file
@ -0,0 +1,212 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: VmaPoolCreateInfo Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="struct_vma_pool_create_info-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaPoolCreateInfo Struct Reference<div class="ingroups"><a class="el" href="group__layer2.html">Layer 2 Allocating Memory</a></div></div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Describes parameter of created <code>VmaPool</code>.
|
||||
<a href="struct_vma_pool_create_info.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <<a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a>></code></p>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
||||
Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:a596fa76b685d3f1f688f84a709a5b319"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#a596fa76b685d3f1f688f84a709a5b319">memoryTypeIndex</a></td></tr>
|
||||
<tr class="memdesc:a596fa76b685d3f1f688f84a709a5b319"><td class="mdescLeft"> </td><td class="mdescRight">Vulkan memory type index to allocate this pool from. <a href="#a596fa76b685d3f1f688f84a709a5b319">More...</a><br /></td></tr>
|
||||
<tr class="separator:a596fa76b685d3f1f688f84a709a5b319"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a8405139f63d078340ae74513a59f5446"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446">flags</a></td></tr>
|
||||
<tr class="memdesc:a8405139f63d078340ae74513a59f5446"><td class="mdescLeft"> </td><td class="mdescRight">Use combination of <code>VmaPoolCreateFlagBits</code>. <a href="#a8405139f63d078340ae74513a59f5446">More...</a><br /></td></tr>
|
||||
<tr class="separator:a8405139f63d078340ae74513a59f5446"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aa4265160536cdb9be821b7686c16c676"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#aa4265160536cdb9be821b7686c16c676">blockSize</a></td></tr>
|
||||
<tr class="memdesc:aa4265160536cdb9be821b7686c16c676"><td class="mdescLeft"> </td><td class="mdescRight">Size of a single <code>VkDeviceMemory</code> block to be allocated as part of this pool, in bytes. <a href="#aa4265160536cdb9be821b7686c16c676">More...</a><br /></td></tr>
|
||||
<tr class="separator:aa4265160536cdb9be821b7686c16c676"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad8006fb803185c0a699d30f3e9a865ae"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#ad8006fb803185c0a699d30f3e9a865ae">minBlockCount</a></td></tr>
|
||||
<tr class="memdesc:ad8006fb803185c0a699d30f3e9a865ae"><td class="mdescLeft"> </td><td class="mdescRight">Minimum number of blocks to be always allocated in this pool, even if they stay empty. <a href="#ad8006fb803185c0a699d30f3e9a865ae">More...</a><br /></td></tr>
|
||||
<tr class="separator:ad8006fb803185c0a699d30f3e9a865ae"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae41142f2834fcdc82baa4883c187b75c"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#ae41142f2834fcdc82baa4883c187b75c">maxBlockCount</a></td></tr>
|
||||
<tr class="memdesc:ae41142f2834fcdc82baa4883c187b75c"><td class="mdescLeft"> </td><td class="mdescRight">Maximum number of blocks that can be allocated in this pool. <a href="#ae41142f2834fcdc82baa4883c187b75c">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae41142f2834fcdc82baa4883c187b75c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9437e43ffbb644dbbf7fc4e50cfad6aa"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa">frameInUseCount</a></td></tr>
|
||||
<tr class="memdesc:a9437e43ffbb644dbbf7fc4e50cfad6aa"><td class="mdescLeft"> </td><td class="mdescRight">Maximum number of additional frames that are in use at the same time as current frame. <a href="#a9437e43ffbb644dbbf7fc4e50cfad6aa">More...</a><br /></td></tr>
|
||||
<tr class="separator:a9437e43ffbb644dbbf7fc4e50cfad6aa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Describes parameter of created <code>VmaPool</code>. </p>
|
||||
</div><h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="aa4265160536cdb9be821b7686c16c676"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aa4265160536cdb9be821b7686c16c676">◆ </a></span>blockSize</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaPoolCreateInfo::blockSize</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Size of a single <code>VkDeviceMemory</code> block to be allocated as part of this pool, in bytes. </p>
|
||||
<p>Optional. Leave 0 to use default. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a8405139f63d078340ae74513a59f5446"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a8405139f63d078340ae74513a59f5446">◆ </a></span>flags</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname"><a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a> VmaPoolCreateInfo::flags</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Use combination of <code>VmaPoolCreateFlagBits</code>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a9437e43ffbb644dbbf7fc4e50cfad6aa"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9437e43ffbb644dbbf7fc4e50cfad6aa">◆ </a></span>frameInUseCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint32_t VmaPoolCreateInfo::frameInUseCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maximum number of additional frames that are in use at the same time as current frame. </p>
|
||||
<p>This value is used only when you make allocations with <code>VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</code> flag. Such allocation cannot become lost if allocation.lastUseFrameIndex >= allocator.currentFrameIndex - frameInUseCount.</p>
|
||||
<p>For example, if you double-buffer your command buffers, so resources used for rendering in previous frame may still be in use by the GPU at the moment you allocate resources needed for the current frame, set this value to 1.</p>
|
||||
<p>If you want to allow any allocations other than used in the current frame to become lost, set this value to 0. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae41142f2834fcdc82baa4883c187b75c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae41142f2834fcdc82baa4883c187b75c">◆ </a></span>maxBlockCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">size_t VmaPoolCreateInfo::maxBlockCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Maximum number of blocks that can be allocated in this pool. </p>
|
||||
<p>Optional. Set to 0 to use <code>SIZE_MAX</code>, which means no limit.</p>
|
||||
<p>Set to same value as minBlockCount to have fixed amount of memory allocated throuout whole lifetime of this pool. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a596fa76b685d3f1f688f84a709a5b319"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a596fa76b685d3f1f688f84a709a5b319">◆ </a></span>memoryTypeIndex</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint32_t VmaPoolCreateInfo::memoryTypeIndex</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Vulkan memory type index to allocate this pool from. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad8006fb803185c0a699d30f3e9a865ae"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad8006fb803185c0a699d30f3e9a865ae">◆ </a></span>minBlockCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">size_t VmaPoolCreateInfo::minBlockCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Minimum number of blocks to be always allocated in this pool, even if they stay empty. </p>
|
||||
<p>Set to 0 to have no preallocated blocks and let the pool be completely empty. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a></li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
80
docs/html/struct_vma_pool_stats-members.html
Normal file
80
docs/html/struct_vma_pool_stats-members.html
Normal file
@ -0,0 +1,80 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: Member List</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaPoolStats Member List</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>This is the complete list of members for <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">allocationCount</a></td><td class="entry"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">size</a></td><td class="entry"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">unusedRangeCount</a></td><td class="entry"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">unusedSize</a></td><td class="entry"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td><td class="entry"></td></tr>
|
||||
</table></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
167
docs/html/struct_vma_pool_stats.html
Normal file
167
docs/html/struct_vma_pool_stats.html
Normal file
@ -0,0 +1,167 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.13"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<title>Vulkan Memory Allocator: VmaPoolStats Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="search/searchdata.js"></script>
|
||||
<script type="text/javascript" src="search/search.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<div id="titlearea">
|
||||
<table cellspacing="0" cellpadding="0">
|
||||
<tbody>
|
||||
<tr style="height: 56px;">
|
||||
<td id="projectalign" style="padding-left: 0.5em;">
|
||||
<div id="projectname">Vulkan Memory Allocator
|
||||
</div>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.13 -->
|
||||
<script type="text/javascript">
|
||||
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
||||
</script>
|
||||
<script type="text/javascript" src="menudata.js"></script>
|
||||
<script type="text/javascript" src="menu.js"></script>
|
||||
<script type="text/javascript">
|
||||
$(function() {
|
||||
initMenu('',true,false,'search.php','Search');
|
||||
$(document).ready(function() { init_search(); });
|
||||
});
|
||||
</script>
|
||||
<div id="main-nav"></div>
|
||||
<!-- window showing the filter options -->
|
||||
<div id="MSearchSelectWindow"
|
||||
onmouseover="return searchBox.OnSearchSelectShow()"
|
||||
onmouseout="return searchBox.OnSearchSelectHide()"
|
||||
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
||||
</div>
|
||||
|
||||
<!-- iframe showing the search results (closed by default) -->
|
||||
<div id="MSearchResultsWindow">
|
||||
<iframe src="javascript:void(0)" frameborder="0"
|
||||
name="MSearchResults" id="MSearchResults">
|
||||
</iframe>
|
||||
</div>
|
||||
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-attribs">Public Attributes</a> |
|
||||
<a href="struct_vma_pool_stats-members.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">VmaPoolStats Struct Reference<div class="ingroups"><a class="el" href="group__layer2.html">Layer 2 Allocating Memory</a></div></div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Describes parameter of existing VmaPool.
|
||||
<a href="struct_vma_pool_stats.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <<a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a>></code></p>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
||||
Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:a326807b2de2b0931cee4ed9a5f2e420c"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html#a326807b2de2b0931cee4ed9a5f2e420c">size</a></td></tr>
|
||||
<tr class="memdesc:a326807b2de2b0931cee4ed9a5f2e420c"><td class="mdescLeft"> </td><td class="mdescRight">Total amount of <code>VkDeviceMemory</code> allocated from Vulkan for this pool, in bytes. <a href="#a326807b2de2b0931cee4ed9a5f2e420c">More...</a><br /></td></tr>
|
||||
<tr class="separator:a326807b2de2b0931cee4ed9a5f2e420c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad7c54874724fce7b06aba526202d82a8"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html#ad7c54874724fce7b06aba526202d82a8">unusedSize</a></td></tr>
|
||||
<tr class="memdesc:ad7c54874724fce7b06aba526202d82a8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes in the pool not used by any <code>VmaAllocation</code>. <a href="#ad7c54874724fce7b06aba526202d82a8">More...</a><br /></td></tr>
|
||||
<tr class="separator:ad7c54874724fce7b06aba526202d82a8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad1924eb54fffa45e9e0e65670c8fe5eb"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html#ad1924eb54fffa45e9e0e65670c8fe5eb">allocationCount</a></td></tr>
|
||||
<tr class="memdesc:ad1924eb54fffa45e9e0e65670c8fe5eb"><td class="mdescLeft"> </td><td class="mdescRight">Number of VmaAllocation objects created from this pool that were not destroyed or lost. <a href="#ad1924eb54fffa45e9e0e65670c8fe5eb">More...</a><br /></td></tr>
|
||||
<tr class="separator:ad1924eb54fffa45e9e0e65670c8fe5eb"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae4f3546ffa4d1e598b64d8e6134854f4"><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html#ae4f3546ffa4d1e598b64d8e6134854f4">unusedRangeCount</a></td></tr>
|
||||
<tr class="memdesc:ae4f3546ffa4d1e598b64d8e6134854f4"><td class="mdescLeft"> </td><td class="mdescRight">Number of continuous memory ranges in the pool not used by any <code>VmaAllocation</code>. <a href="#ae4f3546ffa4d1e598b64d8e6134854f4">More...</a><br /></td></tr>
|
||||
<tr class="separator:ae4f3546ffa4d1e598b64d8e6134854f4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Describes parameter of existing VmaPool. </p>
|
||||
</div><h2 class="groupheader">Member Data Documentation</h2>
|
||||
<a id="ad1924eb54fffa45e9e0e65670c8fe5eb"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad1924eb54fffa45e9e0e65670c8fe5eb">◆ </a></span>allocationCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">size_t VmaPoolStats::allocationCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of VmaAllocation objects created from this pool that were not destroyed or lost. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a326807b2de2b0931cee4ed9a5f2e420c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a326807b2de2b0931cee4ed9a5f2e420c">◆ </a></span>size</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaPoolStats::size</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Total amount of <code>VkDeviceMemory</code> allocated from Vulkan for this pool, in bytes. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ae4f3546ffa4d1e598b64d8e6134854f4"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ae4f3546ffa4d1e598b64d8e6134854f4">◆ </a></span>unusedRangeCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">size_t VmaPoolStats::unusedRangeCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of continuous memory ranges in the pool not used by any <code>VmaAllocation</code>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="ad7c54874724fce7b06aba526202d82a8"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#ad7c54874724fce7b06aba526202d82a8">◆ </a></span>unusedSize</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaPoolStats::unusedSize</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Total number of bytes in the pool not used by any <code>VmaAllocation</code>. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li><a class="el" href="vk__mem__alloc_8h_source.html">vk_mem_alloc.h</a></li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
Generated by  <a href="http://www.doxygen.org/index.html">
|
||||
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
||||
</a> 1.8.13
|
||||
</small></address>
|
||||
</body>
|
||||
</html>
|
@ -66,10 +66,10 @@ $(function() {
|
||||
<p>This is the complete list of members for <a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a>, including all inherited members.</p>
|
||||
<table class="directory">
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0">AllocationCount</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead">SuballocationCount</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b">SuballocationSizeAvg</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271">SuballocationSizeMax</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b">SuballocationSizeMin</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21">AllocationSizeAvg</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c">AllocationSizeMax</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580">AllocationSizeMin</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9">BlockCount</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d">UnusedBytes</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr class="even"><td class="entry"><a class="el" href="struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6">UnusedRangeCount</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
<tr><td class="entry"><a class="el" href="struct_vma_stat_info.html#a88ad9bdc2b3a98964a4d0c338c0c9060">UnusedRangeSizeAvg</a></td><td class="entry"><a class="el" href="struct_vma_stat_info.html">VmaStatInfo</a></td><td class="entry"></td></tr>
|
||||
|
@ -70,22 +70,27 @@ $(function() {
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
|
||||
Public Attributes</h2></td></tr>
|
||||
<tr class="memitem:a9af0d9809007cf4a0009d324b2b8bbc9"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a9af0d9809007cf4a0009d324b2b8bbc9">BlockCount</a></td></tr>
|
||||
<tr class="memdesc:a9af0d9809007cf4a0009d324b2b8bbc9"><td class="mdescLeft"> </td><td class="mdescRight">Number of <code>VkDeviceMemory</code> Vulkan memory blocks allocated. <a href="#a9af0d9809007cf4a0009d324b2b8bbc9">More...</a><br /></td></tr>
|
||||
<tr class="separator:a9af0d9809007cf4a0009d324b2b8bbc9"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a240402222ac6777e4079653c5d542cb0"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a240402222ac6777e4079653c5d542cb0">AllocationCount</a></td></tr>
|
||||
<tr class="memdesc:a240402222ac6777e4079653c5d542cb0"><td class="mdescLeft"> </td><td class="mdescRight">Number of <code>VmaAllocation</code> allocation objects allocated. <a href="#a240402222ac6777e4079653c5d542cb0">More...</a><br /></td></tr>
|
||||
<tr class="separator:a240402222ac6777e4079653c5d542cb0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a09fb04b5491661c2e838d098d51bcead"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a09fb04b5491661c2e838d098d51bcead">SuballocationCount</a></td></tr>
|
||||
<tr class="separator:a09fb04b5491661c2e838d098d51bcead"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a56c4fb4dba646479180b601854cde2a6"><td class="memItemLeft" align="right" valign="top">uint32_t </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a56c4fb4dba646479180b601854cde2a6">UnusedRangeCount</a></td></tr>
|
||||
<tr class="memdesc:a56c4fb4dba646479180b601854cde2a6"><td class="mdescLeft"> </td><td class="mdescRight">Number of free ranges of memory between allocations. <a href="#a56c4fb4dba646479180b601854cde2a6">More...</a><br /></td></tr>
|
||||
<tr class="separator:a56c4fb4dba646479180b601854cde2a6"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a86f82cb9cffd456b9da63eaf26c9ff04"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a86f82cb9cffd456b9da63eaf26c9ff04">UsedBytes</a></td></tr>
|
||||
<tr class="memdesc:a86f82cb9cffd456b9da63eaf26c9ff04"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes occupied by all allocations. <a href="#a86f82cb9cffd456b9da63eaf26c9ff04">More...</a><br /></td></tr>
|
||||
<tr class="separator:a86f82cb9cffd456b9da63eaf26c9ff04"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a394d2aef4348cb58abf73764804b4f2d"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a394d2aef4348cb58abf73764804b4f2d">UnusedBytes</a></td></tr>
|
||||
<tr class="memdesc:a394d2aef4348cb58abf73764804b4f2d"><td class="mdescLeft"> </td><td class="mdescRight">Total number of bytes occupied by unused ranges. <a href="#a394d2aef4348cb58abf73764804b4f2d">More...</a><br /></td></tr>
|
||||
<tr class="separator:a394d2aef4348cb58abf73764804b4f2d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a9dc0b50fab2f10ab99366b79424bf14b"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a9dc0b50fab2f10ab99366b79424bf14b">SuballocationSizeMin</a></td></tr>
|
||||
<tr class="separator:a9dc0b50fab2f10ab99366b79424bf14b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:abb6c3e160a136787f474a18a8264d83b"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#abb6c3e160a136787f474a18a8264d83b">SuballocationSizeAvg</a></td></tr>
|
||||
<tr class="separator:abb6c3e160a136787f474a18a8264d83b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a6be7faf2b7fcff5a9bc017d90aed9271"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a6be7faf2b7fcff5a9bc017d90aed9271">SuballocationSizeMax</a></td></tr>
|
||||
<tr class="separator:a6be7faf2b7fcff5a9bc017d90aed9271"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a61a834fa78bcf41fb5a53b286b2e1580"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a61a834fa78bcf41fb5a53b286b2e1580">AllocationSizeMin</a></td></tr>
|
||||
<tr class="separator:a61a834fa78bcf41fb5a53b286b2e1580"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a0019702e4f4ea4ed824aebf250841f21"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a0019702e4f4ea4ed824aebf250841f21">AllocationSizeAvg</a></td></tr>
|
||||
<tr class="separator:a0019702e4f4ea4ed824aebf250841f21"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:aba2ef16e2ac09b97305c58a168a3805c"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#aba2ef16e2ac09b97305c58a168a3805c">AllocationSizeMax</a></td></tr>
|
||||
<tr class="separator:aba2ef16e2ac09b97305c58a168a3805c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a07c508f42a4d3424bd0c259784a7f2d6"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a07c508f42a4d3424bd0c259784a7f2d6">UnusedRangeSizeMin</a></td></tr>
|
||||
<tr class="separator:a07c508f42a4d3424bd0c259784a7f2d6"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a88ad9bdc2b3a98964a4d0c338c0c9060"><td class="memItemLeft" align="right" valign="top">VkDeviceSize </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stat_info.html#a88ad9bdc2b3a98964a4d0c338c0c9060">UnusedRangeSizeAvg</a></td></tr>
|
||||
@ -106,62 +111,66 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of <code>VmaAllocation</code> allocation objects allocated. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a09fb04b5491661c2e838d098d51bcead"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a09fb04b5491661c2e838d098d51bcead">◆ </a></span>SuballocationCount</h2>
|
||||
<a id="a0019702e4f4ea4ed824aebf250841f21"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a0019702e4f4ea4ed824aebf250841f21">◆ </a></span>AllocationSizeAvg</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">uint32_t VmaStatInfo::SuballocationCount</td>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::AllocationSizeAvg</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="abb6c3e160a136787f474a18a8264d83b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#abb6c3e160a136787f474a18a8264d83b">◆ </a></span>SuballocationSizeAvg</h2>
|
||||
<a id="aba2ef16e2ac09b97305c58a168a3805c"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#aba2ef16e2ac09b97305c58a168a3805c">◆ </a></span>AllocationSizeMax</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::SuballocationSizeAvg</td>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::AllocationSizeMax</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a6be7faf2b7fcff5a9bc017d90aed9271"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a6be7faf2b7fcff5a9bc017d90aed9271">◆ </a></span>SuballocationSizeMax</h2>
|
||||
<a id="a61a834fa78bcf41fb5a53b286b2e1580"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a61a834fa78bcf41fb5a53b286b2e1580">◆ </a></span>AllocationSizeMin</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::SuballocationSizeMax</td>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::AllocationSizeMin</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a9dc0b50fab2f10ab99366b79424bf14b"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9dc0b50fab2f10ab99366b79424bf14b">◆ </a></span>SuballocationSizeMin</h2>
|
||||
<a id="a9af0d9809007cf4a0009d324b2b8bbc9"></a>
|
||||
<h2 class="memtitle"><span class="permalink"><a href="#a9af0d9809007cf4a0009d324b2b8bbc9">◆ </a></span>BlockCount</h2>
|
||||
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">VkDeviceSize VmaStatInfo::SuballocationSizeMin</td>
|
||||
<td class="memname">uint32_t VmaStatInfo::BlockCount</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of <code>VkDeviceMemory</code> Vulkan memory blocks allocated. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a394d2aef4348cb58abf73764804b4f2d"></a>
|
||||
@ -176,6 +185,8 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Total number of bytes occupied by unused ranges. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a56c4fb4dba646479180b601854cde2a6"></a>
|
||||
@ -190,6 +201,8 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Number of free ranges of memory between allocations. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a id="a88ad9bdc2b3a98964a4d0c338c0c9060"></a>
|
||||
@ -246,6 +259,8 @@ Public Attributes</h2></td></tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Total number of bytes occupied by all allocations. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
|
@ -85,10 +85,16 @@ Classes</h2></td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_stats.html">VmaStats</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">General statistics from current state of Allocator. <a href="struct_vma_stats.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a></td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of created <code>VmaPool</code>. <a href="struct_vma_pool_create_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of existing VmaPool. <a href="struct_vma_pool_stats.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="struct_vma_allocation_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="struct_vma_allocation_info.html#details">More...</a><br /></td></tr>
|
||||
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a></td></tr>
|
||||
<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. <a href="struct_vma_defragmentation_info.html#details">More...</a><br /></td></tr>
|
||||
@ -125,15 +131,26 @@ Typedefs</h2></td></tr>
|
||||
<tr class="separator:ga810b009a788ee8aac72a25b42ffbe31c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gad63b2113c0bfdbeade1cb498f5a8580d"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gaa5846affa1e9da3800e3e78fae2305cc">VmaMemoryUsage</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gad63b2113c0bfdbeade1cb498f5a8580d">VmaMemoryUsage</a></td></tr>
|
||||
<tr class="separator:gad63b2113c0bfdbeade1cb498f5a8580d"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b">VmaMemoryRequirementFlagBits</a></td></tr>
|
||||
<tr class="memdesc:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. <a href="group__layer1.html#gaecb50b7fdb759cc4c4346c40819bf00b">More...</a><br /></td></tr>
|
||||
<tr class="separator:gaecb50b7fdb759cc4c4346c40819bf00b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gab96b90d34cd1bd0f340fc48f8ca2664a"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gab96b90d34cd1bd0f340fc48f8ca2664a">VmaMemoryRequirementFlags</a></td></tr>
|
||||
<tr class="separator:gab96b90d34cd1bd0f340fc48f8ca2664a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae9ee98bebd6e474aa0ef679e10f1d8ca"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gae9ee98bebd6e474aa0ef679e10f1d8ca">VmaMemoryRequirements</a></td></tr>
|
||||
<tr class="separator:gae9ee98bebd6e474aa0ef679e10f1d8ca"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4">VmaAllocationCreateFlagBits</a></td></tr>
|
||||
<tr class="memdesc:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. <a href="group__layer1.html#gabf6bf6748c7a9fe7ce5b7835c0f56af4">More...</a><br /></td></tr>
|
||||
<tr class="separator:gabf6bf6748c7a9fe7ce5b7835c0f56af4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5225e5e11f8376f6a31a1791f3d6e817"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#ga5225e5e11f8376f6a31a1791f3d6e817">VmaAllocationCreateFlags</a></td></tr>
|
||||
<tr class="separator:ga5225e5e11f8376f6a31a1791f3d6e817"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga86c44f9950b40d50088ed93a17870a7a"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#ga86c44f9950b40d50088ed93a17870a7a">VmaAllocationCreateInfo</a></td></tr>
|
||||
<tr class="separator:ga86c44f9950b40d50088ed93a17870a7a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga8f93195158e0e2ac80ca352064e71c1f"><td class="memItemLeft" align="right" valign="top">typedef enum <a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f">VmaPoolCreateFlagBits</a></td></tr>
|
||||
<tr class="memdesc:ga8f93195158e0e2ac80ca352064e71c1f"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. <a href="group__layer2.html#ga8f93195158e0e2ac80ca352064e71c1f">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga8f93195158e0e2ac80ca352064e71c1f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga2770e325ea42e087c1b91fdf46d0292a"><td class="memItemLeft" align="right" valign="top">typedef VkFlags </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga2770e325ea42e087c1b91fdf46d0292a">VmaPoolCreateFlags</a></td></tr>
|
||||
<tr class="separator:ga2770e325ea42e087c1b91fdf46d0292a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga211706e9348dcee25a843ed4ea69bce7"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7">VmaPoolCreateInfo</a></td></tr>
|
||||
<tr class="memdesc:ga211706e9348dcee25a843ed4ea69bce7"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of created <code>VmaPool</code>. <a href="group__layer2.html#ga211706e9348dcee25a843ed4ea69bce7">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga211706e9348dcee25a843ed4ea69bce7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga2e5612d871d64c5624087b837a338c34"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga2e5612d871d64c5624087b837a338c34">VmaPoolStats</a></td></tr>
|
||||
<tr class="memdesc:ga2e5612d871d64c5624087b837a338c34"><td class="mdescLeft"> </td><td class="mdescRight">Describes parameter of existing VmaPool. <a href="group__layer2.html#ga2e5612d871d64c5624087b837a338c34">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga2e5612d871d64c5624087b837a338c34"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga795e6ff02a21d5486c0565f403dd9255"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">VmaAllocationInfo</a></td></tr>
|
||||
<tr class="memdesc:ga795e6ff02a21d5486c0565f403dd9255"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of VmaAllocation objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga795e6ff02a21d5486c0565f403dd9255"><td class="mdescLeft"> </td><td class="mdescRight">Parameters of <code>VmaAllocation</code> objects, that can be retrieved using function <a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b" title="Returns current information about specified allocation. ">vmaGetAllocationInfo()</a>. <a href="group__layer2.html#ga795e6ff02a21d5486c0565f403dd9255">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga795e6ff02a21d5486c0565f403dd9255"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae67f8573a0cf20f16f0a1eecbca566a0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae67f8573a0cf20f16f0a1eecbca566a0">VmaDefragmentationInfo</a></td></tr>
|
||||
<tr class="memdesc:gae67f8573a0cf20f16f0a1eecbca566a0"><td class="mdescLeft"> </td><td class="mdescRight">Optional configuration parameters to be passed to function <a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb" title="Compacts memory by moving allocations. ">vmaDefragment()</a>. <a href="group__layer2.html#gae67f8573a0cf20f16f0a1eecbca566a0">More...</a><br /></td></tr>
|
||||
@ -160,13 +177,24 @@ Enumerations</h2></td></tr>
|
||||
<br />
|
||||
}</td></tr>
|
||||
<tr class="separator:gaa5846affa1e9da3800e3e78fae2305cc"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">VmaMemoryRequirementFlagBits</a> { <a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda9831d98a698347b0cd1594db6a29e8ed">VMA_MEMORY_REQUIREMENT_OWN_MEMORY_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae1a503c29619c0c9885521d371e9b4c4">VMA_MEMORY_REQUIREMENT_NEVER_ALLOCATE_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619edae75c9dde227c9d4f64693b1e004106dc">VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT</a> = 0x00000004,
|
||||
<a class="el" href="group__layer1.html#ggadec54ccdb0fd3901e89ac6d38c2619eda11f849416519c61bebd90e2e7ecbab21">VMA_MEMORY_REQUIREMENT_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
}<tr class="memdesc:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_memory_requirements.html#a53c9ea8c3cbcc12dddbe9ae23bb85eb6">VmaMemoryRequirements::flags</a>. <a href="group__layer1.html#gadec54ccdb0fd3901e89ac6d38c2619ed">More...</a><br /></td></tr>
|
||||
<tr class="memitem:gad9889c10c798b040d59c92f257cae597"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">VmaAllocationCreateFlagBits</a> { <br />
|
||||
  <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a965e035b69f8728b317803ef2d523aa4">VMA_ALLOCATION_CREATE_OWN_MEMORY_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a89759603401014eb325eb22a3839f2ff">VMA_ALLOCATION_CREATE_NEVER_ALLOCATE_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae443691ef3d077c0dc3de5576ac4c312">VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT</a> = 0x00000004,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a5f436af6c8fe8540573a6d22627a6fd2">VMA_ALLOCATION_CREATE_CAN_BECOME_LOST_BIT</a> = 0x00000008,
|
||||
<br />
|
||||
  <a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597a68686d0ce9beb0d4d1b9f2b8b1389a7e">VMA_ALLOCATION_CREATE_CAN_MAKE_OTHER_LOST_BIT</a> = 0x00000010,
|
||||
<a class="el" href="group__layer1.html#ggad9889c10c798b040d59c92f257cae597ae5633ec569f4899cf8f29e7385b2f882">VMA_ALLOCATION_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
<br />
|
||||
}<tr class="memdesc:gad9889c10c798b040d59c92f257cae597"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_allocation_create_info.html#add09658ac14fe290ace25470ddd6d41b" title="Use VmaAllocationCreateFlagBits enum. ">VmaAllocationCreateInfo::flags</a>. <a href="group__layer1.html#gad9889c10c798b040d59c92f257cae597">More...</a><br /></td></tr>
|
||||
</td></tr>
|
||||
<tr class="separator:gadec54ccdb0fd3901e89ac6d38c2619ed"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="separator:gad9889c10c798b040d59c92f257cae597"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">VmaPoolCreateFlagBits</a> { <a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a918441f7b40dca90481b114f5d224fe9">VMA_POOL_CREATE_PERSISTENT_MAP_BIT</a> = 0x00000001,
|
||||
<a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a9f1a499508a8edb4e8ba40aa0290a3d2">VMA_POOL_CREATE_IGNORE_BUFFER_IMAGE_GRANULARITY_BIT</a> = 0x00000002,
|
||||
<a class="el" href="group__layer2.html#gga9a7c45f9c863695d98c83fa5ac940fe7a1c7312bea9ea246846b9054fd6bd6aec">VMA_POOL_CREATE_FLAG_BITS_MAX_ENUM</a> = 0x7FFFFFFF
|
||||
}<tr class="memdesc:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="mdescLeft"> </td><td class="mdescRight">Flags to be passed as <a class="el" href="struct_vma_pool_create_info.html#a8405139f63d078340ae74513a59f5446" title="Use combination of VmaPoolCreateFlagBits. ">VmaPoolCreateInfo::flags</a>. <a href="group__layer2.html#ga9a7c45f9c863695d98c83fa5ac940fe7">More...</a><br /></td></tr>
|
||||
</td></tr>
|
||||
<tr class="separator:ga9a7c45f9c863695d98c83fa5ac940fe7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
||||
Functions</h2></td></tr>
|
||||
@ -183,6 +211,9 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:ga8701444752eb5de4464adb5a2b514bca"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#ga8701444752eb5de4464adb5a2b514bca">vmaGetMemoryTypeProperties</a> (VmaAllocator allocator, uint32_t memoryTypeIndex, VkMemoryPropertyFlags *pFlags)</td></tr>
|
||||
<tr class="memdesc:ga8701444752eb5de4464adb5a2b514bca"><td class="mdescLeft"> </td><td class="mdescRight">Given Memory Type Index, returns Property Flags of this memory type. <a href="group__general.html#ga8701444752eb5de4464adb5a2b514bca">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga8701444752eb5de4464adb5a2b514bca"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236">vmaSetCurrentFrameIndex</a> (VmaAllocator allocator, uint32_t frameIndex)</td></tr>
|
||||
<tr class="memdesc:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="mdescLeft"> </td><td class="mdescRight">Sets index of the current frame. <a href="group__general.html#gade56bf8dc9f5a5eaddf5f119ed525236">More...</a><br /></td></tr>
|
||||
<tr class="separator:gade56bf8dc9f5a5eaddf5f119ed525236"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga333b61c1788cb23559177531e6a93ca3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#ga333b61c1788cb23559177531e6a93ca3">vmaCalculateStats</a> (VmaAllocator allocator, <a class="el" href="struct_vma_stats.html">VmaStats</a> *pStats)</td></tr>
|
||||
<tr class="memdesc:ga333b61c1788cb23559177531e6a93ca3"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves statistics from current state of the Allocator. <a href="group__general.html#ga333b61c1788cb23559177531e6a93ca3">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga333b61c1788cb23559177531e6a93ca3"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
@ -191,18 +222,30 @@ Functions</h2></td></tr>
|
||||
<tr class="separator:gaa4fee7eb5253377599ef4fd38c93c2a0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga3104eb30d8122c84dd8541063f145288"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__general.html#ga3104eb30d8122c84dd8541063f145288">vmaFreeStatsString</a> (VmaAllocator allocator, char *pStatsString)</td></tr>
|
||||
<tr class="separator:ga3104eb30d8122c84dd8541063f145288"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gadf80663373e94bcef382f17534b8694e"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gadf80663373e94bcef382f17534b8694e">vmaFindMemoryTypeIndex</a> (VmaAllocator allocator, uint32_t memoryTypeBits, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, uint32_t *pMemoryTypeIndex)</td></tr>
|
||||
<tr class="separator:gadf80663373e94bcef382f17534b8694e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga1a7d45920877a53e9a8fbefd6a536119"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119">vmaAllocateMemory</a> (VmaAllocator allocator, const VkMemoryRequirements *pVkMemoryRequirements, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pVmaMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga1a7d45920877a53e9a8fbefd6a536119"><td class="mdescLeft"> </td><td class="mdescRight">General purpose memory allocation. <a href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga1a7d45920877a53e9a8fbefd6a536119"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga3536b4da2a2744dc3f3f138be555af02"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer</a> (VmaAllocator allocator, VkBuffer buffer, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga3536b4da2a2744dc3f3f138be555af02"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga801f98c24eb928642742bb1e5615e86e"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e">vmaAllocateMemoryForImage</a> (VmaAllocator allocator, VkImage image, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga801f98c24eb928642742bb1e5615e86e"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>. <a href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga801f98c24eb928642742bb1e5615e86e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gaef15a94b58fbcb0fe706d5720e84a74a"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer1.html#gaef15a94b58fbcb0fe706d5720e84a74a">vmaFindMemoryTypeIndex</a> (VmaAllocator allocator, uint32_t memoryTypeBits, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, uint32_t *pMemoryTypeIndex)</td></tr>
|
||||
<tr class="separator:gaef15a94b58fbcb0fe706d5720e84a74a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50">vmaCreatePool</a> (VmaAllocator allocator, const <a class="el" href="struct_vma_pool_create_info.html">VmaPoolCreateInfo</a> *pCreateInfo, VmaPool *pPool)</td></tr>
|
||||
<tr class="memdesc:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="mdescLeft"> </td><td class="mdescRight">Allocates Vulkan device memory and creates <code>VmaPool</code> object. <a href="group__layer2.html#ga5c8770ded7c59c8caac6de0c2cb00b50">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga5c8770ded7c59c8caac6de0c2cb00b50"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga5485779c8f1948238fc4e92232fa65e1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1">vmaDestroyPool</a> (VmaAllocator allocator, VmaPool pool)</td></tr>
|
||||
<tr class="memdesc:ga5485779c8f1948238fc4e92232fa65e1"><td class="mdescLeft"> </td><td class="mdescRight">Destroys VmaPool object and frees Vulkan device memory. <a href="group__layer2.html#ga5485779c8f1948238fc4e92232fa65e1">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga5485779c8f1948238fc4e92232fa65e1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae8bf76997b234ef68aad922616df4153"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae8bf76997b234ef68aad922616df4153">vmaGetPoolStats</a> (VmaAllocator allocator, VmaPool pool, <a class="el" href="struct_vma_pool_stats.html">VmaPoolStats</a> *pPoolStats)</td></tr>
|
||||
<tr class="memdesc:gae8bf76997b234ef68aad922616df4153"><td class="mdescLeft"> </td><td class="mdescRight">Retrieves statistics of existing VmaPool object. <a href="group__layer2.html#gae8bf76997b234ef68aad922616df4153">More...</a><br /></td></tr>
|
||||
<tr class="separator:gae8bf76997b234ef68aad922616df4153"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga736bd6cbda886f36c891727e73bd4024"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga736bd6cbda886f36c891727e73bd4024">vmaMakePoolAllocationsLost</a> (VmaAllocator allocator, VmaPool pool, size_t *pLostAllocationCount)</td></tr>
|
||||
<tr class="memdesc:ga736bd6cbda886f36c891727e73bd4024"><td class="mdescLeft"> </td><td class="mdescRight">Marks all allocations in given pool as lost if they are not used in current frame or <a class="el" href="struct_vma_pool_create_info.html#a9437e43ffbb644dbbf7fc4e50cfad6aa" title="Maximum number of additional frames that are in use at the same time as current frame. ">VmaPoolCreateInfo::frameInUseCount</a> back from now. <a href="group__layer2.html#ga736bd6cbda886f36c891727e73bd4024">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga736bd6cbda886f36c891727e73bd4024"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8">vmaAllocateMemory</a> (VmaAllocator allocator, const VkMemoryRequirements *pVkMemoryRequirements, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="mdescLeft"> </td><td class="mdescRight">General purpose memory allocation. <a href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8">More...</a><br /></td></tr>
|
||||
<tr class="separator:gabf28077dbf82d0908b8acbe8ee8dd9b8"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga7fdf64415b6c3d83c454f28d2c53df7b"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer</a> (VmaAllocator allocator, VkBuffer buffer, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga7fdf64415b6c3d83c454f28d2c53df7b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga0faa3f9e5fb233d29d1e00390650febb"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb">vmaAllocateMemoryForImage</a> (VmaAllocator allocator, VkImage image, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pCreateInfo, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga0faa3f9e5fb233d29d1e00390650febb"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>. <a href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga0faa3f9e5fb233d29d1e00390650febb"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">vmaFreeMemory</a> (VmaAllocator allocator, VmaAllocation allocation)</td></tr>
|
||||
<tr class="memdesc:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="mdescLeft"> </td><td class="mdescRight">Frees memory previously allocated using <a class="el" href="group__layer2.html#ga1a7d45920877a53e9a8fbefd6a536119" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga3536b4da2a2744dc3f3f138be555af02">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga801f98c24eb928642742bb1e5615e86e" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. <a href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="mdescLeft"> </td><td class="mdescRight">Frees memory previously allocated using <a class="el" href="group__layer2.html#gabf28077dbf82d0908b8acbe8ee8dd9b8" title="General purpose memory allocation. ">vmaAllocateMemory()</a>, <a class="el" href="group__layer2.html#ga7fdf64415b6c3d83c454f28d2c53df7b">vmaAllocateMemoryForBuffer()</a>, or <a class="el" href="group__layer2.html#ga0faa3f9e5fb233d29d1e00390650febb" title="Function similar to vmaAllocateMemoryForBuffer(). ">vmaAllocateMemoryForImage()</a>. <a href="group__layer2.html#ga11f0fbc034fa81a4efedd73d61ce7568">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga11f0fbc034fa81a4efedd73d61ce7568"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga86dd08aba8633bfa4ad0df2e76481d8b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b">vmaGetAllocationInfo</a> (VmaAllocator allocator, VmaAllocation allocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga86dd08aba8633bfa4ad0df2e76481d8b"><td class="mdescLeft"> </td><td class="mdescRight">Returns current information about specified allocation. <a href="group__layer2.html#ga86dd08aba8633bfa4ad0df2e76481d8b">More...</a><br /></td></tr>
|
||||
@ -210,26 +253,29 @@ Functions</h2></td></tr>
|
||||
<tr class="memitem:gaf9147d31ffc11d62fc187bde283ed14f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f">vmaSetAllocationUserData</a> (VmaAllocator allocator, VmaAllocation allocation, void *pUserData)</td></tr>
|
||||
<tr class="memdesc:gaf9147d31ffc11d62fc187bde283ed14f"><td class="mdescLeft"> </td><td class="mdescRight">Sets pUserData in given allocation to new value. <a href="group__layer2.html#gaf9147d31ffc11d62fc187bde283ed14f">More...</a><br /></td></tr>
|
||||
<tr class="separator:gaf9147d31ffc11d62fc187bde283ed14f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae5c9657d9e94756269145b01c05d16f1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gae5c9657d9e94756269145b01c05d16f1">vmaCreateLostAllocation</a> (VmaAllocator allocator, VmaAllocation *pAllocation)</td></tr>
|
||||
<tr class="memdesc:gae5c9657d9e94756269145b01c05d16f1"><td class="mdescLeft"> </td><td class="mdescRight">Creates new allocation that is in lost state from the beginning. <a href="group__layer2.html#gae5c9657d9e94756269145b01c05d16f1">More...</a><br /></td></tr>
|
||||
<tr class="separator:gae5c9657d9e94756269145b01c05d16f1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gad5bd1243512d099706de88168992f069"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#gad5bd1243512d099706de88168992f069">vmaMapMemory</a> (VmaAllocator allocator, VmaAllocation allocation, void **ppData)</td></tr>
|
||||
<tr class="separator:gad5bd1243512d099706de88168992f069"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga9bc268595cb33f6ec4d519cfce81ff45"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga9bc268595cb33f6ec4d519cfce81ff45">vmaUnmapMemory</a> (VmaAllocator allocator, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:ga9bc268595cb33f6ec4d519cfce81ff45"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga26b87244491c1fe77f11fe9ab5779c27"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27">vmaUnmapPersistentlyMappedMemory</a> (VmaAllocator allocator)</td></tr>
|
||||
<tr class="memdesc:ga26b87244491c1fe77f11fe9ab5779c27"><td class="mdescLeft"> </td><td class="mdescRight">Unmaps persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. <a href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga26b87244491c1fe77f11fe9ab5779c27"><td class="mdescLeft"> </td><td class="mdescRight">Unmaps persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. <a href="group__layer2.html#ga26b87244491c1fe77f11fe9ab5779c27">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga26b87244491c1fe77f11fe9ab5779c27"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga03366170bb8e186605518d2f5d65b85a"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a">vmaMapPersistentlyMappedMemory</a> (VmaAllocator allocator)</td></tr>
|
||||
<tr class="memdesc:ga03366170bb8e186605518d2f5d65b85a"><td class="mdescLeft"> </td><td class="mdescRight">Maps back persistently mapped memory of types that is HOST_COHERENT and DEVICE_LOCAL. <a href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a">More...</a><br /></td></tr>
|
||||
<tr class="memdesc:ga03366170bb8e186605518d2f5d65b85a"><td class="mdescLeft"> </td><td class="mdescRight">Maps back persistently mapped memory of types that are <code>HOST_COHERENT</code> and <code>DEVICE_LOCAL</code>. <a href="group__layer2.html#ga03366170bb8e186605518d2f5d65b85a">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga03366170bb8e186605518d2f5d65b85a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga6aced90fcc7b39882b6654a740a0b9bb"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb">vmaDefragment</a> (VmaAllocator allocator, VmaAllocation *pAllocations, size_t allocationCount, VkBool32 *pAllocationsChanged, const <a class="el" href="struct_vma_defragmentation_info.html">VmaDefragmentationInfo</a> *pDefragmentationInfo, <a class="el" href="struct_vma_defragmentation_stats.html">VmaDefragmentationStats</a> *pDefragmentationStats)</td></tr>
|
||||
<tr class="memdesc:ga6aced90fcc7b39882b6654a740a0b9bb"><td class="mdescLeft"> </td><td class="mdescRight">Compacts memory by moving allocations. <a href="group__layer2.html#ga6aced90fcc7b39882b6654a740a0b9bb">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga6aced90fcc7b39882b6654a740a0b9bb"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga2f711e32e95cf9bf8dff4917230c2e9b"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer</a> (VmaAllocator allocator, const VkBufferCreateInfo *pCreateInfo, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VkBuffer *pBuffer, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:ga2f711e32e95cf9bf8dff4917230c2e9b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gac72ee55598617e8eecca384e746bab51"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer</a> (VmaAllocator allocator, const VkBufferCreateInfo *pBufferCreateInfo, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, VkBuffer *pBuffer, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="separator:gac72ee55598617e8eecca384e746bab51"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga0d9f4e4ba5bf9aab1f1c746387753d77"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga0d9f4e4ba5bf9aab1f1c746387753d77">vmaDestroyBuffer</a> (VmaAllocator allocator, VkBuffer buffer, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:ga0d9f4e4ba5bf9aab1f1c746387753d77"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa">vmaCreateImage</a> (VmaAllocator allocator, const VkImageCreateInfo *pCreateInfo, const <a class="el" href="struct_vma_memory_requirements.html">VmaMemoryRequirements</a> *pMemoryRequirements, VkImage *pImage, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer3.html#ga2f711e32e95cf9bf8dff4917230c2e9b">vmaCreateBuffer()</a>. <a href="group__layer3.html#ga9e34bc318ff4b25d1958e79b9db3f1aa">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga9e34bc318ff4b25d1958e79b9db3f1aa"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ga02a94f25679275851a53e82eacbcfc73"><td class="memItemLeft" align="right" valign="top">VkResult </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73">vmaCreateImage</a> (VmaAllocator allocator, const VkImageCreateInfo *pImageCreateInfo, const <a class="el" href="struct_vma_allocation_create_info.html">VmaAllocationCreateInfo</a> *pAllocationCreateInfo, VkImage *pImage, VmaAllocation *pAllocation, <a class="el" href="struct_vma_allocation_info.html">VmaAllocationInfo</a> *pAllocationInfo)</td></tr>
|
||||
<tr class="memdesc:ga02a94f25679275851a53e82eacbcfc73"><td class="mdescLeft"> </td><td class="mdescRight">Function similar to <a class="el" href="group__layer3.html#gac72ee55598617e8eecca384e746bab51">vmaCreateBuffer()</a>. <a href="group__layer3.html#ga02a94f25679275851a53e82eacbcfc73">More...</a><br /></td></tr>
|
||||
<tr class="separator:ga02a94f25679275851a53e82eacbcfc73"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:gae50d2cb3b4a3bfd4dd40987234e50e7e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__layer3.html#gae50d2cb3b4a3bfd4dd40987234e50e7e">vmaDestroyImage</a> (VmaAllocator allocator, VkImage image, VmaAllocation allocation)</td></tr>
|
||||
<tr class="separator:gae50d2cb3b4a3bfd4dd40987234e50e7e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
|
File diff suppressed because one or more lines are too long
@ -32,6 +32,7 @@
|
||||
#pragma warning(push, 4)
|
||||
#pragma warning(disable: 4127) // warning C4127: conditional expression is constant
|
||||
#pragma warning(disable: 4100) // warning C4100: '...': unreferenced formal parameter
|
||||
#pragma warning(disable: 4189) // warning C4189: '...': local variable is initialized but not referenced
|
||||
#define VMA_IMPLEMENTATION
|
||||
#include "vk_mem_alloc.h"
|
||||
#pragma warning(pop)
|
||||
@ -298,23 +299,23 @@ static void CreateMesh()
|
||||
vbInfo.usage = VK_BUFFER_USAGE_TRANSFER_SRC_BIT;
|
||||
vbInfo.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
||||
|
||||
VmaMemoryRequirements vbMemReq = {};
|
||||
vbMemReq.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
vbMemReq.flags = VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT;
|
||||
VmaAllocationCreateInfo vbAllocCreateInfo = {};
|
||||
vbAllocCreateInfo.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
vbAllocCreateInfo.flags = VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT;
|
||||
|
||||
VkBuffer stagingVertexBuffer = VK_NULL_HANDLE;
|
||||
VmaAllocation stagingVertexBufferAlloc = VK_NULL_HANDLE;
|
||||
VmaAllocationInfo stagingVertexBufferAllocInfo = {};
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &vbInfo, &vbMemReq, &stagingVertexBuffer, &stagingVertexBufferAlloc, &stagingVertexBufferAllocInfo) );
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &vbInfo, &vbAllocCreateInfo, &stagingVertexBuffer, &stagingVertexBufferAlloc, &stagingVertexBufferAllocInfo) );
|
||||
|
||||
memcpy(stagingVertexBufferAllocInfo.pMappedData, vertices, vertexBufferSize);
|
||||
|
||||
// No need to flush stagingVertexBuffer memory because CPU_ONLY memory is always HOST_COHERENT.
|
||||
|
||||
vbInfo.usage = VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_VERTEX_BUFFER_BIT;
|
||||
vbMemReq.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
vbMemReq.flags = 0;
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &vbInfo, &vbMemReq, &g_hVertexBuffer, &g_hVertexBufferAlloc, nullptr) );
|
||||
vbAllocCreateInfo.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
vbAllocCreateInfo.flags = 0;
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &vbInfo, &vbAllocCreateInfo, &g_hVertexBuffer, &g_hVertexBufferAlloc, nullptr) );
|
||||
|
||||
// Create index buffer
|
||||
|
||||
@ -323,23 +324,23 @@ static void CreateMesh()
|
||||
ibInfo.usage = VK_BUFFER_USAGE_TRANSFER_SRC_BIT;
|
||||
ibInfo.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
|
||||
|
||||
VmaMemoryRequirements ibMemReq = {};
|
||||
ibMemReq.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
ibMemReq.flags = VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT;
|
||||
VmaAllocationCreateInfo ibAllocCreateInfo = {};
|
||||
ibAllocCreateInfo.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
ibAllocCreateInfo.flags = VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT;
|
||||
|
||||
VkBuffer stagingIndexBuffer = VK_NULL_HANDLE;
|
||||
VmaAllocation stagingIndexBufferAlloc = VK_NULL_HANDLE;
|
||||
VmaAllocationInfo stagingIndexBufferAllocInfo = {};
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &ibInfo, &ibMemReq, &stagingIndexBuffer, &stagingIndexBufferAlloc, &stagingIndexBufferAllocInfo) );
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &ibInfo, &ibAllocCreateInfo, &stagingIndexBuffer, &stagingIndexBufferAlloc, &stagingIndexBufferAllocInfo) );
|
||||
|
||||
memcpy(stagingIndexBufferAllocInfo.pMappedData, indices, indexBufferSize);
|
||||
|
||||
// No need to flush stagingIndexBuffer memory because CPU_ONLY memory is always HOST_COHERENT.
|
||||
|
||||
ibInfo.usage = VK_BUFFER_USAGE_TRANSFER_DST_BIT | VK_BUFFER_USAGE_INDEX_BUFFER_BIT;
|
||||
ibMemReq.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
ibMemReq.flags = 0;
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &ibInfo, &ibMemReq, &g_hIndexBuffer, &g_hIndexBufferAlloc, nullptr) );
|
||||
ibAllocCreateInfo.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
ibAllocCreateInfo.flags = 0;
|
||||
ERR_GUARD_VULKAN( vmaCreateBuffer(g_hAllocator, &ibInfo, &ibAllocCreateInfo, &g_hIndexBuffer, &g_hIndexBufferAlloc, nullptr) );
|
||||
|
||||
// Copy buffers
|
||||
|
||||
@ -423,14 +424,14 @@ static void CreateTexture(uint32_t sizeX, uint32_t sizeY)
|
||||
stagingImageInfo.samples = VK_SAMPLE_COUNT_1_BIT;
|
||||
stagingImageInfo.flags = 0;
|
||||
|
||||
VmaMemoryRequirements stagingImageMemReq = {};
|
||||
stagingImageMemReq.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
stagingImageMemReq.flags = VMA_MEMORY_REQUIREMENT_PERSISTENT_MAP_BIT;
|
||||
VmaAllocationCreateInfo stagingImageAllocCreateInfo = {};
|
||||
stagingImageAllocCreateInfo.usage = VMA_MEMORY_USAGE_CPU_ONLY;
|
||||
stagingImageAllocCreateInfo.flags = VMA_ALLOCATION_CREATE_PERSISTENT_MAP_BIT;
|
||||
|
||||
VkImage stagingImage = VK_NULL_HANDLE;
|
||||
VmaAllocation stagingImageAlloc = VK_NULL_HANDLE;
|
||||
VmaAllocationInfo stagingImageAllocInfo = {};
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &stagingImageInfo, &stagingImageMemReq, &stagingImage, &stagingImageAlloc, &stagingImageAllocInfo) );
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &stagingImageInfo, &stagingImageAllocCreateInfo, &stagingImage, &stagingImageAlloc, &stagingImageAllocInfo) );
|
||||
|
||||
VkImageSubresource imageSubresource = {};
|
||||
imageSubresource.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT;
|
||||
@ -476,10 +477,10 @@ static void CreateTexture(uint32_t sizeX, uint32_t sizeY)
|
||||
imageInfo.samples = VK_SAMPLE_COUNT_1_BIT;
|
||||
imageInfo.flags = 0;
|
||||
|
||||
VmaMemoryRequirements imageMemReq = {};
|
||||
imageMemReq.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
VmaAllocationCreateInfo imageAllocCreateInfo = {};
|
||||
imageAllocCreateInfo.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &imageInfo, &imageMemReq, &g_hTextureImage, &g_hTextureImageAlloc, nullptr) );
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &imageInfo, &imageAllocCreateInfo, &g_hTextureImage, &g_hTextureImageAlloc, nullptr) );
|
||||
|
||||
// Transition image layouts, copy image.
|
||||
|
||||
@ -775,10 +776,10 @@ static void CreateSwapchain()
|
||||
depthImageInfo.samples = VK_SAMPLE_COUNT_1_BIT;
|
||||
depthImageInfo.flags = 0;
|
||||
|
||||
VmaMemoryRequirements depthImageMemReq = {};
|
||||
depthImageMemReq.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
VmaAllocationCreateInfo depthImageAllocCreateInfo = {};
|
||||
depthImageAllocCreateInfo.usage = VMA_MEMORY_USAGE_GPU_ONLY;
|
||||
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &depthImageInfo, &depthImageMemReq, &g_hDepthImage, &g_hDepthImageAlloc, nullptr) );
|
||||
ERR_GUARD_VULKAN( vmaCreateImage(g_hAllocator, &depthImageInfo, &depthImageAllocCreateInfo, &g_hDepthImage, &g_hDepthImageAlloc, nullptr) );
|
||||
|
||||
VkImageViewCreateInfo depthImageViewInfo = { VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO };
|
||||
depthImageViewInfo.image = g_hDepthImage;
|
||||
|
4083
src/vk_mem_alloc.h
4083
src/vk_mem_alloc.h
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue
Block a user