Unity5.3で知識が止まっている人向けのUnity2017.2に合わせたエディター拡張アップデート...
-
Upload
keigo-ando -
Category
Engineering
-
view
12.518 -
download
2
Transcript of Unity5.3で知識が止まっている人向けのUnity2017.2に合わせたエディター拡張アップデート...
public class Hierarchy : EditorWindow { public Dictionary<int, bool> foldouts = new Dictionary<int, bool>();
void OnGUI() { var id = 1;
foldouts[id] = EditorGUILayout.Foldout(foldouts[id], "Parent");
if (foldouts[id]) { EditorGUI.indentLevel = 2; EditorGUILayout.LabelField("Child"); } } }
public class Hierarchy : EditorWindow { public Dictionary<int, bool> foldouts = new Dictionary<int, bool>();
void OnGUI() { var id = 1;
foldouts[id] = EditorGUILayout.Foldout(foldouts[id], "Parent");
if (foldouts[id]) { EditorGUI.indentLevel = 2; EditorGUILayout.LabelField("Child"); } } }
public class Hierarchy : EditorWindow { public Dictionary<int, bool> foldouts = new Dictionary<int, bool>();
void OnGUI() { var id = 1;
foldouts[id] = EditorGUILayout.Foldout(foldouts[id], "Parent");
if (foldouts[id]) { EditorGUI.indentLevel = 2; EditorGUILayout.LabelField("Child"); } } }
protected override TreeViewItem BuildRoot () { var root = new TreeViewItem {id = 0, depth = -1, displayName = "Root"}; var allItems = new List<TreeViewItem> { new TreeViewItem {id = 1, depth = 0, displayName = "Animals"}, new TreeViewItem {id = 2, depth = 1, displayName = "Mammals"}, new TreeViewItem {id = 3, depth = 2, displayName = "Tiger"}, new TreeViewItem {id = 7, depth = 1, displayName = "Reptiles"}, new TreeViewItem {id = 8, depth = 2, displayName = "Crocodile"}, new TreeViewItem {id = 9, depth = 2, displayName = "Lizard"}, }; return root; }
😂
[MenuItem(“ ")] static void Open() { // BuildPipeline.BuildPlayer(options); }
class MyCustomBuildProcessor : IPreprocessBuild { public void OnPreprocessBuild(BuildTarget target, string path) { Debug.Log(“ ”); } }
[ScriptedImporter(1, "cube")] public class CubeImporter : ScriptedImporter { public float m_Scale = 1;
public override void OnImportAsset(AssetImportContext ctx) { var cube = GameObject.CreatePrimitive(PrimitiveType.Cube); var text = File.ReadAllText(ctx.assetPath);
var position = JsonUtility.FromJson<Vector3>(text);
cube.transform.position = position; } }
[CustomEditor(typeof(CubeImporter))] public class CubeImporterEditor : ScriptedImporterEditor {
}
[CustomEditor(typeof(Object))] public class ObjectEditor : Editor { public ObjectEditor () { if (extension == ".zip") { editor = Editor.CreateEditor (Selection.activeObject, typeof(ZipEditor)); } else if (string.IsNullOrEmpty (extension)) { editor = Editor.CreateEditor (Selection.activeObject, typeof(FolderEditor)); } else { editor = null; } } }
public class E03_StyleSheet : EditorWindow {
public void OnEnable() { var root = this.GetRootVisualContainer(); root.AddStyleSheetPath("styles");
// Here we just take all layout properties and other to extract them in USS! var boxes = new VisualContainer() { name = "boxesContainer" }; boxes.AddToClassList("horizontalContainer"); root.Add(boxes);
}