forward.h

cross platform rendering playground

src/passes/forward/forward.h

756 B
#pragma once

#include "passes/ddgi/ddgi_trace.h"
#include "passes/fg.h"
#include "pipelines.h"
#include "scene/light.h"

struct FrameData;
struct RenderData;
struct Scene;

namespace forward {

struct Resources {
    ImageHandle hdr;
    ImageHandle depth;
    ImageHandle hdr_msaa;
    ImageHandle depth_msaa;
};

Resources record(
    rhi::Device &device,
    Pipelines &pipelines,
    rhi::ShaderCompiler &sc,
    FrameGraph &fg,
    BufferHandle indirect,
    BufferHandle draw_count,
    BufferHandle visible,
    ImageHandle cascade[Light::CASCADE_COUNT],
    BufferHandle cluster_bounds,
    BufferHandle cluster_records,
    BufferHandle light_index_list,
    ddgi_trace::Resources &ddgi,
    ImageHandle &depth_texture
);

} // namespace forward