当 Unity 即将在磁盘上移动资源时,会调用此方法。
实现此方法以自定义 Unity 在编辑器中移动资源时执行的操作。此方法允许您自己移动资源,但如果您这样做,请记住返回正确的枚举。或者,您可以执行一些处理并让 Unity 移动文件。可以通过返回AssetMoveResult.FailedMove来阻止资源的移动。您不应在此回调中调用任何 Unity AssetDatabase API,最好限制使用文件操作或 VCS API。
using UnityEditor; using UnityEngine;
public class CustomAssetModificationProcessor : UnityEditor.AssetModificationProcessor { private static AssetMoveResult OnWillMoveAsset(string sourcePath, string destinationPath) { Debug.Log("Source path: " + sourcePath + ". Destination path: " + destinationPath + "."); AssetMoveResult assetMoveResult = AssetMoveResult.DidMove;
// Perform operations on the asset and set the value of 'assetMoveResult' accordingly.
return assetMoveResult; } }