|
|
- namespace Oculus.Platform
- {
- using UnityEngine;
- using System;
- using System.Collections;
- using System.Runtime.InteropServices;
-
- public sealed class StandalonePlatform
- {
- [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
- public delegate void UnityLogDelegate(IntPtr tag, IntPtr msg);
-
- public Request<Models.PlatformInitialize> InitializeInEditor()
- {
- #if UNITY_ANDROID
- if (String.IsNullOrEmpty(PlatformSettings.MobileAppID))
- {
- throw new UnityException("Update your App ID by selecting 'Oculus Platform' -> 'Edit Settings'");
- }
- var appID = PlatformSettings.MobileAppID;
- #else
- if (String.IsNullOrEmpty(PlatformSettings.AppID))
- {
- throw new UnityException("Update your App ID by selecting 'Oculus Platform' -> 'Edit Settings'");
- }
- var appID = PlatformSettings.AppID;
- #endif
- if (String.IsNullOrEmpty(StandalonePlatformSettings.OculusPlatformTestUserAccessToken))
- {
- throw new UnityException("Update your standalone credentials by selecting 'Oculus Platform' -> 'Edit Settings'");
- }
- var accessToken = StandalonePlatformSettings.OculusPlatformTestUserAccessToken;
-
- return AsyncInitialize(UInt64.Parse(appID), accessToken);
- }
-
- public Request<Models.PlatformInitialize> AsyncInitialize(ulong appID, string accessToken)
- {
- CAPI.ovr_UnityResetTestPlatform();
- CAPI.ovr_UnityInitGlobals(IntPtr.Zero);
-
- return new Request<Models.PlatformInitialize>(CAPI.ovr_PlatformInitializeWithAccessToken(appID, accessToken));
- }
- }
- }
|