MCPcopy Create free account
hub / github.com/ddnet/ddnet / GetMemoryCommandBuffer

Function GetMemoryCommandBuffer

src/engine/client/backend/vulkan/backend_vulkan.cpp:6207–6227  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6205 }
6206
6207 [[nodiscard]] bool GetMemoryCommandBuffer(VkCommandBuffer *&pMemCommandBuffer)
6208 {
6209 auto &MemCommandBuffer = m_vMemoryCommandBuffers[m_CurImageIndex];
6210 if(!m_vUsedMemoryCommandBuffer[m_CurImageIndex])
6211 {
6212 m_vUsedMemoryCommandBuffer[m_CurImageIndex] = true;
6213
6214 vkResetCommandBuffer(MemCommandBuffer, VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT);
6215
6216 VkCommandBufferBeginInfo BeginInfo{};
6217 BeginInfo.sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO;
6218 BeginInfo.flags = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT;
6219 if(vkBeginCommandBuffer(MemCommandBuffer, &BeginInfo) != VK_SUCCESS)
6220 {
6221 SetError(EGfxErrorType::GFX_ERROR_TYPE_RENDER_RECORDING, "Command buffer cannot be filled anymore.");
6222 return false;
6223 }
6224 }
6225 pMemCommandBuffer = &MemCommandBuffer;
6226 return true;
6227 }
6228
6229 [[nodiscard]] bool GetGraphicCommandBuffer(VkCommandBuffer *&pDrawCommandBuffer, size_t RenderThreadIndex)
6230 {

Callers 6

MemoryBarrierMethod · 0.85
BuildMipmapsMethod · 0.85
ImageBarrierMethod · 0.85
CopyBufferToImageMethod · 0.85
CopyBufferMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected