refactor: formalize directional shadow planning settings
This commit is contained in:
@@ -12,8 +12,24 @@ class Scene;
|
||||
|
||||
namespace Rendering {
|
||||
|
||||
struct DirectionalShadowPlanningSettings {
|
||||
uint32_t mapDimension = 1024u;
|
||||
float minFocusDistance = 5.0f;
|
||||
float maxFocusDistance = 64.0f;
|
||||
float perspectiveFocusFactor = 1.0f;
|
||||
float orthographicFocusFactor = 2.0f;
|
||||
float minDepthRange = 20.0f;
|
||||
float boundsPadding = 1.0f;
|
||||
float minDepthPadding = 2.0f;
|
||||
};
|
||||
|
||||
class SceneRenderRequestPlanner {
|
||||
public:
|
||||
SceneRenderRequestPlanner() = default;
|
||||
|
||||
void SetDirectionalShadowPlanningSettings(const DirectionalShadowPlanningSettings& settings);
|
||||
const DirectionalShadowPlanningSettings& GetDirectionalShadowPlanningSettings() const;
|
||||
|
||||
std::vector<Components::CameraComponent*> CollectCameras(
|
||||
const Components::Scene& scene,
|
||||
Components::CameraComponent* overrideCamera) const;
|
||||
@@ -23,6 +39,9 @@ public:
|
||||
Components::CameraComponent* overrideCamera,
|
||||
const RenderContext& context,
|
||||
const RenderSurface& surface) const;
|
||||
|
||||
private:
|
||||
DirectionalShadowPlanningSettings m_directionalShadowPlanningSettings = {};
|
||||
};
|
||||
|
||||
} // namespace Rendering
|
||||
|
||||
Reference in New Issue
Block a user