fixing compilation issues

This commit is contained in:
Kbz-8
2024-09-05 00:41:52 +02:00
parent 0a84ea6a18
commit 6eaf871d45
23 changed files with 140 additions and 59 deletions

View File

@@ -32,7 +32,7 @@ namespace mlx
if(!data.Empty())
{
if(p_map != nullptr)
std::memcpy(m_memory.map, data.GetData(), data.GetSize());
std::memcpy(p_map, data.GetData(), data.GetSize());
}
if(type == BufferType::Constant || type == BufferType::LowDynamic)
PushToGPU();
@@ -46,7 +46,7 @@ namespace mlx
bufferInfo.usage = usage;
bufferInfo.sharingMode = VK_SHARING_MODE_EXCLUSIVE;
m_allocation = RenderCore::Get().GetAllocator().CreateBuffer(&bufferInfo, &info, m_buffer, nullptr);
m_allocation = RenderCore::Get().GetAllocator().CreateBuffer(&bufferInfo, &alloc_info, m_buffer, nullptr);
if(alloc_info.flags != 0)
RenderCore::Get().GetAllocator().MapMemory(m_allocation, &p_map);
}
@@ -66,7 +66,7 @@ namespace mlx
VkCommandBuffer cmd = kvfCreateCommandBuffer(RenderCore::Get().GetDevice());
kvfBeginCommandBuffer(cmd, VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT);
kvfCopyBufferToBuffer(cmd, m_buffer, buffer.Get(), m_memory.size);
kvfCopyBufferToBuffer(cmd, m_buffer, buffer.Get(), m_size);
kvfEndCommandBuffer(cmd);
VkFence fence = kvfCreateFence(RenderCore::Get().GetDevice());
kvfSubmitSingleTimeCommandBuffer(RenderCore::Get().GetDevice(), cmd, KVF_GRAPHICS_QUEUE, fence);
@@ -82,7 +82,7 @@ namespace mlx
GPUBuffer new_buffer;
new_buffer.m_usage = (this->m_usage & 0xFFFFFFFC) | VK_BUFFER_USAGE_TRANSFER_DST_BIT;
new_buffer.CreateBuffer(m_memory.size, new_buffer.m_usage, alloc_info);
new_buffer.CreateBuffer(m_size, new_buffer.m_usage, alloc_info);
if(new_buffer.CopyFrom(*this))
Swap(new_buffer);
@@ -111,9 +111,9 @@ namespace mlx
void VertexBuffer::SetData(CPUBuffer data)
{
if(data.GetSize() > m_memory.size)
if(data.GetSize() > m_size)
{
Error("Vulkan : trying to store to much data in a vertex buffer (% bytes in % bytes)", data.GetSize(), m_memory.size);
Error("Vulkan : trying to store to much data in a vertex buffer (% bytes in % bytes)", data.GetSize(), m_size);
return;
}
if(data.Empty())
@@ -129,9 +129,9 @@ namespace mlx
void IndexBuffer::SetData(CPUBuffer data)
{
if(data.GetSize() > m_memory.size)
if(data.GetSize() > m_size)
{
Error("Vulkan : trying to store to much data in an index buffer (% bytes in % bytes)", data.GetSize(), m_memory.size);
Error("Vulkan : trying to store to much data in an index buffer (% bytes in % bytes)", data.GetSize(), m_size);
return;
}
if(data.Empty())

View File

@@ -139,7 +139,7 @@ namespace mlx
vkUpdateDescriptorSets(RenderCore::Get().GetDevice(), writes.size(), writes.data(), 0, nullptr);
}
void Descriptor::Reallocate() noexcept
void DescriptorSet::Reallocate() noexcept
{
for(std::size_t i = 0; i < MAX_FRAMES_IN_FLIGHT; i++)
m_set[i] = kvfAllocateDescriptorSet(RenderCore::Get().GetDevice(), m_set_layout);

View File

@@ -58,7 +58,7 @@ namespace mlx
}
}
};
EventBus::RegisterListener({ functor, "__ScopRender2DPass" });
EventBus::RegisterListener({ functor, "__MlxRender2DPass" });
p_viewer_data_set = std::make_shared<DescriptorSet>(p_vertex_shader->GetShaderLayout().set_layouts[0].second, p_vertex_shader->GetPipelineLayout().set_layouts[0], ShaderType::Vertex);
p_texture_set = std::make_shared<DescriptorSet>(p_fragment_shader->GetShaderLayout().set_layouts[0].second, p_fragment_shader->GetPipelineLayout().set_layouts[0], ShaderType::Fragment);

View File

@@ -37,7 +37,7 @@ namespace mlx
if(event.What() == Event::DescriptorPoolResetEventCode)
p_set->Reallocate();
};
EventBus::RegisterListener({ functor, "__ScopFinalPass" });
EventBus::RegisterListener({ functor, "__MlxFinalPass" });
p_set = std::make_shared<DescriptorSet>(p_fragment_shader->GetShaderLayout().set_layouts[0].second, p_fragment_shader->GetPipelineLayout().set_layouts[0], ShaderType::Fragment);
}

View File

@@ -24,7 +24,7 @@ namespace mlx
m_main_render_texture.Init({}, extent.width, extent.height);
}
};
EventBus::RegisterListener({ functor, "__ScopRenderPasses" });
EventBus::RegisterListener({ functor, "__MlxRenderPasses" });
auto extent = kvfGetSwapchainImagesSize(renderer.GetSwapchain());
m_main_render_texture.Init({}, extent.width, extent.height);

View File

@@ -32,7 +32,7 @@ namespace mlx
if(event.What() == Event::ResizeEventCode)
this->RequireFramebufferResize();
};
EventBus::RegisterListener({ functor, "__ScopRenderer" });
EventBus::RegisterListener({ functor, "__MlxRenderer" + std::to_string(reinterpret_cast<std::uintptr_t>(this)) });
p_window = window;