Im in the process of migrating my Unity 4 Project to Unity 5... and while I expected a lot of pain doing that (seeing how much of the API changed), I wasn't prepared for this particular problem.
Now I know that I might need to contact Unity about this problem, but a) I don't really trust Unity user support too much, they are fine guys and are usually very helpful, but seem to be usually COMPLETELY drowned in work (most of the time, I get no response), and b) same can be said about the Unity forums. I DID start a thread in the Unity forums, no response for a week does not make me confident that I will get any help in a timely manner there.
And as there are a lot of fellow unity users on this forum, I will just try my luck here. Maybe someone ran into the same problem before and was able to fix it?
Here is what I wrote on the unity forums:
Hi
I just imported my Unity 4.3 Project into my new Unity 5 installation. I expected many errors to fix, but some of them really make me scratch my head, no less as they are affecting 3rd party dev assets.
This is especially weird: I have had the Logitech SDK in my project for a long time now to use DirectInput for the XBOX Controllers (So I could get rumble to work). Now, this has always worked just fine in Unity 4, with no error whatssoever. I haven't changed anything before or after the import to Unity 5, still there are now new errors popping up in the console:
Multiple plugins with the same name 'logitechlcd' (found at 'Assets/Logitech SDK/Lib/LCD Lib/x64/LogitechLcd.dll' and 'Assets/Logitech SDK/Lib/LCD Lib/x86/LogitechLcd.dll'). That means one or more plugins are set to be compatible with Editor. Only one plugin at the time can be used by Editor.
Could anyone help me what is the problem here? I read that having multiple dlls share the same name in the same folder could be a problem, but these seem to be properly put into their own folder to distinguish between x86 and x64 versions, even if the GUID wouldn't be correctly set.
Anyone got the Logitech SDK already to work with Unity 5? What did you do? Do I need to rip it out of the project and re-import the SDK?
Thanks in advance for any help!
Gian-Reto
EDIT: just to be clear, this problem affects ALL plugin dlls, not just the logitech ones! I get such errors all over the place.
Seems Unity 5 cannot handle DLLs with the same name, even if they are in different folders. I don't think this is expected behaviour?
Now, to describe the problem in a more detailled and precise form:
Since starting to use Unity 5, it seems DLLs contained in different directories but sharing the same name started conflicting with each other and throwing errors as seen above in my Unity forum post.
This affects ALL DLLs, not just the LogitechSDK ones! This same setup worked fine in Unity 4, and according to the documentation, should also work fine.
Now, it could be that Unity somehow changed the naming rules for DLLs (which I would be a little bit puzzled about, as it would mean lots of third party asset providers had to redo their DLL naming for no good reason), or that this is just a teething problem of Unity 5. I couldn't find a thread on that particular problem in the Unity forum and on google, but I cannot be the only one facing this problem.
I got this problem when migrating my old Unity 4 project to Unity 5, and I get the same problem when creating a new Unity 5 project, and import the LigtechSDK into it. I get the same errors for any other Unity package that use multiple DLLs with the same name in different dirs.
Anyone got the same problem and found a way to fix it? Anyone got any idea what I could try before I contact the thirdparty asset providers and tell them to fix their naming?
Thanks for any help
Gian-Reto