Render resource handling for camera
This commit is contained in:
@@ -213,7 +213,7 @@ namespace OpenVulkano::Vulkan
|
||||
VulkanCamera* ResourceManager::PrepareCamera(Scene::Camera* camera)
|
||||
{
|
||||
const std::unique_lock lock(mutex);
|
||||
if (!camera->renderCamera)
|
||||
if (!camera->HasRenderResource())
|
||||
{
|
||||
const vk::DeviceSize allocSize = Utils::Align(Scene::Camera::SIZE, uniformBufferAlignment);
|
||||
const uint32_t imgs = context->swapChain.GetImageCount();
|
||||
@@ -221,12 +221,10 @@ namespace OpenVulkano::Vulkan
|
||||
buffer->Map();
|
||||
UniformBuffer* uBuffer = new UniformBuffer();
|
||||
uBuffer->Init(std::move(buffer), allocSize, allocSize, GetDescriptorLayoutSet(Scene::Camera::DESCRIPTOR_SET_LAYOUT_BINDING), Scene::Camera::DESCRIPTOR_SET_LAYOUT_BINDING, 1);
|
||||
VulkanCamera* vkCam = new VulkanCamera();
|
||||
vkCam->Init(camera, uBuffer);
|
||||
VulkanCamera* vkCam = new VulkanCamera(camera, uBuffer);
|
||||
cameras.emplace_back(vkCam);
|
||||
camera->renderCamera = vkCam;
|
||||
}
|
||||
return static_cast<VulkanCamera*>(camera->renderCamera);
|
||||
return static_cast<VulkanCamera*>(camera->GetRenderResource());
|
||||
}
|
||||
|
||||
UniformBuffer* ResourceManager::CreateUniformBuffer(const DescriptorSetLayoutBinding& binding, size_t size, void* data, uint32_t setId, bool hostVis)
|
||||
|
||||
Reference in New Issue
Block a user