File size: 1,246 Bytes
05c9ac2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
using System.Linq;
using UnityEngine;
using UnityEditor;
using UnityEditor.Build;
using UnityEditor.Build.Reporting;
namespace Unity.MLAgents.Editor
{
internal class MLAgentsSettingsBuildProvider : IPreprocessBuildWithReport, IPostprocessBuildWithReport
{
public int callbackOrder => 0;
public void OnPreprocessBuild(BuildReport report)
{
if (!EditorUtility.IsPersistent(MLAgentsSettingsManager.Settings))
return;
var preloadedAssets = PlayerSettings.GetPreloadedAssets().ToList();
if (!preloadedAssets.Contains(MLAgentsSettingsManager.Settings))
{
preloadedAssets.Add(MLAgentsSettingsManager.Settings);
PlayerSettings.SetPreloadedAssets(preloadedAssets.ToArray());
}
}
public void OnPostprocessBuild(BuildReport report)
{
var preloadedAssets = PlayerSettings.GetPreloadedAssets().ToList();
if (preloadedAssets.Contains(MLAgentsSettingsManager.Settings))
{
preloadedAssets.Remove(MLAgentsSettingsManager.Settings);
PlayerSettings.SetPreloadedAssets(preloadedAssets.ToArray());
}
}
}
}
|