diff --git a/aster/include/aster/systems/device.h b/aster/include/aster/systems/device.h index 110be1b..d6bf499 100644 --- a/aster/include/aster/systems/device.h +++ b/aster/include/aster/systems/device.h @@ -386,7 +386,7 @@ struct Frame // TODO: ThreadSafe _internal::GraphicsContextPool m_PrimaryPool; _internal::TransferContextPool m_AsyncTransferPool; - _internal::ContextPool m_AsyncComputePool; + _internal::ComputeContextPool m_AsyncComputePool; vk::Fence m_FrameAvailableFence; vk::Semaphore m_ImageAcquireSem; @@ -402,6 +402,7 @@ struct Frame void Reset(u32 imageIdx, vk::Image swapchainImage, vk::ImageView swapchainImageView, Size2D swapchainSize); GraphicsContext CreateGraphicsContext(); TransferContext CreateAsyncTransferContext(); + ComputeContext CreateAsyncComputeContext(); void WaitUntilReady(); Frame() = default; diff --git a/aster/src/aster/systems/device.cpp b/aster/src/aster/systems/device.cpp index 7752901..6817659 100644 --- a/aster/src/aster/systems/device.cpp +++ b/aster/src/aster/systems/device.cpp @@ -1286,6 +1286,12 @@ systems::Frame::CreateAsyncTransferContext() return m_AsyncTransferPool.CreateTransferContext(); } +systems::ComputeContext +systems::Frame::CreateAsyncComputeContext() +{ + return m_AsyncComputePool.CreateComputeContext(); +} + void systems::Frame::WaitUntilReady() {