MCPcopy Create free account
hub / github.com/DragonJoker/RenderGraph / copyBuffer

Method copyBuffer

source/RenderGraph/RecordContext.cpp:554–574  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

552 }
553
554 void RecordContext::copyBuffer( VkCommandBuffer commandBuffer
555 , uint32_t index
556 , BufferViewId srcView
557 , BufferViewId dstView
558 , DeviceSize srcOffset, DeviceSize dstOffset
559 , DeviceSize size
560 , AccessState const & finalState )
561 {
562 runImplicitTransition( commandBuffer, index, srcView );
563 memoryBarrier( commandBuffer, srcView, { AccessFlags::eTransferRead, PipelineStageFlags::eTransfer } );
564 memoryBarrier( commandBuffer, dstView, { AccessFlags::eTransferWrite, PipelineStageFlags::eTransfer } );
565 auto & resources = getResources();
566 VkBufferCopy region{ srcOffset, dstOffset, size };
567 resources->vkCmdCopyBuffer( commandBuffer
568 , resources.createBuffer( srcView.data->buffer )
569 , resources.createBuffer( dstView.data->buffer )
570 , 1u, &region );
571
572 if ( finalState != AccessState{} )
573 memoryBarrier( commandBuffer, dstView, finalState );
574 }
575
576 void RecordContext::clearBuffer( VkCommandBuffer commandBuffer
577 , BufferViewId dstView

Callers

nothing calls this directly

Calls 1

createBufferMethod · 0.45

Tested by

no test coverage detected