private static void createNewTextureRamp(MenuCommand command) { string path = "Assets"; foreach (UnityEngine.Object obj in Selection.GetFiltered(typeof(UnityEngine.Object), SelectionMode.Assets)) { path = AssetDatabase.GetAssetPath(obj); if (!string.IsNullOrEmpty(path) && File.Exists(path)) { path = Path.GetDirectoryName(path); break; } } path = Path.Combine(path, DEFAULT_ASSET_NAME); path = AssetDatabase.GenerateUniqueAssetPath(path); TextureRampAsset asset = CreateInstance <TextureRampAsset>(); AssetDatabase.CreateAsset(asset, path); Texture2D tex = new Texture2D(1, 1, TextureFormat.ARGB32, false, true); tex.name = "RampTexture"; tex.alphaIsTransparency = true; asset._texture = tex; AssetDatabase.AddObjectToAsset(tex, asset); AssetDatabase.SaveAssets(); Selection.activeObject = asset; }
public override void OnInspectorGUI() { EditorGUI.BeginChangeCheck(); SerializedProperty iterator = serializedObject.GetIterator(); bool isFirst = true; while (iterator.NextVisible(isFirst)) { EditorGUILayout.PropertyField(iterator, true); isFirst = false; } if (EditorGUI.EndChangeCheck()) { serializedObject.ApplyModifiedProperties(); TextureRampAsset asset = target as TextureRampAsset; asset.UpdateTextureAsset(); } }