2024-04-09 16:41:12 +02:00
|
|
|
#pragma once
|
|
|
|
|
#include "Graphics/RenderTarget.h"
|
2024-04-11 12:38:42 +02:00
|
|
|
#include "Resources.h"
|
2024-04-09 16:41:12 +02:00
|
|
|
|
2024-06-09 12:20:04 +02:00
|
|
|
namespace Seele {
|
|
|
|
|
namespace Metal {
|
2024-04-11 12:38:42 +02:00
|
|
|
DECLARE_REF(Graphics)
|
2024-06-09 12:20:04 +02:00
|
|
|
class RenderPass : public Gfx::RenderPass {
|
|
|
|
|
public:
|
2024-08-26 21:49:09 +02:00
|
|
|
RenderPass(PGraphics graphics, Gfx::RenderTargetLayout layout, Array<Gfx::SubPassDependency> dependencies, Gfx::PViewport viewport, const std::string& name = "");
|
2024-04-09 16:41:12 +02:00
|
|
|
virtual ~RenderPass();
|
2024-04-18 13:33:35 +02:00
|
|
|
void updateRenderPass();
|
2024-06-09 12:20:04 +02:00
|
|
|
MTL::RenderPassDescriptor* getDescriptor() const { return renderPass; }
|
|
|
|
|
|
|
|
|
|
private:
|
2024-04-09 16:41:12 +02:00
|
|
|
PGraphics graphics;
|
|
|
|
|
Gfx::PViewport viewport;
|
2024-04-10 08:43:56 +02:00
|
|
|
MTL::RenderPassDescriptor* renderPass;
|
2024-04-09 16:41:12 +02:00
|
|
|
};
|
|
|
|
|
DEFINE_REF(RenderPass)
|
|
|
|
|
} // namespace Metal
|
|
|
|
|
} // namespace Seele
|