14 int bannerHeight = 150;
17 SerializedProperty script, wireframe;
19 string GetResourcePath()
21 var ms = MonoScript.FromScriptableObject(
this);
22 var path = AssetDatabase.GetAssetPath(ms);
23 path = Path.GetDirectoryName(path);
24 return path.Substring(0, path.Length -
"Editor".Length) +
"Textures/";
29 var resourcePath = GetResourcePath();
31 logo = AssetDatabase.LoadAssetAtPath<Texture2D>(resourcePath +
"logo.png");
33 script = serializedObject.FindProperty(
"m_Script");
35 wireframe = serializedObject.FindProperty(
"wireframe");
41 public override void OnInspectorGUI()
43 serializedObject.Update();
45 var rect = GUILayoutUtility.GetRect(Screen.width - 38, bannerHeight, GUI.skin.box);
47 GUI.DrawTexture(rect, logo, ScaleMode.ScaleToFit);
49 if (!Application.isPlaying)
55 if (AssetDatabase.Contains(target))
57 if (target.isExpanded)
65 GUILayout.BeginHorizontal();
66 if (GUILayout.Button(
"Expand"))
70 if (AssetDatabase.Contains(target))
72 if (!target.isExpanded)
75 EditorUtility.SetDirty(target);
80 GUILayout.EndHorizontal();
85 GUILayout.BeginHorizontal();
86 if (GUILayout.Button(
"Collapse"))
90 if (AssetDatabase.Contains(target))
92 if (target.isExpanded)
95 EditorUtility.SetDirty(target);
100 GUILayout.EndHorizontal();
104 EditorGUILayout.PropertyField(script);
105 EditorGUILayout.PropertyField(wireframe);
107 serializedObject.ApplyModifiedProperties();
110 public static void ExportPackage()
112 AssetDatabase.ExportPackage(
new string[] {
114 "Assets/Plugins/openvr_api.cs",
115 "Assets/Plugins/openvr_api.bundle",
116 "Assets/Plugins/x86/openvr_api.dll",
117 "Assets/Plugins/x86/steam_api.dll",
118 "Assets/Plugins/x86/libsteam_api.so",
119 "Assets/Plugins/x86_64/openvr_api.dll",
120 "Assets/Plugins/x86_64/steam_api.dll",
121 "Assets/Plugins/x86_64/libsteam_api.so",
122 "Assets/Plugins/x86_64/libopenvr_api.so",
123 },
"steamvr.unitypackage", ExportPackageOptions.Recurse);
124 EditorApplication.Exit(0);