Renderer/CommandBufferBuilder: Take const AbstractBuffer* to match others methods
This commit is contained in:
parent
7e0137f367
commit
e4a38d45bd
|
|
@ -26,11 +26,11 @@ namespace Nz
|
||||||
void BeginDebugRegion(const std::string_view& regionName, const Nz::Color& color) override;
|
void BeginDebugRegion(const std::string_view& regionName, const Nz::Color& color) override;
|
||||||
void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, const ClearValues* clearValues, std::size_t clearValueCount) override;
|
void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, const ClearValues* clearValues, std::size_t clearValueCount) override;
|
||||||
|
|
||||||
void BindIndexBuffer(AbstractBuffer* indexBuffer, UInt64 offset = 0) override;
|
void BindIndexBuffer(const AbstractBuffer& indexBuffer, UInt64 offset = 0) override;
|
||||||
void BindPipeline(const RenderPipeline& pipeline) override;
|
void BindPipeline(const RenderPipeline& pipeline) override;
|
||||||
void BindShaderBinding(UInt32 set, const ShaderBinding& binding) override;
|
void BindShaderBinding(UInt32 set, const ShaderBinding& binding) override;
|
||||||
void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) override;
|
void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) override;
|
||||||
void BindVertexBuffer(UInt32 binding, Nz::AbstractBuffer* vertexBuffer, UInt64 offset = 0) override;
|
void BindVertexBuffer(UInt32 binding, const AbstractBuffer& vertexBuffer, UInt64 offset = 0) override;
|
||||||
|
|
||||||
void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
||||||
void CopyBuffer(const UploadPool::Allocation& allocation, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
void CopyBuffer(const UploadPool::Allocation& allocation, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
||||||
|
|
|
||||||
|
|
@ -40,11 +40,11 @@ namespace Nz
|
||||||
inline void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect);
|
inline void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect);
|
||||||
inline void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, std::initializer_list<ClearValues> clearValues);
|
inline void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, std::initializer_list<ClearValues> clearValues);
|
||||||
|
|
||||||
virtual void BindIndexBuffer(AbstractBuffer* indexBuffer, UInt64 offset = 0) = 0;
|
virtual void BindIndexBuffer(const AbstractBuffer& indexBuffer, UInt64 offset = 0) = 0;
|
||||||
virtual void BindPipeline(const RenderPipeline& pipeline) = 0;
|
virtual void BindPipeline(const RenderPipeline& pipeline) = 0;
|
||||||
virtual void BindShaderBinding(UInt32 set, const ShaderBinding& binding) = 0;
|
virtual void BindShaderBinding(UInt32 set, const ShaderBinding& binding) = 0;
|
||||||
virtual void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) = 0;
|
virtual void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) = 0;
|
||||||
virtual void BindVertexBuffer(UInt32 binding, AbstractBuffer* vertexBuffer, UInt64 offset = 0) = 0;
|
virtual void BindVertexBuffer(UInt32 binding, const AbstractBuffer& vertexBuffer, UInt64 offset = 0) = 0;
|
||||||
|
|
||||||
inline void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target);
|
inline void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target);
|
||||||
virtual void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 fromOffset = 0, UInt64 toOffset = 0) = 0;
|
virtual void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 fromOffset = 0, UInt64 toOffset = 0) = 0;
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ namespace Nz
|
||||||
|
|
||||||
bool Initialize(UInt64 size, BufferUsageFlags usage) override;
|
bool Initialize(UInt64 size, BufferUsageFlags usage) override;
|
||||||
|
|
||||||
inline VkBuffer GetBuffer();
|
inline VkBuffer GetBuffer() const;
|
||||||
UInt64 GetSize() const override;
|
UInt64 GetSize() const override;
|
||||||
DataStorage GetStorage() const override;
|
DataStorage GetStorage() const override;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ namespace Nz
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
inline VkBuffer VulkanBuffer::GetBuffer()
|
inline VkBuffer VulkanBuffer::GetBuffer() const
|
||||||
{
|
{
|
||||||
return m_buffer;
|
return m_buffer;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -27,11 +27,11 @@ namespace Nz
|
||||||
void BeginDebugRegion(const std::string_view& regionName, const Color& color) override;
|
void BeginDebugRegion(const std::string_view& regionName, const Color& color) override;
|
||||||
void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, const ClearValues* clearValues, std::size_t clearValueCount) override;
|
void BeginRenderPass(const Framebuffer& framebuffer, const RenderPass& renderPass, const Recti& renderRect, const ClearValues* clearValues, std::size_t clearValueCount) override;
|
||||||
|
|
||||||
void BindIndexBuffer(AbstractBuffer* indexBuffer, UInt64 offset = 0) override;
|
void BindIndexBuffer(const AbstractBuffer& indexBuffer, UInt64 offset = 0) override;
|
||||||
void BindPipeline(const RenderPipeline& pipeline) override;
|
void BindPipeline(const RenderPipeline& pipeline) override;
|
||||||
void BindShaderBinding(UInt32 set, const ShaderBinding& binding) override;
|
void BindShaderBinding(UInt32 set, const ShaderBinding& binding) override;
|
||||||
void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) override;
|
void BindShaderBinding(const RenderPipelineLayout& pipelineLayout, UInt32 set, const ShaderBinding& binding) override;
|
||||||
void BindVertexBuffer(UInt32 binding, AbstractBuffer* vertexBuffer, UInt64 offset = 0) override;
|
void BindVertexBuffer(UInt32 binding, const AbstractBuffer& vertexBuffer, UInt64 offset = 0) override;
|
||||||
|
|
||||||
void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
void CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
||||||
void CopyBuffer(const UploadPool::Allocation& allocation, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
void CopyBuffer(const UploadPool::Allocation& allocation, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset = 0, UInt64 targetOffset = 0) override;
|
||||||
|
|
|
||||||
|
|
@ -24,11 +24,11 @@ namespace Nz
|
||||||
m_commandBuffer.SetFramebuffer(static_cast<const OpenGLFramebuffer&>(framebuffer), static_cast<const OpenGLRenderPass&>(renderPass), clearValues, clearValueCount);
|
m_commandBuffer.SetFramebuffer(static_cast<const OpenGLFramebuffer&>(framebuffer), static_cast<const OpenGLRenderPass&>(renderPass), clearValues, clearValueCount);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenGLCommandBufferBuilder::BindIndexBuffer(Nz::AbstractBuffer* indexBuffer, UInt64 offset)
|
void OpenGLCommandBufferBuilder::BindIndexBuffer(const AbstractBuffer& indexBuffer, UInt64 offset)
|
||||||
{
|
{
|
||||||
OpenGLBuffer* glBuffer = static_cast<OpenGLBuffer*>(indexBuffer);
|
const OpenGLBuffer& glBuffer = static_cast<const OpenGLBuffer&>(indexBuffer);
|
||||||
|
|
||||||
m_commandBuffer.BindIndexBuffer(glBuffer->GetBuffer().GetObjectId());
|
m_commandBuffer.BindIndexBuffer(glBuffer.GetBuffer().GetObjectId());
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenGLCommandBufferBuilder::BindPipeline(const RenderPipeline& pipeline)
|
void OpenGLCommandBufferBuilder::BindPipeline(const RenderPipeline& pipeline)
|
||||||
|
|
@ -53,11 +53,11 @@ namespace Nz
|
||||||
m_commandBuffer.BindShaderBinding(glPipelineLayout, set, &glBinding);
|
m_commandBuffer.BindShaderBinding(glPipelineLayout, set, &glBinding);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenGLCommandBufferBuilder::BindVertexBuffer(UInt32 binding, Nz::AbstractBuffer* vertexBuffer, UInt64 offset)
|
void OpenGLCommandBufferBuilder::BindVertexBuffer(UInt32 binding, const AbstractBuffer& vertexBuffer, UInt64 offset)
|
||||||
{
|
{
|
||||||
OpenGLBuffer* glBuffer = static_cast<OpenGLBuffer*>(vertexBuffer);
|
const OpenGLBuffer& glBuffer = static_cast<const OpenGLBuffer&>(vertexBuffer);
|
||||||
|
|
||||||
m_commandBuffer.BindVertexBuffer(binding, glBuffer->GetBuffer().GetObjectId(), offset);
|
m_commandBuffer.BindVertexBuffer(binding, glBuffer.GetBuffer().GetObjectId(), offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenGLCommandBufferBuilder::CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset, UInt64 targetOffset)
|
void OpenGLCommandBufferBuilder::CopyBuffer(const RenderBufferView& source, const RenderBufferView& target, UInt64 size, UInt64 sourceOffset, UInt64 targetOffset)
|
||||||
|
|
|
||||||
|
|
@ -70,9 +70,9 @@ namespace Nz
|
||||||
m_currentSubpassIndex = 0;
|
m_currentSubpassIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void VulkanCommandBufferBuilder::BindIndexBuffer(AbstractBuffer* indexBuffer, UInt64 offset)
|
void VulkanCommandBufferBuilder::BindIndexBuffer(const AbstractBuffer& indexBuffer, UInt64 offset)
|
||||||
{
|
{
|
||||||
VulkanBuffer& vkBuffer = *static_cast<VulkanBuffer*>(indexBuffer);
|
const VulkanBuffer& vkBuffer = static_cast<const VulkanBuffer&>(indexBuffer);
|
||||||
|
|
||||||
m_commandBuffer.BindIndexBuffer(vkBuffer.GetBuffer(), offset, VK_INDEX_TYPE_UINT16); //< Fuck me right?
|
m_commandBuffer.BindIndexBuffer(vkBuffer.GetBuffer(), offset, VK_INDEX_TYPE_UINT16); //< Fuck me right?
|
||||||
}
|
}
|
||||||
|
|
@ -103,9 +103,9 @@ namespace Nz
|
||||||
m_commandBuffer.BindDescriptorSet(VK_PIPELINE_BIND_POINT_GRAPHICS, vkPipelineLayout.GetPipelineLayout(), set, vkBinding.GetDescriptorSet());
|
m_commandBuffer.BindDescriptorSet(VK_PIPELINE_BIND_POINT_GRAPHICS, vkPipelineLayout.GetPipelineLayout(), set, vkBinding.GetDescriptorSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
void VulkanCommandBufferBuilder::BindVertexBuffer(UInt32 binding, AbstractBuffer* vertexBuffer, UInt64 offset)
|
void VulkanCommandBufferBuilder::BindVertexBuffer(UInt32 binding, const AbstractBuffer& vertexBuffer, UInt64 offset)
|
||||||
{
|
{
|
||||||
VulkanBuffer& vkBuffer = *static_cast<VulkanBuffer*>(vertexBuffer);
|
const VulkanBuffer& vkBuffer = static_cast<const VulkanBuffer&>(vertexBuffer);
|
||||||
|
|
||||||
m_commandBuffer.BindVertexBuffer(binding, vkBuffer.GetBuffer(), offset);
|
m_commandBuffer.BindVertexBuffer(binding, vkBuffer.GetBuffer(), offset);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue