# GetAssetDependencyHash

> Gets a hash of all the dependencies of the asset with the specified GUID.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor](/engine/7000.0/script-reference/unityeditor.md)
* **Assembly:** UnityEditor.CoreModule

## GetAssetDependencyHash(GUID)

Gets a hash of all the dependencies of the asset with the specified GUID.

```csharp
public static Hash128 GetAssetDependencyHash(GUID guid)
```

### Parameters

**** (GUID): The GUID of the asset.

### Returns

| Type    | Description                                         |
| ------- | --------------------------------------------------- |
| Hash128 | The combined hash of the dependencies of the asset. |

### Remarks

The hash combines the source asset path, the source asset, the .meta file, the target platform, and the importer version. If the hash changes, the imported asset might have changed, so rebuild any AssetBundles that contain it.

## GetAssetDependencyHash(string)

Gets a hash of all the dependencies of the asset at a path.

```csharp
public static Hash128 GetAssetDependencyHash(string path)
```

### Parameters

**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): The project-relative path of the asset.

### Returns

| Type    | Description                                         |
| ------- | --------------------------------------------------- |
| Hash128 | The combined hash of the dependencies of the asset. |

### Remarks

The hash combines the source asset path, the source asset, the .meta file, the target platform, and the importer version. If the hash changes, the imported asset might have changed, so rebuild any AssetBundles that contain it.

### Examples

```csharp
using UnityEditor;
using UnityEngine;

public class AssetDatabaseExamples : MonoBehaviour
{
    [MenuItem("AssetDatabase/Dependency Hash Example")]
    public static void DependencyHashExample()
    {
        //Load a Material, change its shader and save it
        var matPath = "Assets/Material.mat";
        var asset = (Material)AssetDatabase.LoadMainAssetAtPath(matPath);
        asset.shader = Shader.Find("Unlit/Texture");
        AssetDatabase.SaveAssets();

        //Print out the hash into the console
        var hash = AssetDatabase.GetAssetDependencyHash(matPath);
        Debug.Log(hash);

        //Change the Shader on the Material and save it
        asset.shader = Shader.Find("Standard");
        AssetDatabase.SaveAssets();

        //Hash will be different
        hash = AssetDatabase.GetAssetDependencyHash(matPath);
        Debug.Log(hash);
    }
}
```
