Is it possible for me to create a custom script that will fully disable auto refresh for other locations in Unity that triggers it (in my case, asset creation/deletion)?
Or is this a bug that can be fixed by the Unity team so that unchecking the setting fully disables it in all locations?
Unchecking the Asset Pipeline → Auto Refresh setting doesn’t fully disable this
"Reload Script Assemblies" behavoiur. In particular I found that even though this setting is disabled, it still happens for every new or removed Asset (i.e.; creating a script via Assets → Right click → Select
C# Script, or removing one via in Assets → Right click an asset → Select
Delete). I’m not a fan of this Auto Refresh functionality (anywhere in Unity), it’s very disruptive and annoying to keep running into it with very minor changes.
In addition to the Auto Refresh setting, I have my General → Script Changes While Playing set to
Recompile And Continue Playing, but I’m not currently playing when this refreshing happens so I know that isn’t what’s triggering this. Instead it feels like there’s other locations in Unity that should be respecting the Asset Pipeline → Auto Refresh setting but aren’t setup to respect that setting.
There’s lots of articles about how to disable auto refresh, but I haven’t found any that are specific to new or deleted assets (some links I’ve found listed below); they’re primarily for code updates to existing scripts, or when starting to play (or already playing).
but aren’t similar enough to help me solve this problem:
Can you disable the autorecompile? - Questions & Answers - Unity Discussions
This one suggests adding a script that changes some Unity behaviour, but I haven’t tested this yet as I’m not entirely sure how to do it yet (and I’m not convinced this will prevent the auto refresh from asset changes), but I’m currently researching this path.
MacBook Pro macOS Catalina Version 10.15.7