diff options
| author | 2020-07-16 19:21:42 -0400 | |
|---|---|---|
| committer | 2020-07-16 19:22:11 -0400 | |
| commit | 3c060503bcd9fc088a080b4b6985f4236f2441bc (patch) | |
| tree | 4a3172a936b0a8ad4279aed0f924cae078f836d3 | |
| parent | vk_staging_buffer_pool: Make use of designated initializers where applicable (diff) | |
| download | yuzu-3c060503bcd9fc088a080b4b6985f4236f2441bc.tar.gz yuzu-3c060503bcd9fc088a080b4b6985f4236f2441bc.tar.xz yuzu-3c060503bcd9fc088a080b4b6985f4236f2441bc.zip | |
vk_stream_buffer: Make use of designated initializers where applicable
| -rw-r--r-- | src/video_core/renderer_vulkan/vk_stream_buffer.cpp | 35 |
1 files changed, 16 insertions, 19 deletions
diff --git a/src/video_core/renderer_vulkan/vk_stream_buffer.cpp b/src/video_core/renderer_vulkan/vk_stream_buffer.cpp index 2d28a6c47..a5526a3f5 100644 --- a/src/video_core/renderer_vulkan/vk_stream_buffer.cpp +++ b/src/video_core/renderer_vulkan/vk_stream_buffer.cpp | |||
| @@ -122,30 +122,27 @@ void VKStreamBuffer::CreateBuffers(VkBufferUsageFlags usage) { | |||
| 122 | // Substract from the preferred heap size some bytes to avoid getting out of memory. | 122 | // Substract from the preferred heap size some bytes to avoid getting out of memory. |
| 123 | const VkDeviceSize heap_size = memory_properties.memoryHeaps[preferred_heap].size; | 123 | const VkDeviceSize heap_size = memory_properties.memoryHeaps[preferred_heap].size; |
| 124 | const VkDeviceSize allocable_size = heap_size - 9 * 1024 * 1024; | 124 | const VkDeviceSize allocable_size = heap_size - 9 * 1024 * 1024; |
| 125 | 125 | buffer = device.GetLogical().CreateBuffer({ | |
| 126 | VkBufferCreateInfo buffer_ci; | 126 | .sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, |
| 127 | buffer_ci.sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO; | 127 | .pNext = nullptr, |
| 128 | buffer_ci.pNext = nullptr; | 128 | .flags = 0, |
| 129 | buffer_ci.flags = 0; | 129 | .size = std::min(PREFERRED_STREAM_BUFFER_SIZE, allocable_size), |
| 130 | buffer_ci.size = std::min(PREFERRED_STREAM_BUFFER_SIZE, allocable_size); | 130 | .usage = usage, |
| 131 | buffer_ci.usage = usage; | 131 | .sharingMode = VK_SHARING_MODE_EXCLUSIVE, |
| 132 | buffer_ci.sharingMode = VK_SHARING_MODE_EXCLUSIVE; | 132 | .queueFamilyIndexCount = 0, |
| 133 | buffer_ci.queueFamilyIndexCount = 0; | 133 | .pQueueFamilyIndices = nullptr, |
| 134 | buffer_ci.pQueueFamilyIndices = nullptr; | 134 | }); |
| 135 | |||
| 136 | buffer = device.GetLogical().CreateBuffer(buffer_ci); | ||
| 137 | 135 | ||
| 138 | const auto requirements = device.GetLogical().GetBufferMemoryRequirements(*buffer); | 136 | const auto requirements = device.GetLogical().GetBufferMemoryRequirements(*buffer); |
| 139 | const u32 required_flags = requirements.memoryTypeBits; | 137 | const u32 required_flags = requirements.memoryTypeBits; |
| 140 | stream_buffer_size = static_cast<u64>(requirements.size); | 138 | stream_buffer_size = static_cast<u64>(requirements.size); |
| 141 | 139 | ||
| 142 | VkMemoryAllocateInfo memory_ai; | 140 | memory = device.GetLogical().AllocateMemory({ |
| 143 | memory_ai.sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO; | 141 | .sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, |
| 144 | memory_ai.pNext = nullptr; | 142 | .pNext = nullptr, |
| 145 | memory_ai.allocationSize = requirements.size; | 143 | .allocationSize = requirements.size, |
| 146 | memory_ai.memoryTypeIndex = GetMemoryType(memory_properties, required_flags); | 144 | .memoryTypeIndex = GetMemoryType(memory_properties, required_flags), |
| 147 | 145 | }); | |
| 148 | memory = device.GetLogical().AllocateMemory(memory_ai); | ||
| 149 | buffer.BindMemory(*memory, 0); | 146 | buffer.BindMemory(*memory, 0); |
| 150 | } | 147 | } |
| 151 | 148 | ||