2020-03-05 11:43:38 +01:00
|
|
|
#pragma once
|
|
|
|
|
#include "RenderPath.h"
|
2021-05-06 17:02:10 +02:00
|
|
|
#include "Graphics/RenderPass/DepthPrepass.h"
|
2021-05-10 23:57:55 +02:00
|
|
|
#include "Graphics/RenderPass/LightCullingPass.h"
|
|
|
|
|
#include "Graphics/RenderPass/BasePass.h"
|
2020-03-05 11:43:38 +01:00
|
|
|
|
|
|
|
|
namespace Seele
|
|
|
|
|
{
|
2021-04-01 16:40:14 +02:00
|
|
|
DECLARE_REF(Scene)
|
|
|
|
|
DECLARE_REF(CameraActor)
|
2020-04-12 15:47:19 +02:00
|
|
|
class SceneRenderPath : public RenderPath
|
|
|
|
|
{
|
|
|
|
|
public:
|
2020-10-03 11:00:10 +02:00
|
|
|
SceneRenderPath(PScene scene, Gfx::PGraphics graphics, Gfx::PViewport target, PCameraActor source);
|
2020-04-12 15:47:19 +02:00
|
|
|
virtual ~SceneRenderPath();
|
2020-06-02 11:46:18 +02:00
|
|
|
void setTargetScene(PScene scene);
|
|
|
|
|
virtual void init();
|
|
|
|
|
virtual void beginFrame();
|
|
|
|
|
virtual void render();
|
|
|
|
|
virtual void endFrame();
|
2020-05-05 01:51:13 +02:00
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
PScene scene;
|
2021-05-06 17:02:10 +02:00
|
|
|
PRenderGraph renderGraph;
|
|
|
|
|
PDepthPrepass depthPrepass;
|
2021-05-10 23:57:55 +02:00
|
|
|
PLightCullingPass lightCullingPass;
|
2021-05-06 17:02:10 +02:00
|
|
|
PBasePass basePass;
|
|
|
|
|
|
2020-04-12 15:47:19 +02:00
|
|
|
};
|
|
|
|
|
} // namespace Seele
|