Skip to content

PipelineConverter

ClassAssetInventoryAssetInventory.Editor
public static class PipelineConverter

Handles conversion of materials from the Built-in Render Pipeline (BIRP) to the current Scriptable Render Pipeline (URP or HDRP).

Two conversion mechanisms are available:

  1. Unity’s built-in converter (uses the Converters API, URP only)
  2. Custom converter (manual property remapping, works for both URP and HDRP)

The custom converter acts as a fallback when Unity’s converter is unavailable, disabled, or fails.

public static bool RunUnityConverter()

Runs the URP material converter if available (fire-and-forget).

Returns

System.Boolean — True if the Unity converter ran without error, false otherwise.

public static Task<bool> RunUnityConverterAsync()

Runs the URP material converter and waits for it to complete. Uses reflection to await the callback-based Scan method which fires asynchronously. Use this instead of RunUnityConverter when subsequent operations (e.g. preview generation) depend on the materials being fully converted.

Returns

System.Threading.Tasks.Task{System.Boolean} — True if the Unity converter ran successfully, false otherwise.

public static void ConvertImportedMaterials(IEnumerable<string> importedPaths)

Converts material assets at the given project-relative paths from BIRP to the current render pipeline using the custom converter logic. Acts as fallback when Unity’s built-in converter is unavailable or fails.

Parameters

Name Type Description
importedPaths System.Collections.Generic.IEnumerable{System.String}
public static void ConvertAllProjectMaterials()

Scans all materials in the project and converts any remaining BIRP materials to the current render pipeline. Used after bulk/package imports.