@Flongo28 is kind of right. Here is how I fixed it for me within the project without specifying an absolute path.
- Install the unitypackage if not done already: Rightclick on the Asset Folder in the Project View -> Import Package \ Custom Package -> select
cleaner.unitypackage downloaded from this git.
- Locate the ClassReferenceCollection.cs at
<project root dir>\Assets\Cleaner\Editor\ClassReferenceCollection.cs
- Change the
CollectionAllClasses function. There needs to be absolute references, not relative as the LoadFile function gets a.t.m..
Here is what the function should look like:
List<System.Type> CollectionAllClasses ()
{
List<System.Type> alltypes = new List<System.Type> ();
string projectPath = Path.GetDirectoryName(Application.dataPath);
string assemblyPath = Path.Combine(projectPath, "Library/ScriptAssemblies/Assembly-CSharp.dll");
if (File.Exists(assemblyPath)) {
alltypes.AddRange(Assembly.LoadFile(assemblyPath).GetTypes());
}
if (isSaveEditorCode)
{
string editorAssemblyPath = Path.Combine(projectPath, "Library/ScriptAssemblies/Assembly-CSharp-Editor.dll");
if (File.Exists(editorAssemblyPath))
alltypes.AddRange(Assembly.LoadFile(editorAssemblyPath).GetTypes());
}
return alltypes .ToList ();
}
You may copy and overwrite your definition with the given code.
-
If not done so, make a backup of your asset and library folder! It killed all urp shaders because i did not uncheck them in the process.
-
Save and go back to the Editor -> Window -> Delete Unused Settings.
-
Profit.
I do not have the time to make this a pull request. If someone does so, I would highly appreciate that.
Originally posted by @MatthiasPopp in #3 (comment)