public void ClearGameObject() { _sceneObjectID = -1; _objectName = null; _scene.ClearScene(); _prefab.ClearAsset(); _editorGameObject = null; _editorLoaderGameObject = null; _editorSceneLoaded = false; _editorLoaderIsLoaded = false; }
public bool RenderObjectProperties(GUIContent label) { bool dataChanged = false; if (label == null) { label = new GUIContent(); } label.text += " (" + this + ")"; _editorFoldout = EditorGUILayout.Foldout(_editorFoldout, label); if (_editorFoldout) { int origIndent = EditorGUI.indentLevel; EditorGUI.indentLevel++; //Draw type dropdown { EditorGUI.BeginChangeCheck(); _editorType = (eEdtiorType)EditorGUILayout.EnumPopup("Material Type", _editorType); if (EditorGUI.EndChangeCheck()) { dataChanged = true; _materialRef.ClearAsset(); _materialIndex = -1; _renderer.ClearComponent(); } } //Draw renderer field if (_editorType == eEdtiorType.Instance) { if (_renderer.RenderObjectProperties(new GUIContent("Renderer"))) { dataChanged = true; _materialRef.ClearAsset(); _materialIndex = 0; } //Show drop down for materials Renderer renderer = _renderer.GetEditorComponent(); if (renderer != null) { string[] materialNames = new string[renderer.sharedMaterials.Length]; for (int i = 0; i < materialNames.Length; i++) { materialNames[i] = renderer.sharedMaterials[i].name; } _materialIndex = EditorGUILayout.Popup("Material", _materialIndex, materialNames); } } else { dataChanged |= _materialRef.RenderObjectProperties(new GUIContent("Material")); } EditorGUI.indentLevel = origIndent; } return(dataChanged); }
public bool RenderObjectProperties(GUIContent label) { bool dataChanged = false; if (label == null) { label = new GUIContent(); } label.text += " (" + this + ")"; _editorFoldout = EditorGUILayout.Foldout(_editorFoldout, label); if (_editorFoldout) { int origIndent = EditorGUI.indentLevel; EditorGUI.indentLevel++; eType type = (eType)EditorGUILayout.EnumPopup("Link Type", _editorLinkType); //If link type changed, clear info if (_editorLinkType != type) { _editorLinkType = type; _file.ClearAsset(); _stateId = -1; _timelineState = null; _editorStateName = null; dataChanged = true; } switch (_editorLinkType) { case eType.Internal: { dataChanged |= DrawStateNamePopUps(); } break; case eType.External: { TextAsset asset = EditorGUILayout.ObjectField("File", _file._editorAsset, typeof(TextAsset), false) as TextAsset; //If asset changed update GUIDS if (_file._editorAsset != asset) { _file._editorAsset = asset; _file.ClearAsset(); _stateId = -1; _timelineState = null; _editorStateName = null; if (asset != null) { _file.SetAsset(asset); } dataChanged = true; } if (_file._editorAsset != null) { dataChanged |= DrawStateNamePopUps(); } } break; } EditorGUI.indentLevel = origIndent; } return(dataChanged); }
protected override void ClearStaticValue() { _value.ClearAsset(); }