public static void AttachKinect(ProjectorBrain brain, ProjectorEyes eyes, Vector3 location, string path) { KinectBrain kinectBrain = brain.gameObject.AddComponent <KinectBrain>(); eyes.gameObject.AddComponent <KinectActor>(); eyes.gameObject.AddComponent <KinectHead>(); KinectSettings asset = ScriptableObject.CreateInstance <KinectSettings>(); asset.SensorLocation = location; asset.TrackingArea = new Rect(0f, 0f, 2f, 2f); AssetDatabase.CreateAsset(asset, "Assets/" + path + "/Kinect_Settings.asset"); EditorUtility.SetDirty(asset); kinectBrain.Settings = asset; }
public static void InstantiateImportExport(ProjectorBrain projectorBrain, ProjectorMount mount, KinectBrain kinectBrain, string name, string path) { GameObject go = new GameObject(name + " ImportExport"); go.transform.position = Vector3.zero; ImportExportSettings asset = ScriptableObject.CreateInstance <ImportExportSettings>(); AssetDatabase.CreateAsset(asset, "Assets/" + path + "/Import_Export_Settings.asset"); EditorUtility.SetDirty(asset); ImportExportSystem importExport = go.AddComponent <ImportExportSystem>(); importExport.Settings = asset; importExport.EnableInEditor = false; importExport.Entries = new List <ImportExportEntry>(); importExport.Entries.Add(new ImportExportEntry(projectorBrain.gameObject, projectorBrain.Settings)); ProjectorEmitter[] emitters = mount.Get(); for (int i = emitters.Length - 1; i >= 0; --i) { importExport.Entries.Add(new ImportExportEntry(emitters[i].gameObject, emitters[i].Configuration)); } importExport.Entries.Add(new ImportExportEntry(kinectBrain.gameObject, kinectBrain.Settings)); }
public static void InstantiateMenu(ProjectorBrain projectorBrain, ProjectorMount mount, KinectBrain kinectBrain, string name) { GameObject eventSystem = PrefabUtility.InstantiatePrefab("EventSystem"); eventSystem.name = "EventSystem"; GameObject menu = PrefabUtility.InstantiatePrefab("Menu"); menu.name = name + " Menu"; ProjectorEmitter[] emitters = mount.Get(); Camera menuCamera = null; for (int i = emitters.Length - 1; i >= 0; --i) { if (emitters[i].Configuration.DisplayName == "Front") { menuCamera = emitters[i].GetComponent <Camera>(); break; } } if (menuCamera == null) { menuCamera = emitters[0].Camera.GetComponent <Camera>(); } MenuManager menuManager = menu.GetComponent <MenuManager>(); menuManager.MenuCamera = menuCamera; menuManager.ProjectorBrain = projectorBrain; menuManager.KinectBrain = kinectBrain; }