summaryrefslogtreecommitdiff
path: root/scene/resources/environment.h
diff options
context:
space:
mode:
authorJuan Linietsky <reduzio@gmail.com>2016-12-10 01:13:20 -0300
committerJuan Linietsky <reduzio@gmail.com>2016-12-10 01:13:20 -0300
commit22a90e8f2acce60f92958788a52b3f0bdb1a0cdf (patch)
treef6e0a7282992c9adf3e1c929d2462ae921bcd461 /scene/resources/environment.h
parent18ebd22000478dffc91255e89b9845f74b05b606 (diff)
DOF blur, near and far fields..
Diffstat (limited to 'scene/resources/environment.h')
-rw-r--r--scene/resources/environment.h53
1 files changed, 51 insertions, 2 deletions
diff --git a/scene/resources/environment.h b/scene/resources/environment.h
index 50c48165e8..fcf3e1edc6 100644
--- a/scene/resources/environment.h
+++ b/scene/resources/environment.h
@@ -65,6 +65,11 @@ public:
GLOW_BLEND_MODE_REPLACE,
};
+ enum DOFBlurQuality {
+ DOF_BLUR_QUALITY_LOW,
+ DOF_BLUR_QUALITY_MEDIUM,
+ DOF_BLUR_QUALITY_HIGH,
+ };
private:
RID environment;
@@ -120,7 +125,19 @@ private:
GlowBlendMode glow_blend_mode;
float glow_hdr_bleed_treshold;
float glow_hdr_bleed_scale;
+ bool glow_bicubic_upscale;
+
+ bool dof_blur_far_enabled;
+ float dof_blur_far_distance;
+ float dof_blur_far_transition;
+ float dof_blur_far_amount;
+ DOFBlurQuality dof_blur_far_quality;
+ bool dof_blur_near_enabled;
+ float dof_blur_near_distance;
+ float dof_blur_near_transition;
+ float dof_blur_near_amount;
+ DOFBlurQuality dof_blur_near_quality;
protected:
@@ -199,7 +216,7 @@ public:
void set_ssr_accel(float p_accel);
float get_ssr_accel() const;
- void set_ssr_fade(float p_fade);
+ void set_ssr_fade(float p_transition);
float get_ssr_fade() const;
void set_ssr_depth_tolerance(float p_depth_tolerance);
@@ -263,6 +280,38 @@ public:
void set_glow_hdr_bleed_scale(float p_scale);
float get_glow_hdr_bleed_scale() const;
+ void set_glow_bicubic_upscale(bool p_enable);
+ bool is_glow_bicubic_upscale_enabled() const;
+
+ void set_dof_blur_far_enabled(bool p_enable);
+ bool is_dof_blur_far_enabled() const;
+
+ void set_dof_blur_far_distance(float p_distance);
+ float get_dof_blur_far_distance() const;
+
+ void set_dof_blur_far_transition(float p_distance);
+ float get_dof_blur_far_transition() const;
+
+ void set_dof_blur_far_amount(float p_amount);
+ float get_dof_blur_far_amount() const;
+
+ void set_dof_blur_far_quality(DOFBlurQuality p_quality);
+ DOFBlurQuality get_dof_blur_far_quality() const;
+
+ void set_dof_blur_near_enabled(bool p_enable);
+ bool is_dof_blur_near_enabled() const;
+
+ void set_dof_blur_near_distance(float p_distance);
+ float get_dof_blur_near_distance() const;
+
+ void set_dof_blur_near_transition(float p_distance);
+ float get_dof_blur_near_transition() const;
+
+ void set_dof_blur_near_amount(float p_amount);
+ float get_dof_blur_near_amount() const;
+
+ void set_dof_blur_near_quality(DOFBlurQuality p_quality);
+ DOFBlurQuality get_dof_blur_near_quality() const;
virtual RID get_rid() const;
@@ -277,6 +326,6 @@ public:
VARIANT_ENUM_CAST(Environment::BGMode)
VARIANT_ENUM_CAST(Environment::ToneMapper)
VARIANT_ENUM_CAST(Environment::GlowBlendMode)
-
+VARIANT_ENUM_CAST(Environment::DOFBlurQuality)
#endif // ENVIRONMENT_H