summaryrefslogtreecommitdiff
path: root/Runtime/Camera/SceneCulling.h
blob: baae99e4eb5a647b6390cc6b1821177643917f6b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#pragma once

#include "Runtime/Utilities/dynamic_array.h"

struct CullingOutput;
struct SceneCullingParameters;
class IntermediateRenderer;
struct SceneNode;
class AABB;
class Sphere;
class IntermediateRenderers;

void CullSceneWithUmbra (SceneCullingParameters& cullingParams, CullingOutput& output);
void CullSceneWithoutUmbra (const SceneCullingParameters& cullingParams, CullingOutput& output);

bool IsNodeVisible (const SceneNode& node, const AABB& aabb, const SceneCullingParameters& params);

void CullShadowCastersWithUmbra (const SceneCullingParameters& cullingParams, CullingOutput& output);