Version: 5.4

AssetDatabase.AddObjectToAsset

Switch to Manual
public static void AddObjectToAsset (Object objectToAdd, string path);

Parameters

objectToAdd @param objectToAdd Объект для добавления к существующему ассету.
path @param path Путь файловой системы для ассета.

Description

Добавляет objectToAdd к существующему ассету в path.

Все пути относятся к папке проекта, например: "Assets/MyTextures/hello.png".

Примечание:



You can not add GameObjects; use PrefabUtility instead.

using UnityEngine;
using UnityEditor;

public class CreateMaterialExample : MonoBehaviour { [MenuItem("GameObject/Create Material")] static void CreateMaterial( ) { // Create a simple material asset

Material material = new Material( Shader.Find( "Specular" ) ); AssetDatabase.CreateAsset( material, "Assets/MyMaterial.mat" );

// Add an animation clip to it AnimationClip animationClip = new AnimationClip( ); animationClip.name = "My Clip"; AssetDatabase.AddObjectToAsset( animationClip, material );

// Reimport the asset after adding an object. // Otherwise the change only shows up when saving the project AssetDatabase.ImportAsset( AssetDatabase.GetAssetPath( animationClip ) );

// Print the path of the created asset Debug.Log( AssetDatabase.GetAssetPath( material ) ); } }

public static void AddObjectToAsset (Object objectToAdd, Object assetObject);

Description

Добавляет objectToAdd к существующему ассету, определяющегося как assetObject.

Примечание:



You can not add GameObjects; use PrefabUtility instead.

using UnityEngine;
using UnityEditor;

public class CreateMaterialExample : MonoBehaviour { [MenuItem("GameObject/Create Material")] static void CreateMaterial( ) { // Create a simple material asset

Material material = new Material( Shader.Find( "Specular" ) ); AssetDatabase.CreateAsset( material, "Assets/MyMaterial.mat" );

// Add an animation clip to it AnimationClip animationClip = new AnimationClip( ); animationClip.name = "My Clip"; AssetDatabase.AddObjectToAsset( animationClip, material );

// Reimport the asset after adding an object. // Otherwise the change only shows up when saving the project AssetDatabase.ImportAsset( AssetDatabase.GetAssetPath( animationClip ) );

// Print the path of the created asset Debug.Log( AssetDatabase.GetAssetPath( material ) ); } }