コード例 #1
0
 static void RunAvailabilityCheck(SupportsInstall supportsInstall, SessionAvailability availability)
 {
     ARSession.s_State = ARSessionState.None;
     InitMock(supportsInstall, availability);
     CheckAvailabilitySync();
     DeinitMock();
 }
コード例 #2
0
        static void InitMock(SupportsInstall supportsInstall, SessionAvailability availability)
        {
            MockLoader.supportsInstall = supportsInstall;
            MockProvider.availability  = availability;
            var xrManager = ScriptableObject.CreateInstance <XRManagerSettings>();

            xrManager.loaders.Clear();
            xrManager.loaders.Add(ScriptableObject.CreateInstance <MockLoader>());
            xrManager.InitializeLoaderSync();
            XRGeneralSettings.Instance         = ScriptableObject.CreateInstance <XRGeneralSettings>();
            XRGeneralSettings.Instance.Manager = xrManager;
        }
コード例 #3
0
        static XRSessionSubsystemDescriptor.Cinfo GetDescriptorCinfo(SupportsInstall supportsInstall)
        {
            var canBeInstalled = supportsInstall == SupportsInstall.Yes;
            var type           = canBeInstalled
                ? typeof(SubsystemThatSupportsInstall)
                : typeof(SubsystemThatDoesNotSupportInstall);

            return(new XRSessionSubsystemDescriptor.Cinfo
            {
                id = GetSubsystemName(supportsInstall),
                providerType = typeof(MockProvider),
                subsystemTypeOverride = type,
                supportsInstall = canBeInstalled,
            });
        }
コード例 #4
0
        static XRSessionSubsystemDescriptor.Cinfo GetDescriptorCinfo(SupportsInstall supportsInstall)
        {
            var canBeInstalled = supportsInstall == SupportsInstall.Yes;
            var type           = canBeInstalled
                ? typeof(SubsystemThatSupportsInstall)
                : typeof(SubsystemThatDoesNotSupportInstall);

            return(new XRSessionSubsystemDescriptor.Cinfo
            {
                id = GetSubsystemName(supportsInstall),
#if UNITY_2020_2_OR_NEWER
                providerType = typeof(MockProvider),
                subsystemTypeOverride = type,
#else
                subsystemImplementationType = type,
#endif
                supportsInstall = canBeInstalled,
            });
        }
コード例 #5
0
 static string GetSubsystemName(SupportsInstall supportsInstall) => $"SessionThatSupportsInstall{supportsInstall.ToString()}";