Files
back_cantanBuilding/Assets/Scripts/Others/QualityLimit.cs
2026-05-26 16:15:54 +08:00

36 lines
906 B
C#

using System.Linq;
using UnityEngine;
using UnityEngine.AddressableAssets;
public class QualityLimit
{
private static string[][] _keywordsList;
public static string[][] KeywordsList
{
get
{
if (_keywordsList == null)
{
var data = Addressables.LoadAssetAsync<TextAsset>("gpulimitdata").WaitForCompletion();
_keywordsList = Newtonsoft.Json.JsonConvert.DeserializeObject<string[][]>(data.text);
}
return _keywordsList;
}
}
public static bool IsLimitDevice()
{
var deviceName = SystemInfo.graphicsDeviceName;
if(string.IsNullOrEmpty(deviceName))
return true;
foreach (var keywords in KeywordsList)
{
if (keywords.All(k => deviceName.IndexOf(k) >= 0))
return true;
}
return false;
}
}