existingNames | A list of pre-existing names. |
name | Desired name to be used as is, or as a base. |
string A name not found in the list of pre-existing names.
Make a unique name using the provided name as a base.
If the target name is in the provided list of existing names, a unique name is generated by appending the next available numerical increment.
Additional resources: GameObjectUtility.GetUniqueNameForSibling, GameObjectUtility.EnsureUniqueNameForSibling.
using UnityEngine; using UnityEditor;
public class ExampleClass { public void Example() { string[] names = new string[] { "Object", "Thing", "Thing (1)" };
// will display "Object (1)" Debug.Log(ObjectNames.GetUniqueName(names, "Object"));
// will display "Thing (2)" Debug.Log(ObjectNames.GetUniqueName(names, "Thing"));
// will display "Other" Debug.Log(ObjectNames.GetUniqueName(names, "Other")); } }