Unity 6.3
0 онлайн 53 гостей 3 в системе
Вход

AssetImporter.AddRemap

Declaration

public void AddRemap(AssetImporter.SourceAssetIdentifier identifier, Object externalObject);

Параметры

Параметр Описание
идентификатор Идентификатор субактива.
externalObject Объект, который нужно сопоставить с внутренним объектом. Он может принадлежать другому префабу или ассету, но не тому ассету, который сейчас изменяется.

Описание

Сопоставление субактива из импортированного ассета (например, файла FBX) с внешним ассетом того же типа.

Примените изменения путем записи метаданных и повторного импорта ассета. Экземпляры ассета автоматически используют сопоставленный объект после повторного импорта ассета.

Если тип внешнего ассета не совпадает с типом подассета или если ссылка равна null, экземпляры ассета продолжат использовать внутренний ассет без выдачи ошибки.

using UnityEngine;
using UnityEditor;

public class Extractor { public static void ExtractFromAsset(Object subAsset, string destinationPath) { string assetPath = AssetDatabase.GetAssetPath(subAsset);

var clone = Object.Instantiate(subAsset); AssetDatabase.CreateAsset(clone, destinationPath);

var assetImporter = AssetImporter.GetAtPath(assetPath); assetImporter.AddRemap(new AssetImporter.SourceAssetIdentifier(subAsset), clone);

AssetDatabase.WriteImportSettingsIfDirty(assetPath); AssetDatabase.ImportAsset(assetPath, ImportAssetOptions.ForceUpdate); } }

Дополнительные ресурсы: ,AssetImporter.RemoveRemap,.