# OnPreprocessAsset()

> Add this function to a subclass to get a notification just before any Asset is imported.

## Definition

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

```csharp
public void OnPreprocessAsset()
```

### Remarks

This lets you control the import settings through code. Unlike other \`OnPreprocess\` callbacks such as OnPreprocessTexture or OnPreprocessModel, \`OnPreprocessAsset\` does not automatically register a dependency on the postprocessor. This means that if your subclass only implements \`OnPreprocessAsset\`, changing the value returned by [AssetPostprocessor.GetVersion](/engine/6000.6/script-reference/unityeditor/assetpostprocessor/getversion.md) does not trigger a reimport of affected assets. To register dependencies explicitly, use [AssetImportContext.DependsOnCustomDependency](/engine/6000.6/script-reference/unityeditor/assetimporters/assetimportcontext/dependsoncustomdependency.md) or [AssetImportContext.DependsOnArtifact](/engine/6000.6/script-reference/unityeditor/assetimporters/assetimportcontext/dependsonartifact.md) through the [AssetPostprocessor.context](/engine/6000.6/script-reference/unityeditor/assetpostprocessor/context.md) property. **Note:** If your subclass also implements another callback such as OnPreprocessTexture, the dependency is registered by that callback and [AssetPostprocessor.GetVersion](/engine/6000.6/script-reference/unityeditor/assetpostprocessor/getversion.md) works as expected.

### Examples

```csharp

using UnityEditor;

class PresetEnforcer : AssetPostprocessor
{
    void OnPreprocessAsset()
    {
        if (assetImporter.importSettingsMissing)
        {
            ModelImporter modelImporter = assetImporter as ModelImporter;
            if (modelImporter != null)
            {
                if (!assetPath.Contains("@"))
                    modelImporter.importAnimation = false;
                modelImporter.materialImportMode = ModelImporterMaterialImportMode.None;
            }
        }
    }
}
```
