PlayerSettings.GetPreloadedAssets
Declaration
public static Object[] GetPreloadedAssets();Возвращаемое значение
Object[] Ассеты, которые должны быть предварительно загружены.
Описание
Возвращает ассеты, которые будут загружены при запуске проигрывателя и будут сохранены до завершения работы проигрывателя.
Этот пример показывает, как ScriptableObject может быть использован для хранения данных, которые могут быть доступны в любое время на протяжении жизни проигрывателя.
using System.Linq; using UnityEngine;
// We use this class to store general config data that can be used in the player public class ConfigObject : ScriptableObject { public string text;
public static ConfigObject configInstance;
#if UNITY_EDITOR [UnityEditor.MenuItem("Assets/Create/Config Object")] public static void CreateAsset() { var path = UnityEditor.EditorUtility.SaveFilePanelInProject("Save Config", "config", "asset", string.Empty); if (string.IsNullOrEmpty(path)) return;
var configObject = CreateInstance<ConfigObject>(); UnityEditor.AssetDatabase.CreateAsset(configObject, path);
// Add the config asset to the build var preloadedAssets = UnityEditor.PlayerSettings.GetPreloadedAssets().ToList(); preloadedAssets.Add(configObject); UnityEditor.PlayerSettings.SetPreloadedAssets(preloadedAssets.ToArray()); } #endif
void OnEnable() { configInstance = this; } }
using UnityEngine;
public class UseConfigObject : MonoBehaviour { void OnGUI() { if (ConfigObject.configInstance != null) { GUILayout.Label("Found the config asset. The message was: " + ConfigObject.configInstance.text); } } }
Дополнительные ресурсы: ,PlayerSettings.SetPreloadedAssets,, ,EditorBuildSettings.TryGetConfigObject,.