private static void Initialize() { #if UNITY_ANDROID && !UNITY_EDITOR IntPtr gvrContext = GvrSettings.GetValidGvrNativePtrOrLogError(); seeThroughConfig = gvr_beta_see_through_config_create(gvrContext); #endif }
public static bool IsFeatureSupported(GvrBetaFeature feature) { bool supported = false; #if UNITY_ANDROID && !UNITY_EDITOR IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); supported = AndroidNativeHeadsetProvider.gvr_is_feature_supported(gvrContextPtr, (int)feature); #endif return(supported); }
public static bool IsFeatureEnabled(GvrBetaFeature feature) { bool enabled = false; #if UNITY_ANDROID && !UNITY_EDITOR IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); IntPtr gvrUserPrefsPtr = GvrSettings.gvr_get_user_prefs(gvrContextPtr); enabled = gvr_user_prefs_is_feature_enabled(gvrUserPrefsPtr, (int)feature); #endif return(enabled); }
/// Set the Cardboard viewer params. /// Example URI for 2015 Cardboard Viewer V2: /// http://google.com/cardboard/cfg?p=CgZHb29nbGUSEkNhcmRib2FyZCBJL08gMjAxNR0rGBU9JQHegj0qEAAASEIAAEhCAABIQgAASEJYADUpXA89OggeZnc-Ej6aPlAAYAM public static void SetViewerProfile(String viewerProfileUri) { #if (UNITY_ANDROID || UNITY_IOS) && !UNITY_EDITOR IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); if (gvrContextPtr == IntPtr.Zero) { return; } gvr_set_default_viewer_profile(gvrContextPtr, viewerProfileUri); #endif // (UNITY_ANDROID || UNITY_IOS) && !UNITY_EDITOR Debug.Log("Unavailable for non-Android and non-iOS builds"); }
/// Manual recenter for Cardboard apps. After recentering the camera's orientation will be given /// in the new recentered coordinate system. /// Do not use for Daydream apps as controller based recentering is handled automatically by /// Google VR Services, see `GvrControllerInput.Rencentered` for details. public static void Recenter() { #if (UNITY_ANDROID || UNITY_IOS) && !UNITY_EDITOR IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); if (gvrContextPtr == IntPtr.Zero) { return; } gvr_reset_tracking(gvrContextPtr); #endif // (UNITY_ANDROID || UNITY_IOS) && !UNITY_EDITOR Debug.Log("Use GvrEditorEmulator for in-editor recentering"); }
public static void RequestFeatures(GvrBetaFeature[] requiredFeatures, GvrBetaFeature[] optionalFeatures) { #if UNITY_ANDROID && !UNITY_EDITOR IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); int reqLen = requiredFeatures != null ? requiredFeatures.Length : 0; int optLen = optionalFeatures != null ? optionalFeatures.Length : 0; gvr_request_features(gvrContextPtr, FeaturesToIds(requiredFeatures), reqLen, FeaturesToIds(optionalFeatures), optLen, IntPtr.Zero); #endif }
public static void SetSeeThroughConfig(GvrBetaSeeThroughCameraMode cameraMode, GvrBetaSeeThroughSceneType sceneType) { #if UNITY_ANDROID && !UNITY_EDITOR if (seeThroughConfig == IntPtr.Zero) { Initialize(); } gvr_beta_see_through_config_set_camera_mode(seeThroughConfig, (int)cameraMode); gvr_beta_see_through_config_set_scene_type(seeThroughConfig, (int)sceneType); IntPtr gvrContextPtr = GvrSettings.GetValidGvrNativePtrOrLogError(); gvr_beta_set_see_through_config(gvrContextPtr, seeThroughConfig); #endif }