Modificar Prefab en lotes en el editor de Unity

Recientemente escribí algunas pequeñas herramientas, las grabé y las compartí.

herramienta
  [MenuItem("Assets/工具/赋值")]
    public static void SetSelectedPrefabsValue()
    {
    
    
        Debug.Log($"数量{
      
      Selection.gameObjects.Length}");
        if (Selection.gameObjects.Length == 0)return;
        foreach (var obj in Selection.gameObjects)
        {
    
    
            GameObject go = obj;
          
            /*
            ScriptA a= go.GetComponent<ScriptA>();
            ScriptB b= go.GetComponentInChildren<ScriptB>();
            a.fireOutLine = effect;
            */
            PrefabUtility.SavePrefabAsset(go);

        }
    }

Tutorial de niñera:
escriba la operación que desea realizar en el área de comentarios, por ejemplo, aquí es encontrar b del subobjeto y asignarlo al atributo fireOutLine de a.
Se utiliza cuando hay una gran cantidad de casas prefabricadas con el mismo script que deben montarse en nodos, o cuando una gran cantidad de casas prefabricadas del mismo tipo necesitan realizar la misma operación.
Instrucciones de uso: seleccione todos los prefabricados que deben modificarse, haga clic con el botón derecho en Herramientas/Asignación Ejecutar

Atributo de montaje del inspector y atributo Buscar en Inicio

El montaje de propiedades mejora la legibilidad y el mantenimiento del código y, a menudo, es más rápido que usar Buscar.

Cómo mostrar propiedades privadas en Inspector
 [SerializeField] private int a;//显示私有
 [HideInInspector] public int b;//隐藏公有

Supongo que te gusta

Origin blog.csdn.net/hzhnzmyz/article/details/130231228
Recomendado
Clasificación