### Godot version

4.0.1.stable

### System information

Manjaro Linux

### Issue description

As the title mentions, setting the property `trail_lifetime` of `GPUParticles3D` below 0.1 will - as defined in `servers/rendering/renderer_rd/storage_rd/particles_storage.cpp:424` - always result in the error message: 

`ERROR: Condition "p_length < 0.1" is true.`

This is true for setting it from the editor and from script. Since this is a hardcoded value, would it not be more user-friendly to limit the `p_length` and warn the user if they try to set it below this threshold? 

### Steps to reproduce

Create a scene with `GPUParticles3D` and set the property `trail_lifetime` below 0.1 from editor or script.

### Minimal reproduction project

Trivial
}
			}
		}
		BaseMaterial3D *spat = Object::cast_to<BaseMaterial3D>(get_material_override().ptr());
		if (spat) {
			no_materials = false;
		}
		if (spat && !spat->get_flag(BaseMaterial3D::FLAG_PARTICLE_TRAILS_MODE)) {
			missing_trails = true;
		}
		if (dp_count && skin.is_valid()) {
			warnings.push_back(RTR("Using Trail meshes with a skin causes Skin to override Trail poses. Suggest removing the Skin."));
		} else if (dp_count == 0 && skin.is_null()) {
			warnings.push_back(RTR("Trails active, but neither Trail meshes or a Skin were found."));
		} else if (dp_count > 1) {
			warnings.push_back(RTR("Only one Trail mesh is supported. If you want to use more than a single mesh, a Skin is needed (see documentation)."));
		}
		if ((dp_count || !skin.is_null()) && (missing_trails || no_materials)) {
			warnings.push_back(RTR("Trails enabled, but one or more mesh materials are either missing or not set for trails rendering."));
		}
		if (OS::get_singleton()->get_current_rendering_method() == "gl_compatibility") {
			warnings.push_back(RTR("Particle trails are only available when using the Forward+ or Mobile rendering backends."));
		}
	}
	if (sub_emitter != NodePath() && OS::get_singleton()->get_current_rendering_method() == "gl_compatibility") {
		warnings.push_back(RTR("Particle sub-emitters are only available when using the Forward+ or Mobile rendering backends."));
	}
	return warnings;
}
void GPUParticles3D::restart() {