diff --git a/projects/fire_works/src/main.cpp b/projects/fire_works/src/main.cpp index 84d947e9a63cb112250f25ff9160b582e82213de..acc2d1472aafe0339652cd5d1e136d7643ddc42a 100644 --- a/projects/fire_works/src/main.cpp +++ b/projects/fire_works/src/main.cpp @@ -684,6 +684,10 @@ int main(int argc, const char **argv) { ); core.recordEndDebugLabel(cmdStream); + core.recordBufferMemoryBarrier(cmdStream, eventBuffer.getHandle()); + core.recordBufferMemoryBarrier(cmdStream, smokeBuffer.getHandle()); + core.recordBufferMemoryBarrier(cmdStream, smokeIndexBuffer.getHandle()); + uint32_t smokeDispatchCount[3]; smokeDispatchCount[0] = std::ceil(smokeBuffer.getCount() / 256.f); smokeDispatchCount[1] = 1; @@ -699,6 +703,8 @@ int main(int argc, const char **argv) { ); core.recordEndDebugLabel(cmdStream); + core.recordBufferMemoryBarrier(cmdStream, particleBuffer.getHandle()); + core.recordBeginDebugLabel(cmdStream, "Particle motion", { 0.0f, 0.0f, 1.0f, 1.0f }); core.recordComputeDispatchToCmdStream( cmdStream, @@ -709,6 +715,8 @@ int main(int argc, const char **argv) { ); core.recordEndDebugLabel(cmdStream); + core.recordBufferMemoryBarrier(cmdStream, trailBuffer.getHandle()); + uint32_t trailDispatchCount[3]; trailDispatchCount[0] = std::ceil(trailBuffer.getCount() / 256.f); trailDispatchCount[1] = 1; @@ -727,6 +735,9 @@ int main(int argc, const char **argv) { ); core.recordEndDebugLabel(cmdStream); + core.recordBufferMemoryBarrier(cmdStream, pointBuffer.getHandle()); + core.recordBufferMemoryBarrier(cmdStream, trailBuffer.getHandle()); + cameraManager.update(time_values[1]); const auto& camera = cameraManager.getActiveCamera();