Compute SSAO at half resolution by default

This provides a significant speedup for a small quality loss.

The quality loss is generally more noticeable during a project's
early stages of development (e.g. in level blockouts)
than it is in a finished project.
This commit is contained in:
Hugo Locurcio 2021-06-19 11:51:51 +02:00
parent 45428e91ba
commit 44af98cd12
No known key found for this signature in database
GPG Key ID: 39E8F8BE30B0A49C
2 changed files with 3 additions and 7 deletions

View File

@ -1643,11 +1643,8 @@
<member name="rendering/environment/ssao/fadeout_to" type="float" setter="" getter="" default="300.0">
Distance at which the screen-space ambient occlusion is fully faded out. Use this hide ambient occlusion at great distances.
</member>
<member name="rendering/environment/ssao/half_size" type="bool" setter="" getter="" default="false">
If [code]true[/code], screen-space ambient occlusion will be rendered at half size and then upscaled before being added to the scene. This is significantly faster but may miss small details.
</member>
<member name="rendering/environment/ssao/half_size.mobile" type="bool" setter="" getter="" default="true">
Lower-end override for [member rendering/environment/ssao/half_size] on mobile devices, due to performance concerns.
<member name="rendering/environment/ssao/half_size" type="bool" setter="" getter="" default="true">
If [code]true[/code], screen-space ambient occlusion will be rendered at half size and then upscaled before being added to the scene. This is significantly faster but may miss small details. If [code]false[/code], screen-space ambient occlusion will be rendered at full size.
</member>
<member name="rendering/environment/ssao/quality" type="int" setter="" getter="" default="2">
Sets the quality of the screen-space ambient occlusion effect. Higher values take more samples and so will result in better quality, at the cost of performance. Setting to [code]ULTRA[/code] will use the [member rendering/environment/ssao/adaptive_target] setting.

View File

@ -2896,8 +2896,7 @@ RenderingServer::RenderingServer() {
GLOBAL_DEF("rendering/environment/ssao/quality", 2);
ProjectSettings::get_singleton()->set_custom_property_info("rendering/environment/ssao/quality", PropertyInfo(Variant::INT, "rendering/environment/ssao/quality", PROPERTY_HINT_ENUM, "Very Low (Fast),Low (Fast),Medium (Average),High (Slow),Ultra (Custom)"));
GLOBAL_DEF("rendering/environment/ssao/half_size", false);
GLOBAL_DEF("rendering/environment/ssao/half_size.mobile", true);
GLOBAL_DEF("rendering/environment/ssao/half_size", true);
GLOBAL_DEF("rendering/environment/ssao/adaptive_target", 0.5);
ProjectSettings::get_singleton()->set_custom_property_info("rendering/environment/ssao/adaptive_target", PropertyInfo(Variant::FLOAT, "rendering/environment/ssao/adaptive_target", PROPERTY_HINT_RANGE, "0.0,1.0,0.01"));
GLOBAL_DEF("rendering/environment/ssao/blur_passes", 2);