2021년 4학년 1학기 기업연계프로젝트2
컴퓨터소프트웨어공학과 <원광투어팀>
팀장 : 송유진
팀원 : 김나영, 이경희, 한유진
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//======= Copyright (c) Valve Corporation, All rights reserved. ===============
//
// Purpose: Custom inspector display for SteamVR_Camera
//
//=============================================================================
using UnityEngine;using UnityEditor;using System.IO;using Valve.VR;
[CustomEditor(typeof(SteamVR_Camera)), CanEditMultipleObjects]public class SteamVR_Editor : Editor{ int bannerHeight = 150; Texture logo;
SerializedProperty script, wireframe;
string GetResourcePath() { var ms = MonoScript.FromScriptableObject(this); var path = AssetDatabase.GetAssetPath(ms); path = Path.GetDirectoryName(path); return path.Substring(0, path.Length - "Editor".Length) + "Textures/"; }
void OnEnable() { var resourcePath = GetResourcePath();
logo = AssetDatabase.LoadAssetAtPath<Texture2D>(resourcePath + "logo.png");
script = serializedObject.FindProperty("m_Script");
wireframe = serializedObject.FindProperty("wireframe");
foreach (SteamVR_Camera target in targets) target.ForceLast(); }
public override void OnInspectorGUI() { serializedObject.Update();
var rect = GUILayoutUtility.GetRect(Screen.width - 38, bannerHeight, GUI.skin.box); if (logo) GUI.DrawTexture(rect, logo, ScaleMode.ScaleToFit);
if (!Application.isPlaying) { var expand = false; var collapse = false; foreach (SteamVR_Camera target in targets) { if (AssetDatabase.Contains(target)) continue; if (target.isExpanded) collapse = true; else expand = true; }
if (expand) { GUILayout.BeginHorizontal(); if (GUILayout.Button("Expand")) { foreach (SteamVR_Camera target in targets) { if (AssetDatabase.Contains(target)) continue; if (!target.isExpanded) { target.Expand(); EditorUtility.SetDirty(target); } } } GUILayout.Space(18); GUILayout.EndHorizontal(); }
if (collapse) { GUILayout.BeginHorizontal(); if (GUILayout.Button("Collapse")) { foreach (SteamVR_Camera target in targets) { if (AssetDatabase.Contains(target)) continue; if (target.isExpanded) { target.Collapse(); EditorUtility.SetDirty(target); } } } GUILayout.Space(18); GUILayout.EndHorizontal(); } }
EditorGUILayout.PropertyField(script); EditorGUILayout.PropertyField(wireframe);
serializedObject.ApplyModifiedProperties(); }
public static void ExportPackage() { AssetDatabase.ExportPackage(new string[] { "Assets/SteamVR", "Assets/Plugins/openvr_api.cs", "Assets/Plugins/openvr_api.bundle", "Assets/Plugins/x86/openvr_api.dll", "Assets/Plugins/x86/steam_api.dll", "Assets/Plugins/x86/libsteam_api.so", "Assets/Plugins/x86_64/openvr_api.dll", "Assets/Plugins/x86_64/steam_api.dll", "Assets/Plugins/x86_64/libsteam_api.so", "Assets/Plugins/x86_64/libopenvr_api.so", }, "steamvr.unitypackage", ExportPackageOptions.Recurse); EditorApplication.Exit(0); }}
|