Issue with Oculus Integration 1.36 (Unity 2018.3)

Hello everyone, I just updated unity to 2018.3.11f1 and Oculus SDK (from store) and after that I get a lot of C# errors, like types and namespaces are not defined or found.

Partially solved the issue moving the SDK scripts into plugins (since Unity compiles them first) but I still have these 2 errors that prevent me from compiling the whole project. ("“ZEditor” folder is the folder containing all of the scripts that were in the Oculus/VR/Editor folder)

Assets/Plugins/ZEditor/OVRSystemProfilerPanel.cs(38,2): error CS0246: The type or namespace name ‘OVRNetwork’ could not be found (are you missing a using directive or an assembly reference?)
Assets/Plugins/ZEditor/OVRSystemProfilerPanel.cs(46,7): error CS0246: The type or namespace name ‘OVRSystemPerfMetrics’ could not be found (are you missing a using directive or an assembly reference?)

Is there any clean way to solve this? I’d like to NOT move those classes into the scripts requiring them

I haven’t edited anything within the files

OVRSystemPerfMetrics is inside the Oculus > VR folder. Its used in the OVRCameraRig and other OVRprefabs. Its recommended to not import oculus into a project that already contains oculus scripts. First remove all scripts from oculus, or the entire oculus folder for that matter, before importing oculus integration.

For reference: I had the same issue. In my case, the issue was caused by moving our game’s code from the default assembly to a custom assembly definition (reference), so we no longer had an automatic reference to the OVRPlugin assembly

Fix was to add a reference to Oculus.VR assembly in our custom assembly definition:

  • OVR plug-in is in <MyProjectFolder>/Assets/Oculus

  • Our assembly is in <MyProjectFolder>/Assets/Scripts/MyProjectAssembly

  • Our MyProjectAssembly.asmdef file:

    {
    “name”: “MyProjectAssembly”,
    “references”: [
    “Oculus.VR”
    ],
    “optionalUnityReferences”: ,
    “includePlatforms”: ,
    “excludePlatforms”: ,
    “allowUnsafeCode”: false,
    “overrideReferences”: false,
    “precompiledReferences”: ,
    “autoReferenced”: false,
    “defineConstraints”: ,
    “versionDefines”:
    }