- Home /
Obfuscated .NET DLLs are rejected by Unity3D
I use a software (Crypto Obfuscator for .NET) to obfuscate .NET DLLs without problem when they are running in standalone Windows apps.
However, when I tried to use the same DLLs with Unity3D, i.e. make Custom-Unity-Editor call these DLLs, I have numerous errors. Most of the errors are due to Unity can't load custom .NET types in the assemblies.
Has anyone experienced similar issues?
I am realistic about the protection can be offered by Obfuscation software. I don’t want to get into discussion about whether to use such software.
Can anyone help me with practical advices for my situation, e.g. - Is there a better Obfuscator for Unity3D - What should I do to get the assemblies accepted by Unity, e.g. setting, attributes to add to the classes called by Unity
Thanks in advance.
you might check the .net version of your dll vs the compatible versions for unity
You may have problems if you are obfuscating the names of classes and methods, as unity uses reflection for various purposes, most notably the serialization and messaging.
The version is not the issue since all my assemblies are compiled to .NET 3.5, and Unity works O$$anonymous$$ with the DLLs that are not obfuscated.
It would definitely cause the problem, as unity depends on reflection