Мои Уведомления
Привет, !
Мой Аккаунт Мои Финансы Мои Подписки Мои Настройки Выход
Руководство API скрипты

AssetImportContext.DependsOnSourceAsset

Объявление

public void DependsOnSourceAsset(string path);

public void DependsOnSourceAsset(GUID guid);

Параметры

path Путь исходной зависимости.
guid Руководство зависимости исходного актива.

Описание

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

Когда вы указываете, что один актив зависит от другого (например, актив A зависит от актива B), это означает, что если этот актив B будет изменен, не только актив B будет повторно импортирован, но и актив A будет повторно импортирован.

Примечание. Этот метод устанавливает зависимость от самого исходного файла объекта, а не от результата импорта (артефакта) объекта. Если вы хотите настроить зависимость от результата импорта актива, используйте DependsOnArtifact.

using UnityEngine; using UnityEditor; using UnityEditor.AssetImporters; using System.IO; [ScriptedImporter(1, "cube")] public class CubeWithTextureImporter : ScriptedImporter { public override void OnImportAsset(AssetImportContext ctx) { var cube = GameObject.CreatePrimitive(PrimitiveType.Cube); ctx.AddObjectToAsset("main obj", cube); ctx.SetMainObject(cube); var material = new Material(Shader.Find("Standard")); var lines = File.ReadAllLines(ctx.assetPath); var texturePath = lines[0]; var texture = AssetDatabase.LoadAssetAtPath<Texture>(texturePath); if (texture != null) { material.SetTexture("_MainTex", texture); // add a dependency on the texture, such that if it changes or moves, we reimport the asset ctx.DependsOnSourceAsset(texturePath); } ctx.AddObjectToAsset("MaterialWithTexture", material); } }
Вы можете отблагодарить автора, за перевод документации на русский язык. ₽ Спасибо
API скрипты 2021.3