MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/Falcor / fetchCount

Method fetchCount

Source/Falcor/Scene/SDFs/SparseBrickSet/SDFSBS.cpp:1010–1025  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1008 }
1009
1010 uint32_t SDFSBS::fetchCount(RenderContext* pRenderContext, const ref<Buffer>& pBuffer)
1011 {
1012 if (!mpCountStagingBuffer)
1013 {
1014 mpCountStagingBuffer = mpDevice->createBuffer(4, ResourceBindFlags::None, MemoryType::ReadBack);
1015 }
1016
1017 // Copy result to staging buffer.
1018 pRenderContext->copyBufferRegion(mpCountStagingBuffer.get(), 0, pBuffer.get(), 0, 4);
1019 pRenderContext->submit(true);
1020
1021 // Read back final results.
1022 uint32_t finalResults = *reinterpret_cast<uint32_t*>(mpCountStagingBuffer->map());
1023 mpCountStagingBuffer->unmap();
1024 return finalResults;
1025 }
1026
1027 void SDFSBS::compactifyChunks(RenderContext* pRenderContext, uint32_t chunkCount)
1028 {

Callers

nothing calls this directly

Calls 6

createBufferMethod · 0.80
copyBufferRegionMethod · 0.80
mapMethod · 0.80
unmapMethod · 0.80
getMethod · 0.45
submitMethod · 0.45

Tested by

no test coverage detected