Search Unity

Why does Unity keep changing the CPU setting on my DLLs?

Discussion in 'Windows' started by Ecnassianer, Feb 12, 2019.

  1. Ecnassianer

    Ecnassianer

    Joined:
    Sep 1, 2015
    Posts:
    5
    I'm using Unity 2018.3.0f2. I have some custom built DLLs that I've built for different architectures. Among them are a version for x86 and a version for x64.

    Unity naturally complains that there is a DLL collision:

    Multiple plugins with the same name 'uwpbridgedll' (found at 'Assets/UWPBridgeDll/x64/UWPBridgeDll.dll' and 'Assets/Plugins/UWPBridgeDll/x86/UWPBridgeDll.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.
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)​

    So I went to go set each DLL to be specific to a particular architecture. Crazy thing is, every time I change the architecture on one, Unity changes the architecture on the other to match, so they stay colliding! Watch:

    UnityInsistsOnPlatform.gif

    What's going on?! Why is it changing the setting out from under me?
     
  2. Antypodish

    Antypodish

    Joined:
    Apr 29, 2014
    Posts:
    10,778
    Platform settings probably sharing same UI elements.
    But I suspect, once you apply settings on right, left settings of dll are not overwritten, other than UI elements.

    I suspect problem is more, that you have two files with same name uwpbridgedll, irrespectively to the directory, where they are.
    Hence conflict.
     
  3. Tautvydas-Zilys

    Tautvydas-Zilys

    Unity Technologies

    Joined:
    Jul 25, 2013
    Posts:
    10,680
    That is bizarre. Can we have a bug report?

    In the mean time, you should be able to change the architecture on each of them manually by editing .meta file next to each DLL file in a text editor.
     
    Ecnassianer likes this.
  4. Ecnassianer

    Ecnassianer

    Joined:
    Sep 1, 2015
    Posts:
    5