Выделение буферов команд
This commit is contained in:
		
							parent
							
								
									b7fceb5433
								
							
						
					
					
						commit
						18d2fa9bba
					
				@ -26,6 +26,7 @@ class Vulkan
 | 
			
		||||
        VkPipelineLayout pipelineLayout; // Раскладка конвейера
 | 
			
		||||
        VkPipeline graphicsPipeline; // Графический конвейер
 | 
			
		||||
        VkCommandPool commandPool; // Пул команд
 | 
			
		||||
        std::vector<VkCommandBuffer> commandBuffers; // Буферы команд
 | 
			
		||||
 | 
			
		||||
        // Структура для хранения флагов
 | 
			
		||||
        struct 
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										15
									
								
								src/vk.cpp
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								src/vk.cpp
									
									
									
									
									
								
							@ -787,4 +787,19 @@ void Vulkan::createCommandPool()
 | 
			
		||||
        throw std::runtime_error("Unable to create graphics command pool");
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    // Выделим память под буферы команд
 | 
			
		||||
    commandBuffers.resize(swapChainImages.size());
 | 
			
		||||
 | 
			
		||||
    // Информация о выделяемых буферах
 | 
			
		||||
    VkCommandBufferAllocateInfo allocInfo{};
 | 
			
		||||
    allocInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO;
 | 
			
		||||
    allocInfo.commandPool = commandPool;
 | 
			
		||||
    allocInfo.level = VK_COMMAND_BUFFER_LEVEL_PRIMARY;
 | 
			
		||||
    allocInfo.commandBufferCount = (uint32_t) commandBuffers.size();
 | 
			
		||||
 | 
			
		||||
    // Выделение буферов команд из пула команд
 | 
			
		||||
    if (vkAllocateCommandBuffers(logicalDevice, &allocInfo, commandBuffers.data()) != VK_SUCCESS) 
 | 
			
		||||
    {
 | 
			
		||||
        throw std::runtime_error("Unable to allocate command buffers");
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user