Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
I recently pulled this library as a package into a new project and had a hard time tracking down the settings to disable the debug feature. I realized that some of the existing settings for debugging or gizmos are checked in as part of the Settings scriptable asset which means one developer's preferences could potentially clobber another developer's preferences.
To make it easier to expose these settings to the user in a standard way as well as to separate user preferences off of the checked-in Settings asset, I've created a new preference class that allows easier access for developers to these settings regardless of the Settings asset location and separates the Gizmo/Debug configuration to use Editor Prefs instead.
A developer can now modify their user preferences at the menu item Unity=>Preferences and navigate to the SOArchitecture section as shown below. These are now saved as Editor Prefs and can differ per developer.
A developer can correspondingly modify the project-wide settings by opening the menu item **Edit=>Project Settings" and navigate to the SOArchitecture section as shown below.
Using the new search fields for the editor windows (in I believe 2019 and later), you can also search for the SOArchitecture library in either the Preferences and Project Settings window to make it easier to find.
One final related change is that I moved the SOArchitecture_Settings instance currently checked in outside of the SO Architecture folder so it would not be included for developers who download this as a package. Including this would potentially prevent them from modifying the contents as well
(usually package contents are protected), but definitely prevents their settings from being overwritten when a new package version is downloaded as package contents are considered disposable when changing versions and are blown away completely during that process. Any customized settings would go away in that circumstance. Its better that this asset is created in the developers Assets/Resources folder initially (just how the Singleton instance creation currently works), but this would be prevented by including this asset in the package contents.
If you have any questions or concerns please let me know on the PR!