diff --git a/scene/resources/environment.cpp b/scene/resources/environment.cpp index 67757155c56..a57b7bbb429 100644 --- a/scene/resources/environment.cpp +++ b/scene/resources/environment.cpp @@ -334,6 +334,19 @@ void Environment::_validate_property(PropertyInfo &property) const { }; + static const char *high_end_prefixes[] = { + "auto_exposure_", + "tonemap_", + "ss_reflections_", + "ssao_", + "dof_blur_far_", + "dof_blur_near_", + "glow_", + "adjustment_", + NULL + + }; + const char **prefixes = hide_prefixes; while (*prefixes) { String prefix = String(*prefixes); @@ -346,6 +359,20 @@ void Environment::_validate_property(PropertyInfo &property) const { prefixes++; } + + if (VisualServer::get_singleton()->is_low_end()) { + prefixes = high_end_prefixes; + while (*prefixes) { + String prefix = String(*prefixes); + + if (property.name.begins_with(prefix)) { + property.usage = PROPERTY_USAGE_NOEDITOR | PROPERTY_USAGE_INTERNAL; + return; + } + + prefixes++; + } + } } void Environment::set_ssr_enabled(bool p_enable) {