-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
# Auto detect text files and perform LF normalization | ||
* text=auto |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
/[Ll]ibrary/ | ||
/[Tt]emp/ | ||
/[Oo]bj/ | ||
/[Bb]uild/ | ||
/[Bb]uilds/ | ||
/Assets/AssetStoreTools* | ||
|
||
# Visual Studio 2015 cache directory | ||
/.vs/ | ||
|
||
# Autogenerated VS/MD/Consulo solution and project files | ||
ExportedObj/ | ||
.consulo/ | ||
*.csproj | ||
*.unityproj | ||
*.sln | ||
*.suo | ||
*.tmp | ||
*.user | ||
*.userprefs | ||
*.pidb | ||
*.booproj | ||
*.svd | ||
*.pdb | ||
|
||
# Unity3D generated meta files | ||
*.pidb.meta | ||
|
||
# Unity3D Generated File On Crash Reports | ||
sysinfo.txt | ||
|
||
# Builds | ||
*.apk | ||
*.unitypackage |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,61 @@ | ||
// Copyright 2016 Google Inc. All rights reserved. | ||
// | ||
// Licensed under the Apache License, Version 2.0 (the "License"); | ||
// you may not use this file except in compliance with the License. | ||
// You may obtain a copy of the License at | ||
// | ||
// http://www.apache.org/licenses/LICENSE-2.0 | ||
// | ||
// Unless required by applicable law or agreed to in writing, software | ||
// distributed under the License is distributed on an "AS IS" BASIS, | ||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
// See the License for the specific language governing permissions and | ||
// limitations under the License. | ||
|
||
namespace GoogleVR.Demos { | ||
using UnityEngine; | ||
using UnityEditor; | ||
|
||
[CustomEditor(typeof(DemoInputManager))] | ||
public class DemoInputManagerEditor : Editor { | ||
SerializedProperty emulatedPlatformTypeProp; | ||
SerializedProperty gvrControllerMainProp; | ||
SerializedProperty gvrControllerPointerProp; | ||
SerializedProperty gvrReticlePointerProp; | ||
|
||
void OnEnable () { | ||
gvrControllerMainProp = | ||
serializedObject.FindProperty(DemoInputManager.CONTROLLER_MAIN_PROP_NAME); | ||
gvrControllerPointerProp = | ||
serializedObject.FindProperty(DemoInputManager.CONTROLLER_POINTER_PROP_NAME); | ||
gvrReticlePointerProp = | ||
serializedObject.FindProperty(DemoInputManager.RETICLE_POINTER_PROP_NAME); | ||
|
||
emulatedPlatformTypeProp = | ||
serializedObject.FindProperty(DemoInputManager.EMULATED_PLATFORM_PROP_NAME); | ||
} | ||
|
||
public override void OnInspectorGUI() { | ||
serializedObject.Update(); | ||
|
||
// Add clickable script field, as would have been provided by DrawDefaultInspector() | ||
MonoScript script = MonoScript.FromMonoBehaviour (target as MonoBehaviour); | ||
EditorGUI.BeginDisabledGroup (true); | ||
EditorGUILayout.ObjectField ("Script", script, typeof(MonoScript), false); | ||
EditorGUI.EndDisabledGroup (); | ||
|
||
EditorGUILayout.PropertyField(gvrControllerMainProp); | ||
EditorGUILayout.PropertyField(gvrControllerPointerProp); | ||
EditorGUILayout.PropertyField(gvrReticlePointerProp); | ||
|
||
if (DemoInputManager.playerSettingsHasCardboard() == | ||
DemoInputManager.playerSettingsHasDaydream()) { | ||
// Show the platform emulation dropdown only if both or neither VR SDK selected in | ||
// Player Settings > Virtual Reality supported, | ||
EditorGUILayout.PropertyField(emulatedPlatformTypeProp); | ||
} | ||
|
||
serializedObject.ApplyModifiedProperties(); | ||
} | ||
} | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,138 @@ | ||
// Copyright 2017 Google Inc. All rights reserved. | ||
// | ||
// Licensed under the Apache License, Version 2.0(the "License"); | ||
// you may not use this file except in compliance with the License. | ||
// You may obtain a copy of the License at | ||
// | ||
// http://www.apache.org/licenses/LICENSE-2.0 | ||
// | ||
// Unless required by applicable law or agreed to in writing, software | ||
// distributed under the License is distributed on an "AS IS" BASIS, | ||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
// See the License for the specific language governing permissions and | ||
// limitations under the License. | ||
|
||
// Only invoke custom build processor when building for Android. | ||
#if UNITY_ANDROID | ||
namespace GoogleVR.Demos | ||
{ | ||
using System; | ||
using UnityEditor; | ||
using UnityEditor.Build; | ||
using UnityEditorInternal.VR; | ||
|
||
class PermissionsDemoBuildProcessor : IPreprocessBuild, IPostprocessBuild | ||
{ | ||
private const string SCENE_NAME_PERMISSIONS_DEMO = "PermissionsDemo"; | ||
|
||
private bool m_cardboardAddedFromCode = false; | ||
|
||
public int callbackOrder | ||
{ | ||
get { return 0; } | ||
} | ||
|
||
// OnPreprocessBuild() is called right before the build process begins. If it | ||
// detects that the first enabled scene in the build arrays is the PermissionsDemo, | ||
// and Daydream is in the VR SDKs, it will add Cardboard to the VR SDKs. Because | ||
// the PermissionsDemo needs a perm statement in the Manifest while other demos don't. | ||
// Adding Cardboard to VR SDKs will merge in the Manifest-Cardboard which has perm | ||
// statement in it. | ||
public void OnPreprocessBuild(BuildTarget target, string path) | ||
{ | ||
m_cardboardAddedFromCode = false; | ||
|
||
string[] androidVrSDKs = VREditor.GetVREnabledDevicesOnTargetGroup(BuildTargetGroup.Android); | ||
|
||
EditorBuildSettingsScene[] scenes = EditorBuildSettings.scenes; | ||
|
||
// See if PermissionsDemo is the first enabled scene in the array of scenes to build. | ||
for (int i = 0; i < scenes.Length; i++) | ||
{ | ||
if (scenes[i].path.Contains(SCENE_NAME_PERMISSIONS_DEMO)) | ||
{ | ||
if (!scenes[i].enabled) | ||
{ | ||
return; | ||
} | ||
else | ||
{ | ||
break; | ||
} | ||
} | ||
else | ||
{ | ||
if (scenes[i].enabled) | ||
{ | ||
return; | ||
} | ||
} | ||
} | ||
|
||
bool hasCardboard = Array.Exists<string>(androidVrSDKs, | ||
element => element.Equals(GvrSettings.VR_SDK_CARDBOARD)); | ||
|
||
if (hasCardboard) | ||
{ | ||
return; | ||
} | ||
|
||
bool hasDaydream = Array.Exists<string>(androidVrSDKs, | ||
element => element.Equals(GvrSettings.VR_SDK_DAYDREAM)); | ||
|
||
if (!hasDaydream) | ||
{ | ||
return; | ||
} | ||
|
||
string[] androidVrSDKsAppended = new string[androidVrSDKs.Length+1]; | ||
|
||
for (int i = 0; i < androidVrSDKs.Length; i++) | ||
{ | ||
androidVrSDKsAppended[i] = androidVrSDKs[i]; | ||
} | ||
|
||
androidVrSDKsAppended[androidVrSDKsAppended.Length - 1] = GvrSettings.VR_SDK_CARDBOARD; | ||
|
||
VREditor.SetVREnabledOnTargetGroup( | ||
BuildTargetGroup.Android, true); | ||
VREditor.SetVREnabledDevicesOnTargetGroup( | ||
BuildTargetGroup.Android, | ||
androidVrSDKsAppended); | ||
|
||
m_cardboardAddedFromCode = true; | ||
} | ||
|
||
// OnPostprocessBuild() is called after the build process. It does appropriate cleanup | ||
// so that this script only affects build process for PermissionsDemo, not others. | ||
public void OnPostprocessBuild(BuildTarget target, string path) | ||
{ | ||
if (!m_cardboardAddedFromCode) | ||
return; | ||
|
||
string[] androidVrSDKs = VREditor.GetVREnabledDevicesOnTargetGroup(BuildTargetGroup.Android); | ||
|
||
// The enabled devices are modified somehow, which shouldn't happen. Abort the post build process. | ||
if (androidVrSDKs.Length == 0 || androidVrSDKs[androidVrSDKs.Length - 1] != GvrSettings.VR_SDK_CARDBOARD) | ||
{ | ||
return; | ||
} | ||
|
||
string[] androidVrSDKsShortened = new string[androidVrSDKs.Length - 1]; | ||
|
||
for (int i = 0; i < androidVrSDKsShortened.Length; i++) | ||
{ | ||
androidVrSDKsShortened[i] = androidVrSDKs[i]; | ||
} | ||
|
||
VREditor.SetVREnabledOnTargetGroup( | ||
BuildTargetGroup.Android, true); | ||
VREditor.SetVREnabledDevicesOnTargetGroup( | ||
BuildTargetGroup.Android, | ||
androidVrSDKsShortened); | ||
|
||
m_cardboardAddedFromCode = false; | ||
} | ||
} | ||
} | ||
#endif // UNITY_ANDROID |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.